Page MenuHomec4science

No OneTemporary

File Metadata

Created
Thu, Jul 4, 23:56
This file is larger than 256 KB, so syntax highlighting was skipped.
diff --git a/shrine-webclient/src/main/gopherjs/gopherjs-build.sh b/shrine-webclient/src/main/gopherjs/gopherjs-build.sh
new file mode 100755
index 000000000..b584779f5
--- /dev/null
+++ b/shrine-webclient/src/main/gopherjs/gopherjs-build.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+GOSRCFILE=$1
+
+if [ -f "${GOSRCFILE}" ]; then
+ if [ ${GOSRCFILE: -3} == ".go" ]; then
+ # build the go code into javascript
+ gopherjs build -m "${GOSRCFILE}" -o "`basename "${GOSRCFILE}" .go`.js"
+ else
+ echo "Not a go source file"
+ fi
+else
+ echo "Not a valid file passed as parameter"
+fi
+
+
diff --git a/shrine-webclient/src/main/gopherjs/key.go b/shrine-webclient/src/main/gopherjs/key.go
new file mode 100644
index 000000000..ee8142a47
--- /dev/null
+++ b/shrine-webclient/src/main/gopherjs/key.go
@@ -0,0 +1,92 @@
+package crypto
+
+import (
+ //"github.com/dedis/crypto/eddsa"
+ //"github.com/dedis/crypto/ed25519"
+
+ "github.com/dedis/crypto/abstract"
+ "github.com/dedis/crypto/random"
+
+ "github.com/dedis/onet/network"
+
+)
+
+// CipherText is an ElGamal encrypted point.
+type CipherText struct {
+ K, C abstract.Point
+}
+
+var suite = network.Suite
+
+
+// encryptPoint creates an elliptic curve point from a non-encrypted point and encrypt it using ElGamal encryption.
+func encryptPoint(pubkey abstract.Point, M abstract.Point) *CipherText {
+ B := suite.Point().Base()
+ k := suite.Scalar().Pick(random.Stream) // ephemeral private key
+ // ElGamal-encrypt the point to produce ciphertext (K,C).
+ K := suite.Point().Mul(B, k) // ephemeral DH public key
+ S := suite.Point().Mul(pubkey, k) // ephemeral DH shared secret
+ C := S.Add(S, M) // message blinded with secret
+ return &CipherText{K, C}
+}
+
+// EncryptInt encodes i as iB, encrypt it into a CipherText and returns a pointer to it.
+func EncryptInt(pubkey abstract.Point, integer int64) *CipherText {
+ return encryptPoint(pubkey, IntToPoint(integer))
+
+// IntToPoint maps an integer to a point in the elliptic curve
+func IntToPoint(integer int64) abstract.Point {
+ B := suite.Point().Base()
+ i := suite.Scalar().SetInt64(integer)
+ M := suite.Point().Mul(B, i)
+ return M
+}
+
+
+
+// --- old for example
+/*
+// Generate an EdDSA and return the marshal binary data
+func KeyPairEdDSA() []byte {
+ e := eddsa.NewEdDSA(nil)
+
+ result, _ := e.MarshalBinary()
+ return result
+}
+
+// Build a marshal binary of an EdDSA from a simple private key
+func KeyPairFromPrivate(privateKey []byte) []byte {
+ // Build the marshal binary without public key as we don't have it
+ buf := make([]byte, 64)
+ copy(buf[:32], privateKey)
+
+ // Use it to instantiate a new EdDSA
+ e := &eddsa.EdDSA{}
+ e.UnmarshalBinary(buf)
+
+ result, _ := e.MarshalBinary()
+ return result
+}
+
+// Extract the public key from the marshal
+func PublicKey(marshal []byte) []byte {
+ return marshal[32:]
+}
+
+// Aggregate the given public keys in one single key
+func AggregateKeys(keys [][]byte) []byte {
+ suite := ed25519.NewAES128SHA256Ed25519(false)
+ aggKey := suite.Point().Null()
+
+ for _, k := range keys {
+ public := suite.Point()
+ public.UnmarshalBinary(k)
+
+ aggKey.Add(aggKey, public)
+ }
+
+ result, _ := aggKey.MarshalBinary()
+ return result
+}
+*/
+
diff --git a/shrine-webclient/src/main/gopherjs/main.go b/shrine-webclient/src/main/gopherjs/main.go
new file mode 100644
index 000000000..914a6d5e9
--- /dev/null
+++ b/shrine-webclient/src/main/gopherjs/main.go
@@ -0,0 +1,70 @@
+package main
+
+import (
+ "github.com/gopherjs/gopherjs/js"
+ "github.com/JoaoAndreSa/MedCo/lib"
+)
+
+//var cothorityPublicKey string
+
+
+/**
+ * Encapsulate the library in the cryptoJS object that you can
+ * find the global JS object
+ */
+func main() {
+ js.Global.Set("cryptoJSmedcotest", map[string]interface{}{
+ "IntToPoint": lib.IntToPoint,
+ "EncryptInt": lib.EncryptInt,
+ "GenKey": lib.GenKey,
+ // "Javascript name": gopkg.gofunc,
+ })
+
+ js.Global.Get("document").Call("getElementById", "testtext").Set("innerHTML", "modif from go")
+
+ valueEncTest := int64(88)
+js.Global.Get("document").Call("getElementById", "testtext").Set("innerHTML", "generating keys...")
+ secKey, pubKey := lib.GenKey()
+js.Global.Get("document").Call("getElementById", "testtext").Set("innerHTML", "keys gen, encrypting...")
+ encInt := lib.EncryptInt(pubKey, valueEncTest)
+js.Global.Get("document").Call("getElementById", "testtext").Set("innerHTML", "encrypted, decrypting...")
+ decInt := lib.DecryptInt(secKey, *encInt)
+
+ js.Global.Get("document").Call("getElementById", "testtext").Set("innerHTML", decInt)
+}
+
+// to from JS: only safe to pass (serialized form? -> byte[] using marshal methods, then to string in base64)
+// dedis/crypto/base64: encode byte[] - string
+// encode what and how exactly? check what they are doing on server side
+
+//first step goal: encode in base64 some value and decode it
+
+
+// Build a marshal binary of an EdDSA from a simple private key
+/*
+func KeyPairFromPrivate(privateKey []byte) []byte {
+ // Build the marshal binary without public key as we don't have it
+ buf := make([]byte, 64)
+ copy(buf[:32], privateKey)
+
+ // Use it to instantiate a new EdDSA
+ e := &eddsa.EdDSA{}
+ e.UnmarshalBinary(buf)
+
+ result, _ := e.MarshalBinary()
+ return result
+}
+
+
+func SetCothorityPublicKey(cothPubKey string) {
+ cothorityPublicKey := cothPubKey
+}
+
+func GetCothorityPublicKey() string {
+ return cothorityPublicKey
+}
+*/
+
+//func EncryptInt(value int64?) {
+
+//}
diff --git a/shrine-webclient/src/main/gopherjs/main.js b/shrine-webclient/src/main/gopherjs/main.js
new file mode 100644
index 000000000..2eef4d7f8
--- /dev/null
+++ b/shrine-webclient/src/main/gopherjs/main.js
@@ -0,0 +1,96 @@
+"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 $externalize(fn(this,new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[]))),$emptyInterface);};};var $unused=function(v){};var $mapArray=function(array,f){var newArray=new array.constructor(array.length);for(var i=0;i<array.length;i++){newArray[i]=f(array[i]);}return newArray;};var $methodVal=function(recv,name){var vals=recv.$methodVals||{};recv.$methodVals=vals;var f=vals[name];if(f!==undefined){return f;}var method=recv[name];f=function(){$stackDepthOffset--;try{return method.apply(recv,arguments);}finally{$stackDepthOffset++;}};vals[name]=f;return f;};var $methodExpr=function(typ,name){var method=typ.prototype[name];if(method.$expr===undefined){method.$expr=function(){$stackDepthOffset--;try{if(typ.wrapped){arguments[0]=new typ(arguments[0]);}return Function.call.apply(method,arguments);}finally{$stackDepthOffset++;}};}return method.$expr;};var $ifaceMethodExprs={};var $ifaceMethodExpr=function(name){var expr=$ifaceMethodExprs["$"+name];if(expr===undefined){expr=$ifaceMethodExprs["$"+name]=function(){$stackDepthOffset--;try{return Function.call.apply(arguments[0][name],arguments);}finally{$stackDepthOffset++;}};}return expr;};var $subslice=function(slice,low,high,max){if(low<0||high<low||max<high||high>slice.$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 $substring=function(str,low,high){if(low<0||high<low||high>str.length){$throwRuntimeError("slice bounds out of range");}return str.substring(low,high);};var $sliceToArray=function(slice){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||0x10FFFF<r){return[0xFFFD,1];}return[r,4];}return[0xFFFD,1];};var $encodeRune=function(r){if(r<0||r>0x10FFFF||(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;i<str.length;i++){array[i]=str.charCodeAt(i);}return array;};var $bytesToString=function(slice){if(slice.$length===0){return"";}var str="";for(var i=0;i<slice.$length;i+=10000){str+=String.fromCharCode.apply(undefined,slice.$array.subarray(slice.$offset+i,slice.$offset+Math.min(slice.$length,i+10000)));}return str;};var $stringToRunes=function(str){var array=new Int32Array(str.length);var rune,j=0;for(var i=0;i<str.length;i+=rune[1],j++){rune=$decodeRune(str,i);array[j]=rune[0];}return array.subarray(0,j);};var $runesToString=function(slice){if(slice.$length===0){return"";}var str="";for(var i=0;i<slice.$length;i++){str+=$encodeRune(slice.$array[slice.$offset+i]);}return str;};var $copyString=function(dst,src){var n=Math.min(src.length,dst.$length);for(var i=0;i<n;i++){dst.$array[dst.$offset+i]=src.charCodeAt(i);}return n;};var $copySlice=function(dst,src){var n=Math.min(src.$length,dst.$length);$copyArray(dst.$array,src.$array,dst.$offset,src.$offset,n,dst.constructor.elem);return n;};var $copyArray=function(dst,src,dstOffset,srcOffset,n,elem){if(n===0||(dst===src&&dstOffset===srcOffset)){return;}if(src.subarray){dst.set(src.subarray(srcOffset,srcOffset+n),dstOffset);return;}switch(elem.kind){case $kindArray:case $kindStruct:if(dst===src&&dstOffset>srcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;i<n;i++){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}if(dst===src&&dstOffset>srcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;i<n;i++){dst[dstOffset+i]=src[srcOffset+i];}};var $clone=function(src,type){var clone=type.zero();type.copy(clone,src);return clone;};var $pointerOfStructConversion=function(obj,type){if(obj.$proxies===undefined){obj.$proxies={};obj.$proxies[obj.constructor.string]=obj;}var proxy=obj.$proxies[type.string];if(proxy===undefined){var properties={};for(var i=0;i<type.elem.fields.length;i++){(function(fieldProp){properties[fieldProp]={get:function(){return obj[fieldProp];},set:function(value){obj[fieldProp]=value;}};})(type.elem.fields[i].prop);}proxy=Object.create(type.prototype,properties);proxy.$val=proxy;obj.$proxies[type.string]=proxy;proxy.$proxies=obj.$proxies;}return proxy;};var $append=function(slice){return $internalAppend(slice,arguments,1,arguments.length-1);};var $appendSlice=function(slice,toAppend){if(toAppend.constructor===String){var bytes=$stringToBytes(toAppend);return $internalAppend(slice,bytes,0,bytes.length);}return $internalAppend(slice,toAppend.$array,toAppend.$offset,toAppend.$length);};var $internalAppend=function(slice,array,offset,length){if(length===0){return slice;}var newArray=slice.$array;var newOffset=slice.$offset;var newLength=slice.$length+length;var newCapacity=slice.$capacity;if(newLength>newCapacity){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<newCapacity;i++){newArray[i]=zero();}}else{newArray=new slice.$array.constructor(newCapacity);newArray.set(slice.$array.subarray(slice.$offset,slice.$offset+slice.$length));}}$copyArray(newArray,array,newOffset+slice.$length,offset,length,slice.constructor.elem);var newSlice=new slice.constructor(newArray);newSlice.$offset=newOffset;newSlice.$length=newLength;newSlice.$capacity=newCapacity;return newSlice;};var $equal=function(a,b,type){if(type===$jsObjectPtr){return a===b;}switch(type.kind){case $kindComplex64:case $kindComplex128:return a.$real===b.$real&&a.$imag===b.$imag;case $kindInt64:case $kindUint64:return a.$high===b.$high&&a.$low===b.$low;case $kindArray:if(a.length!==b.length){return false;}for(var i=0;i<a.length;i++){if(!$equal(a[i],b[i],type.elem)){return false;}}return true;case $kindStruct:for(var i=0;i<type.fields.length;i++){var f=type.fields[i];if(!$equal(a[f.prop],b[f.prop],f.typ)){return false;}}return true;case $kindInterface:return $interfaceIsEqual(a,b);default:return a===b;}};var $interfaceIsEqual=function(a,b){if(a===$ifaceNil||b===$ifaceNil){return a===b;}if(a.constructor!==b.constructor){return false;}if(a.constructor===$jsObjectPtr){return a.object===b.object;}if(!a.constructor.comparable){$throwRuntimeError("comparing uncomparable type "+a.constructor.string);}return $equal(a.$val,b.$val,a.constructor);};var $min=Math.min;var $mod=function(x,y){return x%y;};var $parseInt=parseInt;var $parseFloat=function(f){if(f!==undefined&&f!==null&&f.constructor===Number){return f;}return parseFloat(f);};var $froundBuf=new Float32Array(1);var $fround=Math.fround||function(f){$froundBuf[0]=f;return $froundBuf[0];};var $imul=Math.imul||function(a,b){var ah=(a>>>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<<y|x.$low>>>(32-y),(x.$low<<y)>>>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<<i)!==0){high+=x.$high<<i|x.$low>>>(32-i);low+=(x.$low<<i)>>>0;}}for(var i=0;i<32;i++){if((y.$high&1<<i)!==0){high+=x.$low<<i;}}return new x.constructor(high,low);};var $div64=function(x,y,returnRemainder){if(y.$high===0&&y.$low===0){$throwRuntimeError("integer divide by zero");}var s=1;var rs=1;var xHigh=x.$high;var xLow=x.$low;if(xHigh<0){s=-1;rs=-1;xHigh=-xHigh;if(xLow!==0){xHigh--;xLow=4294967296-xLow;}}var yHigh=y.$high;var yLow=y.$low;if(y.$high<0){s*=-1;yHigh=-yHigh;if(yLow!==0){yHigh--;yLow=4294967296-yLow;}}var high=0,low=0,n=0;while(yHigh<2147483648&&((xHigh>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,named,pkg,exported,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,false,"",false,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,false,"",exported,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(pkgPath,fields){typ.pkgPath=pkgPath;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;i<fields.length;i++){var f=fields[i];switch(f.typ.kind){case $kindArray:case $kindStruct:f.typ.copy(dst[f.prop],src[f.prop]);continue;default:dst[f.prop]=src[f.prop];continue;}}};var properties={};fields.forEach(function(f){properties[f.prop]={get:$throwNilPointerError,set:$throwNilPointerError};});typ.ptr.nil=Object.create(constructor.prototype,properties);typ.ptr.nil.$val=typ.ptr.nil;$addMethodSynthesizer(function(){var synthesizeMethod=function(target,m,f){if(target.prototype[m.prop]!==undefined){return;}target.prototype[m.prop]=function(){var v=this.$val[f.prop];if(f.typ===$jsObjectPtr){v=new $jsObjectPtr(v);}if(v.$val===undefined){v=new f.typ(v);}return v[m.prop].apply(v,arguments);};};fields.forEach(function(f){if(f.name===""){$methodSet(f.typ).forEach(function(m){synthesizeMethod(typ,m,f);synthesizeMethod(typ.ptr,m,f);});$methodSet($ptrType(f.typ)).forEach(function(m){synthesizeMethod(typ.ptr,m,f);});}});});};break;default:$panic(new $String("invalid kind: "+kind));}switch(kind){case $kindBool:case $kindMap:typ.zero=function(){return false;};break;case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:case $kindFloat32:case $kindFloat64:typ.zero=function(){return 0;};break;case $kindString:typ.zero=function(){return"";};break;case $kindInt64:case $kindUint64:case $kindComplex64:case $kindComplex128:var zero=new typ(0,0);typ.zero=function(){return zero;};break;case $kindPtr:case $kindSlice:typ.zero=function(){return typ.nil;};break;case $kindChan:typ.zero=function(){return $chanNil;};break;case $kindFunc:typ.zero=function(){return $throwNilPointerError;};break;case $kindInterface:typ.zero=function(){return $ifaceNil;};break;case $kindArray:typ.zero=function(){var arrayClass=$nativeArray(typ.elem.kind);if(arrayClass!==Array){return new arrayClass(typ.len);}var array=new Array(typ.len);for(var i=0;i<typ.len;i++){array[i]=typ.elem.zero();}return array;};break;case $kindStruct:typ.zero=function(){return new typ.ptr();};break;default:$panic(new $String("invalid kind: "+kind));}typ.id=$typeIDCounter;$typeIDCounter++;typ.size=size;typ.kind=kind;typ.string=string;typ.named=named;typ.pkg=pkg;typ.exported=exported;typ.methods=[];typ.methodSetCache=null;typ.comparable=true;return typ;};var $methodSet=function(typ){if(typ.methodSetCache!==null){return typ.methodSetCache;}var base={};var isPtr=(typ.kind===$kindPtr);if(isPtr&&typ.elem.kind===$kindInterface){typ.methodSetCache=[];return[];}var current=[{typ:isPtr?typ.elem:typ,indirect:isPtr}];var seen={};while(current.length>0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.named){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",true,"",false,null);var $Int=$newType(4,$kindInt,"int",true,"",false,null);var $Int8=$newType(1,$kindInt8,"int8",true,"",false,null);var $Int16=$newType(2,$kindInt16,"int16",true,"",false,null);var $Int32=$newType(4,$kindInt32,"int32",true,"",false,null);var $Int64=$newType(8,$kindInt64,"int64",true,"",false,null);var $Uint=$newType(4,$kindUint,"uint",true,"",false,null);var $Uint8=$newType(1,$kindUint8,"uint8",true,"",false,null);var $Uint16=$newType(2,$kindUint16,"uint16",true,"",false,null);var $Uint32=$newType(4,$kindUint32,"uint32",true,"",false,null);var $Uint64=$newType(8,$kindUint64,"uint64",true,"",false,null);var $Uintptr=$newType(4,$kindUintptr,"uintptr",true,"",false,null);var $Float32=$newType(4,$kindFloat32,"float32",true,"",false,null);var $Float64=$newType(8,$kindFloat64,"float64",true,"",false,null);var $Complex64=$newType(8,$kindComplex64,"complex64",true,"",false,null);var $Complex128=$newType(16,$kindComplex128,"complex128",true,"",false,null);var $String=$newType(8,$kindString,"string",true,"",false,null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer",true,"",false,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,false,"",false,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,false,"",false,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,false,"",false,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,false,"",false,null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error",true,"",false,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,false,"",false,null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i<entries.length;i++){var e=entries[i];m[keyForFunc(e.k)]=e;}return m;};var $ptrType=function(elem){var typ=elem.ptr;if(typ===undefined){typ=$newType(4,$kindPtr,"*"+elem.string,false,"",elem.exported,null);elem.ptr=typ;typ.init(elem);}return typ;};var $newDataPointer=function(data,constructor){if(constructor.elem.kind===$kindStruct){return data;}return new constructor(function(){return data;},function(v){data=v;});};var $indexPtr=function(array,index,constructor){array.$ptr=array.$ptr||{};return array.$ptr[index]||(array.$ptr[index]=new constructor(function(){return array[index];},function(v){array[index]=v;}));};var $sliceType=function(elem){var typ=elem.slice;if(typ===undefined){typ=$newType(12,$kindSlice,"[]"+elem.string,false,"",false,null);elem.slice=typ;typ.init(elem);}return typ;};var $makeSlice=function(typ,length,capacity){capacity=capacity||length;if(length<0||length>2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity<length||capacity>2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i<capacity;i++){array[i]=typ.elem.zero();}}var slice=new typ(array);slice.$length=length;return slice;};var $structTypes={};var $structType=function(pkgPath,fields){var typeKey=$mapArray(fields,function(f){return f.name+","+f.typ.id+","+f.tag;}).join("$");var typ=$structTypes[typeKey];if(typ===undefined){var string="struct { "+$mapArray(fields,function(f){return f.name+" "+f.typ.string+(f.tag!==""?(" \""+f.tag.replace(/\\/g,"\\\\").replace(/"/g, "\\\"")+"\""):"");}).join("; ")+" }";if(fields.length===0){string="struct {}";}typ=$newType(0,$kindStruct,string,false,"",false,function(){this.$val=this;for(var i=0;i<fields.length;i++){var f=fields[i];var arg=arguments[i];this[f.prop]=arg!==undefined?arg:f.typ.zero();}});$structTypes[typeKey]=typ;typ.init(pkgPath,fields);}return typ;};var $assertType=function(value,type,returnTuple){var isInterface=(type.kind===$kindInterface),ok,missingMethod="";if(value===$ifaceNil){ok=false;}else if(!isInterface){ok=value.constructor===type;}else{var valueTypeString=value.constructor.string;ok=type.implementedBy[valueTypeString];if(ok===undefined){ok=true;var valueMethodSet=$methodSet(value.constructor);var interfaceMethods=type.methods;for(var i=0;i<interfaceMethods.length;i++){var tm=interfaceMethods[i];var found=false;for(var j=0;j<valueMethodSet.length;j++){var vm=valueMethodSet[j];if(vm.name===tm.name&&vm.pkg===tm.pkg&&vm.typ===tm.typ){found=true;break;}}if(!found){ok=false;type.missingMethodFor[valueTypeString]=tm.name;break;}}type.implementedBy[valueTypeString]=ok;}if(!ok){missingMethod=type.missingMethodFor[valueTypeString];}}if(!ok){if(returnTuple){return[type.zero(),false];}$panic(new $packages["runtime"].TypeAssertionError.ptr("",(value===$ifaceNil?"":value.constructor.string),type.string,missingMethod));}if(!isInterface){value=value.$val;}if(type===$jsObjectPtr){value=value.object;}return returnTuple?[value,true]:value;};var $stackDepthOffset=0;var $getStackDepth=function(){var err=new Error();if(err.stack===undefined){return undefined;}return $stackDepthOffset+err.stack.split("\n").length;};var $panicStackDepth=null,$panicValue;var $callDeferred=function(deferred,jsErr,fromPanic){if(!fromPanic&&deferred!==null&&deferred.index>=$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 $noGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[]};var $curGoroutine=$noGoroutine,$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=$noGoroutine;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=[];$schedule($goroutine);};var $scheduled=[];var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}}finally{if($scheduled.length>0){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}$scheduled.push(goroutine);if($curGoroutine===$noGoroutine){$runScheduled();}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if($curGoroutine===$noGoroutine){$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.length<chan.$capacity){chan.$buffer.push(value);return;}var thisGoroutine=$curGoroutine;var closedDuringSend;chan.$sendQueue.push(function(closed){closedDuringSend=closed;$schedule(thisGoroutine);return value;});$block();return{$blk:function(){if(closedDuringSend){$throwRuntimeError("send on closed channel");}}};};var $recv=function(chan){var queuedSend=chan.$sendQueue.shift();if(queuedSend!==undefined){chan.$buffer.push(queuedSend(false));}var bufferedValue=chan.$buffer.shift();if(bufferedValue!==undefined){return[bufferedValue,true];}if(chan.$closed){return[chan.$elem.zero(),false];}var thisGoroutine=$curGoroutine;var f={$blk:function(){return this.value;}};var queueEntry=function(v){f.value=v;$schedule(thisGoroutine);};chan.$recvQueue.push(queueEntry);$block();return f;};var $close=function(chan){if(chan.$closed){$throwRuntimeError("close of closed channel");}chan.$closed=true;while(true){var queuedSend=chan.$sendQueue.shift();if(queuedSend===undefined){break;}queuedSend(true);}while(true){var queuedRecv=chan.$recvQueue.shift();if(queuedRecv===undefined){break;}queuedRecv([chan.$elem.zero(),false]);}};var $select=function(comms){var ready=[];var selection=-1;for(var i=0;i<comms.length;i++){var comm=comms[i];var chan=comm[0];switch(comm.length){case 0:selection=i;break;case 1:if(chan.$sendQueue.length!==0||chan.$buffer.length!==0||chan.$closed){ready.push(i);}break;case 2:if(chan.$closed){$throwRuntimeError("send on closed channel");}if(chan.$recvQueue.length!==0||chan.$buffer.length<chan.$capacity){ready.push(i);}break;}}if(ready.length!==0){selection=ready[Math.floor(Math.random()*ready.length)];}if(selection!==-1){var comm=comms[selection];switch(comm.length){case 0:return[selection];case 1:return[selection,$recv(comm[0])];case 2:$send(comm[0],comm[1]);return[selection];}}var entries=[];var thisGoroutine=$curGoroutine;var f={$blk:function(){return this.selection;}};var removeFromQueues=function(){for(var i=0;i<entries.length;i++){var entry=entries[i];var queue=entry[0];var index=queue.indexOf(entry[1]);if(index!==-1){queue.splice(index,1);}}};for(var i=0;i<comms.length;i++){(function(i){var comm=comms[i];switch(comm.length){case 1:var queueEntry=function(value){f.selection=[i,value];removeFromQueues();$schedule(thisGoroutine);};entries.push([comm[0].$recvQueue,queueEntry]);comm[0].$recvQueue.push(queueEntry);break;case 2:var queueEntry=function(){if(comm[0].$closed){$throwRuntimeError("send on closed channel");}f.selection=[i];removeFromQueues();$schedule(thisGoroutine);return comm[1];};entries.push([comm[0].$sendQueue,queueEntry]);comm[0].$sendQueue.push(queueEntry);break;}})(i);}$block();return f;};var $jsObjectPtr,$jsErrorPtr;var $needsExternalization=function(t){switch(t.kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindFloat32:case $kindFloat64:return false;default:return t!==$jsObjectPtr;}};var $externalize=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindFloat32:case $kindFloat64:return v;case $kindInt64:case $kindUint64:return $flatten64(v);case $kindArray:if($needsExternalization(t.elem)){return $mapArray(v,function(e){return $externalize(e,t.elem);});}return v;case $kindFunc:return $externalizeFunction(v,t,false);case $kindInterface:if(v===$ifaceNil){return null;}if(v.constructor===$jsObjectPtr){return v.$val.object;}return $externalize(v.$val,v.constructor);case $kindMap:var m={};var keys=$keys(v);for(var i=0;i<keys.length;i++){var entry=v[keys[i]];m[$externalize(entry.k,t.key)]=$externalize(entry.v,t.elem);}return m;case $kindPtr:if(v===t.nil){return null;}return $externalize(v.$get(),t.elem);case $kindSlice:if($needsExternalization(t.elem)){return $mapArray($sliceToArray(v),function(e){return $externalize(e,t.elem);});}return $sliceToArray(v);case $kindString:if(v.search(/^[\x00-\x7F]*$/)!==-1){return v;}var s="",r;for(var i=0;i<v.length;i+=r[1]){r=$decodeRune(v,i);var c=r[0];if(c>0xFFFF){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<t.fields.length;i++){var f=t.fields[i];if(!f.exported){continue;}o[f.name]=$externalize(v[f.prop],f.typ);}return o;}$throwRuntimeError("cannot externalize "+t.string);};var $externalizeFunction=function(v,t,passThis){if(v===$throwNilPointerError){return null;}if(v.$externalizeWrapper===undefined){$checkForDeadlock=false;v.$externalizeWrapper=function(){var args=[];for(var i=0;i<t.params.length;i++){if(t.variadic&&i===t.params.length-1){var vt=t.params[i].elem,varargs=[];for(var j=i;j<arguments.length;j++){varargs.push($internalize(arguments[j],vt));}args.push(new(t.params[i])(varargs));break;}args.push($internalize(arguments[i],t.params[i]));}var canBlock=$curGoroutine.canBlock;$curGoroutine.canBlock=false;try{var result=v.apply(passThis?this:undefined,args);}finally{$curGoroutine.canBlock=canBlock;}switch(t.results.length){case 0:return;case 1:return $externalize(result,t.results[0]);default:for(var i=0;i<t.results.length;i++){result[i]=$externalize(result[i],t.results[i]);}return result;}};}return v.$externalizeWrapper;};var $internalize=function(v,t,recv){if(t===$jsObjectPtr){return v;}if(t===$jsObjectPtr.elem){$throwRuntimeError("cannot internalize js.Object, use *js.Object instead");}if(v&&v.__internal_object__!==undefined){return $assertType(v.__internal_object__,t,false);}var timePkg=$packages["time"];if(timePkg!==undefined&&t===timePkg.Time){if(!(v!==null&&v!==undefined&&v.constructor===Date)){$throwRuntimeError("cannot internalize time.Time from "+typeof v+", must be Date");}return timePkg.Unix(new $Int64(0,0),new $Int64(0,v.getTime()*1000000));}switch(t.kind){case $kindBool:return!!v;case $kindInt:return parseInt(v);case $kindInt8:return parseInt(v)<<24>>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<t.params.length;i++){if(t.variadic&&i===t.params.length-1){var vt=t.params[i].elem,varargs=arguments[i];for(var j=0;j<varargs.$length;j++){args.push($externalize(varargs.$array[varargs.$offset+j],vt));}break;}args.push($externalize(arguments[i],t.params[i]));}var result=v.apply(recv,args);switch(t.results.length){case 0:return;case 1:return $internalize(result,t.results[0]);default:for(var i=0;i<t.results.length;i++){result[i]=$internalize(result[i],t.results[i]);}return result;}};case $kindInterface:if(t.methods.length!==0){$throwRuntimeError("cannot internalize "+t.string);}if(v===null){return $ifaceNil;}if(v===undefined){return new $jsObjectPtr(undefined);}switch(v.constructor){case Int8Array:return new($sliceType($Int8))(v);case Int16Array:return new($sliceType($Int16))(v);case Int32Array:return new($sliceType($Int))(v);case Uint8Array:return new($sliceType($Uint8))(v);case Uint16Array:return new($sliceType($Uint16))(v);case Uint32Array:return new($sliceType($Uint))(v);case Float32Array:return new($sliceType($Float32))(v);case Float64Array:return new($sliceType($Float64))(v);case Array:return $internalize(v,$sliceType($emptyInterface));case Boolean:return new $Bool(!!v);case Date:if(timePkg===undefined){return new $jsObjectPtr(v);}return new timePkg.Time($internalize(v,timePkg.Time));case Function:var funcType=$funcType([$sliceType($emptyInterface)],[$jsObjectPtr],true);return new funcType($internalize(v,funcType));case Number:return new $Float64(parseFloat(v));case String:return new $String($internalize(v,$String));default:if($global.Node&&v instanceof $global.Node){return new $jsObjectPtr(v);}var mapType=$mapType($String,$emptyInterface);return new mapType($internalize(v,mapType));}case $kindMap:var m={};var keys=$keys(v);for(var i=0;i<keys.length;i++){var k=$internalize(keys[i],t.key);m[t.key.keyFor(k)]={k:k,v:$internalize(v[keys[i]],t.elem)};}return m;case $kindPtr:if(t.elem.kind===$kindStruct){return $internalize(v,t.elem);}case $kindSlice:return new t($mapArray(v,function(e){return $internalize(e,t.elem);}));case $kindString:v=String(v);if(v.search(/^[\x00-\x7F]*$/)!==-1){return v;}var s="";var i=0;while(i<v.length){var h=v.charCodeAt(i);if(0xD800<=h&&h<=0xDBFF){var l=v.charCodeAt(i+1);var c=(h-0xD800)*0x400+l-0xDC00+0x10000;s+=$encodeRune(c);i+=2;continue;}s+=$encodeRune(h);i++;}return s;case $kindStruct:var noJsObject={};var searchJsObject=function(t){if(t===$jsObjectPtr){return v;}if(t===$jsObjectPtr.elem){$throwRuntimeError("cannot internalize js.Object, use *js.Object instead");}switch(t.kind){case $kindPtr:return searchJsObject(t.elem);case $kindStruct:var f=t.fields[0];var o=searchJsObject(f.typ);if(o!==noJsObject){var n=new t.ptr();n[f.prop]=o;return n;}return noJsObject;default:return noJsObject;}};var o=searchJsObject(t);if(o!==noJsObject){return o;}}$throwRuntimeError("cannot internalize "+t.string);};
+$packages["github.com/gopherjs/gopherjs/js"]=(function(){var $pkg={},$init,A,B,L,N,Q,E,K;A=$pkg.Object=$newType(0,$kindStruct,"js.Object",true,"github.com/gopherjs/gopherjs/js",true,function(object_){this.$val=this;if(arguments.length===0){this.object=null;return;}this.object=object_;});B=$pkg.Error=$newType(0,$kindStruct,"js.Error",true,"github.com/gopherjs/gopherjs/js",true,function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});L=$sliceType($emptyInterface);N=$ptrType(A);Q=$ptrType(B);A.ptr.prototype.Get=function(a){var $ptr,a,b;b=this;return b.object[$externalize(a,$String)];};A.prototype.Get=function(a){return this.$val.Get(a);};A.ptr.prototype.Set=function(a,b){var $ptr,a,b,c;c=this;c.object[$externalize(a,$String)]=$externalize(b,$emptyInterface);};A.prototype.Set=function(a,b){return this.$val.Set(a,b);};A.ptr.prototype.Delete=function(a){var $ptr,a,b;b=this;delete b.object[$externalize(a,$String)];};A.prototype.Delete=function(a){return this.$val.Delete(a);};A.ptr.prototype.Length=function(){var $ptr,a;a=this;return $parseInt(a.object.length);};A.prototype.Length=function(){return this.$val.Length();};A.ptr.prototype.Index=function(a){var $ptr,a,b;b=this;return b.object[a];};A.prototype.Index=function(a){return this.$val.Index(a);};A.ptr.prototype.SetIndex=function(a,b){var $ptr,a,b,c;c=this;c.object[a]=$externalize(b,$emptyInterface);};A.prototype.SetIndex=function(a,b){return this.$val.SetIndex(a,b);};A.ptr.prototype.Call=function(a,b){var $ptr,a,b,c,d;c=this;return(d=c.object,d[$externalize(a,$String)].apply(d,$externalize(b,L)));};A.prototype.Call=function(a,b){return this.$val.Call(a,b);};A.ptr.prototype.Invoke=function(a){var $ptr,a,b;b=this;return b.object.apply(undefined,$externalize(a,L));};A.prototype.Invoke=function(a){return this.$val.Invoke(a);};A.ptr.prototype.New=function(a){var $ptr,a,b;b=this;return new($global.Function.prototype.bind.apply(b.object,[undefined].concat($externalize(a,L))));};A.prototype.New=function(a){return this.$val.New(a);};A.ptr.prototype.Bool=function(){var $ptr,a;a=this;return!!(a.object);};A.prototype.Bool=function(){return this.$val.Bool();};A.ptr.prototype.String=function(){var $ptr,a;a=this;return $internalize(a.object,$String);};A.prototype.String=function(){return this.$val.String();};A.ptr.prototype.Int=function(){var $ptr,a;a=this;return $parseInt(a.object)>>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();};E=function(a){var $ptr,a;return $makeFunc(a);};$pkg.MakeFunc=E;K=function(){var $ptr,a;a=new B.ptr(null);$unused(a);};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("github.com/gopherjs/gopherjs/js",[{prop:"object",name:"object",exported:false,typ:N,tag:""}]);B.init("",[{prop:"Object",name:"",exported:true,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/internal/sys"]=(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["runtime"]=(function(){var $pkg={},$init,B,A,S,AH,AI,AO,AP,AV,E,H,K,L,R,T,W;B=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["runtime/internal/sys"];S=$pkg.Func=$newType(0,$kindStruct,"runtime.Func",true,"runtime",true,function(opaque_){this.$val=this;if(arguments.length===0){this.opaque=new AO.ptr();return;}this.opaque=opaque_;});AH=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError",true,"runtime",true,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_;});AI=$pkg.errorString=$newType(8,$kindString,"runtime.errorString",true,"runtime",false,null);AO=$structType("",[]);AP=$ptrType(S);AV=$ptrType(AH);E=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 AI(b));});b=$ifaceNil;b=new AH.ptr("","","","");$unused(b);};H=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=H;K=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=K;L=function(a){var $ptr,a;return 1;};$pkg.GOMAXPROCS=L;R=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=R;S.ptr.prototype.Entry=function(){var $ptr;return 0;};S.prototype.Entry=function(){return this.$val.Entry();};S.ptr.prototype.FileLine=function(a){var $ptr,a,b,c,d,e;b="";c=0;d="";e=0;b=d;c=e;return[b,c];};S.prototype.FileLine=function(a){return this.$val.FileLine(a);};S.ptr.prototype.Name=function(){var $ptr;return"";};S.prototype.Name=function(){return this.$val.Name();};T=function(a){var $ptr,a;return AP.nil;};$pkg.FuncForPC=T;W=function(a,b){var $ptr,a,b,c;c=new($global.Error)().stack;if(c===undefined){return 0;}return $copyString(a,$internalize(c.substr(($parseInt(c.indexOf($externalize("\n",$String)))>>0)+1>>0),$String));};$pkg.Stack=W;AH.ptr.prototype.RuntimeError=function(){var $ptr;};AH.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AH.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;};AH.prototype.Error=function(){return this.$val.Error();};AI.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AI).prototype.RuntimeError=function(){return new AI(this.$get()).RuntimeError();};AI.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AI).prototype.Error=function(){return new AI(this.$get()).Error();};AP.methods=[{prop:"Entry",name:"Entry",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"FileLine",name:"FileLine",pkg:"",typ:$funcType([$Uintptr],[$String,$Int],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)}];AV.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AI.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];S.init("runtime",[{prop:"opaque",name:"opaque",exported:false,typ:AO,tag:""}]);AH.init("runtime",[{prop:"interfaceString",name:"interfaceString",exported:false,typ:$String,tag:""},{prop:"concreteString",name:"concreteString",exported:false,typ:$String,tag:""},{prop:"assertedString",name:"assertedString",exported:false,typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",exported:false,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=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;}E();}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",true,"errors",false,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("errors",[{prop:"s",name:"s",exported:false,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["internal/race"]=(function(){var $pkg={},$init,A,B,C,D,E,H,I;A=function(a){var $ptr,a;};$pkg.Acquire=A;B=function(a){var $ptr,a;};$pkg.Release=B;C=function(a){var $ptr,a;};$pkg.ReleaseMerge=C;D=function(){var $ptr;};$pkg.Disable=D;E=function(){var $ptr;};$pkg.Enable=E;H=function(a,b){var $ptr,a,b;};$pkg.ReadRange=H;I=function(a,b){var $ptr,a,b;};$pkg.WriteRange=I;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}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,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;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,C,A,E,R,S,T,U,AF,AM,AN,AP,AQ,AR,AS,AT,AW,BB,BC,BD,BE,BG,BN,BO,BP,BQ,G,I,AA,F,H,J,K,L,Q,Y,AB,AC,AK,AL;B=$packages["internal/race"];C=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool",true,"sync",true,function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=BC.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});R=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex",true,"sync",true,function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});S=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker",true,"sync",true,null);T=$pkg.Once=$newType(0,$kindStruct,"sync.Once",true,"sync",true,function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new R.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});U=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal",true,"sync",false,function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=BC.nil;this.Mutex=new R.ptr(0,0);this.pad=BQ.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.notifyList=$newType(0,$kindStruct,"sync.notifyList",true,"sync",false,function(wait_,notify_,lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.wait=0;this.notify=0;this.lock=0;this.head=0;this.tail=0;return;}this.wait=wait_;this.notify=notify_;this.lock=lock_;this.head=head_;this.tail=tail_;});AM=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex",true,"sync",true,function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new R.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_;});AN=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker",true,"sync",false,function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new R.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_;});AP=$ptrType(E);AQ=$sliceType(AP);AR=$ptrType($Uint32);AS=$chanType($Bool,false,false);AT=$sliceType(AS);AW=$ptrType($Int32);BB=$ptrType(U);BC=$sliceType($emptyInterface);BD=$ptrType(AN);BE=$ptrType(AM);BG=$funcType([],[$emptyInterface],false);BN=$ptrType(R);BO=$funcType([],[],false);BP=$ptrType(T);BQ=$arrayType($Uint8,128);E.ptr.prototype.Get=function(){var $ptr,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;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=this;if(j.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(j.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:k=j.New();$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;case 4:$s=-1;return $ifaceNil;case 2:n=(l=j.store,m=j.store.$length-1>>0,((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]));j.store=$subslice(j.store,0,(j.store.$length-1>>0));$s=-1;return n;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(j){var $ptr,j,k;k=this;if($interfaceIsEqual(j,$ifaceNil)){return;}k.store=$append(k.store,j);};E.prototype.Put=function(j){return this.$val.Put(j);};F=function(j){var $ptr,j;};H=function(j){var $ptr,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;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:if(j.$get()===0){$s=1;continue;}$s=2;continue;case 1:k=new $Chan($Bool,0);l=j;(G||$throwRuntimeError("assignment to entry in nil map"))[AR.keyFor(l)]={k:l,v:$append((m=G[AR.keyFor(j)],m!==undefined?m.v:AT.nil),k)};n=$recv(k);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n[0];case 2:j.$set(j.$get()-(1)>>>0);$s=-1;return;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};J=function(j){var $ptr,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;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.$set(j.$get()+(1)>>>0);l=(k=G[AR.keyFor(j)],k!==undefined?k.v:AT.nil);if(l.$length===0){$s=-1;return;}m=(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]);l=$subslice(l,1);n=j;(G||$throwRuntimeError("assignment to entry in nil map"))[AR.keyFor(n)]={k:n,v:l};if(l.$length===0){delete G[AR.keyFor(j)];}$r=$send(m,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};K=function(j){var $ptr,j;};L=function(j){var $ptr,j;return false;};Q=function(){$throwRuntimeError("native function not implemented: sync.throw");};R.ptr.prototype.Lock=function(){var $ptr,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;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=this;if(A.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),0,1)){if(false){B.Acquire(j);}$s=-1;return;}k=false;l=0;case 1:m=j.state;n=m|1;if(!(((m&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(L(l)){if(!k&&((m&2)===0)&&!(((m>>2>>0)===0))&&A.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),m,m|2)){k=true;}AL();l=l+(1)>>0;$s=1;continue;}n=m+4>>0;case 4:if(k){if((n&2)===0){Q("sync: inconsistent mutex state");}n=(n&~(2))>>0;}if(A.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),m,n)){$s=5;continue;}$s=6;continue;case 5:if((m&1)===0){$s=2;continue;}$r=I((j.$ptr_sema||(j.$ptr_sema=new AR(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},j))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=true;l=0;case 6:$s=1;continue;case 2:if(false){B.Acquire(j);}$s=-1;return;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Lock};}$f.$ptr=$ptr;$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.Lock=function(){return this.$val.Lock();};R.ptr.prototype.Unlock=function(){var $ptr,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.state);B.Release(j);}k=A.AddInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),-1);if((((k+1>>0))&1)===0){Q("sync: unlock of unlocked mutex");}l=k;case 1:if(((l>>2>>0)===0)||!(((l&3)===0))){$s=-1;return;}k=((l-4>>0))|2;if(A.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),l,k)){$s=3;continue;}$s=4;continue;case 3:$r=J((j.$ptr_sema||(j.$ptr_sema=new AR(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},j))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 4:l=j.state;$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};R.prototype.Unlock=function(){return this.$val.Unlock();};T.ptr.prototype.Do=function(j){var $ptr,j,k,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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);k=this;if(A.LoadUint32((k.$ptr_done||(k.$ptr_done=new AR(function(){return this.$target.done;},function($v){this.$target.done=$v;},k))))===1){$s=-1;return;}$r=k.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(k.m,"Unlock"),[]]);if(k.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(k.$ptr_done||(k.$ptr_done=new AR(function(){return this.$target.done;},function($v){this.$target.done=$v;},k))),1]]);$r=j();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:T.ptr.prototype.Do};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};T.prototype.Do=function(j){return this.$val.Do(j);};Y=function(){var $ptr,j,k,l,m,n,o,p,q,r,s;j=AA;k=0;while(true){if(!(k<j.$length)){break;}l=k;m=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);((l<0||l>=AA.$length)?($throwRuntimeError("index out of range"),undefined):AA.$array[AA.$offset+l]=AP.nil);n=0;while(true){if(!(n<(m.localSize>>0))){break;}o=AC(m.local,n);o.private$0=$ifaceNil;p=o.shared;q=0;while(true){if(!(q<p.$length)){break;}r=q;(s=o.shared,((r<0||r>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+r]=$ifaceNil));q++;}o.shared=BC.nil;n=n+(1)>>0;}m.local=0;m.localSize=0;k++;}AA=new AQ([]);};AB=function(){var $ptr;F(Y);};AC=function(j,k){var $ptr,j,k,l;return(l=j,(l.nilCheck,((k<0||k>=l.length)?($throwRuntimeError("index out of range"),undefined):l[k])));};AK=function(){var $ptr,j;j=new AF.ptr(0,0,0,0,0);K(20);};AL=function(){$throwRuntimeError("native function not implemented: sync.runtime_doSpin");};AM.ptr.prototype.RLock=function(){var $ptr,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);B.Disable();}if(A.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AW(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(false){B.Enable();B.Acquire((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));}$s=-1;return;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.RLock=function(){return this.$val.RLock();};AM.ptr.prototype.RUnlock=function(){var $ptr,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);B.ReleaseMerge((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));B.Disable();}k=A.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AW(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),-1);if(k<0){$s=1;continue;}$s=2;continue;case 1:if(((k+1>>0)===0)||((k+1>>0)===-1073741824)){B.Enable();Q("sync: RUnlock of unlocked RWMutex");}if(A.AddInt32((j.$ptr_readerWait||(j.$ptr_readerWait=new AW(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},j))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=J((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:if(false){B.Enable();}$s=-1;return;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.RUnlock=function(){return this.$val.RUnlock();};AM.ptr.prototype.Lock=function(){var $ptr,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);B.Disable();}$r=j.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=A.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AW(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),-1073741824)+1073741824>>0;if(!((k===0))&&!((A.AddInt32((j.$ptr_readerWait||(j.$ptr_readerWait=new AW(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},j))),k)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:if(false){B.Enable();B.Acquire((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));B.Acquire((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));}$s=-1;return;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Lock=function(){return this.$val.Lock();};AM.ptr.prototype.Unlock=function(){var $ptr,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);B.Release((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));B.Release((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));B.Disable();}k=A.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AW(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),1073741824);if(k>=1073741824){B.Enable();Q("sync: Unlock of unlocked RWMutex");}l=0;case 1:if(!(l<(k>>0))){$s=2;continue;}$r=J((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=l+(1)>>0;$s=1;continue;case 2:$r=j.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(false){B.Enable();}$s=-1;return;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Unlock=function(){return this.$val.Unlock();};AM.ptr.prototype.RLocker=function(){var $ptr,j;j=this;return $pointerOfStructConversion(j,BD);};AM.prototype.RLocker=function(){return this.$val.RLocker();};AN.ptr.prototype.Lock=function(){var $ptr,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;$r=$pointerOfStructConversion(j,BE).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Lock=function(){return this.$val.Lock();};AN.ptr.prototype.Unlock=function(){var $ptr,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;$r=$pointerOfStructConversion(j,BE).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Unlock=function(){return this.$val.Unlock();};AP.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([],[BB],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[BB],false)}];BN.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BP.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BO],[],false)}];BE.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([],[S],false)}];BD.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init("sync",[{prop:"local",name:"local",exported:false,typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",exported:false,typ:$Uintptr,tag:""},{prop:"store",name:"store",exported:false,typ:BC,tag:""},{prop:"New",name:"New",exported:true,typ:BG,tag:""}]);R.init("sync",[{prop:"state",name:"state",exported:false,typ:$Int32,tag:""},{prop:"sema",name:"sema",exported:false,typ:$Uint32,tag:""}]);S.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);T.init("sync",[{prop:"m",name:"m",exported:false,typ:R,tag:""},{prop:"done",name:"done",exported:false,typ:$Uint32,tag:""}]);U.init("sync",[{prop:"private$0",name:"private",exported:false,typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",exported:false,typ:BC,tag:""},{prop:"Mutex",name:"",exported:true,typ:R,tag:""},{prop:"pad",name:"pad",exported:false,typ:BQ,tag:""}]);AF.init("sync",[{prop:"wait",name:"wait",exported:false,typ:$Uint32,tag:""},{prop:"notify",name:"notify",exported:false,typ:$Uint32,tag:""},{prop:"lock",name:"lock",exported:false,typ:$Uintptr,tag:""},{prop:"head",name:"head",exported:false,typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",exported:false,typ:$UnsafePointer,tag:""}]);AM.init("sync",[{prop:"w",name:"w",exported:false,typ:R,tag:""},{prop:"writerSem",name:"writerSem",exported:false,typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",exported:false,typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",exported:false,typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",exported:false,typ:$Int32,tag:""}]);AN.init("sync",[{prop:"w",name:"w",exported:false,typ:R,tag:""},{prop:"writerSem",name:"writerSem",exported:false,typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",exported:false,typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",exported:false,typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",exported:false,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=C.$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;}AA=AQ.nil;G={};I=H;AB();AK();}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,S,U,V,W,AY,AI,AJ,X,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader",true,"io",true,null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer",true,"io",true,null);S=$pkg.ByteScanner=$newType(8,$kindInterface,"io.ByteScanner",true,"io",true,null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader",true,"io",true,null);V=$pkg.RuneScanner=$newType(8,$kindInterface,"io.RuneScanner",true,"io",true,null);W=$pkg.stringWriter=$newType(8,$kindInterface,"io.stringWriter",true,"io",false,null);AY=$sliceType($Uint8);X=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=0;d=$ifaceNil;e=$assertType(a,W,true);f=e[0];g=e[1];if(g){$s=1;continue;}$s=2;continue;case 1:i=f.WriteString(b);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c=h[0];d=h[1];$s=-1;return[c,d];case 2:k=a.Write(new AY($stringToBytes(b)));$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;c=j[0];d=j[1];$s=-1;return[c,d];}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.$s=$s;$f.$r=$r;return $f;};$pkg.WriteString=X;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<c){f=0;g=$pkg.ErrShortBuffer;d=f;e=g;$s=-1;return[d,e];}case 1:if(!(d<c&&$interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}h=0;j=a.Read($subslice(b,d));$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;h=i[0];e=i[1];d=d+(h)>>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}$s=-1;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=-1;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([AY],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AY],[$Int,$error],false)}]);S.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)}]);V.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);W.init([{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$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,FI,FJ,FK,FL,GS,B,C,D,E,F,AS,EQ,P,T,V,W,X,Z,AC,AH,AT,AU,AV,AW,AX,AY,BI,BW,EG,ES;A=$packages["github.com/gopherjs/gopherjs/js"];FI=$arrayType($Uint32,2);FJ=$arrayType($Float32,2);FK=$arrayType($Float64,1);FL=$structType("math",[{prop:"uint32array",name:"uint32array",exported:false,typ:FI,tag:""},{prop:"float32array",name:"float32array",exported:false,typ:FJ,tag:""},{prop:"float64array",name:"float64array",exported:false,typ:FK,tag:""}]);GS=$arrayType($Float64,70);P=function(aq){var $ptr,aq;return $parseFloat(B.exp(aq));};$pkg.Exp=P;T=function(aq){var $ptr,aq,ar,as,at;ar=0;as=0;at=BW(aq);ar=at[0];as=at[1];return[ar,as];};$pkg.Frexp=T;V=function(aq){var $ptr,aq;if(aq>=0){return D;}else{return E;}};$pkg.Inf=V;W=function(aq,ar){var $ptr,aq,ar;if(aq===D){return ar>=0;}if(aq===E){return ar<=0;}return false;};$pkg.IsInf=W;X=function(aq){var $ptr,aq,ar;ar=false;ar=!((aq===aq));return ar;};$pkg.IsNaN=X;Z=function(aq){var $ptr,aq;if(!((aq===aq))){return F;}return $parseFloat(B.log(aq));};$pkg.Log=Z;AC=function(aq){var $ptr,aq;return EG(aq);};$pkg.Log2=AC;AH=function(){var $ptr;return F;};$pkg.NaN=AH;AT=function(){var $ptr,aq;aq=new($global.ArrayBuffer)(8);AS.uint32array=new($global.Uint32Array)(aq);AS.float32array=new($global.Float32Array)(aq);AS.float64array=new($global.Float64Array)(aq);};AU=function(aq){var $ptr,aq;AS.float32array[0]=aq;return AS.uint32array[0];};$pkg.Float32bits=AU;AV=function(aq){var $ptr,aq;AS.uint32array[0]=aq;return AS.float32array[0];};$pkg.Float32frombits=AV;AW=function(aq){var $ptr,aq,ar,as;AS.float64array[0]=aq;return(ar=$shiftLeft64(new $Uint64(0,AS.uint32array[1]),32),as=new $Uint64(0,AS.uint32array[0]),new $Uint64(ar.$high+as.$high,ar.$low+as.$low));};$pkg.Float64bits=AW;AX=function(aq){var $ptr,aq;AS.uint32array[0]=(aq.$low>>>0);AS.uint32array[1]=($shiftRightUint64(aq,32).$low>>>0);return AS.float64array[0];};$pkg.Float64frombits=AX;AY=function(aq){var $ptr,aq;if(aq<0){return-aq;}if(aq===0){return 0;}return aq;};$pkg.Abs=AY;BI=function(aq){var $ptr,aq,ar,as,at,au,av,aw;ar=0;as=0;if(AY(aq)<2.2250738585072014e-308){at=aq*4.503599627370496e+15;au=-52;ar=at;as=au;return[ar,as];}av=aq;aw=0;ar=av;as=aw;return[ar,as];};BW=function(aq){var $ptr,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb;ar=0;as=0;if((aq===0)){at=aq;au=0;ar=at;as=au;return[ar,as];}else if(W(aq,0)||X(aq)){av=aq;aw=0;ar=av;as=aw;return[ar,as];}ax=BI(aq);aq=ax[0];as=ax[1];ay=AW(aq);as=as+(((((az=$shiftRightUint64(ay,52),new $Uint64(az.$high&0,(az.$low&2047)>>>0)).$low>>0)-1023>>0)+1>>0))>>0;ay=(ba=new $Uint64(2146435072,0),new $Uint64(ay.$high&~ba.$high,(ay.$low&~ba.$low)>>>0));ay=(bb=new $Uint64(1071644672,0),new $Uint64(ay.$high|bb.$high,(ay.$low|bb.$low)>>>0));ar=AX(ay);return[ar,as];};EG=function(aq){var $ptr,aq,ar,as,at;ar=T(aq);as=ar[0];at=ar[1];if(as===0.5){return(at-1>>0);}return Z(as)*1.4426950408889634+at;};ES=function(){var $ptr,aq,ar,as,at;EQ[0]=1;EQ[1]=10;aq=2;while(true){if(!(aq<70)){break;}as=(ar=aq/2,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));((aq<0||aq>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[aq]=((as<0||as>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[as])*(at=aq-as>>0,((at<0||at>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[at])));aq=aq+(1)>>0;}};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AS=new FL.ptr(FI.zero(),FJ.zero(),FK.zero());EQ=GS.zero();B=$global.Math;C=0;D=1/C;E=-1/C;F=0/C;AT();ES();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["syscall"]=(function(){var $pkg={},$init,A,D,B,C,BT,BW,BZ,DT,DU,FT,FU,GC,GD,GE,GF,MT,NC,NH,NI,NJ,NK,NL,NM,NN,NO,OC,OE,OG,OH,OI,OV,OX,PF,PO,PP,PQ,PU,PV,PW,PX,PY,QC,QI,QJ,QK,QL,QM,QS,QT,QW,QX,QY,QZ,RA,RB,RC,RD,RE,RF,RI,E,F,N,O,P,AA,AB,AC,AD,FJ,FV,FW,FX,GY,PE,HD,G,H,I,J,K,L,Q,R,S,T,V,W,X,Y,Z,AF,AH,AW,BP,BQ,BR,BS,BU,BV,BX,BY,CA,CB,CN,CO,CT,CV,DB,DV,DY,FB,FC,FD,FE,FY,GA,GB,GG,GK,GL,GV,HG,HW,ID,IG,IH,II,IK,IN,IO,JI,KD,KH,KP,KQ,KS,KV,KX,LD,LE,LF,LG,LS,LY,ME,MH,MI,MJ,MM;A=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["internal/race"];B=$packages["runtime"];C=$packages["sync"];BT=$pkg.NetlinkRouteRequest=$newType(0,$kindStruct,"syscall.NetlinkRouteRequest",true,"syscall",true,function(Header_,Data_){this.$val=this;if(arguments.length===0){this.Header=new OC.ptr(0,0,0,0,0);this.Data=new OE.ptr(0);return;}this.Header=Header_;this.Data=Data_;});BW=$pkg.NetlinkMessage=$newType(0,$kindStruct,"syscall.NetlinkMessage",true,"syscall",true,function(Header_,Data_){this.$val=this;if(arguments.length===0){this.Header=new OC.ptr(0,0,0,0,0);this.Data=OV.nil;return;}this.Header=Header_;this.Data=Data_;});BZ=$pkg.NetlinkRouteAttr=$newType(0,$kindStruct,"syscall.NetlinkRouteAttr",true,"syscall",true,function(Attr_,Value_){this.$val=this;if(arguments.length===0){this.Attr=new OG.ptr(0,0);this.Value=OV.nil;return;}this.Attr=Attr_;this.Value=Value_;});DT=$pkg.SockaddrLinklayer=$newType(0,$kindStruct,"syscall.SockaddrLinklayer",true,"syscall",true,function(Protocol_,Ifindex_,Hatype_,Pkttype_,Halen_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Protocol=0;this.Ifindex=0;this.Hatype=0;this.Pkttype=0;this.Halen=0;this.Addr=PO.zero();this.raw=new NK.ptr(0,0,0,0,0,0,PO.zero());return;}this.Protocol=Protocol_;this.Ifindex=Ifindex_;this.Hatype=Hatype_;this.Pkttype=Pkttype_;this.Halen=Halen_;this.Addr=Addr_;this.raw=raw_;});DU=$pkg.SockaddrNetlink=$newType(0,$kindStruct,"syscall.SockaddrNetlink",true,"syscall",true,function(Family_,Pad_,Pid_,Groups_,raw_){this.$val=this;if(arguments.length===0){this.Family=0;this.Pad=0;this.Pid=0;this.Groups=0;this.raw=new NL.ptr(0,0,0,0);return;}this.Family=Family_;this.Pad=Pad_;this.Pid=Pid_;this.Groups=Groups_;this.raw=raw_;});FT=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper",true,"syscall",false,function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new C.Mutex.ptr(0,0);this.active=false;this.mmap=$throwNilPointerError;this.munmap=$throwNilPointerError;return;}this.Mutex=Mutex_;this.active=active_;this.mmap=mmap_;this.munmap=munmap_;});FU=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno",true,"syscall",true,null);GC=$pkg.Sockaddr=$newType(8,$kindInterface,"syscall.Sockaddr",true,"syscall",true,null);GD=$pkg.SockaddrInet4=$newType(0,$kindStruct,"syscall.SockaddrInet4",true,"syscall",true,function(Port_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Port=0;this.Addr=QJ.zero();this.raw=new NH.ptr(0,0,QJ.zero(),PO.zero());return;}this.Port=Port_;this.Addr=Addr_;this.raw=raw_;});GE=$pkg.SockaddrInet6=$newType(0,$kindStruct,"syscall.SockaddrInet6",true,"syscall",true,function(Port_,ZoneId_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Port=0;this.ZoneId=0;this.Addr=PQ.zero();this.raw=new NI.ptr(0,0,0,PQ.zero(),0);return;}this.Port=Port_;this.ZoneId=ZoneId_;this.Addr=Addr_;this.raw=raw_;});GF=$pkg.SockaddrUnix=$newType(0,$kindStruct,"syscall.SockaddrUnix",true,"syscall",true,function(Name_,raw_){this.$val=this;if(arguments.length===0){this.Name="";this.raw=new NJ.ptr(0,QI.zero());return;}this.Name=Name_;this.raw=raw_;});MT=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec",true,"syscall",true,function(Sec_,Nsec_){this.$val=this;if(arguments.length===0){this.Sec=new $Int64(0,0);this.Nsec=new $Int64(0,0);return;}this.Sec=Sec_;this.Nsec=Nsec_;});NC=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t",true,"syscall",true,function(Dev_,Ino_,Nlink_,Mode_,Uid_,Gid_,X__pad0_,Rdev_,Size_,Blksize_,Blocks_,Atim_,Mtim_,Ctim_,X__unused_){this.$val=this;if(arguments.length===0){this.Dev=new $Uint64(0,0);this.Ino=new $Uint64(0,0);this.Nlink=new $Uint64(0,0);this.Mode=0;this.Uid=0;this.Gid=0;this.X__pad0=0;this.Rdev=new $Uint64(0,0);this.Size=new $Int64(0,0);this.Blksize=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Atim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.X__unused=RI.zero();return;}this.Dev=Dev_;this.Ino=Ino_;this.Nlink=Nlink_;this.Mode=Mode_;this.Uid=Uid_;this.Gid=Gid_;this.X__pad0=X__pad0_;this.Rdev=Rdev_;this.Size=Size_;this.Blksize=Blksize_;this.Blocks=Blocks_;this.Atim=Atim_;this.Mtim=Mtim_;this.Ctim=Ctim_;this.X__unused=X__unused_;});NH=$pkg.RawSockaddrInet4=$newType(0,$kindStruct,"syscall.RawSockaddrInet4",true,"syscall",true,function(Family_,Port_,Addr_,Zero_){this.$val=this;if(arguments.length===0){this.Family=0;this.Port=0;this.Addr=QJ.zero();this.Zero=PO.zero();return;}this.Family=Family_;this.Port=Port_;this.Addr=Addr_;this.Zero=Zero_;});NI=$pkg.RawSockaddrInet6=$newType(0,$kindStruct,"syscall.RawSockaddrInet6",true,"syscall",true,function(Family_,Port_,Flowinfo_,Addr_,Scope_id_){this.$val=this;if(arguments.length===0){this.Family=0;this.Port=0;this.Flowinfo=0;this.Addr=PQ.zero();this.Scope_id=0;return;}this.Family=Family_;this.Port=Port_;this.Flowinfo=Flowinfo_;this.Addr=Addr_;this.Scope_id=Scope_id_;});NJ=$pkg.RawSockaddrUnix=$newType(0,$kindStruct,"syscall.RawSockaddrUnix",true,"syscall",true,function(Family_,Path_){this.$val=this;if(arguments.length===0){this.Family=0;this.Path=QI.zero();return;}this.Family=Family_;this.Path=Path_;});NK=$pkg.RawSockaddrLinklayer=$newType(0,$kindStruct,"syscall.RawSockaddrLinklayer",true,"syscall",true,function(Family_,Protocol_,Ifindex_,Hatype_,Pkttype_,Halen_,Addr_){this.$val=this;if(arguments.length===0){this.Family=0;this.Protocol=0;this.Ifindex=0;this.Hatype=0;this.Pkttype=0;this.Halen=0;this.Addr=PO.zero();return;}this.Family=Family_;this.Protocol=Protocol_;this.Ifindex=Ifindex_;this.Hatype=Hatype_;this.Pkttype=Pkttype_;this.Halen=Halen_;this.Addr=Addr_;});NL=$pkg.RawSockaddrNetlink=$newType(0,$kindStruct,"syscall.RawSockaddrNetlink",true,"syscall",true,function(Family_,Pad_,Pid_,Groups_){this.$val=this;if(arguments.length===0){this.Family=0;this.Pad=0;this.Pid=0;this.Groups=0;return;}this.Family=Family_;this.Pad=Pad_;this.Pid=Pid_;this.Groups=Groups_;});NM=$pkg.RawSockaddr=$newType(0,$kindStruct,"syscall.RawSockaddr",true,"syscall",true,function(Family_,Data_){this.$val=this;if(arguments.length===0){this.Family=0;this.Data=QK.zero();return;}this.Family=Family_;this.Data=Data_;});NN=$pkg.RawSockaddrAny=$newType(0,$kindStruct,"syscall.RawSockaddrAny",true,"syscall",true,function(Addr_,Pad_){this.$val=this;if(arguments.length===0){this.Addr=new NM.ptr(0,QK.zero());this.Pad=QL.zero();return;}this.Addr=Addr_;this.Pad=Pad_;});NO=$pkg._Socklen=$newType(4,$kindUint32,"syscall._Socklen",true,"syscall",false,null);OC=$pkg.NlMsghdr=$newType(0,$kindStruct,"syscall.NlMsghdr",true,"syscall",true,function(Len_,Type_,Flags_,Seq_,Pid_){this.$val=this;if(arguments.length===0){this.Len=0;this.Type=0;this.Flags=0;this.Seq=0;this.Pid=0;return;}this.Len=Len_;this.Type=Type_;this.Flags=Flags_;this.Seq=Seq_;this.Pid=Pid_;});OE=$pkg.RtGenmsg=$newType(0,$kindStruct,"syscall.RtGenmsg",true,"syscall",true,function(Family_){this.$val=this;if(arguments.length===0){this.Family=0;return;}this.Family=Family_;});OG=$pkg.RtAttr=$newType(0,$kindStruct,"syscall.RtAttr",true,"syscall",true,function(Len_,Type_){this.$val=this;if(arguments.length===0){this.Len=0;this.Type=0;return;}this.Len=Len_;this.Type=Type_;});OH=$pkg.IfInfomsg=$newType(0,$kindStruct,"syscall.IfInfomsg",true,"syscall",true,function(Family_,X__ifi_pad_,Type_,Index_,Flags_,Change_){this.$val=this;if(arguments.length===0){this.Family=0;this.X__ifi_pad=0;this.Type=0;this.Index=0;this.Flags=0;this.Change=0;return;}this.Family=Family_;this.X__ifi_pad=X__ifi_pad_;this.Type=Type_;this.Index=Index_;this.Flags=Flags_;this.Change=Change_;});OI=$pkg.IfAddrmsg=$newType(0,$kindStruct,"syscall.IfAddrmsg",true,"syscall",true,function(Family_,Prefixlen_,Flags_,Scope_,Index_){this.$val=this;if(arguments.length===0){this.Family=0;this.Prefixlen=0;this.Flags=0;this.Scope=0;this.Index=0;return;}this.Family=Family_;this.Prefixlen=Prefixlen_;this.Flags=Flags_;this.Scope=Scope_;this.Index=Index_;});OV=$sliceType($Uint8);OX=$sliceType($String);PF=$ptrType($Uint8);PO=$arrayType($Uint8,8);PP=$ptrType($Uint16);PQ=$arrayType($Uint8,16);PU=$ptrType(DU);PV=$sliceType(BW);PW=$ptrType(OC);PX=$sliceType(BZ);PY=$ptrType(OG);QC=$arrayType($Uint8,32);QI=$arrayType($Int8,108);QJ=$arrayType($Uint8,4);QK=$arrayType($Int8,14);QL=$arrayType($Int8,96);QM=$ptrType(NO);QS=$structType("syscall",[{prop:"addr",name:"addr",exported:false,typ:$Uintptr,tag:""},{prop:"len",name:"len",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:$Int,tag:""}]);QT=$ptrType($Int64);QW=$ptrType(BT);QX=$ptrType(DT);QY=$ptrType(FT);QZ=$mapType(PF,OV);RA=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);RB=$funcType([$Uintptr,$Uintptr],[$error],false);RC=$ptrType(GD);RD=$ptrType(GE);RE=$ptrType(GF);RF=$ptrType(MT);RI=$arrayType($Int64,3);G=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((F.$length===0))){$global.console.log($externalize($bytesToString(F),$String));F=OV.nil;}});};H=function(){var $ptr;if(!E){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}E=true;};I=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}F=$appendSlice(F,i);while(true){k=K(F,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(F,0,k)),$String));F=$subslice(F,(k+1>>0));}};J=function(i){var $ptr,i;};K=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(n===j){return m;}l++;}return-1;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return OX.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(OX,$parseInt(k.length));m=0;while(true){if(!(m<$parseInt(k.length))){break;}n=$internalize(k[m],$String);((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]=n+"="+$internalize(j[$externalize(n,$String)],$String));m=m+(1)>>0;}return l;};Q=function(i){var $ptr,i,j,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;$recover();}),[]]);if(N===null){if(O){return null;}O=true;j=$global.require;if(j===undefined){$panic(new $String(""));}N=j($externalize("syscall",$String));}return N[$externalize(i,$String)];}catch(err){$err=err;return null;}finally{$callDeferred($deferred,$err);}};R=function(i,j,k,l){var $ptr,aa,ab,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=0;n=0;o=0;p=Q("Syscall");if(!(p===null)){q=p(i,j,k,l);r=(($parseInt(q[0])>>0)>>>0);s=(($parseInt(q[1])>>0)>>>0);t=(($parseInt(q[2])>>0)>>>0);m=r;n=s;o=t;return[m,n,o];}if((i===1)&&((j===1)||(j===2))){u=k;v=$makeSlice(OV,$parseInt(u.length));v.$array=u;I(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===60){B.Goexit();}H();z=(P>>>0);aa=0;ab=13;m=z;n=aa;o=ab;return[m,n,o];};$pkg.Syscall=R;S=function(i,j,k,l,m,n,o){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=0;r=0;s=Q("Syscall6");if(!(s===null)){t=s(i,j,k,l,m,n,o);u=(($parseInt(t[0])>>0)>>>0);v=(($parseInt(t[1])>>0)>>>0);w=(($parseInt(t[2])>>0)>>>0);p=u;q=v;r=w;return[p,q,r];}if(!((i===202))){H();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;T=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;m=0;n=0;o=0;p=Q("Syscall");if(!(p===null)){q=p(i,j,k,l);r=(($parseInt(q[0])>>0)>>>0);s=(($parseInt(q[1])>>0)>>>0);t=(($parseInt(q[2])>>0)>>>0);m=r;n=s;o=t;return[m,n,o];}H();u=(P>>>0);v=0;w=13;m=u;n=v;o=w;return[m,n,o];};$pkg.RawSyscall=T;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new OV($stringToBytes(i));l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(n===0){return[PF.nil,new FU(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;W=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=new $Uint64(0,0);m=false;if(i.$length<((j+k>>>0)>>0)){n=new $Uint64(0,0);o=false;l=n;m=o;return[l,m];}if(false){p=X($subslice(i,j),k);q=true;l=p;m=q;return[l,m];}r=Y($subslice(i,j),k);s=true;l=r;m=s;return[l,m];};X=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=j;if(k===(1)){return new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));}else if(k===(2)){$unused((1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));return(l=new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),m=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),8),new $Uint64(l.$high|m.$high,(l.$low|m.$low)>>>0));}else if(k===(4)){$unused((3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]));return(n=(o=(p=new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),q=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),8),new $Uint64(p.$high|q.$high,(p.$low|q.$low)>>>0)),r=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),16),new $Uint64(o.$high|r.$high,(o.$low|r.$low)>>>0)),s=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),24),new $Uint64(n.$high|s.$high,(n.$low|s.$low)>>>0));}else if(k===(8)){$unused((7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7]));return(t=(u=(v=(w=(x=(y=(z=new $Uint64(0,(7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7])),aa=$shiftLeft64(new $Uint64(0,(6>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+6])),8),new $Uint64(z.$high|aa.$high,(z.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(5>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+5])),16),new $Uint64(y.$high|ab.$high,(y.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(4>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+4])),24),new $Uint64(x.$high|ac.$high,(x.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),32),new $Uint64(w.$high|ad.$high,(w.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),40),new $Uint64(v.$high|ae.$high,(v.$low|ae.$low)>>>0)),af=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),48),new $Uint64(u.$high|af.$high,(u.$low|af.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),56),new $Uint64(t.$high|ag.$high,(t.$low|ag.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};Y=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=j;if(k===(1)){return new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));}else if(k===(2)){$unused((1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));return(l=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),m=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(l.$high|m.$high,(l.$low|m.$low)>>>0));}else if(k===(4)){$unused((3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]));return(n=(o=(p=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),q=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(p.$high|q.$high,(p.$low|q.$low)>>>0)),r=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),16),new $Uint64(o.$high|r.$high,(o.$low|r.$low)>>>0)),s=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),24),new $Uint64(n.$high|s.$high,(n.$low|s.$low)>>>0));}else if(k===(8)){$unused((7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7]));return(t=(u=(v=(w=(x=(y=(z=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),aa=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(z.$high|aa.$high,(z.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),16),new $Uint64(y.$high|ab.$high,(y.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),24),new $Uint64(x.$high|ac.$high,(x.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(4>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+4])),32),new $Uint64(w.$high|ad.$high,(w.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(5>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+5])),40),new $Uint64(v.$high|ae.$high,(v.$low|ae.$low)>>>0)),af=$shiftLeft64(new $Uint64(0,(6>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+6])),48),new $Uint64(u.$high|af.$high,(u.$low|af.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7])),56),new $Uint64(t.$high|ag.$high,(t.$low|ag.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};Z=function(i,j,k){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;l=0;m=0;n=OX.nil;o=i.$length;m=0;while(true){if(!(!((j===0))&&i.$length>0)){break;}p=FD(i);q=p[0];r=p[1];if(!r||(s=new $Uint64(0,i.$length),(q.$high>s.$high||(q.$high===s.$high&&q.$low>s.$low)))){t=o;u=m;v=k;l=t;m=u;n=v;return[l,m,n];}w=$subslice(i,0,$flatten64(q));i=$subslice(i,$flatten64(q));x=FC(w);y=x[0];r=x[1];if(!r){break;}if((y.$high===0&&y.$low===0)){continue;}z=FE(w);aa=z[0];r=z[1];if(!r||(ab=new $Uint64(0+aa.$high,19+aa.$low),ac=new $Uint64(0,w.$length),(ab.$high>ac.$high||(ab.$high===ac.$high&&ab.$low>ac.$low)))){break;}ad=$subslice(w,19,$flatten64(new $Uint64(0+aa.$high,19+aa.$low)));ae=ad;af=0;while(true){if(!(af<ae.$length)){break;}ag=af;ah=((af<0||af>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+af]);if(ah===0){ad=$subslice(ad,0,ag);break;}af++;}if($bytesToString(ad)==="."||$bytesToString(ad)===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,$bytesToString(ad));}ai=o-i.$length>>0;aj=m;ak=k;l=ai;m=aj;n=ak;return[l,m,n];};$pkg.ParseDirent=Z;AF=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AC={};i=AD;j=0;while(true){if(!(j<i.$length)){break;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);m=0;while(true){if(!(m<l.length)){break;}if(l.charCodeAt(m)===61){n=$substring(l,0,m);o=(p=AC[$String.keyFor(n)],p!==undefined?[p.v,true]:[0,false]);q=o[1];if(!q){r=n;(AC||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(r)]={k:r,v:k};}else{((k<0||k>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AH=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);j="";k=false;$r=AA.Do(AF);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(i.length===0){l="";m=false;j=l;k=m;$s=-1;return[j,k];}$r=AB.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AB,"RUnlock"),[]]);n=(o=AC[$String.keyFor(i)],o!==undefined?[o.v,true]:[0,false]);p=n[0];q=n[1];if(!q){r="";s=false;j=r;k=s;$s=-1;return[j,k];}t=((p<0||p>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+p]);u=0;while(true){if(!(u<t.length)){break;}if(t.charCodeAt(u)===61){v=$substring(t,(u+1>>0));w=true;j=v;k=w;$s=-1;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;$s=-1;return[j,k];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[j,k];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.Getenv=AH;AW=function(i){var $ptr,i;IK(i,2,1);};$pkg.CloseOnExec=AW;BP=function(i,j){var $ptr,i,j;};BQ=function(i,j){var $ptr,i,j;};BR=function(i){var $ptr,i;return(((i+4>>0)-1>>0))&-4;};BS=function(i){var $ptr,i;return(((i+4>>0)-1>>0))&-4;};BT.ptr.prototype.toWireFormat=function(){var $ptr,i,j;i=this;j=$makeSlice(OV,i.Header.Len);$sliceToArray($subslice(j,0,4)).$set(i.Header.Len);$sliceToArray($subslice(j,4,6)).$set(i.Header.Type);$sliceToArray($subslice(j,6,8)).$set(i.Header.Flags);$sliceToArray($subslice(j,8,12)).$set(i.Header.Seq);$sliceToArray($subslice(j,12,16)).$set(i.Header.Pid);(16>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+16]=i.Data.Family);return j;};BT.prototype.toWireFormat=function(){return this.$val.toWireFormat();};BU=function(i,j,k){var $ptr,i,j,k,l;l=new BT.ptr(new OC.ptr(0,0,0,0,0),new OE.ptr(0));l.Header.Len=17;l.Header.Type=(i<<16>>>16);l.Header.Flags=769;l.Header.Seq=(j>>>0);l.Data.Family=(k<<24>>>24);return l.toWireFormat();};BV=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);k=GV(16,3,0);l=k[0];m=k[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[OV.nil,m];}$deferred.push([HW,[l]]);n=new DU.ptr(16,0,0,0,new NL.ptr(0,0,0,0));o=GG(l,n);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return[OV.nil,p];}q=BU(i,1,j);r=GL(l,q,0,n);$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[OV.nil,s];}t=OV.nil;u=$makeSlice(OV,CT());done:while(true){v=u;w=GK(l,v,0);x=w[0];y=w[2];if(!($interfaceIsEqual(y,$ifaceNil))){$s=-1;return[OV.nil,y];}if(x<16){$s=-1;return[OV.nil,new FU(22)];}v=$subslice(v,0,x);t=$appendSlice(t,v);z=BX(v);aa=z[0];y=z[1];if(!($interfaceIsEqual(y,$ifaceNil))){$s=-1;return[OV.nil,y];}ab=aa;ac=0;while(true){if(!(ac<ab.$length)){break;}ad=$clone(((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac]),BW);ae=DY(l);af=ae[0];ag=ae[1];if(!($interfaceIsEqual(ag,$ifaceNil))){$s=-1;return[OV.nil,ag];}ah=af;if($assertType(ah,PU,true)[1]){ai=ah.$val;if(!((ad.Header.Seq===1))||!((ad.Header.Pid===ai.Pid))){$s=-1;return[OV.nil,new FU(22)];}}else{aj=ah;$s=-1;return[OV.nil,new FU(22)];}if(ad.Header.Type===3){break done;}if(ad.Header.Type===2){$s=-1;return[OV.nil,new FU(22)];}ac++;}}$s=-1;return[t,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[OV.nil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.NetlinkRIB=BV;BX=function(i){var $ptr,i,j,k,l,m,n,o,p;j=PV.nil;while(true){if(!(i.$length>=16)){break;}k=BY(i);l=k[0];m=k[1];n=k[2];o=k[3];if(!($interfaceIsEqual(o,$ifaceNil))){return[PV.nil,o];}p=new BW.ptr($clone(l,OC),$subslice(m,0,((l.Len>>0)-16>>0)));j=$append(j,p);i=$subslice(i,n);}return[j,$ifaceNil];};$pkg.ParseNetlinkMessage=BX;BY=function(i){var $ptr,i,j,k,l,m,n;m=(j=$sliceToArray(i),k=new OC.ptr(0,0,0,0,0),l=new DataView(j.buffer,j.byteOffset),k.Len=l.getUint32(0,true),k.Type=l.getUint16(4,true),k.Flags=l.getUint16(6,true),k.Seq=l.getUint32(8,true),k.Pid=l.getUint32(12,true),k);n=BR((m.Len>>0));if((m.Len>>0)<16||n>i.$length){return[PW.nil,OV.nil,0,new FU(22)];}return[m,$subslice(i,16),n,$ifaceNil];};CA=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r;j=OV.nil;k=i.Header.Type;if((k===(16))||(k===(17))){j=$subslice(i.Data,16);}else if((k===(20))||(k===(21))){j=$subslice(i.Data,8);}else if((k===(24))||(k===(25))){j=$subslice(i.Data,12);}else{return[PX.nil,new FU(22)];}l=PX.nil;while(true){if(!(j.$length>=4)){break;}m=CB(j);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){return[PX.nil,q];}r=new BZ.ptr($clone(n,OG),$subslice(o,0,((n.Len>>0)-4>>0)));l=$append(l,r);j=$subslice(j,p);}return[l,$ifaceNil];};$pkg.ParseNetlinkRouteAttr=CA;CB=function(i){var $ptr,i,j,k,l,m;m=(j=$sliceToArray(i),k=new OG.ptr(0,0),l=new DataView(j.buffer,j.byteOffset),k.Len=l.getUint16(0,true),k.Type=l.getUint16(2,true),k);if((m.Len>>0)<4||(m.Len>>0)>i.$length){return[PY.nil,OV.nil,0,new FU(22)];}return[m,$subslice(i,4),BS((m.Len>>0)),$ifaceNil];};CN=function(i){var $ptr,i;if(i<0){return"-"+CO((-i>>>0));}return CO((i>>>0));};CO=function(i){var $ptr,i,j,k,l,m;j=QC.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]=(((l=i%10,l===l?l:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));k=k-(1)>>0;i=(m=i/(10),(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));}((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new OV(j),k));};MT.ptr.prototype.Unix=function(){var $ptr,i,j,k,l,m;i=new $Int64(0,0);j=new $Int64(0,0);k=this;l=k.Sec;m=k.Nsec;i=l;j=m;return[i,j];};MT.prototype.Unix=function(){return this.$val.Unix();};MT.ptr.prototype.Nano=function(){var $ptr,i,j,k;i=this;return(j=$mul64(i.Sec,new $Int64(0,1000000000)),k=i.Nsec,new $Int64(j.$high+k.$high,j.$low+k.$low));};MT.prototype.Nano=function(){return this.$val.Nano();};CT=function(){$throwRuntimeError("native function not implemented: syscall.Getpagesize");};$pkg.Getpagesize=CT;CV=function(i,j){var $ptr,i,j,k;k=$ifaceNil;k=II(-100,i,j,0);return k;};$pkg.Chmod=CV;DB=function(i,j,k){var $ptr,i,j,k,l,m,n;l=0;m=$ifaceNil;n=HG(-100,i,j|0,k);l=n[0];m=n[1];return[l,m];};$pkg.Open=DB;GD.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;if(i.Port<0||i.Port>65535){return[0,0,new FU(22)];}i.raw.Family=2;k=(j=i.raw,(j.$ptr_Port||(j.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},j))));k.nilCheck,k[0]=((i.Port>>8>>0)<<24>>>24);k.nilCheck,k[1]=(i.Port<<24>>>24);l=0;while(true){if(!(l<4)){break;}(n=i.raw.Addr,((l<0||l>=n.length)?($throwRuntimeError("index out of range"),undefined):n[l]=(m=i.Addr,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]))));l=l+(1)>>0;}o=new Uint8Array(16);return[o,16,$ifaceNil];};GD.prototype.sockaddr=function(){return this.$val.sockaddr();};GE.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;if(i.Port<0||i.Port>65535){return[0,0,new FU(22)];}i.raw.Family=10;k=(j=i.raw,(j.$ptr_Port||(j.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},j))));k.nilCheck,k[0]=((i.Port>>8>>0)<<24>>>24);k.nilCheck,k[1]=(i.Port<<24>>>24);i.raw.Scope_id=i.ZoneId;l=0;while(true){if(!(l<16)){break;}(n=i.raw.Addr,((l<0||l>=n.length)?($throwRuntimeError("index out of range"),undefined):n[l]=(m=i.Addr,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]))));l=l+(1)>>0;}o=new Uint8Array(28);return[o,28,$ifaceNil];};GE.prototype.sockaddr=function(){return this.$val.sockaddr();};GF.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;j=i.Name;k=j.length;if(k>=108){return[0,0,new FU(22)];}i.raw.Family=1;l=0;while(true){if(!(l<k)){break;}(m=i.raw.Path,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]=(j.charCodeAt(l)<<24>>24)));l=l+(1)>>0;}n=2;if(k>0){n=n+(((k>>>0)+1>>>0))>>>0;}if(i.raw.Path[0]===64){i.raw.Path[0]=0;n=n-(1)>>>0;}o=new Uint8Array(110);return[o,n,$ifaceNil];};GF.prototype.sockaddr=function(){return this.$val.sockaddr();};DT.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o;i=this;if(i.Ifindex<0||i.Ifindex>2147483647){return[0,0,new FU(22)];}i.raw.Family=17;i.raw.Protocol=i.Protocol;i.raw.Ifindex=(i.Ifindex>>0);i.raw.Hatype=i.Hatype;i.raw.Pkttype=i.Pkttype;i.raw.Halen=i.Halen;j=0;while(true){if(!(j<8)){break;}(l=i.raw.Addr,((j<0||j>=l.length)?($throwRuntimeError("index out of range"),undefined):l[j]=(k=i.Addr,((j<0||j>=k.length)?($throwRuntimeError("index out of range"),undefined):k[j]))));j=j+(1)>>0;}m=new Uint8Array(20);return[m,20,$ifaceNil];};DT.prototype.sockaddr=function(){return this.$val.sockaddr();};DU.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l;i=this;i.raw.Family=16;i.raw.Pad=i.Pad;i.raw.Pid=i.Pid;i.raw.Groups=i.Groups;j=new Uint8Array(12);return[j,12,$ifaceNil];};DU.prototype.sockaddr=function(){return this.$val.sockaddr();};DV=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=i.Addr.Family;if(j===(16)){n=new Uint8Array(112);q=(k=n,l=new NL.ptr(0,0,0,0),m=new DataView(k.buffer,k.byteOffset),l.Family=m.getUint16(0,true),l.Pad=m.getUint16(2,true),l.Pid=m.getUint32(4,true),l.Groups=m.getUint32(8,true),l);o=i,p=new DataView(n.buffer,n.byteOffset),o.Addr.Family=p.getUint16(0,true),o.Addr.Data=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+2,n.buffer.byteLength)),o.Pad=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+16,n.buffer.byteLength));r=new DU.ptr(0,0,0,0,new NL.ptr(0,0,0,0));r.Family=q.Family;r.Pad=q.Pad;r.Pid=q.Pid;r.Groups=q.Groups;return[r,$ifaceNil];}else if(j===(17)){v=new Uint8Array(112);y=(s=v,t=new NK.ptr(0,0,0,0,0,0,PO.zero()),u=new DataView(s.buffer,s.byteOffset),t.Family=u.getUint16(0,true),t.Protocol=u.getUint16(2,true),t.Ifindex=u.getInt32(4,true),t.Hatype=u.getUint16(8,true),t.Pkttype=u.getUint8(10,true),t.Halen=u.getUint8(11,true),t.Addr=new($nativeArray($kindUint8))(s.buffer,$min(s.byteOffset+12,s.buffer.byteLength)),t);w=i,x=new DataView(v.buffer,v.byteOffset),w.Addr.Family=x.getUint16(0,true),w.Addr.Data=new($nativeArray($kindInt8))(v.buffer,$min(v.byteOffset+2,v.buffer.byteLength)),w.Pad=new($nativeArray($kindInt8))(v.buffer,$min(v.byteOffset+16,v.buffer.byteLength));z=new DT.ptr(0,0,0,0,0,PO.zero(),new NK.ptr(0,0,0,0,0,0,PO.zero()));z.Protocol=y.Protocol;z.Ifindex=(y.Ifindex>>0);z.Hatype=y.Hatype;z.Pkttype=y.Pkttype;z.Halen=y.Halen;aa=0;while(true){if(!(aa<8)){break;}(ac=z.Addr,((aa<0||aa>=ac.length)?($throwRuntimeError("index out of range"),undefined):ac[aa]=(ab=y.Addr,((aa<0||aa>=ab.length)?($throwRuntimeError("index out of range"),undefined):ab[aa]))));aa=aa+(1)>>0;}return[z,$ifaceNil];}else if(j===(1)){ag=new Uint8Array(112);aj=(ad=ag,ae=new NJ.ptr(0,QI.zero()),af=new DataView(ad.buffer,ad.byteOffset),ae.Family=af.getUint16(0,true),ae.Path=new($nativeArray($kindInt8))(ad.buffer,$min(ad.byteOffset+2,ad.buffer.byteLength)),ae);ah=i,ai=new DataView(ag.buffer,ag.byteOffset),ah.Addr.Family=ai.getUint16(0,true),ah.Addr.Data=new($nativeArray($kindInt8))(ag.buffer,$min(ag.byteOffset+2,ag.buffer.byteLength)),ah.Pad=new($nativeArray($kindInt8))(ag.buffer,$min(ag.byteOffset+16,ag.buffer.byteLength));ak=new GF.ptr("",new NJ.ptr(0,QI.zero()));if(aj.Path[0]===0){aj.Path[0]=64;}al=0;while(true){if(!(al<108&&!(((am=aj.Path,((al<0||al>=am.length)?($throwRuntimeError("index out of range"),undefined):am[al]))===0)))){break;}al=al+(1)>>0;}an=$subslice(new OV($sliceToArray(new OV(aj.Path))),0,al);ak.Name=$bytesToString(an);return[ak,$ifaceNil];}else if(j===(2)){ar=new Uint8Array(112);au=(ao=ar,ap=new NH.ptr(0,0,QJ.zero(),PO.zero()),aq=new DataView(ao.buffer,ao.byteOffset),ap.Family=aq.getUint16(0,true),ap.Port=aq.getUint16(2,true),ap.Addr=new($nativeArray($kindUint8))(ao.buffer,$min(ao.byteOffset+4,ao.buffer.byteLength)),ap.Zero=new($nativeArray($kindUint8))(ao.buffer,$min(ao.byteOffset+8,ao.buffer.byteLength)),ap);as=i,at=new DataView(ar.buffer,ar.byteOffset),as.Addr.Family=at.getUint16(0,true),as.Addr.Data=new($nativeArray($kindInt8))(ar.buffer,$min(ar.byteOffset+2,ar.buffer.byteLength)),as.Pad=new($nativeArray($kindInt8))(ar.buffer,$min(ar.byteOffset+16,ar.buffer.byteLength));av=new GD.ptr(0,QJ.zero(),new NH.ptr(0,0,QJ.zero(),PO.zero()));aw=(au.$ptr_Port||(au.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},au)));av.Port=(((aw.nilCheck,aw[0])>>0)<<8>>0)+((aw.nilCheck,aw[1])>>0)>>0;ax=0;while(true){if(!(ax<4)){break;}(az=av.Addr,((ax<0||ax>=az.length)?($throwRuntimeError("index out of range"),undefined):az[ax]=(ay=au.Addr,((ax<0||ax>=ay.length)?($throwRuntimeError("index out of range"),undefined):ay[ax]))));ax=ax+(1)>>0;}return[av,$ifaceNil];}else if(j===(10)){bd=new Uint8Array(112);bg=(ba=bd,bb=new NI.ptr(0,0,0,PQ.zero(),0),bc=new DataView(ba.buffer,ba.byteOffset),bb.Family=bc.getUint16(0,true),bb.Port=bc.getUint16(2,true),bb.Flowinfo=bc.getUint32(4,true),bb.Addr=new($nativeArray($kindUint8))(ba.buffer,$min(ba.byteOffset+8,ba.buffer.byteLength)),bb.Scope_id=bc.getUint32(24,true),bb);be=i,bf=new DataView(bd.buffer,bd.byteOffset),be.Addr.Family=bf.getUint16(0,true),be.Addr.Data=new($nativeArray($kindInt8))(bd.buffer,$min(bd.byteOffset+2,bd.buffer.byteLength)),be.Pad=new($nativeArray($kindInt8))(bd.buffer,$min(bd.byteOffset+16,bd.buffer.byteLength));bh=new GE.ptr(0,0,PQ.zero(),new NI.ptr(0,0,0,PQ.zero(),0));bi=(bg.$ptr_Port||(bg.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},bg)));bh.Port=(((bi.nilCheck,bi[0])>>0)<<8>>0)+((bi.nilCheck,bi[1])>>0)>>0;bh.ZoneId=bg.Scope_id;bj=0;while(true){if(!(bj<16)){break;}(bl=bh.Addr,((bj<0||bj>=bl.length)?($throwRuntimeError("index out of range"),undefined):bl[bj]=(bk=bg.Addr,((bj<0||bj>=bk.length)?($throwRuntimeError("index out of range"),undefined):bk[bj]))));bj=bj+(1)>>0;}return[bh,$ifaceNil];}return[$ifaceNil,new FU(97)];};DY=function(i){var $ptr,i,j,k,l,m,n,o;j=$ifaceNil;k=$ifaceNil;l=new NN.ptr(new NM.ptr(0,QK.zero()),QL.zero());m=112;k=MH(i,l,(n||(n=new QM(function(){return m;},function($v){m=$v;}))));if(!($interfaceIsEqual(k,$ifaceNil))){return[j,k];}o=DV(l);j=o[0];k=o[1];return[j,k];};$pkg.Getsockname=DY;FB=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=IO(i,j);k=m[0];l=m[1];return[k,l];};$pkg.ReadDirent=FB;FC=function(i){var $ptr,i;return W(i,0,8);};FD=function(i){var $ptr,i;return W(i,16,2);};FE=function(i){var $ptr,i,j,k,l;j=FD(i);k=j[0];l=j[1];if(!l){return[new $Uint64(0,0),false];}return[new $Uint64(k.$high-0,k.$low-19),true];};FT.ptr.prototype.Mmap=function(i,j,k,l,m){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);n=[n];o=OV.nil;p=$ifaceNil;q=this;if(k<=0){r=OV.nil;s=new FU(22);o=r;p=s;$s=-1;return[o,p];}u=q.mmap(0,(k>>>0),l,m,i,j);$s=1;case 1:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];if(!($interfaceIsEqual(w,$ifaceNil))){x=OV.nil;y=w;o=x;p=y;$s=-1;return[o,p];}n[0]=new QS.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),PF);$r=q.Mutex.Lock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(q.Mutex,"Unlock"),[]]);ab=aa;(q.active||$throwRuntimeError("assignment to entry in nil map"))[PF.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;$s=-1;return[o,p];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[o,p];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:FT.ptr.prototype.Mmap};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};FT.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};FT.ptr.prototype.Munmap=function(i){var $ptr,i,j,k,l,m,n,o,p,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);j=$ifaceNil;k=this;if((i.$length===0)||!((i.$length===i.$capacity))){j=new FU(22);$s=-1;return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),PF);$r=k.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(k.Mutex,"Unlock"),[]]);n=(m=k.active[PF.keyFor(l)],m!==undefined?m.v:OV.nil);if(n===OV.nil||!($indexPtr(n.$array,n.$offset+0,PF)===$indexPtr(i.$array,i.$offset+0,PF))){j=new FU(22);$s=-1;return j;}o=k.munmap($sliceToArray(n),(n.$length>>>0));$s=2;case 2:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){j=p;$s=-1;return j;}delete k.active[PF.keyFor(l)];j=$ifaceNil;$s=-1;return j;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return j;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:FT.ptr.prototype.Munmap};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};FT.prototype.Munmap=function(i){return this.$val.Munmap(i);};FU.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<133){j=((i<0||i>=HD.length)?($throwRuntimeError("index out of range"),undefined):HD[i]);if(!(j==="")){return j;}}return"errno "+CN((i>>0));};$ptrType(FU).prototype.Error=function(){return new FU(this.$get()).Error();};FU.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===104)||(i===103)||new FU(i).Timeout();};$ptrType(FU).prototype.Temporary=function(){return new FU(this.$get()).Temporary();};FU.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===11)||(i===11)||(i===110);};$ptrType(FU).prototype.Timeout=function(){return new FU(this.$get()).Timeout();};FY=function(i){var $ptr,i,j;j=i;if(j===(0)){return $ifaceNil;}else if(j===(11)){return FV;}else if(j===(22)){return FW;}else if(j===(2)){return FX;}return new FU(i);};GA=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JI(i,j);k=m[0];l=m[1];if(false){if(k>0){D.WriteRange($sliceToArray(j),k);}if($interfaceIsEqual(l,$ifaceNil)){D.Acquire((PE||(PE=new QT(function(){return GY;},function($v){GY=$v;}))));}}if(false&&k>0){BQ($sliceToArray(j),k);}return[k,l];};$pkg.Read=GA;GB=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;if(false){D.ReleaseMerge((PE||(PE=new QT(function(){return GY;},function($v){GY=$v;}))));}m=KD(i,j);k=m[0];l=m[1];if(false&&k>0){D.ReadRange($sliceToArray(j),k);}if(false&&k>0){BP($sliceToArray(j),k);}return[k,l];};$pkg.Write=GB;GG=function(i,j){var $ptr,i,j,k,l,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=$ifaceNil;m=j.sockaddr();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];k=l[2];if(!($interfaceIsEqual(k,$ifaceNil))){k=k;$s=-1;return k;}k=LY(i,n,o);$s=-1;return k;}return;}if($f===undefined){$f={$blk:GG};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bind=GG;GK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=$ifaceNil;n=$ifaceNil;o=new NN.ptr(new NM.ptr(0,QK.zero()),QL.zero());p=112;q=MI(i,j,k,o,(r||(r=new QM(function(){return p;},function($v){p=$v;}))));l=q[0];n=q[1];if(!($interfaceIsEqual(n,$ifaceNil))){return[l,m,n];}if(!((o.Addr.Family===0))){s=DV(o);m=s[0];n=s[1];}return[l,m,n];};$pkg.Recvfrom=GK;GL=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=$ifaceNil;o=l.sockaddr();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];m=n[2];if(!($interfaceIsEqual(m,$ifaceNil))){m=m;$s=-1;return m;}m=MJ(i,j,k,p,q);$s=-1;return m;}return;}if($f===undefined){$f={$blk:GL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sendto=GL;GV=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;if((i===10)&&$pkg.SocketDisableIPv6){n=-1;o=new FU(97);l=n;m=o;return[l,m];}p=ME(i,j,k);l=p[0];m=p[1];return[l,m];};$pkg.Socket=GV;HG=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r,s;m=0;n=$ifaceNil;o=PF.nil;p=V(j);o=p[0];n=p[1];if(!($interfaceIsEqual(n,$ifaceNil))){return[m,n];}q=S(257,(i>>>0),o,(k>>>0),(l>>>0),0,0);r=q[0];s=q[2];J(o);m=(r>>0);if(!((s===0))){n=FY(s);}return[m,n];};HW=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(3,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Close=HW;ID=function(i){var $ptr,i;R(231,(i>>>0),0,0);return;};$pkg.Exit=ID;IG=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(81,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Fchdir=IG;IH=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(91,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FY(m);}return k;};$pkg.Fchmod=IH;II=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q;m=$ifaceNil;n=PF.nil;o=V(j);n=o[0];m=o[1];if(!($interfaceIsEqual(m,$ifaceNil))){return m;}p=S(268,(i>>>0),n,(k>>>0),(l>>>0),0,0);q=p[2];J(n);if(!((q===0))){m=FY(q);}return m;};$pkg.Fchmodat=II;IK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;n=R(72,(i>>>0),(j>>>0),(k>>>0));o=n[0];p=n[2];l=(o>>0);if(!((p===0))){m=FY(p);}return[l,m];};IN=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(74,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Fsync=IN;IO=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(217,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};$pkg.Getdents=IO;JI=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(0,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};KD=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(1,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};KH=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(11,i,j,0);m=l[2];if(!((m===0))){k=FY(m);}return k;};KP=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(93,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FY(n);}return l;};$pkg.Fchown=KP;KQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(5,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=new $Uint64(o.getUint32(4,true),o.getUint32(0,true)),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Nlink=new $Uint64(o.getUint32(20,true),o.getUint32(16,true)),n.Mode=o.getUint32(24,true),n.Uid=o.getUint32(28,true),n.Gid=o.getUint32(32,true),n.X__pad0=o.getInt32(36,true),n.Rdev=new $Uint64(o.getUint32(44,true),o.getUint32(40,true)),n.Size=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Blksize=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Blocks=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Atim.Sec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Atim.Nsec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Mtim.Sec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Mtim.Nsec=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Ctim.Sec=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Ctim.Nsec=new $Int64(o.getUint32(116,true),o.getUint32(112,true)),n.X__unused=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+120,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FY(p);}return k;};$pkg.Fstat=KQ;KS=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(77,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FY(m);}return k;};$pkg.Ftruncate=KS;KV=function(){var $ptr,i,j,k;i=0;j=T(104,0,0,0);k=j[0];i=(k>>0);return i;};$pkg.Getgid=KV;KX=function(){var $ptr,i,j,k;i=0;j=T(102,0,0,0);k=j[0];i=(k>>0);return i;};$pkg.Getuid=KX;LD=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=PF.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(6,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=new $Uint64(q.getUint32(4,true),q.getUint32(0,true)),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Nlink=new $Uint64(q.getUint32(20,true),q.getUint32(16,true)),p.Mode=q.getUint32(24,true),p.Uid=q.getUint32(28,true),p.Gid=q.getUint32(32,true),p.X__pad0=q.getInt32(36,true),p.Rdev=new $Uint64(q.getUint32(44,true),q.getUint32(40,true)),p.Size=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Blksize=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Blocks=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Atim.Sec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Atim.Nsec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Mtim.Sec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Mtim.Nsec=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Ctim.Sec=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Ctim.Nsec=new $Int64(q.getUint32(116,true),q.getUint32(112,true)),p.X__unused=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+120,o.buffer.byteLength));r=n[2];J(l);if(!((r===0))){k=FY(r);}return k;};$pkg.Lstat=LD;LE=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=0;m=$ifaceNil;n=0;if(j.$length>0){n=$sliceToArray(j);}else{n=new Uint8Array(0);}o=S(17,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FY(q);}return[l,m];};$pkg.Pread=LE;LF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=0;m=$ifaceNil;n=0;if(j.$length>0){n=$sliceToArray(j);}else{n=new Uint8Array(0);}o=S(18,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FY(q);}return[l,m];};$pkg.Pwrite=LF;LG=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(8,(i>>>0),(j.$low>>>0),(k>>>0));o=n[0];p=n[2];l=new $Int64(0,o.constructor===Number?o:1);if(!((p===0))){m=FY(p);}return[l,m];};$pkg.Seek=LG;LS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=PF.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(4,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=new $Uint64(q.getUint32(4,true),q.getUint32(0,true)),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Nlink=new $Uint64(q.getUint32(20,true),q.getUint32(16,true)),p.Mode=q.getUint32(24,true),p.Uid=q.getUint32(28,true),p.Gid=q.getUint32(32,true),p.X__pad0=q.getInt32(36,true),p.Rdev=new $Uint64(q.getUint32(44,true),q.getUint32(40,true)),p.Size=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Blksize=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Blocks=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Atim.Sec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Atim.Nsec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Mtim.Sec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Mtim.Nsec=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Ctim.Sec=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Ctim.Nsec=new $Int64(q.getUint32(116,true),q.getUint32(112,true)),p.X__unused=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+120,o.buffer.byteLength));r=n[2];J(l);if(!((r===0))){k=FY(r);}return k;};$pkg.Stat=LS;LY=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(49,(i>>>0),j,(k>>>0));n=m[2];if(!((n===0))){l=FY(n);}return l;};ME=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;n=T(41,(i>>>0),(j>>>0),(k>>>0));o=n[0];p=n[2];l=(o>>0);if(!((p===0))){m=FY(p);}return[l,m];};MH=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=$ifaceNil;n=new Uint8Array(112);m=T(51,(i>>>0),n,k);o=j,p=new DataView(n.buffer,n.byteOffset),o.Addr.Family=p.getUint16(0,true),o.Addr.Data=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+2,n.buffer.byteLength)),o.Pad=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+16,n.buffer.byteLength));q=m[2];if(!((q===0))){l=FY(q);}return l;};MI=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v;n=0;o=$ifaceNil;p=0;if(j.$length>0){p=$sliceToArray(j);}else{p=new Uint8Array(0);}r=new Uint8Array(112);q=S(45,(i>>>0),p,(j.$length>>>0),(k>>>0),r,m);s=l,t=new DataView(r.buffer,r.byteOffset),s.Addr.Family=t.getUint16(0,true),s.Addr.Data=new($nativeArray($kindInt8))(r.buffer,$min(r.byteOffset+2,r.buffer.byteLength)),s.Pad=new($nativeArray($kindInt8))(r.buffer,$min(r.byteOffset+16,r.buffer.byteLength));u=q[0];v=q[2];n=(u>>0);if(!((v===0))){o=FY(v);}return[n,o];};MJ=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(j.$length>0){o=$sliceToArray(j);}else{o=new Uint8Array(0);}p=S(44,(i>>>0),o,(j.$length>>>0),(k>>>0),l,(m>>>0));q=p[2];if(!((q===0))){n=FY(q);}return n;};MM=function(i,j,k,l,m,n){var $ptr,i,j,k,l,m,n,o,p,q,r,s;o=0;p=$ifaceNil;q=S(9,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FY(s);}return[o,p];};QW.methods=[{prop:"toWireFormat",name:"toWireFormat",pkg:"syscall",typ:$funcType([],[OV],false)}];QX.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];PU.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];QY.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[OV,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([OV],[$error],false)}];FU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}];RC.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RD.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RE.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RF.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];BT.init("",[{prop:"Header",name:"Header",exported:true,typ:OC,tag:""},{prop:"Data",name:"Data",exported:true,typ:OE,tag:""}]);BW.init("",[{prop:"Header",name:"Header",exported:true,typ:OC,tag:""},{prop:"Data",name:"Data",exported:true,typ:OV,tag:""}]);BZ.init("",[{prop:"Attr",name:"Attr",exported:true,typ:OG,tag:""},{prop:"Value",name:"Value",exported:true,typ:OV,tag:""}]);DT.init("syscall",[{prop:"Protocol",name:"Protocol",exported:true,typ:$Uint16,tag:""},{prop:"Ifindex",name:"Ifindex",exported:true,typ:$Int,tag:""},{prop:"Hatype",name:"Hatype",exported:true,typ:$Uint16,tag:""},{prop:"Pkttype",name:"Pkttype",exported:true,typ:$Uint8,tag:""},{prop:"Halen",name:"Halen",exported:true,typ:$Uint8,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PO,tag:""},{prop:"raw",name:"raw",exported:false,typ:NK,tag:""}]);DU.init("syscall",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:$Uint16,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""},{prop:"Groups",name:"Groups",exported:true,typ:$Uint32,tag:""},{prop:"raw",name:"raw",exported:false,typ:NL,tag:""}]);FT.init("syscall",[{prop:"Mutex",name:"",exported:true,typ:C.Mutex,tag:""},{prop:"active",name:"active",exported:false,typ:QZ,tag:""},{prop:"mmap",name:"mmap",exported:false,typ:RA,tag:""},{prop:"munmap",name:"munmap",exported:false,typ:RB,tag:""}]);GC.init([{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}]);GD.init("syscall",[{prop:"Port",name:"Port",exported:true,typ:$Int,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:QJ,tag:""},{prop:"raw",name:"raw",exported:false,typ:NH,tag:""}]);GE.init("syscall",[{prop:"Port",name:"Port",exported:true,typ:$Int,tag:""},{prop:"ZoneId",name:"ZoneId",exported:true,typ:$Uint32,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PQ,tag:""},{prop:"raw",name:"raw",exported:false,typ:NI,tag:""}]);GF.init("syscall",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"raw",name:"raw",exported:false,typ:NJ,tag:""}]);MT.init("",[{prop:"Sec",name:"Sec",exported:true,typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",exported:true,typ:$Int64,tag:""}]);NC.init("",[{prop:"Dev",name:"Dev",exported:true,typ:$Uint64,tag:""},{prop:"Ino",name:"Ino",exported:true,typ:$Uint64,tag:""},{prop:"Nlink",name:"Nlink",exported:true,typ:$Uint64,tag:""},{prop:"Mode",name:"Mode",exported:true,typ:$Uint32,tag:""},{prop:"Uid",name:"Uid",exported:true,typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",exported:true,typ:$Uint32,tag:""},{prop:"X__pad0",name:"X__pad0",exported:true,typ:$Int32,tag:""},{prop:"Rdev",name:"Rdev",exported:true,typ:$Uint64,tag:""},{prop:"Size",name:"Size",exported:true,typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",exported:true,typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",exported:true,typ:$Int64,tag:""},{prop:"Atim",name:"Atim",exported:true,typ:MT,tag:""},{prop:"Mtim",name:"Mtim",exported:true,typ:MT,tag:""},{prop:"Ctim",name:"Ctim",exported:true,typ:MT,tag:""},{prop:"X__unused",name:"X__unused",exported:true,typ:RI,tag:""}]);NH.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:QJ,tag:""},{prop:"Zero",name:"Zero",exported:true,typ:PO,tag:""}]);NI.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Flowinfo",name:"Flowinfo",exported:true,typ:$Uint32,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PQ,tag:""},{prop:"Scope_id",name:"Scope_id",exported:true,typ:$Uint32,tag:""}]);NJ.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Path",name:"Path",exported:true,typ:QI,tag:""}]);NK.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Protocol",name:"Protocol",exported:true,typ:$Uint16,tag:""},{prop:"Ifindex",name:"Ifindex",exported:true,typ:$Int32,tag:""},{prop:"Hatype",name:"Hatype",exported:true,typ:$Uint16,tag:""},{prop:"Pkttype",name:"Pkttype",exported:true,typ:$Uint8,tag:""},{prop:"Halen",name:"Halen",exported:true,typ:$Uint8,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PO,tag:""}]);NL.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:$Uint16,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""},{prop:"Groups",name:"Groups",exported:true,typ:$Uint32,tag:""}]);NM.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Data",name:"Data",exported:true,typ:QK,tag:""}]);NN.init("",[{prop:"Addr",name:"Addr",exported:true,typ:NM,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:QL,tag:""}]);OC.init("",[{prop:"Len",name:"Len",exported:true,typ:$Uint32,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint16,tag:""},{prop:"Seq",name:"Seq",exported:true,typ:$Uint32,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""}]);OE.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""}]);OG.init("",[{prop:"Len",name:"Len",exported:true,typ:$Uint16,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""}]);OH.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""},{prop:"X__ifi_pad",name:"X__ifi_pad",exported:true,typ:$Uint8,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Int32,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint32,tag:""},{prop:"Change",name:"Change",exported:true,typ:$Uint32,tag:""}]);OI.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""},{prop:"Prefixlen",name:"Prefixlen",exported:true,typ:$Uint8,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint8,tag:""},{prop:"Scope",name:"Scope",exported:true,typ:$Uint8,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Uint32,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}F=OV.nil;N=null;AA=new C.Once.ptr(new C.Mutex.ptr(0,0),0);AB=new C.RWMutex.ptr(new C.Mutex.ptr(0,0),0,0,0,0);AC=false;$pkg.SocketDisableIPv6=false;GY=new $Int64(0,0);E=false;O=false;P=-1;AD=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;FV=new FU(11);FW=new FU(22);FX=new FU(2);HD=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","no such device or address","argument list too long","exec format error","bad file descriptor","no child processes","resource temporarily unavailable","cannot allocate memory","permission denied","bad address","block device required","device or resource busy","file exists","invalid cross-device link","no such device","not a directory","is a directory","invalid argument","too many open files in system","too many open files","inappropriate ioctl for device","text file busy","file too large","no space left on device","illegal seek","read-only file system","too many links","broken pipe","numerical argument out of domain","numerical result out of range","resource deadlock avoided","file name too long","no locks available","function not implemented","directory not empty","too many levels of symbolic links","","no message of desired type","identifier removed","channel number out of range","level 2 not synchronized","level 3 halted","level 3 reset","link number out of range","protocol driver not attached","no CSI structure available","level 2 halted","invalid exchange","invalid request descriptor","exchange full","no anode","invalid request code","invalid slot","","bad font file format","device not a stream","no data available","timer expired","out of streams resources","machine is not on the network","package not installed","object is remote","link has been severed","advertise error","srmount error","communication error on send","protocol error","multihop attempted","RFS specific error","bad message","value too large for defined data type","name not unique on network","file descriptor in bad state","remote address changed","can not access a needed shared library","accessing a corrupted shared library",".lib section in a.out corrupted","attempting to link in too many shared libraries","cannot exec a shared library directly","invalid or incomplete multibyte or wide character","interrupted system call should be restarted","streams pipe error","too many users","socket operation on non-socket","destination address required","message too long","protocol wrong type for socket","protocol not available","protocol not supported","socket type not supported","operation not supported","protocol family not supported","address family not supported by protocol","address already in use","cannot assign requested address","network is down","network is unreachable","network dropped connection on reset","software caused connection abort","connection reset by peer","no buffer space available","transport endpoint is already connected","transport endpoint is not connected","cannot send after transport endpoint shutdown","too many references: cannot splice","connection timed out","connection refused","host is down","no route to host","operation already in progress","operation now in progress","stale NFS file handle","structure needs cleaning","not a XENIX named type file","no XENIX semaphores available","is a named type file","remote I/O error","disk quota exceeded","no medium found","wrong medium type","operation canceled","required key not available","key has expired","key has been revoked","key was rejected by service","owner died","state not recoverable","operation not possible due to RF-kill"]);FJ=new FT.ptr(new C.Mutex.ptr(0,0),{},MM,KH);G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/gopherjs/gopherjs/nosync"]=(function(){var $pkg={},$init,A,D,E,F,I,J,K,L,M;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex",true,"github.com/gopherjs/gopherjs/nosync",true,function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once",true,"github.com/gopherjs/gopherjs/nosync",true,function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});E=$pkg.Pool=$newType(0,$kindStruct,"nosync.Pool",true,"github.com/gopherjs/gopherjs/nosync",true,function(store_,New_){this.$val=this;if(arguments.length===0){this.store=K.nil;this.New=$throwNilPointerError;return;}this.store=store_;this.New=New_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);K=$sliceType($emptyInterface);L=$ptrType(E);M=$funcType([],[$emptyInterface],false);A.ptr.prototype.Lock=function(){var $ptr,a;a=this;if(a.locked){$panic(new $String("nosync: mutex is already locked"));}a.locked=true;};A.prototype.Lock=function(){return this.$val.Lock();};A.ptr.prototype.Unlock=function(){var $ptr,a;a=this;if(!a.locked){$panic(new $String("nosync: unlock of unlocked mutex"));}a.locked=false;};A.prototype.Unlock=function(){return this.$val.Unlock();};D.ptr.prototype.Do=function(a){var $ptr,a,b,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=[b];b[0]=this;if(b[0].done){$s=-1;return;}if(b[0].doing){$panic(new $String("nosync: Do called within f"));}b[0].doing=true;$deferred.push([(function(b){return function(){var $ptr;b[0].doing=false;b[0].done=true;};})(b),[]]);$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:D.ptr.prototype.Do};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};D.prototype.Do=function(a){return this.$val.Do(a);};E.ptr.prototype.Get=function(){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(a.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:b=a.New();$s=5;case 5:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;case 4:$s=-1;return $ifaceNil;case 2:e=(c=a.store,d=a.store.$length-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));a.store=$subslice(a.store,0,(a.store.$length-1>>0));$s=-1;return e;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(a){var $ptr,a,b;b=this;if($interfaceIsEqual(a,$ifaceNil)){return;}b.store=$append(b.store,a);};E.prototype.Put=function(a){return this.$val.Put(a);};F.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];J.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([I],[],false)}];L.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)}];A.init("github.com/gopherjs/gopherjs/nosync",[{prop:"locked",name:"locked",exported:false,typ:$Bool,tag:""}]);D.init("github.com/gopherjs/gopherjs/nosync",[{prop:"doing",name:"doing",exported:false,typ:$Bool,tag:""},{prop:"done",name:"done",exported:false,typ:$Bool,tag:""}]);E.init("github.com/gopherjs/gopherjs/nosync",[{prop:"store",name:"store",exported:false,typ:K,tag:""},{prop:"New",name:"New",exported:true,typ:M,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["time"]=(function(){var $pkg={},$init,C,B,E,A,D,AF,BM,BN,BP,BT,CH,CI,CJ,DC,DD,DE,DF,DH,DI,DJ,DK,DL,DP,DT,DX,R,U,V,W,X,AB,AE,AR,AU,BO,BQ,BZ,CK,DA,CL,DB,CM,CO,CS,k,l,F,H,I,J,Q,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,AT,AV,BR,BS,BU,BV,BY,CA,CB,CC,CD,CE,CF,CG,CN;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];E=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];D=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError",true,"time",true,function(Layout_,Value_,LayoutElem_,ValueElem_,Message_){this.$val=this;if(arguments.length===0){this.Layout="";this.Value="";this.LayoutElem="";this.ValueElem="";this.Message="";return;}this.Layout=Layout_;this.Value=Value_;this.LayoutElem=LayoutElem_;this.ValueElem=ValueElem_;this.Message=Message_;});BM=$pkg.Time=$newType(0,$kindStruct,"time.Time",true,"time",true,function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DL.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BN=$pkg.Month=$newType(4,$kindInt,"time.Month",true,"time",true,null);BP=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday",true,"time",true,null);BT=$pkg.Duration=$newType(8,$kindInt64,"time.Duration",true,"time",true,null);CH=$pkg.Location=$newType(0,$kindStruct,"time.Location",true,"time",true,function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=DC.nil;this.tx=DD.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DE.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CI=$pkg.zone=$newType(0,$kindStruct,"time.zone",true,"time",false,function(name_,offset_,isDST_){this.$val=this;if(arguments.length===0){this.name="";this.offset=0;this.isDST=false;return;}this.name=name_;this.offset=offset_;this.isDST=isDST_;});CJ=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans",true,"time",false,function(when_,index_,isstd_,isutc_){this.$val=this;if(arguments.length===0){this.when=new $Int64(0,0);this.index=0;this.isstd=false;this.isutc=false;return;}this.when=when_;this.index=index_;this.isstd=isstd_;this.isutc=isutc_;});DC=$sliceType(CI);DD=$sliceType(CJ);DE=$ptrType(CI);DF=$sliceType($String);DH=$arrayType($Uint8,20);DI=$sliceType($Uint8);DJ=$arrayType($Uint8,9);DK=$arrayType($Uint8,64);DL=$ptrType(CH);DP=$arrayType($Uint8,32);DT=$ptrType(AF);DX=$ptrType(BM);F=function(){var $ptr;$unused(CC(new $Int64(0,0),new $Int64(0,0)));};H=function(){var $ptr,m,n,o,p;m=new($global.Date)();n=$internalize(m,$String);o=Q(n,40);p=Q(n,41);if((o===-1)||(p===-1)){CL.name="UTC";return;}CL.name=$substring(n,(o+1>>0),p);CL.zone=new DC([new CI.ptr(CL.name,$imul(($parseInt(m.getTimezoneOffset())>>0),-60),false)]);};I=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};J=function(){var $ptr,m,n,o,p,q,r;m=new $Int64(0,0);n=0;o=I();p=$div64(o,new $Int64(0,1000000000),false);q=((r=$div64(o,new $Int64(0,1000000000),true),r.$low+((r.$high>>31)*4294967296))>>0);m=p;n=q;return[m,n];};Q=function(m,n){var $ptr,m,n;return $parseInt(m.indexOf($global.String.fromCharCode(n)))>>0;};S=function(m){var $ptr,m,n;if(m.length===0){return false;}n=m.charCodeAt(0);return 97<=n&&n<=122;};T=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n="";o=0;p="";q=0;while(true){if(!(q<m.length)){break;}r=(m.charCodeAt(q)>>0);s=r;if(s===(74)){if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="Jan"){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="January"){t=$substring(m,0,q);u=257;v=$substring(m,(q+7>>0));n=t;o=u;p=v;return[n,o,p];}if(!S($substring(m,(q+3>>0)))){w=$substring(m,0,q);x=258;y=$substring(m,(q+3>>0));n=w;o=x;p=y;return[n,o,p];}}}else if(s===(77)){if(m.length>=(q+3>>0)){if($substring(m,q,(q+3>>0))==="Mon"){if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="Monday"){z=$substring(m,0,q);aa=261;ab=$substring(m,(q+6>>0));n=z;o=aa;p=ab;return[n,o,p];}if(!S($substring(m,(q+3>>0)))){ac=$substring(m,0,q);ad=262;ae=$substring(m,(q+3>>0));n=ac;o=ad;p=ae;return[n,o,p];}}if($substring(m,q,(q+3>>0))==="MST"){af=$substring(m,0,q);ag=21;ah=$substring(m,(q+3>>0));n=af;o=ag;p=ah;return[n,o,p];}}}else if(s===(48)){if(m.length>=(q+2>>0)&&49<=m.charCodeAt((q+1>>0))&&m.charCodeAt((q+1>>0))<=54){ai=$substring(m,0,q);aj=(ak=m.charCodeAt((q+1>>0))-49<<24>>>24,((ak<0||ak>=R.length)?($throwRuntimeError("index out of range"),undefined):R[ak]));al=$substring(m,(q+2>>0));n=ai;o=aj;p=al;return[n,o,p];}}else if(s===(49)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===53)){am=$substring(m,0,q);an=522;ao=$substring(m,(q+2>>0));n=am;o=an;p=ao;return[n,o,p];}ap=$substring(m,0,q);aq=259;ar=$substring(m,(q+1>>0));n=ap;o=aq;p=ar;return[n,o,p];}else if(s===(50)){if(m.length>=(q+4>>0)&&$substring(m,q,(q+4>>0))==="2006"){as=$substring(m,0,q);at=273;au=$substring(m,(q+4>>0));n=as;o=at;p=au;return[n,o,p];}av=$substring(m,0,q);aw=263;ax=$substring(m,(q+1>>0));n=av;o=aw;p=ax;return[n,o,p];}else if(s===(95)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===50)){if(m.length>=(q+5>>0)&&$substring(m,(q+1>>0),(q+5>>0))==="2006"){ay=$substring(m,0,(q+1>>0));az=273;ba=$substring(m,(q+5>>0));n=ay;o=az;p=ba;return[n,o,p];}bb=$substring(m,0,q);bc=264;bd=$substring(m,(q+2>>0));n=bb;o=bc;p=bd;return[n,o,p];}}else if(s===(51)){be=$substring(m,0,q);bf=523;bg=$substring(m,(q+1>>0));n=be;o=bf;p=bg;return[n,o,p];}else if(s===(52)){bh=$substring(m,0,q);bi=525;bj=$substring(m,(q+1>>0));n=bh;o=bi;p=bj;return[n,o,p];}else if(s===(53)){bk=$substring(m,0,q);bl=527;bm=$substring(m,(q+1>>0));n=bk;o=bl;p=bm;return[n,o,p];}else if(s===(80)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===77)){bn=$substring(m,0,q);bo=531;bp=$substring(m,(q+2>>0));n=bn;o=bo;p=bp;return[n,o,p];}}else if(s===(112)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===109)){bq=$substring(m,0,q);br=532;bs=$substring(m,(q+2>>0));n=bq;o=br;p=bs;return[n,o,p];}}else if(s===(45)){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="-070000"){bt=$substring(m,0,q);bu=28;bv=$substring(m,(q+7>>0));n=bt;o=bu;p=bv;return[n,o,p];}if(m.length>=(q+9>>0)&&$substring(m,q,(q+9>>0))==="-07:00:00"){bw=$substring(m,0,q);bx=31;by=$substring(m,(q+9>>0));n=bw;o=bx;p=by;return[n,o,p];}if(m.length>=(q+5>>0)&&$substring(m,q,(q+5>>0))==="-0700"){bz=$substring(m,0,q);ca=27;cb=$substring(m,(q+5>>0));n=bz;o=ca;p=cb;return[n,o,p];}if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="-07:00"){cc=$substring(m,0,q);cd=30;ce=$substring(m,(q+6>>0));n=cc;o=cd;p=ce;return[n,o,p];}if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="-07"){cf=$substring(m,0,q);cg=29;ch=$substring(m,(q+3>>0));n=cf;o=cg;p=ch;return[n,o,p];}}else if(s===(90)){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="Z070000"){ci=$substring(m,0,q);cj=23;ck=$substring(m,(q+7>>0));n=ci;o=cj;p=ck;return[n,o,p];}if(m.length>=(q+9>>0)&&$substring(m,q,(q+9>>0))==="Z07:00:00"){cl=$substring(m,0,q);cm=26;cn=$substring(m,(q+9>>0));n=cl;o=cm;p=cn;return[n,o,p];}if(m.length>=(q+5>>0)&&$substring(m,q,(q+5>>0))==="Z0700"){co=$substring(m,0,q);cp=22;cq=$substring(m,(q+5>>0));n=co;o=cp;p=cq;return[n,o,p];}if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="Z07:00"){cr=$substring(m,0,q);cs=25;ct=$substring(m,(q+6>>0));n=cr;o=cs;p=ct;return[n,o,p];}if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="Z07"){cu=$substring(m,0,q);cv=24;cw=$substring(m,(q+3>>0));n=cu;o=cv;p=cw;return[n,o,p];}}else if(s===(46)){if((q+1>>0)<m.length&&((m.charCodeAt((q+1>>0))===48)||(m.charCodeAt((q+1>>0))===57))){cx=m.charCodeAt((q+1>>0));cy=q+1>>0;while(true){if(!(cy<m.length&&(m.charCodeAt(cy)===cx))){break;}cy=cy+(1)>>0;}if(!AH(m,cy)){cz=32;if(m.charCodeAt((q+1>>0))===57){cz=33;}cz=cz|((((cy-((q+1>>0))>>0))<<16>>0));da=$substring(m,0,q);db=cz;dc=$substring(m,cy);n=da;o=db;p=dc;return[n,o,p];}}}q=q+(1)>>0;}dd=m;de=0;df="";n=dd;o=de;p=df;return[n,o,p];};Y=function(m,n){var $ptr,m,n,o,p,q;o=0;while(true){if(!(o<m.length)){break;}p=m.charCodeAt(o);q=n.charCodeAt(o);if(!((p===q))){p=(p|(32))>>>0;q=(q|(32))>>>0;if(!((p===q))||p<97||p>122){return false;}}o=o+(1)>>0;}return true;};Z=function(m,n){var $ptr,m,n,o,p,q,r;o=m;p=0;while(true){if(!(p<o.$length)){break;}q=p;r=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if(n.length>=r.length&&Y($substring(n,0,r.length),r)){return[q,$substring(n,r.length),$ifaceNil];}p++;}return[-1,n,AE];};AA=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u;p=(n>>>0);if(n<0){m=$append(m,45);p=(-n>>>0);}q=DH.zero();r=20;while(true){if(!(p>=10)){break;}r=r-(1)>>0;t=(s=p/10,(s===s&&s!==1/0&&s!==-1/0)?s>>>0:$throwRuntimeError("integer divide by zero"));((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(((48+p>>>0)-(t*10>>>0)>>>0)<<24>>>24));p=t;}r=r-(1)>>0;((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=((48+p>>>0)<<24>>>24));u=20-r>>0;while(true){if(!(u<o)){break;}m=$append(m,48);u=u+(1)>>0;}return $appendSlice(m,$subslice(new DI(q),r));};AC=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w;n=0;o=$ifaceNil;p=false;if(!(m==="")&&((m.charCodeAt(0)===45)||(m.charCodeAt(0)===43))){p=m.charCodeAt(0)===45;m=$substring(m,1);}q=AS(m);r=q[0];s=q[1];o=q[2];n=((r.$low+((r.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(o,$ifaceNil))||!(s==="")){t=0;u=AB;n=t;o=u;return[n,o];}if(p){n=-n;}v=n;w=$ifaceNil;n=v;o=w;return[n,o];};AD=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s,t,u,v;q=n;r=DJ.zero();s=9;while(true){if(!(s>0)){break;}s=s-(1)>>0;((s<0||s>=r.length)?($throwRuntimeError("index out of range"),undefined):r[s]=(((t=q%10,t===t?t:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));q=(u=q/(10),(u===u&&u!==1/0&&u!==-1/0)?u>>>0:$throwRuntimeError("integer divide by zero"));}if(o>9){o=9;}if(p){while(true){if(!(o>0&&((v=o-1>>0,((v<0||v>=r.length)?($throwRuntimeError("index out of range"),undefined):r[v]))===48))){break;}o=o-(1)>>0;}if(o===0){return m;}}m=$append(m,46);return $appendSlice(m,$subslice(new DI(r),0,o));};BM.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.String=function(){return this.$val.String();};BM.ptr.prototype.Format=function(m){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=DI.nil;p=m.length+10>>0;if(p<64){q=DK.zero();o=$subslice(new DI(q),0,0);}else{o=$makeSlice(DI,0,p);}r=$clone(n,BM).AppendFormat(o,m);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}o=r;$s=-1;return $bytesToString(o);}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Format};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Format=function(m){return this.$val.Format(m);};BM.ptr.prototype.AppendFormat=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=$clone(o,BM).locabs();$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];t=p[2];u=-1;v=0;w=0;x=-1;y=0;z=0;while(true){if(!(!(n===""))){break;}aa=T(n);ab=aa[0];ac=aa[1];ad=aa[2];if(!(ab==="")){m=$appendSlice(m,ab);}if(ac===0){break;}n=ad;if(u<0&&!(((ac&256)===0))){ae=BY(t,true);u=ae[0];v=ae[1];w=ae[2];}if(x<0&&!(((ac&512)===0))){af=BS(t);x=af[0];y=af[1];z=af[2];}switch(0){default:ag=ac&65535;if(ag===(274)){ah=u;if(ah<0){ah=-ah;}m=AA(m,(ai=ah%100,ai===ai?ai:$throwRuntimeError("integer divide by zero")),2);}else if(ag===(273)){m=AA(m,u,4);}else if(ag===(258)){m=$appendSlice(m,$substring(new BN(v).String(),0,3));}else if(ag===(257)){aj=new BN(v).String();m=$appendSlice(m,aj);}else if(ag===(259)){m=AA(m,(v>>0),0);}else if(ag===(260)){m=AA(m,(v>>0),2);}else if(ag===(262)){m=$appendSlice(m,$substring(new BP(BR(t)).String(),0,3));}else if(ag===(261)){ak=new BP(BR(t)).String();m=$appendSlice(m,ak);}else if(ag===(263)){m=AA(m,w,0);}else if(ag===(264)){if(w<10){m=$append(m,32);}m=AA(m,w,0);}else if(ag===(265)){m=AA(m,w,2);}else if(ag===(522)){m=AA(m,x,2);}else if(ag===(523)){am=(al=x%12,al===al?al:$throwRuntimeError("integer divide by zero"));if(am===0){am=12;}m=AA(m,am,0);}else if(ag===(524)){ao=(an=x%12,an===an?an:$throwRuntimeError("integer divide by zero"));if(ao===0){ao=12;}m=AA(m,ao,2);}else if(ag===(525)){m=AA(m,y,0);}else if(ag===(526)){m=AA(m,y,2);}else if(ag===(527)){m=AA(m,z,0);}else if(ag===(528)){m=AA(m,z,2);}else if(ag===(531)){if(x>=12){m=$appendSlice(m,"PM");}else{m=$appendSlice(m,"AM");}}else if(ag===(532)){if(x>=12){m=$appendSlice(m,"pm");}else{m=$appendSlice(m,"am");}}else if((ag===(22))||(ag===(25))||(ag===(23))||(ag===(24))||(ag===(26))||(ag===(27))||(ag===(30))||(ag===(28))||(ag===(29))||(ag===(31))){if((s===0)&&((ac===22)||(ac===25)||(ac===23)||(ac===24)||(ac===26))){m=$append(m,90);break;}aq=(ap=s/60,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));ar=s;if(aq<0){m=$append(m,45);aq=-aq;ar=-ar;}else{m=$append(m,43);}m=AA(m,(as=aq/60,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero")),2);if((ac===25)||(ac===30)||(ac===26)||(ac===31)){m=$append(m,58);}if(!((ac===29))&&!((ac===24))){m=AA(m,(at=aq%60,at===at?at:$throwRuntimeError("integer divide by zero")),2);}if((ac===23)||(ac===28)||(ac===31)||(ac===26)){if((ac===31)||(ac===26)){m=$append(m,58);}m=AA(m,(au=ar%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}}else if(ag===(21)){if(!(r==="")){m=$appendSlice(m,r);break;}aw=(av=s/60,(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(aw<0){m=$append(m,45);aw=-aw;}else{m=$append(m,43);}m=AA(m,(ax=aw/60,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero")),2);m=AA(m,(ay=aw%60,ay===ay?ay:$throwRuntimeError("integer divide by zero")),2);}else if((ag===(32))||(ag===(33))){m=AD(m,($clone(o,BM).Nanosecond()>>>0),ac>>16>>0,(ac&65535)===33);}}}$s=-1;return m;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.AppendFormat};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.AppendFormat=function(m,n){return this.$val.AppendFormat(m,n);};AG=function(m){var $ptr,m;return"\""+m+"\"";};AF.ptr.prototype.Error=function(){var $ptr,m;m=this;if(m.Message===""){return"parsing time "+AG(m.Value)+" as "+AG(m.Layout)+": cannot parse "+AG(m.ValueElem)+" as "+AG(m.LayoutElem);}return"parsing time "+AG(m.Value)+m.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(m,n){var $ptr,m,n,o;if(m.length<=n){return false;}o=m.charCodeAt(n);return 48<=o&&o<=57;};AI=function(m,n){var $ptr,m,n;if(!AH(m,0)){return[0,m,AE];}if(!AH(m,1)){if(n){return[0,m,AE];}return[((m.charCodeAt(0)-48<<24>>>24)>>0),$substring(m,1),$ifaceNil];}return[($imul(((m.charCodeAt(0)-48<<24>>>24)>>0),10))+((m.charCodeAt(1)-48<<24>>>24)>>0)>>0,$substring(m,2),$ifaceNil];};AJ=function(m){var $ptr,m;while(true){if(!(m.length>0&&(m.charCodeAt(0)===32))){break;}m=$substring(m,1);}return m;};AK=function(m,n){var $ptr,m,n;while(true){if(!(n.length>0)){break;}if(n.charCodeAt(0)===32){if(m.length>0&&!((m.charCodeAt(0)===32))){return[m,AE];}n=AJ(n);m=AJ(m);continue;}if((m.length===0)||!((m.charCodeAt(0)===n.charCodeAt(0)))){return[m,AE];}n=$substring(n,1);m=$substring(m,1);}return[m,$ifaceNil];};AL=function(m,n){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=AN(m,n,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(m,n,o,p){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;ce=$f.ce;cf=$f.cf;cg=$f.cg;ch=$f.ch;ci=$f.ci;cj=$f.cj;ck=$f.ck;cl=$f.cl;cm=$f.cm;cn=$f.cn;co=$f.co;cp=$f.cp;cq=$f.cq;cr=$f.cr;cs=$f.cs;ct=$f.ct;cu=$f.cu;cv=$f.cv;cw=$f.cw;cx=$f.cx;cy=$f.cy;cz=$f.cz;da=$f.da;db=$f.db;dc=$f.dc;dd=$f.dd;de=$f.de;df=$f.df;dg=$f.dg;dh=$f.dh;di=$f.di;dj=$f.dj;dk=$f.dk;dl=$f.dl;dm=$f.dm;dn=$f.dn;dp=$f.dp;dq=$f.dq;dr=$f.dr;ds=$f.ds;dt=$f.dt;du=$f.du;dv=$f.dv;dw=$f.dw;dx=$f.dx;dy=$f.dy;dz=$f.dz;ea=$f.ea;eb=$f.eb;ec=$f.ec;ed=$f.ed;ee=$f.ee;ef=$f.ef;eg=$f.eg;eh=$f.eh;ei=$f.ei;ej=$f.ej;ek=$f.ek;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=m;r=n;s=q;t=r;u="";v=false;w=false;x=0;y=1;z=1;aa=0;ab=0;ac=0;ad=0;ae=DL.nil;af=-1;ag="";while(true){ah=$ifaceNil;ai=T(m);aj=ai[0];ak=ai[1];al=ai[2];am=$substring(m,aj.length,(m.length-al.length>>0));an=AK(n,aj);n=an[0];ah=an[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,aj,n,"")];}if(ak===0){if(!((n.length===0))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,"",n,": extra text: "+n)];}break;}m=al;ao="";switch(0){default:ap=ak&65535;if(ap===(274)){if(n.length<2){ah=AE;break;}aq=$substring(n,0,2);ar=$substring(n,2);ao=aq;n=ar;as=AC(ao);x=as[0];ah=as[1];if(x>=69){x=x+(1900)>>0;}else{x=x+(2000)>>0;}}else if(ap===(273)){if(n.length<4||!AH(n,0)){ah=AE;break;}at=$substring(n,0,4);au=$substring(n,4);ao=at;n=au;av=AC(ao);x=av[0];ah=av[1];}else if(ap===(258)){aw=Z(W,n);y=aw[0];n=aw[1];ah=aw[2];}else if(ap===(257)){ax=Z(X,n);y=ax[0];n=ax[1];ah=ax[2];}else if((ap===(259))||(ap===(260))){ay=AI(n,ak===260);y=ay[0];n=ay[1];ah=ay[2];if(y<=0||12<y){u="month";}}else if(ap===(262)){az=Z(V,n);n=az[1];ah=az[2];}else if(ap===(261)){ba=Z(U,n);n=ba[1];ah=ba[2];}else if((ap===(263))||(ap===(264))||(ap===(265))){if((ak===264)&&n.length>0&&(n.charCodeAt(0)===32)){n=$substring(n,1);}bb=AI(n,ak===265);z=bb[0];n=bb[1];ah=bb[2];if(z<0){u="day";}}else if(ap===(522)){bc=AI(n,false);aa=bc[0];n=bc[1];ah=bc[2];if(aa<0||24<=aa){u="hour";}}else if((ap===(523))||(ap===(524))){bd=AI(n,ak===524);aa=bd[0];n=bd[1];ah=bd[2];if(aa<0||12<aa){u="hour";}}else if((ap===(525))||(ap===(526))){be=AI(n,ak===526);ab=be[0];n=be[1];ah=be[2];if(ab<0||60<=ab){u="minute";}}else if((ap===(527))||(ap===(528))){bf=AI(n,ak===528);ac=bf[0];n=bf[1];ah=bf[2];if(ac<0||60<=ac){u="second";break;}if(n.length>=2&&(n.charCodeAt(0)===46)&&AH(n,1)){bg=T(m);ak=bg[1];ak=ak&(65535);if((ak===32)||(ak===33)){break;}bh=2;while(true){if(!(bh<n.length&&AH(n,bh))){break;}bh=bh+(1)>>0;}bi=AQ(n,bh);ad=bi[0];u=bi[1];ah=bi[2];n=$substring(n,bh);}}else if(ap===(531)){if(n.length<2){ah=AE;break;}bj=$substring(n,0,2);bk=$substring(n,2);ao=bj;n=bk;bl=ao;if(bl===("PM")){w=true;}else if(bl===("AM")){v=true;}else{ah=AE;}}else if(ap===(532)){if(n.length<2){ah=AE;break;}bm=$substring(n,0,2);bn=$substring(n,2);ao=bm;n=bn;bo=ao;if(bo===("pm")){w=true;}else if(bo===("am")){v=true;}else{ah=AE;}}else if((ap===(22))||(ap===(25))||(ap===(23))||(ap===(24))||(ap===(26))||(ap===(27))||(ap===(29))||(ap===(30))||(ap===(28))||(ap===(31))){if(((ak===22)||(ak===24)||(ak===25))&&n.length>=1&&(n.charCodeAt(0)===90)){n=$substring(n,1);ae=$pkg.UTC;break;}bp="";bq="";br="";bs="";bt=bp;bu=bq;bv=br;bw=bs;if((ak===25)||(ak===30)){if(n.length<6){ah=AE;break;}if(!((n.charCodeAt(3)===58))){ah=AE;break;}bx=$substring(n,0,1);by=$substring(n,1,3);bz=$substring(n,4,6);ca="00";cb=$substring(n,6);bt=bx;bu=by;bv=bz;bw=ca;n=cb;}else if((ak===29)||(ak===24)){if(n.length<3){ah=AE;break;}cc=$substring(n,0,1);cd=$substring(n,1,3);ce="00";cf="00";cg=$substring(n,3);bt=cc;bu=cd;bv=ce;bw=cf;n=cg;}else if((ak===26)||(ak===31)){if(n.length<9){ah=AE;break;}if(!((n.charCodeAt(3)===58))||!((n.charCodeAt(6)===58))){ah=AE;break;}ch=$substring(n,0,1);ci=$substring(n,1,3);cj=$substring(n,4,6);ck=$substring(n,7,9);cl=$substring(n,9);bt=ch;bu=ci;bv=cj;bw=ck;n=cl;}else if((ak===23)||(ak===28)){if(n.length<7){ah=AE;break;}cm=$substring(n,0,1);cn=$substring(n,1,3);co=$substring(n,3,5);cp=$substring(n,5,7);cq=$substring(n,7);bt=cm;bu=cn;bv=co;bw=cp;n=cq;}else{if(n.length<5){ah=AE;break;}cr=$substring(n,0,1);cs=$substring(n,1,3);ct=$substring(n,3,5);cu="00";cv=$substring(n,5);bt=cr;bu=cs;bv=ct;bw=cu;n=cv;}cw=0;cx=0;cy=0;cz=cw;da=cx;db=cy;dc=AC(bu);cz=dc[0];ah=dc[1];if($interfaceIsEqual(ah,$ifaceNil)){dd=AC(bv);da=dd[0];ah=dd[1];}if($interfaceIsEqual(ah,$ifaceNil)){de=AC(bw);db=de[0];ah=de[1];}af=($imul(((($imul(cz,60))+da>>0)),60))+db>>0;df=bt.charCodeAt(0);if(df===(43)){}else if(df===(45)){af=-af;}else{ah=AE;}}else if(ap===(21)){if(n.length>=3&&$substring(n,0,3)==="UTC"){ae=$pkg.UTC;n=$substring(n,3);break;}dg=AO(n);dh=dg[0];di=dg[1];if(!di){ah=AE;break;}dj=$substring(n,0,dh);dk=$substring(n,dh);ag=dj;n=dk;}else if(ap===(32)){dl=1+((ak>>16>>0))>>0;if(n.length<dl){ah=AE;break;}dm=AQ(n,dl);ad=dm[0];u=dm[1];ah=dm[2];n=$substring(n,dl);}else if(ap===(33)){if(n.length<2||!((n.charCodeAt(0)===46))||n.charCodeAt(1)<48||57<n.charCodeAt(1)){break;}dn=0;while(true){if(!(dn<9&&(dn+1>>0)<n.length&&48<=n.charCodeAt((dn+1>>0))&&n.charCodeAt((dn+1>>0))<=57)){break;}dn=dn+(1)>>0;}dp=AQ(n,1+dn>>0);ad=dp[0];u=dp[1];ah=dp[2];n=$substring(n,(1+dn>>0));}}if(!(u==="")){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,am,n,": "+u+" out of range")];}if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,am,n,"")];}}if(w&&aa<12){aa=aa+(12)>>0;}else if(v&&(aa===12)){aa=0;}if(z<1||z>CA((y>>0),x)){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,"",n,": day out of range")];}if(!(ae===DL.nil)){$s=1;continue;}$s=2;continue;case 1:dq=CF(x,(y>>0),z,aa,ab,ac,ad,ae);$s=3;case 3:if($c){$c=false;dq=dq.$blk();}if(dq&&dq.$blk!==undefined){break s;}$s=-1;return[dq,$ifaceNil];case 2:if(!((af===-1))){$s=4;continue;}$s=5;continue;case 4:dr=CF(x,(y>>0),z,aa,ab,ac,ad,$pkg.UTC);$s=6;case 6:if($c){$c=false;dr=dr.$blk();}if(dr&&dr.$blk!==undefined){break s;}ds=$clone(dr,BM);ds.sec=(dt=ds.sec,du=new $Int64(0,af),new $Int64(dt.$high-du.$high,dt.$low-du.$low));dx=p.lookup((dw=ds.sec,new $Int64(dw.$high+-15,dw.$low+2288912640)));$s=7;case 7:if($c){$c=false;dx=dx.$blk();}if(dx&&dx.$blk!==undefined){break s;}dv=dx;dy=dv[0];dz=dv[1];if((dz===af)&&(ag===""||dy===ag)){ds.setLoc(p);$s=-1;return[ds,$ifaceNil];}ds.setLoc(CN(ag,af));$s=-1;return[ds,$ifaceNil];case 5:if(!(ag==="")){$s=8;continue;}$s=9;continue;case 8:ea=CF(x,(y>>0),z,aa,ab,ac,ad,$pkg.UTC);$s=10;case 10:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}eb=$clone(ea,BM);ee=p.lookupName(ag,(ed=eb.sec,new $Int64(ed.$high+-15,ed.$low+2288912640)));$s=11;case 11:if($c){$c=false;ee=ee.$blk();}if(ee&&ee.$blk!==undefined){break s;}ec=ee;ef=ec[0];eg=ec[2];if(eg){eb.sec=(eh=eb.sec,ei=new $Int64(0,ef),new $Int64(eh.$high-ei.$high,eh.$low-ei.$low));eb.setLoc(p);$s=-1;return[eb,$ifaceNil];}if(ag.length>3&&$substring(ag,0,3)==="GMT"){ej=AC($substring(ag,3));ef=ej[0];ef=$imul(ef,(3600));}eb.setLoc(CN(ag,ef));$s=-1;return[eb,$ifaceNil];case 9:ek=CF(x,(y>>0),z,aa,ab,ac,ad,o);$s=12;case 12:if($c){$c=false;ek=ek.$blk();}if(ek&&ek.$blk!==undefined){break s;}$s=-1;return[ek,$ifaceNil];}return;}if($f===undefined){$f={$blk:AN};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.ce=ce;$f.cf=cf;$f.cg=cg;$f.ch=ch;$f.ci=ci;$f.cj=cj;$f.ck=ck;$f.cl=cl;$f.cm=cm;$f.cn=cn;$f.co=co;$f.cp=cp;$f.cq=cq;$f.cr=cr;$f.cs=cs;$f.ct=ct;$f.cu=cu;$f.cv=cv;$f.cw=cw;$f.cx=cx;$f.cy=cy;$f.cz=cz;$f.da=da;$f.db=db;$f.dc=dc;$f.dd=dd;$f.de=de;$f.df=df;$f.dg=dg;$f.dh=dh;$f.di=di;$f.dj=dj;$f.dk=dk;$f.dl=dl;$f.dm=dm;$f.dn=dn;$f.dp=dp;$f.dq=dq;$f.dr=dr;$f.ds=ds;$f.dt=dt;$f.du=du;$f.dv=dv;$f.dw=dw;$f.dx=dx;$f.dy=dy;$f.dz=dz;$f.ea=ea;$f.eb=eb;$f.ec=ec;$f.ed=ed;$f.ee=ee;$f.ef=ef;$f.eg=eg;$f.eh=eh;$f.ei=ei;$f.ej=ej;$f.ek=ek;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AO=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=0;o=false;if(m.length<3){p=0;q=false;n=p;o=q;return[n,o];}if(m.length>=4&&($substring(m,0,4)==="ChST"||$substring(m,0,4)==="MeST")){r=4;s=true;n=r;o=s;return[n,o];}if($substring(m,0,3)==="GMT"){n=AP(m);t=n;u=true;n=t;o=u;return[n,o];}v=0;v=0;while(true){if(!(v<6)){break;}if(v>=m.length){break;}w=m.charCodeAt(v);if(w<65||90<w){break;}v=v+(1)>>0;}x=v;if((x===(0))||(x===(1))||(x===(2))||(x===(6))){y=0;z=false;n=y;o=z;return[n,o];}else if(x===(5)){if(m.charCodeAt(4)===84){aa=5;ab=true;n=aa;o=ab;return[n,o];}}else if(x===(4)){if((m.charCodeAt(3)===84)||$substring(m,0,4)==="WITA"){ac=4;ad=true;n=ac;o=ad;return[n,o];}}else if(x===(3)){ae=3;af=true;n=ae;o=af;return[n,o];}ag=0;ah=false;n=ag;o=ah;return[n,o];};AP=function(m){var $ptr,m,n,o,p,q,r;m=$substring(m,3);if(m.length===0){return 3;}n=m.charCodeAt(0);if(!((n===45))&&!((n===43))){return 3;}o=AS($substring(m,1));p=o[0];q=o[1];r=o[2];if(!($interfaceIsEqual(r,$ifaceNil))){return 3;}if(n===45){p=new $Int64(-p.$high,-p.$low);}if((p.$high===0&&p.$low===0)||(p.$high<-1||(p.$high===-1&&p.$low<4294967282))||(0<p.$high||(0===p.$high&&12<p.$low))){return 3;}return(3+m.length>>0)-q.length>>0;};AQ=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=0;p="";q=$ifaceNil;if(!((m.charCodeAt(0)===46))){q=AE;return[o,p,q];}r=AC($substring(m,1,n));o=r[0];q=r[1];if(!($interfaceIsEqual(q,$ifaceNil))){return[o,p,q];}if(o<0||1000000000<=o){p="fractional second";return[o,p,q];}s=10-n>>0;t=0;while(true){if(!(t<s)){break;}o=$imul(o,(10));t=t+(1)>>0;}return[o,p,q];};AS=function(m){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=new $Int64(0,0);o="";p=$ifaceNil;q=0;while(true){if(!(q<m.length)){break;}r=m.charCodeAt(q);if(r<48||r>57){break;}if((n.$high>214748364||(n.$high===214748364&&n.$low>3435973836))){s=new $Int64(0,0);t="";u=AR;n=s;o=t;p=u;return[n,o,p];}n=(v=(w=$mul64(n,new $Int64(0,10)),x=new $Int64(0,r),new $Int64(w.$high+x.$high,w.$low+x.$low)),new $Int64(v.$high-0,v.$low-48));if((n.$high<0||(n.$high===0&&n.$low<0))){y=new $Int64(0,0);z="";aa=AR;n=y;o=z;p=aa;return[n,o,p];}q=q+(1)>>0;}ab=n;ac=$substring(m,q);ad=$ifaceNil;n=ab;o=ac;p=ad;return[n,o,p];};AT=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=new $Int64(0,0);o=0;p="";q=0;o=1;r=false;while(true){if(!(q<m.length)){break;}s=m.charCodeAt(q);if(s<48||s>57){break;}if(r){q=q+(1)>>0;continue;}if((n.$high>214748364||(n.$high===214748364&&n.$low>3435973836))){r=true;q=q+(1)>>0;continue;}w=(t=(u=$mul64(n,new $Int64(0,10)),v=new $Int64(0,s),new $Int64(u.$high+v.$high,u.$low+v.$low)),new $Int64(t.$high-0,t.$low-48));if((w.$high<0||(w.$high===0&&w.$low<0))){r=true;q=q+(1)>>0;continue;}n=w;o=o*(10);q=q+(1)>>0;}x=n;y=o;z=$substring(m,q);n=x;o=y;p=z;return[n,o,p];};AV=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=m;o=new $Int64(0,0);p=false;if(!(m==="")){q=m.charCodeAt(0);if((q===45)||(q===43)){p=q===45;m=$substring(m,1);}}if(m==="0"){return[new BT(0,0),$ifaceNil];}if(m===""){return[new BT(0,0),C.New("time: invalid duration "+n)];}while(true){if(!(!(m===""))){break;}r=new $Int64(0,0);s=new $Int64(0,0);t=r;u=s;v=1;w=$ifaceNil;if(!((m.charCodeAt(0)===46)||48<=m.charCodeAt(0)&&m.charCodeAt(0)<=57)){return[new BT(0,0),C.New("time: invalid duration "+n)];}x=m.length;y=AS(m);t=y[0];m=y[1];w=y[2];if(!($interfaceIsEqual(w,$ifaceNil))){return[new BT(0,0),C.New("time: invalid duration "+n)];}z=!((x===m.length));aa=false;if(!(m==="")&&(m.charCodeAt(0)===46)){m=$substring(m,1);ab=m.length;ac=AT(m);u=ac[0];v=ac[1];m=ac[2];aa=!((ab===m.length));}if(!z&&!aa){return[new BT(0,0),C.New("time: invalid duration "+n)];}ad=0;while(true){if(!(ad<m.length)){break;}ae=m.charCodeAt(ad);if((ae===46)||48<=ae&&ae<=57){break;}ad=ad+(1)>>0;}if(ad===0){return[new BT(0,0),C.New("time: missing unit in duration "+n)];}af=$substring(m,0,ad);m=$substring(m,ad);ag=(ah=AU[$String.keyFor(af)],ah!==undefined?[ah.v,true]:[new $Int64(0,0),false]);ai=ag[0];aj=ag[1];if(!aj){return[new BT(0,0),C.New("time: unknown unit "+af+" in duration "+n)];}if((ak=$div64(new $Int64(2147483647,4294967295),ai,false),(t.$high>ak.$high||(t.$high===ak.$high&&t.$low>ak.$low)))){return[new BT(0,0),C.New("time: invalid duration "+n)];}t=$mul64(t,(ai));if((u.$high>0||(u.$high===0&&u.$low>0))){t=(al=new $Int64(0,$flatten64(u)*($flatten64(ai)/v)),new $Int64(t.$high+al.$high,t.$low+al.$low));if((t.$high<0||(t.$high===0&&t.$low<0))){return[new BT(0,0),C.New("time: invalid duration "+n)];}}o=(am=t,new $Int64(o.$high+am.$high,o.$low+am.$low));if((o.$high<0||(o.$high===0&&o.$low<0))){return[new BT(0,0),C.New("time: invalid duration "+n)];}}if(p){o=new $Int64(-o.$high,-o.$low);}return[new BT(o.$high,o.$low),$ifaceNil];};$pkg.ParseDuration=AV;BM.ptr.prototype.setLoc=function(m){var $ptr,m,n;n=this;if(m===CK){m=DL.nil;}n.loc=m;};BM.prototype.setLoc=function(m){return this.$val.setLoc(m);};BM.ptr.prototype.After=function(m){var $ptr,m,n,o,p,q,r;n=this;return(o=n.sec,p=m.sec,(o.$high>p.$high||(o.$high===p.$high&&o.$low>p.$low)))||(q=n.sec,r=m.sec,(q.$high===r.$high&&q.$low===r.$low))&&n.nsec>m.nsec;};BM.prototype.After=function(m){return this.$val.After(m);};BM.ptr.prototype.Before=function(m){var $ptr,m,n,o,p,q,r;n=this;return(o=n.sec,p=m.sec,(o.$high<p.$high||(o.$high===p.$high&&o.$low<p.$low)))||(q=n.sec,r=m.sec,(q.$high===r.$high&&q.$low===r.$low))&&n.nsec<m.nsec;};BM.prototype.Before=function(m){return this.$val.Before(m);};BM.ptr.prototype.Equal=function(m){var $ptr,m,n,o,p;n=this;return(o=n.sec,p=m.sec,(o.$high===p.$high&&o.$low===p.$low))&&(n.nsec===m.nsec);};BM.prototype.Equal=function(m){return this.$val.Equal(m);};BN.prototype.String=function(){var $ptr,m,n,o,p;m=this.$val;if(1<=m&&m<=12){return(n=m-1>>0,((n<0||n>=BO.length)?($throwRuntimeError("index out of range"),undefined):BO[n]));}o=$makeSlice(DI,20);p=BV(o,new $Uint64(0,m));return"%!Month("+$bytesToString($subslice(o,p))+")";};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BP.prototype.String=function(){var $ptr,m;m=this.$val;return((m<0||m>=BQ.length)?($throwRuntimeError("index out of range"),undefined):BQ[m]);};$ptrType(BP).prototype.String=function(){return new BP(this.$get()).String();};BM.ptr.prototype.IsZero=function(){var $ptr,m,n;m=this;return(n=m.sec,(n.$high===0&&n.$low===0))&&(m.nsec===0);};BM.prototype.IsZero=function(){return this.$val.IsZero();};BM.ptr.prototype.abs=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.loc;if(n===DL.nil||n===CL){$s=1;continue;}$s=2;continue;case 1:o=n.get();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;case 2:q=(p=m.sec,new $Int64(p.$high+-15,p.$low+2288912640));if(!(n===CK)){$s=4;continue;}$s=5;continue;case 4:if(!(n.cacheZone===DE.nil)&&(r=n.cacheStart,(r.$high<q.$high||(r.$high===q.$high&&r.$low<=q.$low)))&&(s=n.cacheEnd,(q.$high<s.$high||(q.$high===s.$high&&q.$low<s.$low)))){$s=6;continue;}$s=7;continue;case 6:q=(t=new $Int64(0,n.cacheZone.offset),new $Int64(q.$high+t.$high,q.$low+t.$low));$s=8;continue;case 7:v=n.lookup(q);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[1];q=(x=new $Int64(0,w),new $Int64(q.$high+x.$high,q.$low+x.$low));case 8:case 5:$s=-1;return(y=new $Int64(q.$high+2147483646,q.$low+450480384),new $Uint64(y.$high,y.$low));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.abs};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.abs=function(){return this.$val.abs();};BM.ptr.prototype.locabs=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m="";n=0;o=new $Uint64(0,0);p=this;q=p.loc;if(q===DL.nil||q===CL){$s=1;continue;}$s=2;continue;case 1:r=q.get();$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;case 2:t=(s=p.sec,new $Int64(s.$high+-15,s.$low+2288912640));if(!(q===CK)){$s=4;continue;}$s=5;continue;case 4:if(!(q.cacheZone===DE.nil)&&(u=q.cacheStart,(u.$high<t.$high||(u.$high===t.$high&&u.$low<=t.$low)))&&(v=q.cacheEnd,(t.$high<v.$high||(t.$high===v.$high&&t.$low<v.$low)))){$s=7;continue;}$s=8;continue;case 7:m=q.cacheZone.name;n=q.cacheZone.offset;$s=9;continue;case 8:x=q.lookup(t);$s=10;case 10:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;m=w[0];n=w[1];case 9:t=(y=new $Int64(0,n),new $Int64(t.$high+y.$high,t.$low+y.$low));$s=6;continue;case 5:m="UTC";case 6:o=(z=new $Int64(t.$high+2147483646,t.$low+450480384),new $Uint64(z.$high,z.$low));$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.locabs};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.locabs=function(){return this.$val.locabs();};BM.ptr.prototype.Date=function(){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=0;p=this;r=$clone(p,BM).date(true);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;m=q[0];n=q[1];o=q[2];$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Date};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Date=function(){return this.$val.Date();};BM.ptr.prototype.Year=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(false);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Year};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Year=function(){return this.$val.Year();};BM.ptr.prototype.Month=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(true);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Month};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Month=function(){return this.$val.Month();};BM.ptr.prototype.Day=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(true);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[2];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Day};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Day=function(){return this.$val.Day();};BM.ptr.prototype.Weekday=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=BR(n);$s=2;case 2:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Weekday};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Weekday=function(){return this.$val.Weekday();};BR=function(m){var $ptr,m,n,o;n=$div64((new $Uint64(m.$high+0,m.$low+86400)),new $Uint64(0,604800),true);return((o=(n.$low>>0)/86400,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))>>0);};BM.ptr.prototype.ISOWeek=function(){var $ptr,aa,ab,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=this;q=$clone(o,BM).date(true);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;m=p[0];r=p[1];s=p[2];t=p[3];v=$clone(o,BM).Weekday();$s=2;case 2:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=(u=((v+6>>0)>>0)%7,u===u?u:$throwRuntimeError("integer divide by zero"));n=(x=(((t-w>>0)+7>>0))/7,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"));z=(y=(((w-t>>0)+371>>0))%7,y===y?y:$throwRuntimeError("integer divide by zero"));if(1<=z&&z<=3){n=n+(1)>>0;}if(n===0){m=m-(1)>>0;n=52;if((z===4)||((z===5)&&CD(m))){n=n+(1)>>0;}}if((r===12)&&s>=29&&w<3){ab=(aa=(((w+31>>0)-s>>0))%7,aa===aa?aa:$throwRuntimeError("integer divide by zero"));if(0<=ab&&ab<=2){m=m+(1)>>0;n=1;}}$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.ISOWeek};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BM.ptr.prototype.Clock=function(){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=0;p=this;r=$clone(p,BM).abs();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=BS(r);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=s;m=q[0];n=q[1];o=q[2];$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Clock};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Clock=function(){return this.$val.Clock();};BS=function(m){var $ptr,m,n,o,p,q,r;n=0;o=0;p=0;p=($div64(m,new $Uint64(0,86400),true).$low>>0);n=(q=p/3600,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"));p=p-(($imul(n,3600)))>>0;o=(r=p/60,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"));p=p-(($imul(o,60)))>>0;return[n,o,p];};BM.ptr.prototype.Hour=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return(n=($div64(o,new $Uint64(0,86400),true).$low>>0)/3600,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Hour=function(){return this.$val.Hour();};BM.ptr.prototype.Minute=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return(n=($div64(o,new $Uint64(0,3600),true).$low>>0)/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Minute=function(){return this.$val.Minute();};BM.ptr.prototype.Second=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return($div64(n,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Second};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Second=function(){return this.$val.Second();};BM.ptr.prototype.Nanosecond=function(){var $ptr,m;m=this;return(m.nsec>>0);};BM.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BM.ptr.prototype.YearDay=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(false);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[3];$s=-1;return p+1>>0;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.YearDay=function(){return this.$val.YearDay();};BT.prototype.String=function(){var $ptr,m,n,o,p,q,r,s,t;m=this;n=DP.zero();o=32;p=new $Uint64(m.$high,m.$low);q=(m.$high<0||(m.$high===0&&m.$low<0));if(q){p=new $Uint64(-p.$high,-p.$low);}if((p.$high<0||(p.$high===0&&p.$low<1000000000))){r=0;o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=115);o=o-(1)>>0;if((p.$high===0&&p.$low===0)){return"0s";}else if((p.$high<0||(p.$high===0&&p.$low<1000))){r=0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=110);}else if((p.$high<0||(p.$high===0&&p.$low<1000000))){r=3;o=o-(1)>>0;$copyString($subslice(new DI(n),o),"\xC2\xB5");}else{r=6;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=109);}s=BU($subslice(new DI(n),0,o),p,r);o=s[0];p=s[1];o=BV($subslice(new DI(n),0,o),p);}else{o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=115);t=BU($subslice(new DI(n),0,o),p,9);o=t[0];p=t[1];o=BV($subslice(new DI(n),0,o),$div64(p,new $Uint64(0,60),true));p=$div64(p,(new $Uint64(0,60)),false);if((p.$high>0||(p.$high===0&&p.$low>0))){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=109);o=BV($subslice(new DI(n),0,o),$div64(p,new $Uint64(0,60),true));p=$div64(p,(new $Uint64(0,60)),false);if((p.$high>0||(p.$high===0&&p.$low>0))){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=104);o=BV($subslice(new DI(n),0,o),p);}}}if(q){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=45);}return $bytesToString($subslice(new DI(n),o));};$ptrType(BT).prototype.String=function(){return this.$get().String();};BU=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=new $Uint64(0,0);r=m.$length;s=false;t=0;while(true){if(!(t<o)){break;}u=$div64(n,new $Uint64(0,10),true);s=s||!((u.$high===0&&u.$low===0));if(s){r=r-(1)>>0;((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=((u.$low<<24>>>24)+48<<24>>>24));}n=$div64(n,(new $Uint64(0,10)),false);t=t+(1)>>0;}if(s){r=r-(1)>>0;((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=46);}v=r;w=n;p=v;q=w;return[p,q];};BV=function(m,n){var $ptr,m,n,o;o=m.$length;if((n.$high===0&&n.$low===0)){o=o-(1)>>0;((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]=48);}else{while(true){if(!((n.$high>0||(n.$high===0&&n.$low>0)))){break;}o=o-(1)>>0;((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]=(($div64(n,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));n=$div64(n,(new $Uint64(0,10)),false);}}return o;};BT.prototype.Nanoseconds=function(){var $ptr,m;m=this;return new $Int64(m.$high,m.$low);};$ptrType(BT).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BT.prototype.Seconds=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(0,1000000000),false);o=$div64(m,new BT(0,1000000000),true);return $flatten64(n)+$flatten64(o)/1e+09;};$ptrType(BT).prototype.Seconds=function(){return this.$get().Seconds();};BT.prototype.Minutes=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(13,4165425152),false);o=$div64(m,new BT(13,4165425152),true);return $flatten64(n)+$flatten64(o)/6e+10;};$ptrType(BT).prototype.Minutes=function(){return this.$get().Minutes();};BT.prototype.Hours=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(838,817405952),false);o=$div64(m,new BT(838,817405952),true);return $flatten64(n)+$flatten64(o)/3.6e+12;};$ptrType(BT).prototype.Hours=function(){return this.$get().Hours();};BM.ptr.prototype.Add=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w;n=this;n.sec=(o=n.sec,p=(q=$div64(m,new BT(0,1000000000),false),new $Int64(q.$high,q.$low)),new $Int64(o.$high+p.$high,o.$low+p.$low));s=n.nsec+((r=$div64(m,new BT(0,1000000000),true),r.$low+((r.$high>>31)*4294967296))>>0)>>0;if(s>=1000000000){n.sec=(t=n.sec,u=new $Int64(0,1),new $Int64(t.$high+u.$high,t.$low+u.$low));s=s-(1000000000)>>0;}else if(s<0){n.sec=(v=n.sec,w=new $Int64(0,1),new $Int64(v.$high-w.$high,v.$low-w.$low));s=s+(1000000000)>>0;}n.nsec=s;return n;};BM.prototype.Add=function(m){return this.$val.Add(m);};BM.ptr.prototype.Sub=function(m){var $ptr,m,n,o,p,q,r,s,t;n=this;t=(o=$mul64((p=(q=n.sec,r=m.sec,new $Int64(q.$high-r.$high,q.$low-r.$low)),new BT(p.$high,p.$low)),new BT(0,1000000000)),s=new BT(0,(n.nsec-m.nsec>>0)),new BT(o.$high+s.$high,o.$low+s.$low));if($clone($clone(m,BM).Add(t),BM).Equal($clone(n,BM))){return t;}else if($clone(n,BM).Before($clone(m,BM))){return new BT(-2147483648,0);}else{return new BT(2147483647,4294967295);}};BM.prototype.Sub=function(m){return this.$val.Sub(m);};BM.ptr.prototype.AddDate=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;r=$clone(p,BM).Date();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];u=q[2];w=$clone(p,BM).Clock();$s=2;case 2:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;x=v[0];y=v[1];z=v[2];aa=CF(s+m>>0,t+(n>>0)>>0,u+o>>0,x,y,z,(p.nsec>>0),$clone(p,BM).Location());$s=3;case 3:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return aa;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.AddDate};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.AddDate=function(m,n,o){return this.$val.AddDate(m,n,o);};BM.ptr.prototype.date=function(m){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=0;o=0;p=0;q=0;r=this;t=$clone(r,BM).abs();$s=1;case 1:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=BY(t,m);$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}s=u;n=s[0];o=s[1];p=s[2];q=s[3];$s=-1;return[n,o,p,q];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.date};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.date=function(m){return this.$val.date(m);};BY=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p=0;q=0;r=0;s=$div64(m,new $Uint64(0,86400),false);t=$div64(s,new $Uint64(0,146097),false);u=$mul64(new $Uint64(0,400),t);s=(v=$mul64(new $Uint64(0,146097),t),new $Uint64(s.$high-v.$high,s.$low-v.$low));t=$div64(s,new $Uint64(0,36524),false);t=(w=$shiftRightUint64(t,2),new $Uint64(t.$high-w.$high,t.$low-w.$low));u=(x=$mul64(new $Uint64(0,100),t),new $Uint64(u.$high+x.$high,u.$low+x.$low));s=(y=$mul64(new $Uint64(0,36524),t),new $Uint64(s.$high-y.$high,s.$low-y.$low));t=$div64(s,new $Uint64(0,1461),false);u=(z=$mul64(new $Uint64(0,4),t),new $Uint64(u.$high+z.$high,u.$low+z.$low));s=(aa=$mul64(new $Uint64(0,1461),t),new $Uint64(s.$high-aa.$high,s.$low-aa.$low));t=$div64(s,new $Uint64(0,365),false);t=(ab=$shiftRightUint64(t,2),new $Uint64(t.$high-ab.$high,t.$low-ab.$low));u=(ac=t,new $Uint64(u.$high+ac.$high,u.$low+ac.$low));s=(ad=$mul64(new $Uint64(0,365),t),new $Uint64(s.$high-ad.$high,s.$low-ad.$low));o=((ae=(af=new $Int64(u.$high,u.$low),new $Int64(af.$high+-69,af.$low+4075721025)),ae.$low+((ae.$high>>31)*4294967296))>>0);r=(s.$low>>0);if(!n){return[o,p,q,r];}q=r;if(CD(o)){if(q>59){q=q-(1)>>0;}else if((q===59)){p=2;q=29;return[o,p,q,r];}}p=((ag=q/31,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero"))>>0);ai=((ah=p+1>>0,((ah<0||ah>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[ah]))>>0);aj=0;if(q>=ai){p=p+(1)>>0;aj=ai;}else{aj=(((p<0||p>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[p])>>0);}p=p+(1)>>0;q=(q-aj>>0)+1>>0;return[o,p,q,r];};CA=function(m,n){var $ptr,m,n,o;if((m===2)&&CD(n)){return 29;}return((((m<0||m>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[m])-(o=m-1>>0,((o<0||o>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[o]))>>0)>>0);};CB=function(){var $ptr,m,n,o;m=J();n=m[0];o=m[1];return new BM.ptr(new $Int64(n.$high+14,n.$low+2006054656),o,$pkg.Local);};$pkg.Now=CB;BM.ptr.prototype.UTC=function(){var $ptr,m;m=this;m.setLoc(CK);return m;};BM.prototype.UTC=function(){return this.$val.UTC();};BM.ptr.prototype.Local=function(){var $ptr,m;m=this;m.setLoc($pkg.Local);return m;};BM.prototype.Local=function(){return this.$val.Local();};BM.ptr.prototype.In=function(m){var $ptr,m,n;n=this;if(m===DL.nil){$panic(new $String("time: missing Location in call to Time.In"));}n.setLoc(m);return n;};BM.prototype.In=function(m){return this.$val.In(m);};BM.ptr.prototype.Location=function(){var $ptr,m,n;m=this;n=m.loc;if(n===DL.nil){n=$pkg.UTC;}return n;};BM.prototype.Location=function(){return this.$val.Location();};BM.ptr.prototype.Zone=function(){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m="";n=0;o=this;r=o.loc.lookup((q=o.sec,new $Int64(q.$high+-15,q.$low+2288912640)));$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;m=p[0];n=p[1];$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Zone};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Zone=function(){return this.$val.Zone();};BM.ptr.prototype.Unix=function(){var $ptr,m,n;m=this;return(n=m.sec,new $Int64(n.$high+-15,n.$low+2288912640));};BM.prototype.Unix=function(){return this.$val.Unix();};BM.ptr.prototype.UnixNano=function(){var $ptr,m,n,o,p;m=this;return(n=$mul64(((o=m.sec,new $Int64(o.$high+-15,o.$low+2288912640))),new $Int64(0,1000000000)),p=new $Int64(0,m.nsec),new $Int64(n.$high+p.$high,n.$low+p.$low));};BM.prototype.UnixNano=function(){return this.$val.UnixNano();};BM.ptr.prototype.MarshalBinary=function(){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=0;if($clone(m,BM).Location()===$pkg.UTC){$s=1;continue;}$s=2;continue;case 1:n=-1;$s=3;continue;case 2:p=$clone(m,BM).Zone();$s=4;case 4:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[1];if(!(((r=q%60,r===r?r:$throwRuntimeError("integer divide by zero"))===0))){$s=-1;return[DI.nil,C.New("Time.MarshalBinary: zone offset has fractional minute")];}q=(s=q/(60),(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"));if(q<-32768||(q===-1)||q>32767){$s=-1;return[DI.nil,C.New("Time.MarshalBinary: unexpected zone offset")];}n=(q<<16>>16);case 3:t=new DI([1,($shiftRightInt64(m.sec,56).$low<<24>>>24),($shiftRightInt64(m.sec,48).$low<<24>>>24),($shiftRightInt64(m.sec,40).$low<<24>>>24),($shiftRightInt64(m.sec,32).$low<<24>>>24),($shiftRightInt64(m.sec,24).$low<<24>>>24),($shiftRightInt64(m.sec,16).$low<<24>>>24),($shiftRightInt64(m.sec,8).$low<<24>>>24),(m.sec.$low<<24>>>24),((m.nsec>>24>>0)<<24>>>24),((m.nsec>>16>>0)<<24>>>24),((m.nsec>>8>>0)<<24>>>24),(m.nsec<<24>>>24),((n>>8<<16>>16)<<24>>>24),(n<<24>>>24)]);$s=-1;return[t,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalBinary};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BM.ptr.prototype.UnmarshalBinary=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=m;if(o.$length===0){$s=-1;return C.New("Time.UnmarshalBinary: no data");}if(!(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])===1))){$s=-1;return C.New("Time.UnmarshalBinary: unsupported version");}if(!((o.$length===15))){$s=-1;return C.New("Time.UnmarshalBinary: invalid length");}o=$subslice(o,1);n.sec=(p=(q=(r=(s=(t=(u=(v=new $Int64(0,(7>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+7])),w=$shiftLeft64(new $Int64(0,(6>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+6])),8),new $Int64(v.$high|w.$high,(v.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(5>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+5])),16),new $Int64(u.$high|x.$high,(u.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(4>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+4])),24),new $Int64(t.$high|y.$high,(t.$low|y.$low)>>>0)),z=$shiftLeft64(new $Int64(0,(3>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+3])),32),new $Int64(s.$high|z.$high,(s.$low|z.$low)>>>0)),aa=$shiftLeft64(new $Int64(0,(2>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+2])),40),new $Int64(r.$high|aa.$high,(r.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Int64(0,(1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])),48),new $Int64(q.$high|ab.$high,(q.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Int64(0,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])),56),new $Int64(p.$high|ac.$high,(p.$low|ac.$low)>>>0));o=$subslice(o,8);n.nsec=((((3>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+3])>>0)|(((2>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+2])>>0)<<8>>0))|(((1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])>>0)<<16>>0))|(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])>>0)<<24>>0);o=$subslice(o,4);ad=$imul(((((1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])<<16>>16)|(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(ad===-60){$s=1;continue;}$s=2;continue;case 1:n.setLoc(CK);$s=3;continue;case 2:ag=$pkg.Local.lookup((af=n.sec,new $Int64(af.$high+-15,af.$low+2288912640)));$s=4;case 4:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ae=ag;ah=ae[1];if(ad===ah){n.setLoc($pkg.Local);}else{n.setLoc(CN("",ad));}case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalBinary};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalBinary=function(m){return this.$val.UnmarshalBinary(m);};BM.ptr.prototype.GobEncode=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).MarshalBinary();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.GobEncode=function(){return this.$val.GobEncode();};BM.ptr.prototype.GobDecode=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=n.UnmarshalBinary(m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.GobDecode=function(m){return this.$val.GobDecode(m);};BM.ptr.prototype.MarshalJSON=function(){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Year();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(o<0||o>=10000){$s=-1;return[DI.nil,C.New("Time.MarshalJSON: year outside of range [0,9999]")];}p=$makeSlice(DI,0,37);p=$append(p,34);q=$clone(m,BM).AppendFormat(p,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;p=$append(p,34);$s=-1;return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BM.ptr.prototype.UnmarshalJSON=function(m){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if($bytesToString(m)==="null"){$s=-1;return $ifaceNil;}o=$ifaceNil;q=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(m));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;BM.copy(n,p[0]);o=p[1];$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalJSON=function(m){return this.$val.UnmarshalJSON(m);};BM.ptr.prototype.MarshalText=function(){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Year();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(o<0||o>=10000){$s=-1;return[DI.nil,C.New("Time.MarshalText: year outside of range [0,9999]")];}p=$makeSlice(DI,0,35);q=$clone(m,BM).AppendFormat(p,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return[q,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalText=function(){return this.$val.MarshalText();};BM.ptr.prototype.UnmarshalText=function(m){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=$ifaceNil;q=AL("2006-01-02T15:04:05Z07:00",$bytesToString(m));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;BM.copy(n,p[0]);o=p[1];$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalText=function(m){return this.$val.UnmarshalText(m);};CC=function(m,n){var $ptr,m,n,o,p,q,r,s;if((n.$high<0||(n.$high===0&&n.$low<0))||(n.$high>0||(n.$high===0&&n.$low>=1000000000))){o=$div64(n,new $Int64(0,1000000000),false);m=(p=o,new $Int64(m.$high+p.$high,m.$low+p.$low));n=(q=$mul64(o,new $Int64(0,1000000000)),new $Int64(n.$high-q.$high,n.$low-q.$low));if((n.$high<0||(n.$high===0&&n.$low<0))){n=(r=new $Int64(0,1000000000),new $Int64(n.$high+r.$high,n.$low+r.$low));m=(s=new $Int64(0,1),new $Int64(m.$high-s.$high,m.$low-s.$low));}}return new BM.ptr(new $Int64(m.$high+14,m.$low+2006054656),((n.$low+((n.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CC;CD=function(m){var $ptr,m,n,o,p;return((n=m%4,n===n?n:$throwRuntimeError("integer divide by zero"))===0)&&(!(((o=m%100,o===o?o:$throwRuntimeError("integer divide by zero"))===0))||((p=m%400,p===p?p:$throwRuntimeError("integer divide by zero"))===0));};CE=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=0;if(n<0){s=(r=((-n-1>>0))/o,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))+1>>0;m=m-(s)>>0;n=n+(($imul(s,o)))>>0;}if(n>=o){u=(t=n/o,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));m=m+(u)>>0;n=n-(($imul(u,o)))>>0;}v=m;w=n;p=v;q=w;return[p,q];};CF=function(m,n,o,p,q,r,s,t){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(t===DL.nil){$panic(new $String("time: missing Location in call to Date"));}u=(n>>0)-1>>0;v=CE(m,u,12);m=v[0];u=v[1];n=(u>>0)+1>>0;w=CE(r,s,1000000000);r=w[0];s=w[1];x=CE(q,r,60);q=x[0];r=x[1];y=CE(p,q,60);p=y[0];q=y[1];z=CE(o,p,24);o=z[0];p=z[1];ac=(aa=(ab=new $Int64(0,m),new $Int64(ab.$high- -69,ab.$low-4075721025)),new $Uint64(aa.$high,aa.$low));ad=$div64(ac,new $Uint64(0,400),false);ac=(ae=$mul64(new $Uint64(0,400),ad),new $Uint64(ac.$high-ae.$high,ac.$low-ae.$low));af=$mul64(new $Uint64(0,146097),ad);ad=$div64(ac,new $Uint64(0,100),false);ac=(ag=$mul64(new $Uint64(0,100),ad),new $Uint64(ac.$high-ag.$high,ac.$low-ag.$low));af=(ah=$mul64(new $Uint64(0,36524),ad),new $Uint64(af.$high+ah.$high,af.$low+ah.$low));ad=$div64(ac,new $Uint64(0,4),false);ac=(ai=$mul64(new $Uint64(0,4),ad),new $Uint64(ac.$high-ai.$high,ac.$low-ai.$low));af=(aj=$mul64(new $Uint64(0,1461),ad),new $Uint64(af.$high+aj.$high,af.$low+aj.$low));ad=ac;af=(ak=$mul64(new $Uint64(0,365),ad),new $Uint64(af.$high+ak.$high,af.$low+ak.$low));af=(al=new $Uint64(0,(am=n-1>>0,((am<0||am>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[am]))),new $Uint64(af.$high+al.$high,af.$low+al.$low));if(CD(m)&&n>=3){af=(an=new $Uint64(0,1),new $Uint64(af.$high+an.$high,af.$low+an.$low));}af=(ao=new $Uint64(0,(o-1>>0)),new $Uint64(af.$high+ao.$high,af.$low+ao.$low));ap=$mul64(af,new $Uint64(0,86400));ap=(aq=new $Uint64(0,((($imul(p,3600))+($imul(q,60))>>0)+r>>0)),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));as=(ar=new $Int64(ap.$high,ap.$low),new $Int64(ar.$high+-2147483647,ar.$low+3844486912));au=t.lookup(as);$s=1;case 1:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;av=at[1];aw=at[3];ax=at[4];if(!((av===0))){$s=2;continue;}$s=3;continue;case 2:az=(ay=new $Int64(0,av),new $Int64(as.$high-ay.$high,as.$low-ay.$low));if((az.$high<aw.$high||(az.$high===aw.$high&&az.$low<aw.$low))){$s=5;continue;}if((az.$high>ax.$high||(az.$high===ax.$high&&az.$low>=ax.$low))){$s=6;continue;}$s=7;continue;case 5:bb=t.lookup(new $Int64(aw.$high-0,aw.$low-1));$s=8;case 8:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;av=ba[1];$s=7;continue;case 6:bd=t.lookup(ax);$s=9;case 9:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;av=bc[1];case 7:case 4:as=(be=new $Int64(0,av),new $Int64(as.$high-be.$high,as.$low-be.$low));case 3:bf=new BM.ptr(new $Int64(as.$high+14,as.$low+2006054656),(s>>0),DL.nil);bf.setLoc(t);$s=-1;return bf;}return;}if($f===undefined){$f={$blk:CF};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Date=CF;BM.ptr.prototype.Truncate=function(m){var $ptr,m,n,o,p;n=this;if((m.$high<0||(m.$high===0&&m.$low<=0))){return n;}o=CG($clone(n,BM),m);p=o[1];return $clone(n,BM).Add(new BT(-p.$high,-p.$low));};BM.prototype.Truncate=function(m){return this.$val.Truncate(m);};BM.ptr.prototype.Round=function(m){var $ptr,m,n,o,p,q;n=this;if((m.$high<0||(m.$high===0&&m.$low<=0))){return n;}o=CG($clone(n,BM),m);p=o[1];if((q=new BT(p.$high+p.$high,p.$low+p.$low),(q.$high<m.$high||(q.$high===m.$high&&q.$low<m.$low)))){return $clone(n,BM).Add(new BT(-p.$high,-p.$low));}return $clone(n,BM).Add(new BT(m.$high-p.$high,m.$low-p.$low));};BM.prototype.Round=function(m){return this.$val.Round(m);};CG=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p=new BT(0,0);q=false;r=m.nsec;if((s=m.sec,(s.$high<0||(s.$high===0&&s.$low<0)))){q=true;m.sec=(t=m.sec,new $Int64(-t.$high,-t.$low));r=-r;if(r<0){r=r+(1000000000)>>0;m.sec=(u=m.sec,v=new $Int64(0,1),new $Int64(u.$high-v.$high,u.$low-v.$low));}}if((n.$high<0||(n.$high===0&&n.$low<1000000000))&&(w=$div64(new BT(0,1000000000),(new BT(n.$high+n.$high,n.$low+n.$low)),true),(w.$high===0&&w.$low===0))){o=((y=r/((n.$low+((n.$high>>31)*4294967296))>>0),(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;p=new BT(0,(z=r%((n.$low+((n.$high>>31)*4294967296))>>0),z===z?z:$throwRuntimeError("integer divide by zero")));}else if((x=$div64(n,new BT(0,1000000000),true),(x.$high===0&&x.$low===0))){ab=(aa=$div64(n,new BT(0,1000000000),false),new $Int64(aa.$high,aa.$low));o=((ac=$div64(m.sec,ab,false),ac.$low+((ac.$high>>31)*4294967296))>>0)&1;p=(ad=$mul64((ae=$div64(m.sec,ab,true),new BT(ae.$high,ae.$low)),new BT(0,1000000000)),af=new BT(0,r),new BT(ad.$high+af.$high,ad.$low+af.$low));}else{ah=(ag=m.sec,new $Uint64(ag.$high,ag.$low));ai=$mul64(($shiftRightUint64(ah,32)),new $Uint64(0,1000000000));aj=$shiftRightUint64(ai,32);ak=$shiftLeft64(ai,32);ai=$mul64((new $Uint64(ah.$high&0,(ah.$low&4294967295)>>>0)),new $Uint64(0,1000000000));al=ak;am=new $Uint64(ak.$high+ai.$high,ak.$low+ai.$low);an=al;ak=am;if((ak.$high<an.$high||(ak.$high===an.$high&&ak.$low<an.$low))){aj=(ao=new $Uint64(0,1),new $Uint64(aj.$high+ao.$high,aj.$low+ao.$low));}ap=ak;aq=(ar=new $Uint64(0,r),new $Uint64(ak.$high+ar.$high,ak.$low+ar.$low));an=ap;ak=aq;if((ak.$high<an.$high||(ak.$high===an.$high&&ak.$low<an.$low))){aj=(as=new $Uint64(0,1),new $Uint64(aj.$high+as.$high,aj.$low+as.$low));}at=new $Uint64(n.$high,n.$low);while(true){if(!(!((au=$shiftRightUint64(at,63),(au.$high===0&&au.$low===1))))){break;}at=$shiftLeft64(at,(1));}av=new $Uint64(0,0);while(true){o=0;if((aj.$high>at.$high||(aj.$high===at.$high&&aj.$low>at.$low))||(aj.$high===at.$high&&aj.$low===at.$low)&&(ak.$high>av.$high||(ak.$high===av.$high&&ak.$low>=av.$low))){o=1;aw=ak;ax=new $Uint64(ak.$high-av.$high,ak.$low-av.$low);an=aw;ak=ax;if((ak.$high>an.$high||(ak.$high===an.$high&&ak.$low>an.$low))){aj=(ay=new $Uint64(0,1),new $Uint64(aj.$high-ay.$high,aj.$low-ay.$low));}aj=(az=at,new $Uint64(aj.$high-az.$high,aj.$low-az.$low));}if((at.$high===0&&at.$low===0)&&(ba=new $Uint64(n.$high,n.$low),(av.$high===ba.$high&&av.$low===ba.$low))){break;}av=$shiftRightUint64(av,(1));av=(bb=$shiftLeft64((new $Uint64(at.$high&0,(at.$low&1)>>>0)),63),new $Uint64(av.$high|bb.$high,(av.$low|bb.$low)>>>0));at=$shiftRightUint64(at,(1));}p=new BT(ak.$high,ak.$low);}if(q&&!((p.$high===0&&p.$low===0))){o=(o^(1))>>0;p=new BT(n.$high-p.$high,n.$low-p.$low);}return[o,p];};CH.ptr.prototype.get=function(){var $ptr,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;if(m===DL.nil){$s=-1;return CK;}if(m===CL){$s=1;continue;}$s=2;continue;case 1:$r=CM.Do(H);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return m;}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.get};}$f.$ptr=$ptr;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.get=function(){return this.$val.get();};CH.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.get();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n.name;}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.String=function(){return this.$val.String();};CN=function(m,n){var $ptr,m,n,o,p;o=new CH.ptr(m,new DC([new CI.ptr(m,n,false)]),new DD([new CJ.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DE.nil);o.cacheZone=(p=o.zone,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0]));return o;};$pkg.FixedZone=CN;CH.ptr.prototype.lookup=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n="";o=0;p=false;q=new $Int64(0,0);r=new $Int64(0,0);s=this;t=s.get();$s=1;case 1:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;if(s.zone.$length===0){n="UTC";o=0;p=false;q=new $Int64(-2147483648,0);r=new $Int64(2147483647,4294967295);$s=-1;return[n,o,p,q,r];}u=s.cacheZone;if(!(u===DE.nil)&&(v=s.cacheStart,(v.$high<m.$high||(v.$high===m.$high&&v.$low<=m.$low)))&&(w=s.cacheEnd,(m.$high<w.$high||(m.$high===w.$high&&m.$low<w.$low)))){n=u.name;o=u.offset;p=u.isDST;q=s.cacheStart;r=s.cacheEnd;$s=-1;return[n,o,p,q,r];}if((s.tx.$length===0)||(x=(y=s.tx,(0>=y.$length?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+0])).when,(m.$high<x.$high||(m.$high===x.$high&&m.$low<x.$low)))){ab=(z=s.zone,aa=s.lookupFirstZone(),((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]));n=ab.name;o=ab.offset;p=ab.isDST;q=new $Int64(-2147483648,0);if(s.tx.$length>0){r=(ac=s.tx,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0])).when;}else{r=new $Int64(2147483647,4294967295);}$s=-1;return[n,o,p,q,r];}ad=s.tx;r=new $Int64(2147483647,4294967295);ae=0;af=ad.$length;while(true){if(!((af-ae>>0)>1)){break;}ah=ae+(ag=((af-ae>>0))/2,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero"))>>0;ai=((ah<0||ah>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ah]).when;if((m.$high<ai.$high||(m.$high===ai.$high&&m.$low<ai.$low))){r=ai;af=ah;}else{ae=ah;}}al=(aj=s.zone,ak=((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]).index,((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]));n=al.name;o=al.offset;p=al.isDST;q=((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]).when;$s=-1;return[n,o,p,q,r];}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.lookup};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.lookup=function(m){return this.$val.lookup(m);};CH.ptr.prototype.lookupFirstZone=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w;m=this;if(!m.firstZoneUsed()){return 0;}if(m.tx.$length>0&&(n=m.zone,o=(p=m.tx,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])).index,((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o])).isDST){r=((q=m.tx,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])).index>>0)-1>>0;while(true){if(!(r>=0)){break;}if(!(s=m.zone,((r<0||r>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+r])).isDST){return r;}r=r-(1)>>0;}}t=m.zone;u=0;while(true){if(!(u<t.$length)){break;}v=u;if(!(w=m.zone,((v<0||v>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+v])).isDST){return v;}u++;}return 0;};CH.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CH.ptr.prototype.firstZoneUsed=function(){var $ptr,m,n,o,p;m=this;n=m.tx;o=0;while(true){if(!(o<n.$length)){break;}p=$clone(((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]),CJ);if(p.index===0){return true;}o++;}return false;};CH.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CH.ptr.prototype.lookupName=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=0;p=false;q=false;r=this;s=r.get();$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r.zone;u=0;case 2:if(!(u<t.$length)){$s=3;continue;}v=u;x=(w=r.zone,((v<0||v>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+v]));if(x.name===m){$s=4;continue;}$s=5;continue;case 4:aa=r.lookup((z=new $Int64(0,x.offset),new $Int64(n.$high-z.$high,n.$low-z.$low)));$s=6;case 6:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}y=aa;ab=y[0];ac=y[1];ad=y[2];if(ab===x.name){ae=ac;af=ad;ag=true;o=ae;p=af;q=ag;$s=-1;return[o,p,q];}case 5:u++;$s=2;continue;case 3:ah=r.zone;ai=0;while(true){if(!(ai<ah.$length)){break;}aj=ai;al=(ak=r.zone,((aj<0||aj>=ak.$length)?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+aj]));if(al.name===m){am=al.offset;an=al.isDST;ao=true;o=am;p=an;q=ao;$s=-1;return[o,p,q];}ai++;}$s=-1;return[o,p,q];}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.lookupName};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.lookupName=function(m,n){return this.$val.lookupName(m,n);};DT.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"AppendFormat",name:"AppendFormat",pkg:"",typ:$funcType([DI,$String],[DI],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"IsZero",name:"IsZero",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"abs",name:"abs",pkg:"time",typ:$funcType([],[$Uint64],false)},{prop:"locabs",name:"locabs",pkg:"time",typ:$funcType([],[$String,$Int,$Uint64],false)},{prop:"Date",name:"Date",pkg:"",typ:$funcType([],[$Int,BN,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BN],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BP],false)},{prop:"ISOWeek",name:"ISOWeek",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Clock",name:"Clock",pkg:"",typ:$funcType([],[$Int,$Int,$Int],false)},{prop:"Hour",name:"Hour",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Minute",name:"Minute",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Second",name:"Second",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Nanosecond",name:"Nanosecond",pkg:"",typ:$funcType([],[$Int],false)},{prop:"YearDay",name:"YearDay",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([BT],[BM],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BM],[BT],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BM],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BN,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BM],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BM],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DL],[BM],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DL],false)},{prop:"Zone",name:"Zone",pkg:"",typ:$funcType([],[$String,$Int],false)},{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"UnixNano",name:"UnixNano",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BT],[BM],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BT],[BM],false)}];DX.methods=[{prop:"setLoc",name:"setLoc",pkg:"time",typ:$funcType([DL],[],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DI],[$error],false)}];BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BP.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BT.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Nanoseconds",name:"Nanoseconds",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seconds",name:"Seconds",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Minutes",name:"Minutes",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Hours",name:"Hours",pkg:"",typ:$funcType([],[$Float64],false)}];DL.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"lookup",name:"lookup",pkg:"time",typ:$funcType([$Int64],[$String,$Int,$Bool,$Int64,$Int64],false)},{prop:"lookupFirstZone",name:"lookupFirstZone",pkg:"time",typ:$funcType([],[$Int],false)},{prop:"firstZoneUsed",name:"firstZoneUsed",pkg:"time",typ:$funcType([],[$Bool],false)},{prop:"lookupName",name:"lookupName",pkg:"time",typ:$funcType([$String,$Int64],[$Int,$Bool,$Bool],false)}];AF.init("",[{prop:"Layout",name:"Layout",exported:true,typ:$String,tag:""},{prop:"Value",name:"Value",exported:true,typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",exported:true,typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",exported:true,typ:$String,tag:""},{prop:"Message",name:"Message",exported:true,typ:$String,tag:""}]);BM.init("time",[{prop:"sec",name:"sec",exported:false,typ:$Int64,tag:""},{prop:"nsec",name:"nsec",exported:false,typ:$Int32,tag:""},{prop:"loc",name:"loc",exported:false,typ:DL,tag:""}]);CH.init("time",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"zone",name:"zone",exported:false,typ:DC,tag:""},{prop:"tx",name:"tx",exported:false,typ:DD,tag:""},{prop:"cacheStart",name:"cacheStart",exported:false,typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",exported:false,typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",exported:false,typ:DE,tag:""}]);CI.init("time",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"offset",name:"offset",exported:false,typ:$Int,tag:""},{prop:"isDST",name:"isDST",exported:false,typ:$Bool,tag:""}]);CJ.init("time",[{prop:"when",name:"when",exported:false,typ:$Int64,tag:""},{prop:"index",name:"index",exported:false,typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",exported:false,typ:$Bool,tag:""},{prop:"isutc",name:"isutc",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CL=new CH.ptr("",DC.nil,DD.nil,new $Int64(0,0),new $Int64(0,0),DE.nil);CM=new E.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DF(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DF(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DF(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DF(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=C.New("time: invalid number");AE=C.New("bad value for field");AR=C.New("time: bad [0-9]*");BO=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BQ=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);AU=$makeMap($String.keyFor,[{k:"ns",v:new $Int64(0,1)},{k:"us",v:new $Int64(0,1000)},{k:"\xC2\xB5s",v:new $Int64(0,1000)},{k:"\xCE\xBCs",v:new $Int64(0,1000)},{k:"ms",v:new $Int64(0,1000000)},{k:"s",v:new $Int64(0,1000000000)},{k:"m",v:new $Int64(13,4165425152)},{k:"h",v:new $Int64(838,817405952)}]);BZ=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CK=new CH.ptr("UTC",DC.nil,DD.nil,new $Int64(0,0),new $Int64(0,0),DE.nil);$pkg.UTC=CK;$pkg.Local=CL;l=D.Getenv("ZONEINFO");$s=6;case 6:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;CO=k[0];CS=C.New("malformed time zone information");F();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["os"]=(function(){var $pkg={},$init,A,B,C,E,F,G,D,H,X,Y,AU,BL,BN,CU,CV,CW,CY,DB,DC,DD,DE,DF,DG,DH,DI,DU,DV,DZ,EA,ED,EE,AR,AZ,I,J,K,R,Z,AB,AD,AF,AX,BB,BC,BE,BF,BM,BO,BP,CB,CD,CE,CG,CJ,CK,CL,CN,CO,CT;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["io"];E=$packages["runtime"];F=$packages["sync"];G=$packages["sync/atomic"];D=$packages["syscall"];H=$packages["time"];X=$pkg.PathError=$newType(0,$kindStruct,"os.PathError",true,"os",true,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_;});Y=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError",true,"os",true,function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AU=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError",true,"os",true,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_;});BL=$pkg.file=$newType(0,$kindStruct,"os.file",true,"os",false,function(fd_,name_,dirinfo_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DE.nil;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;});BN=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo",true,"os",false,function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DF.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CU=$pkg.File=$newType(0,$kindStruct,"os.File",true,"os",true,function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});CV=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo",true,"os",true,null);CW=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode",true,"os",true,null);CY=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat",true,"os",false,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 H.Time.ptr(new $Int64(0,0),0,DZ.nil);this.sys=new D.Stat_t.ptr(new $Uint64(0,0),new $Uint64(0,0),new $Uint64(0,0),0,0,0,0,new $Uint64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),EA.zero());return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(CU);DD=$sliceType(CV);DE=$ptrType(BN);DF=$sliceType($Uint8);DG=$ptrType(X);DH=$ptrType(AU);DI=$ptrType(Y);DU=$ptrType(BL);DV=$funcType([DU],[$error],false);DZ=$ptrType(H.Location);EA=$arrayType($Int64,3);ED=$arrayType($Uint8,32);EE=$ptrType(CY);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"),undefined):$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;};CU.ptr.prototype.Readdir=function(c){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;if(d===DC.nil){$s=-1;return[DD.nil,$pkg.ErrInvalid];}e=d.readdir(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:CU.ptr.prototype.Readdir};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};CU.prototype.Readdir=function(c){return this.$val.Readdir(c);};CU.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DC.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];};CU.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};CU.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=DD.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DD,0,i.$length);j=i;k=0;case 1:if(!(k<j.$length)){$s=2;continue;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);n=AZ(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(AB(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;$s=-1;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:if((d.$length===0)&&$interfaceIsEqual(e,$ifaceNil)&&c>0){e=C.EOF;}s=d;t=e;d=s;e=t;$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:CU.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;};CU.prototype.readdir=function(c){return this.$val.readdir(c);};CU.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===DE.nil){f.file.dirinfo=new BN.ptr(DF.nil,0,0);f.file.dirinfo.buf=$makeSlice(DF,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=D.ReadDirent(f.file.fd,g.buf);j=BB(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=Z("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=D.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=C.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};CU.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};R=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:e=D.Getenv(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];$s=-1;return f;}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Getenv=R;X.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=-1;return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Error=function(){return this.$val.Error();};Y.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=-1;return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:Y.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Y.prototype.Error=function(){return this.$val.Error();};Z=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new Y.ptr(c,d);};$pkg.NewSyscallError=Z;AB=function(c){var $ptr,c;return AF(c);};$pkg.IsNotExist=AB;AD=function(c){var $ptr,c,d,e,f,g;d=c;if($assertType(d,DG,true)[1]){e=d.$val;return e.Err;}else if($assertType(d,DH,true)[1]){f=d.$val;return f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;return g.Err;}return c;};AF=function(c){var $ptr,c;c=AD(c);return $interfaceIsEqual(c,new D.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};CU.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};CU.prototype.Name=function(){return this.$val.Name();};AU.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=-1;return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AU.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AU.prototype.Error=function(){return this.$val.Error();};CU.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;d=0;e=$ifaceNil;f=this;g=f.checkValid("read");if(!($interfaceIsEqual(g,$ifaceNil))){h=0;i=g;d=h;e=i;return[d,e];}j=f.read(c);d=j[0];k=j[1];if((d===0)&&c.$length>0&&$interfaceIsEqual(k,$ifaceNil)){l=0;m=C.EOF;d=l;e=m;return[d,e];}if(!($interfaceIsEqual(k,$ifaceNil))){e=new X.ptr("read",f.file.name,k);}n=d;o=e;d=n;e=o;return[d,e];};CU.prototype.Read=function(c){return this.$val.Read(c);};CU.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=0;f=$ifaceNil;g=this;h=g.checkValid("read");if(!($interfaceIsEqual(h,$ifaceNil))){i=0;j=h;e=i;f=j;return[e,f];}while(true){if(!(c.$length>0)){break;}k=g.pread(c,d);l=k[0];m=k[1];if((l===0)&&$interfaceIsEqual(m,$ifaceNil)){n=e;o=C.EOF;e=n;f=o;return[e,f];}if(!($interfaceIsEqual(m,$ifaceNil))){f=new X.ptr("read",g.file.name,m);break;}e=e+(l)>>0;c=$subslice(c,l);d=(p=new $Int64(0,l),new $Int64(d.$high+p.$high,d.$low+p.$low));}return[e,f];};CU.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};CU.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;g=f.checkValid("write");if(!($interfaceIsEqual(g,$ifaceNil))){h=0;i=g;d=h;e=i;return[d,e];}j=f.write(c);d=j[0];k=j[1];if(d<0){d=0;}if(!((d===c.$length))){e=C.ErrShortWrite;}BO(f,k);if(!($interfaceIsEqual(k,$ifaceNil))){e=new X.ptr("write",f.file.name,k);}l=d;m=e;d=l;e=m;return[d,e];};CU.prototype.Write=function(c){return this.$val.Write(c);};CU.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;e=0;f=$ifaceNil;g=this;h=g.checkValid("write");if(!($interfaceIsEqual(h,$ifaceNil))){i=0;j=h;e=i;f=j;return[e,f];}while(true){if(!(c.$length>0)){break;}k=g.pwrite(c,d);l=k[0];m=k[1];if(!($interfaceIsEqual(m,$ifaceNil))){f=new X.ptr("write",g.file.name,m);break;}e=e+(l)>>0;c=$subslice(c,l);d=(n=new $Int64(0,l),new $Int64(d.$high+n.$high,d.$low+n.$low));}return[e,f];};CU.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};CU.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;e=new $Int64(0,0);f=$ifaceNil;g=this;h=g.checkValid("seek");if(!($interfaceIsEqual(h,$ifaceNil))){i=new $Int64(0,0);j=h;e=i;f=j;return[e,f];}k=g.seek(c,d);l=k[0];m=k[1];if($interfaceIsEqual(m,$ifaceNil)&&!(g.file.dirinfo===DE.nil)&&!((l.$high===0&&l.$low===0))){m=new D.Errno(21);}if(!($interfaceIsEqual(m,$ifaceNil))){n=new $Int64(0,0);o=new X.ptr("seek",g.file.name,m);e=n;f=o;return[e,f];}p=l;q=$ifaceNil;e=p;f=q;return[e,f];};CU.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};CU.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=f.Write(new DF($stringToBytes(c)));d=g[0];e=g[1];return[d,e];};CU.prototype.WriteString=function(c){return this.$val.WriteString(c);};CU.ptr.prototype.Chdir=function(){var $ptr,c,d,e;c=this;d=c.checkValid("chdir");if(!($interfaceIsEqual(d,$ifaceNil))){return d;}e=D.Fchdir(c.file.fd);if(!($interfaceIsEqual(e,$ifaceNil))){return new X.ptr("chdir",c.file.name,e);}return $ifaceNil;};CU.prototype.Chdir=function(){return this.$val.Chdir();};AX=function(c){var $ptr,c;return BP(c,0,0);};$pkg.Open=AX;BB=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};CU.ptr.prototype.checkValid=function(c){var $ptr,c,d;d=this;if(d===DC.nil){return $pkg.ErrInvalid;}if(d.file.fd===-1){return new X.ptr(c,d.file.name,$pkg.ErrClosed);}return $ifaceNil;};CU.prototype.checkValid=function(c){return this.$val.checkValid(c);};BC=function(){$throwRuntimeError("native function not implemented: os.sigpipe");};BE=function(c){var $ptr,c,d;d=0;d=(d|((new CW(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;};BF=function(c,d){var $ptr,c,d,e;e=D.Chmod(c,BE(d));if(!($interfaceIsEqual(e,$ifaceNil))){return new X.ptr("chmod",c,e);}return $ifaceNil;};$pkg.Chmod=BF;CU.ptr.prototype.Chmod=function(c){var $ptr,c,d,e,f;d=this;e=d.checkValid("chmod");if(!($interfaceIsEqual(e,$ifaceNil))){return e;}f=D.Fchmod(d.file.fd,BE(c));if(!($interfaceIsEqual(f,$ifaceNil))){return new X.ptr("chmod",d.file.name,f);}return $ifaceNil;};CU.prototype.Chmod=function(c){return this.$val.Chmod(c);};CU.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f,g;e=this;f=e.checkValid("chown");if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=D.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(g,$ifaceNil))){return new X.ptr("chown",e.file.name,g);}return $ifaceNil;};CU.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};CU.ptr.prototype.Truncate=function(c){var $ptr,c,d,e,f;d=this;e=d.checkValid("truncate");if(!($interfaceIsEqual(e,$ifaceNil))){return e;}f=D.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(f,$ifaceNil))){return new X.ptr("truncate",d.file.name,f);}return $ifaceNil;};CU.prototype.Truncate=function(c){return this.$val.Truncate(c);};CU.ptr.prototype.Sync=function(){var $ptr,c,d,e;c=this;d=c.checkValid("sync");if(!($interfaceIsEqual(d,$ifaceNil))){return d;}e=D.Fsync(c.file.fd);if(!($interfaceIsEqual(e,$ifaceNil))){return new X.ptr("sync",c.file.name,e);}return $ifaceNil;};CU.prototype.Sync=function(){return this.$val.Sync();};CU.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DC.nil){return 4294967295;}return(c.file.fd>>>0);};CU.prototype.Fd=function(){return this.$val.Fd();};BM=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DC.nil;}f=new CU.ptr(new BL.ptr(e,d,DE.nil));E.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BM;BO=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new D.Errno(32))&&((c.file.fd===1)||(c.file.fd===2))){BC();}};BP=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=false;if(false&&!(((d&64)===0))&&!((((e&1048576)>>>0)===0))){g=CN(c);h=g[1];if(AB(h)){f=true;}}i=0;while(true){j=$ifaceNil;k=D.Open(c,d|524288,BE(e));i=k[0];j=k[1];if($interfaceIsEqual(j,$ifaceNil)){break;}if(false&&$interfaceIsEqual(j,new D.Errno(4))){continue;}return[DC.nil,new X.ptr("open",c,j)];}if(f){BF(c,e);}if(false){D.CloseOnExec(i);}return[BM((i>>>0),c),$ifaceNil];};$pkg.OpenFile=BP;CU.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DC.nil){return $pkg.ErrInvalid;}return c.file.close();};CU.prototype.Close=function(){return this.$val.Close();};BL.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||(c.fd===-1)){return new D.Errno(22);}d=$ifaceNil;e=D.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new X.ptr("close",c.name,e);}c.fd=-1;E.SetFinalizer(c,$ifaceNil);return d;};BL.prototype.close=function(){return this.$val.close();};CU.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(false&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=D.Read(f.file.fd,c);g=BB(h[0],h[1]);d=g[0];e=g[1];return[d,e];};CU.prototype.read=function(c){return this.$val.read(c);};CU.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(false&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=D.Pread(g.file.fd,c,d);h=BB(i[0],i[1]);e=h[0];f=h[1];return[e,f];};CU.prototype.pread=function(c,d){return this.$val.pread(c,d);};CU.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(false&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=D.Write(f.file.fd,g);h=BB(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(0<j&&j<g.$length||$interfaceIsEqual(k,new D.Errno(4))){c=$subslice(c,j);continue;}if(false&&!((g.$length===c.$length))&&$interfaceIsEqual(k,$ifaceNil)){c=$subslice(c,j);continue;}l=d;m=k;d=l;e=m;return[d,e];}};CU.prototype.write=function(c){return this.$val.write(c);};CU.ptr.prototype.pwrite=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(false&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=D.Pwrite(g.file.fd,c,d);h=BB(i[0],i[1]);e=h[0];f=h[1];return[e,f];};CU.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};CU.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=D.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};CU.prototype.seek=function(c,d){return this.$val.seek(c,d);};CB=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=$substring(c,0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=$substring(c,(d+1>>0));break;}d=d-(1)>>0;}return c;};CD=function(){var $ptr;if(false){return;}$pkg.Args=I();};CE=function(){var $ptr;return D.Getuid();};$pkg.Getuid=CE;CG=function(){var $ptr;return D.Getgid();};$pkg.Getgid=CG;CJ=function(c){var $ptr,c;if(c===0){K();}D.Exit(c);};$pkg.Exit=CJ;CK=function(c,d){var $ptr,c,d,e;c.name=CB(d);c.size=c.sys.Size;H.Time.copy(c.modTime,CL($clone(c.sys.Mtim,D.Timespec)));c.mode=(((c.sys.Mode&511)>>>0)>>>0);e=(c.sys.Mode&61440)>>>0;if(e===(24576)){c.mode=(c.mode|(67108864))>>>0;}else if(e===(8192)){c.mode=(c.mode|(69206016))>>>0;}else if(e===(16384)){c.mode=(c.mode|(2147483648))>>>0;}else if(e===(4096)){c.mode=(c.mode|(33554432))>>>0;}else if(e===(40960)){c.mode=(c.mode|(134217728))>>>0;}else if(e===(32768)){}else if(e===(49152)){c.mode=(c.mode|(16777216))>>>0;}if(!((((c.sys.Mode&1024)>>>0)===0))){c.mode=(c.mode|(4194304))>>>0;}if(!((((c.sys.Mode&2048)>>>0)===0))){c.mode=(c.mode|(8388608))>>>0;}if(!((((c.sys.Mode&512)>>>0)===0))){c.mode=(c.mode|(1048576))>>>0;}};CL=function(c){var $ptr,c;return H.Unix(c.Sec,c.Nsec);};CU.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DC.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new CY.ptr("",new $Int64(0,0),0,new H.Time.ptr(new $Int64(0,0),0,DZ.nil),new D.Stat_t.ptr(new $Uint64(0,0),new $Uint64(0,0),new $Uint64(0,0),0,0,0,0,new $Uint64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),EA.zero()));e=D.Fstat(c.file.fd,d.sys);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new X.ptr("stat",c.file.name,e)];}CK(d,c.file.name);return[d,$ifaceNil];};CU.prototype.Stat=function(){return this.$val.Stat();};CN=function(c){var $ptr,c,d,e;d=new CY.ptr("",new $Int64(0,0),0,new H.Time.ptr(new $Int64(0,0),0,DZ.nil),new D.Stat_t.ptr(new $Uint64(0,0),new $Uint64(0,0),new $Uint64(0,0),0,0,0,0,new $Uint64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),EA.zero()));e=D.Stat(c,d.sys);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new X.ptr("stat",c,e)];}CK(d,c);return[d,$ifaceNil];};$pkg.Stat=CN;CO=function(c){var $ptr,c,d,e;d=new CY.ptr("",new $Int64(0,0),0,new H.Time.ptr(new $Int64(0,0),0,DZ.nil),new D.Stat_t.ptr(new $Uint64(0,0),new $Uint64(0,0),new $Uint64(0,0),0,0,0,0,new $Uint64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),EA.zero()));e=D.Lstat(c,d.sys);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new X.ptr("lstat",c,e)];}CK(d,c);return[d,$ifaceNil];};$pkg.Lstat=CO;CT=function(){var $ptr;return D.Getpagesize();};$pkg.Getpagesize=CT;CW.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<f.length)){break;}h=$decodeRune(f,g);i=g;j=h[0];if(!((((c&(((k=((31-i>>0)>>>0),k<32?(1<<k):0)>>>0)))>>>0)===0))){((e<0||e>=d.length)?($throwRuntimeError("index out of range"),undefined):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"),undefined):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m<l.length)){break;}n=$decodeRune(l,m);o=m;p=n[0];if(!((((c&(((q=((8-o>>0)>>>0),q<32?(1<<q):0)>>>0)))>>>0)===0))){((e<0||e>=d.length)?($throwRuntimeError("index out of range"),undefined):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?($throwRuntimeError("index out of range"),undefined):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DF(d),0,e));};$ptrType(CW).prototype.String=function(){return new CW(this.$get()).String();};CW.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CW).prototype.IsDir=function(){return new CW(this.$get()).IsDir();};CW.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CW).prototype.IsRegular=function(){return new CW(this.$get()).IsRegular();};CW.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CW).prototype.Perm=function(){return new CW(this.$get()).Perm();};CY.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CY.prototype.Name=function(){return this.$val.Name();};CY.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CW(c.Mode()).IsDir();};CY.prototype.IsDir=function(){return this.$val.IsDir();};CY.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CY.prototype.Size=function(){return this.$val.Size();};CY.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CY.prototype.Mode=function(){return this.$val.Mode();};CY.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CY.prototype.ModTime=function(){return this.$val.ModTime();};CY.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CY.prototype.Sys=function(){return this.$val.Sys();};DG.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];DC.methods=[{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DD,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DD,$error],false)},{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DF],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DF,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DF],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DF,$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:"checkValid",name:"checkValid",pkg:"os",typ:$funcType([$String],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CW],[$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:"read",name:"read",pkg:"os",typ:$funcType([DF],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DF,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DF],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DF,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CV,$error],false)}];CW.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([],[CW],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([],[CW],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[H.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];X.init("",[{prop:"Op",name:"Op",exported:true,typ:$String,tag:""},{prop:"Path",name:"Path",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);Y.init("",[{prop:"Syscall",name:"Syscall",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);AU.init("",[{prop:"Op",name:"Op",exported:true,typ:$String,tag:""},{prop:"Old",name:"Old",exported:true,typ:$String,tag:""},{prop:"New",name:"New",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);BL.init("os",[{prop:"fd",name:"fd",exported:false,typ:$Int,tag:""},{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",exported:false,typ:DE,tag:""}]);BN.init("os",[{prop:"buf",name:"buf",exported:false,typ:DF,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"bufp",name:"bufp",exported:false,typ:$Int,tag:""}]);CU.init("os",[{prop:"file",name:"",exported:false,typ:DU,tag:""}]);CV.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[H.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CW],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)}]);CY.init("os",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"size",name:"size",exported:false,typ:$Int64,tag:""},{prop:"mode",name:"mode",exported:false,typ:CW,tag:""},{prop:"modTime",name:"modTime",exported:false,typ:H.Time,tag:""},{prop:"sys",name:"sys",exported:false,typ:D.Stat_t,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=E.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$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=D.$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;}$pkg.Args=DB.nil;$pkg.ErrInvalid=A.New("invalid argument");$pkg.ErrPermission=A.New("permission denied");$pkg.ErrExist=A.New("file already exists");$pkg.ErrNotExist=A.New("file does not exist");$pkg.ErrClosed=A.New("file already closed");AR=A.New("os: process already finished");AZ=CO;$pkg.Stdin=BM((D.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BM((D.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BM((D.Stderr>>>0),"/dev/stderr");J();CD();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["unicode/utf8"]=(function(){var $pkg={},$init,B,A,C,F,G,H,I,J,K,L,M,N,Q;B=$pkg.acceptRange=$newType(0,$kindStruct,"utf8.acceptRange",true,"unicode/utf8",false,function(lo_,hi_){this.$val=this;if(arguments.length===0){this.lo=0;this.hi=0;return;}this.lo=lo_;this.hi=hi_;});F=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.$length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=((h>>0)<<31>>0)>>31>>0;j=((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>0)&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=(h&7)>>>0;n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<(l>>0)){o=65533;p=1;b=o;c=p;return[b,c];}q=(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l===2){t=((((g&31)>>>0)>>0)<<6>>0)|(((q&63)>>>0)>>0);u=2;b=t;c=u;return[b,c];}v=(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l===3){y=(((((g&15)>>>0)>>0)<<12>>0)|((((q&63)>>>0)>>0)<<6>>0))|(((v&63)>>>0)>>0);z=3;b=y;c=z;return[b,c];}aa=(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=((((((g&7)>>>0)>>0)<<18>>0)|((((q&63)>>>0)>>0)<<12>>0))|((((v&63)>>>0)>>0)<<6>>0))|(((aa&63)>>>0)>>0);ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRune=F;G=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=a.charCodeAt(0);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=((h>>0)<<31>>0)>>31>>0;j=(((a.charCodeAt(0)>>0)&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=(h&7)>>>0;n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<(l>>0)){o=65533;p=1;b=o;c=p;return[b,c];}q=a.charCodeAt(1);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l===2){t=((((g&31)>>>0)>>0)<<6>>0)|(((q&63)>>>0)>>0);u=2;b=t;c=u;return[b,c];}v=a.charCodeAt(2);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l===3){y=(((((g&15)>>>0)>>0)<<12>>0)|((((q&63)>>>0)>>0)<<6>>0))|(((v&63)>>>0)>>0);z=3;b=y;c=z;return[b,c];}aa=a.charCodeAt(3);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=((((((g&7)>>>0)>>0)<<18>>0)|((((q&63)>>>0)>>0)<<12>>0))|((((v&63)>>>0)>>0)<<6>>0))|(((aa&63)>>>0)>>0);ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRuneInString=G;H=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.$length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])>>0);if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(N(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=F($subslice(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRune=H;I=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=(a.charCodeAt(g)>>0);if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(N(a.charCodeAt(g))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=G($substring(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRuneInString=I;J=function(a){var $ptr,a;if(a<0){return-1;}else if(a<=127){return 1;}else if(a<=2047){return 2;}else if(55296<=a&&a<=57343){return-1;}else if(a<=65535){return 3;}else if(a<=1114111){return 4;}return-1;};$pkg.RuneLen=J;K=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if((c>1114111)||(55296<=c&&c<=57343)){b=65533;$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=K;L=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=a.$length;c=0;d=0;while(true){if(!(d<b)){break;}c=c+(1)>>0;e=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);if(e<128){d=d+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;continue;}g=(((f&7)>>>0)>>0);if((d+g>>0)>b){d=d+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);k=(j=d+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]));if(k<i.lo||i.hi<k){g=1;}else if(g===2){}else{m=(l=d+2>>0,((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]));if(m<128||191<m){g=1;}else if(g===3){}else{o=(n=d+3>>0,((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]));if(o<128||191<o){g=1;}}}d=d+(g)>>0;}return c;};$pkg.RuneCount=L;M=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=a.length;d=0;while(true){if(!(d<c)){break;}e=a.charCodeAt(d);if(e<128){d=d+(1)>>0;b=b+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;b=b+(1)>>0;continue;}g=(((f&7)>>>0)>>0);if((d+g>>0)>c){d=d+(1)>>0;b=b+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);j=a.charCodeAt((d+1>>0));if(j<i.lo||i.hi<j){g=1;}else if(g===2){}else{k=a.charCodeAt((d+2>>0));if(k<128||191<k){g=1;}else if(g===3){}else{l=a.charCodeAt((d+3>>0));if(l<128||191<l){g=1;}}}d=d+(g)>>0;b=b+(1)>>0;}b=b;return b;};$pkg.RuneCountInString=M;N=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=N;Q=function(a){var $ptr,a;if(0<=a&&a<55296){return true;}else if(57343<a&&a<=1114111){return true;}return false;};$pkg.ValidRune=Q;B.init("unicode/utf8",[{prop:"lo",name:"lo",exported:false,typ:$Uint8,tag:""},{prop:"hi",name:"hi",exported:false,typ:$Uint8,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:A=$toNativeArray($kindUint8,[240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,19,3,3,3,3,3,3,3,3,3,3,3,3,35,3,3,52,4,4,4,68,241,241,241,241,241,241,241,241,241,241,241]);C=$toNativeArray($kindStruct,[new B.ptr(128,191),new B.ptr(160,191),new B.ptr(128,159),new B.ptr(144,191),new B.ptr(128,143)]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["strconv"]=(function(){var $pkg={},$init,B,A,C,S,Y,AC,AH,AO,AX,CS,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DI,G,K,L,M,AD,AI,AJ,AK,AP,CQ,AQ,CR,BD,BE,BF,BG,BH,BN,D,E,H,I,J,N,O,P,Q,R,T,U,V,W,X,Z,AA,AB,AE,AF,AG,AL,AM,AN,AR,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BK,BM,BO,BP,BR,BS,BT,BU,BV,BW,BX,CB,CD,CG,CH,CI,CJ,CK,CL,CM,CN,CP;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];S=$pkg.NumError=$newType(0,$kindStruct,"strconv.NumError",true,"strconv",true,function(Func_,Num_,Err_){this.$val=this;if(arguments.length===0){this.Func="";this.Num="";this.Err=$ifaceNil;return;}this.Func=Func_;this.Num=Num_;this.Err=Err_;});Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal",true,"strconv",false,function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CY.zero();this.nd=0;this.dp=0;this.neg=false;this.trunc=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;this.trunc=trunc_;});AC=$pkg.leftCheat=$newType(0,$kindStruct,"strconv.leftCheat",true,"strconv",false,function(delta_,cutoff_){this.$val=this;if(arguments.length===0){this.delta=0;this.cutoff="";return;}this.delta=delta_;this.cutoff=cutoff_;});AH=$pkg.extFloat=$newType(0,$kindStruct,"strconv.extFloat",true,"strconv",false,function(mant_,exp_,neg_){this.$val=this;if(arguments.length===0){this.mant=new $Uint64(0,0);this.exp=0;this.neg=false;return;}this.mant=mant_;this.exp=exp_;this.neg=neg_;});AO=$pkg.floatInfo=$newType(0,$kindStruct,"strconv.floatInfo",true,"strconv",false,function(mantbits_,expbits_,bias_){this.$val=this;if(arguments.length===0){this.mantbits=0;this.expbits=0;this.bias=0;return;}this.mantbits=mantbits_;this.expbits=expbits_;this.bias=bias_;});AX=$pkg.decimalSlice=$newType(0,$kindStruct,"strconv.decimalSlice",true,"strconv",false,function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=DA.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CS=$sliceType($Int);CT=$sliceType($Float64);CU=$sliceType($Float32);CV=$sliceType(AC);CW=$sliceType($Uint16);CX=$sliceType($Uint32);CY=$arrayType($Uint8,800);CZ=$ptrType(S);DA=$sliceType($Uint8);DB=$arrayType($Uint8,24);DC=$arrayType($Uint8,32);DD=$ptrType(AO);DE=$arrayType($Uint8,65);DF=$arrayType($Uint8,4);DG=$ptrType(Y);DH=$ptrType(AX);DI=$ptrType(AH);D=function(a){var $ptr,a,b;b=a;if(b===("1")||b===("t")||b===("T")||b===("true")||b===("TRUE")||b===("True")){return[true,$ifaceNil];}else if(b===("0")||b===("f")||b===("F")||b===("false")||b===("FALSE")||b===("False")){return[false,$ifaceNil];}return[false,T("ParseBool",a)];};$pkg.ParseBool=D;E=function(a){var $ptr,a;if(a){return"true";}return"false";};$pkg.FormatBool=E;H=function(a,b){var $ptr,a,b,c,d,e;if(!((a.length===b.length))){return false;}c=0;while(true){if(!(c<a.length)){break;}d=a.charCodeAt(c);if(65<=d&&d<=90){d=d+(32)<<24>>>24;}e=b.charCodeAt(c);if(65<=e&&e<=90){e=e+(32)<<24>>>24;}if(!((d===e))){return false;}c=c+(1)>>0;}return true;};I=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=false;if(a.length===0){return[b,c];}d=a.charCodeAt(0);if(d===(43)){if(H(a,"+inf")||H(a,"+infinity")){e=A.Inf(1);f=true;b=e;c=f;return[b,c];}}else if(d===(45)){if(H(a,"-inf")||H(a,"-infinity")){g=A.Inf(-1);h=true;b=g;c=h;return[b,c];}}else if((d===(110))||(d===(78))){if(H(a,"nan")){i=A.NaN();j=true;b=i;c=j;return[b,c];}}else if((d===(105))||(d===(73))){if(H(a,"inf")||H(a,"infinity")){k=A.Inf(1);l=true;b=k;c=l;return[b,c];}}else{return[b,c];}return[b,c];};Y.ptr.prototype.set=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=false;c=this;d=0;c.neg=false;c.trunc=false;if(d>=a.length){return b;}if((a.charCodeAt(d)===43)){d=d+(1)>>0;}else if((a.charCodeAt(d)===45)){c.neg=true;d=d+(1)>>0;}e=false;f=false;while(true){if(!(d<a.length)){break;}if((a.charCodeAt(d)===46)){if(e){return b;}e=true;c.dp=c.nd;d=d+(1)>>0;continue;}else if(48<=a.charCodeAt(d)&&a.charCodeAt(d)<=57){f=true;if((a.charCodeAt(d)===48)&&(c.nd===0)){c.dp=c.dp-(1)>>0;d=d+(1)>>0;continue;}if(c.nd<800){(g=c.d,h=c.nd,((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]=a.charCodeAt(d)));c.nd=c.nd+(1)>>0;}else if(!((a.charCodeAt(d)===48))){c.trunc=true;}d=d+(1)>>0;continue;}break;}if(!f){return b;}if(!e){c.dp=c.nd;}if(d<a.length&&((a.charCodeAt(d)===101)||(a.charCodeAt(d)===69))){d=d+(1)>>0;if(d>=a.length){return b;}i=1;if(a.charCodeAt(d)===43){d=d+(1)>>0;}else if(a.charCodeAt(d)===45){d=d+(1)>>0;i=-1;}if(d>=a.length||a.charCodeAt(d)<48||a.charCodeAt(d)>57){return b;}j=0;while(true){if(!(d<a.length&&48<=a.charCodeAt(d)&&a.charCodeAt(d)<=57)){break;}if(j<10000){j=(($imul(j,10))+(a.charCodeAt(d)>>0)>>0)-48>>0;}d=d+(1)>>0;}c.dp=c.dp+(($imul(j,i)))>>0;}if(!((d===a.length))){return b;}b=true;return b;};Y.prototype.set=function(a){return this.$val.set(a);};J=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;b=new $Uint64(0,0);c=0;d=false;e=false;f=false;g=0;if(g>=a.length){return[b,c,d,e,f];}if((a.charCodeAt(g)===43)){g=g+(1)>>0;}else if((a.charCodeAt(g)===45)){d=true;g=g+(1)>>0;}h=false;i=false;j=0;k=0;l=0;while(true){if(!(g<a.length)){break;}m=a.charCodeAt(g);n=true;if(n===((m===46))){if(h){return[b,c,d,e,f];}h=true;l=j;g=g+(1)>>0;continue;}else if(n===(48<=m&&m<=57)){i=true;if((m===48)&&(j===0)){l=l-(1)>>0;g=g+(1)>>0;continue;}j=j+(1)>>0;if(k<19){b=$mul64(b,(new $Uint64(0,10)));b=(o=new $Uint64(0,(m-48<<24>>>24)),new $Uint64(b.$high+o.$high,b.$low+o.$low));k=k+(1)>>0;}else if(!((a.charCodeAt(g)===48))){e=true;}g=g+(1)>>0;continue;}break;}if(!i){return[b,c,d,e,f];}if(!h){l=j;}if(g<a.length&&((a.charCodeAt(g)===101)||(a.charCodeAt(g)===69))){g=g+(1)>>0;if(g>=a.length){return[b,c,d,e,f];}p=1;if(a.charCodeAt(g)===43){g=g+(1)>>0;}else if(a.charCodeAt(g)===45){g=g+(1)>>0;p=-1;}if(g>=a.length||a.charCodeAt(g)<48||a.charCodeAt(g)>57){return[b,c,d,e,f];}q=0;while(true){if(!(g<a.length&&48<=a.charCodeAt(g)&&a.charCodeAt(g)<=57)){break;}if(q<10000){q=(($imul(q,10))+(a.charCodeAt(g)>>0)>>0)-48>>0;}g=g+(1)>>0;}l=l+(($imul(q,p)))>>0;}if(!((g===a.length))){return[b,c,d,e,f];}if(!((b.$high===0&&b.$low===0))){c=l-k>>0;}f=true;return[b,c,d,e,f];};Y.ptr.prototype.floatBits=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s;$s=0;s:while(true){switch($s){case 0:b=new $Uint64(0,0);c=false;d=this;e=0;f=new $Uint64(0,0);if(d.nd===0){$s=1;continue;}$s=2;continue;case 1:f=new $Uint64(0,0);e=a.bias;$s=3;continue;case 2:if(d.dp>310){$s=4;continue;}$s=5;continue;case 4:$s=6;continue;case 5:if(d.dp<-330){$s=7;continue;}$s=8;continue;case 7:f=new $Uint64(0,0);e=a.bias;$s=3;continue;case 8:e=0;while(true){if(!(d.dp>0)){break;}g=0;if(d.dp>=K.$length){g=27;}else{g=(h=d.dp,((h<0||h>=K.$length)?($throwRuntimeError("index out of range"),undefined):K.$array[K.$offset+h]));}d.Shift(-g);e=e+(g)>>0;}while(true){if(!(d.dp<0||(d.dp===0)&&d.d[0]<53)){break;}i=0;if(-d.dp>=K.$length){i=27;}else{i=(j=-d.dp,((j<0||j>=K.$length)?($throwRuntimeError("index out of range"),undefined):K.$array[K.$offset+j]));}d.Shift(i);e=e-(i)>>0;}e=e-(1)>>0;if(e<(a.bias+1>>0)){k=(a.bias+1>>0)-e>>0;d.Shift(-k);e=e+(k)>>0;}if((e-a.bias>>0)>=(((l=a.expbits,l<32?(1<<l):0)>>0)-1>>0)){$s=9;continue;}$s=10;continue;case 9:$s=6;continue;case 10:d.Shift(((1+a.mantbits>>>0)>>0));f=d.RoundedInteger();if((m=$shiftLeft64(new $Uint64(0,2),a.mantbits),(f.$high===m.$high&&f.$low===m.$low))){$s=11;continue;}$s=12;continue;case 11:f=$shiftRightUint64(f,(1));e=e+(1)>>0;if((e-a.bias>>0)>=(((n=a.expbits,n<32?(1<<n):0)>>0)-1>>0)){$s=13;continue;}$s=14;continue;case 13:$s=6;continue;case 14:case 12:if((o=(p=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(f.$high&p.$high,(f.$low&p.$low)>>>0)),(o.$high===0&&o.$low===0))){e=a.bias;}$s=3;continue;case 6:f=new $Uint64(0,0);e=(((q=a.expbits,q<32?(1<<q):0)>>0)-1>>0)+a.bias>>0;c=true;case 3:t=(r=(s=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(s.$high-0,s.$low-1)),new $Uint64(f.$high&r.$high,(f.$low&r.$low)>>>0));t=(u=$shiftLeft64(new $Uint64(0,(((e-a.bias>>0))&((((v=a.expbits,v<32?(1<<v):0)>>0)-1>>0)))),a.mantbits),new $Uint64(t.$high|u.$high,(t.$low|u.$low)>>>0));if(d.neg){t=(w=$shiftLeft64($shiftLeft64(new $Uint64(0,1),a.mantbits),a.expbits),new $Uint64(t.$high|w.$high,(t.$low|w.$low)>>>0));}x=t;y=c;b=x;c=y;$s=-1;return[b,c];}return;}};Y.prototype.floatBits=function(a){return this.$val.floatBits(a);};N=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=false;if(!((f=$shiftRightUint64(a,AQ.mantbits),(f.$high===0&&f.$low===0)))){return[d,e];}d=$flatten64(a);if(c){d=-d;}if((b===0)){g=d;h=true;d=g;e=h;return[d,e];}else if(b>0&&b<=37){if(b>22){d=d*((i=b-22>>0,((i<0||i>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+i])));b=22;}if(d>1e+15||d<-1e+15){return[d,e];}j=d*((b<0||b>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+b]);k=true;d=j;e=k;return[d,e];}else if(b<0&&b>=-22){l=d/(m=-b,((m<0||m>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+m]));n=true;d=l;e=n;return[d,e];}return[d,e];};O=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=false;if(!((f=$shiftRightUint64(a,AP.mantbits),(f.$high===0&&f.$low===0)))){return[d,e];}d=$flatten64(a);if(c){d=-d;}if((b===0)){g=d;h=true;d=g;e=h;return[d,e];}else if(b>0&&b<=17){if(b>10){d=$fround(d*((i=b-10>>0,((i<0||i>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+i]))));b=10;}if(d>1e+07||d<-1e+07){return[d,e];}j=$fround(d*((b<0||b>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+b]));k=true;d=j;e=k;return[d,e];}else if(b<0&&b>=-10){l=$fround(d/(m=-b,((m<0||m>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+m])));n=true;d=l;e=n;return[d,e];}return[d,e];};P=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=$ifaceNil;d=I(a);e=d[0];f=d[1];if(f){g=$fround(e);h=$ifaceNil;b=g;c=h;return[b,c];}if(G){i=J(a);j=i[0];k=i[1];l=i[2];m=i[3];n=i[4];if(n){if(!m){o=O(j,k,l);p=o[0];q=o[1];if(q){r=p;s=$ifaceNil;b=r;c=s;return[b,c];}}t=new AH.ptr(new $Uint64(0,0),0,false);u=t.AssignDecimal(j,k,l,m,AP);if(u){v=t.floatBits(AP);w=v[0];x=v[1];b=A.Float32frombits((w.$low>>>0));if(x){c=U("ParseFloat",a);}y=b;z=c;b=y;c=z;return[b,c];}}}aa=new Y.ptr(CY.zero(),0,0,false,false);if(!aa.set(a)){ab=0;ac=T("ParseFloat",a);b=ab;c=ac;return[b,c];}ad=aa.floatBits(AP);ae=ad[0];af=ad[1];b=A.Float32frombits((ae.$low>>>0));if(af){c=U("ParseFloat",a);}ag=b;ah=c;b=ag;c=ah;return[b,c];};Q=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=$ifaceNil;d=I(a);e=d[0];f=d[1];if(f){g=e;h=$ifaceNil;b=g;c=h;return[b,c];}if(G){i=J(a);j=i[0];k=i[1];l=i[2];m=i[3];n=i[4];if(n){if(!m){o=N(j,k,l);p=o[0];q=o[1];if(q){r=p;s=$ifaceNil;b=r;c=s;return[b,c];}}t=new AH.ptr(new $Uint64(0,0),0,false);u=t.AssignDecimal(j,k,l,m,AQ);if(u){v=t.floatBits(AQ);w=v[0];x=v[1];b=A.Float64frombits(w);if(x){c=U("ParseFloat",a);}y=b;z=c;b=y;c=z;return[b,c];}}}aa=new Y.ptr(CY.zero(),0,0,false,false);if(!aa.set(a)){ab=0;ac=T("ParseFloat",a);b=ab;c=ac;return[b,c];}ad=aa.floatBits(AQ);ae=ad[0];af=ad[1];b=A.Float64frombits(ae);if(af){c=U("ParseFloat",a);}ag=b;ah=c;b=ag;c=ah;return[b,c];};R=function(a,b){var $ptr,a,b,c,d,e;if(b===32){c=P(a);d=c[0];e=c[1];return[d,e];}return Q(a);};$pkg.ParseFloat=R;S.ptr.prototype.Error=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.Err.Error();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return"strconv."+a.Func+": "+"parsing "+BU(a.Num)+": "+b;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.Error=function(){return this.$val.Error();};T=function(a,b){var $ptr,a,b;return new S.ptr(a,b,$pkg.ErrSyntax);};U=function(a,b){var $ptr,a,b;return new S.ptr(a,b,$pkg.ErrRange);};V=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s;$s=0;s:while(true){switch($s){case 0:d=new $Uint64(0,0);e=$ifaceNil;f=new $Uint64(0,0);g=new $Uint64(0,0);h=f;i=g;if(c===0){c=32;}j=0;if(a.length<1){$s=2;continue;}if(2<=b&&b<=36){$s=3;continue;}if((b===0)){$s=4;continue;}$s=5;continue;case 2:e=$pkg.ErrSyntax;$s=7;continue;$s=6;continue;case 3:$s=6;continue;case 4:if((a.charCodeAt(0)===48)&&a.length>1&&((a.charCodeAt(1)===120)||(a.charCodeAt(1)===88))){$s=9;continue;}if((a.charCodeAt(0)===48)){$s=10;continue;}$s=11;continue;case 9:if(a.length<3){$s=13;continue;}$s=14;continue;case 13:e=$pkg.ErrSyntax;$s=7;continue;case 14:b=16;j=2;$s=12;continue;case 10:b=8;j=1;$s=12;continue;case 11:b=10;case 12:case 8:$s=6;continue;case 5:e=B.New("invalid base "+BK(b));$s=7;continue;case 6:case 1:k=b;if(k===(10)){h=new $Uint64(429496729,2576980378);}else if(k===(16)){h=new $Uint64(268435456,0);}else{h=(l=$div64(new $Uint64(4294967295,4294967295),new $Uint64(0,b),false),new $Uint64(l.$high+0,l.$low+1));}i=(m=$shiftLeft64(new $Uint64(0,1),(c>>>0)),new $Uint64(m.$high-0,m.$low-1));case 15:if(!(j<a.length)){$s=16;continue;}n=0;o=a.charCodeAt(j);if(48<=o&&o<=57){$s=18;continue;}if(97<=o&&o<=122){$s=19;continue;}if(65<=o&&o<=90){$s=20;continue;}$s=21;continue;case 18:n=o-48<<24>>>24;$s=22;continue;case 19:n=(o-97<<24>>>24)+10<<24>>>24;$s=22;continue;case 20:n=(o-65<<24>>>24)+10<<24>>>24;$s=22;continue;case 21:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=7;continue;case 22:case 17:if(n>=(b<<24>>>24)){$s=23;continue;}$s=24;continue;case 23:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=7;continue;case 24:if((d.$high>h.$high||(d.$high===h.$high&&d.$low>=h.$low))){$s=25;continue;}$s=26;continue;case 25:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=7;continue;case 26:d=$mul64(d,(new $Uint64(0,b)));q=(p=new $Uint64(0,n),new $Uint64(d.$high+p.$high,d.$low+p.$low));if((q.$high<d.$high||(q.$high===d.$high&&q.$low<d.$low))||(q.$high>i.$high||(q.$high===i.$high&&q.$low>i.$low))){$s=27;continue;}$s=28;continue;case 27:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=7;continue;case 28:d=q;j=j+(1)>>0;$s=15;continue;case 16:$s=-1;return[d,$ifaceNil];case 7:$s=-1;return[d,new S.ptr("ParseUint",a,e)];$s=-1;return[new $Uint64(0,0),$ifaceNil];}return;}};$pkg.ParseUint=V;W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;d=new $Int64(0,0);e=$ifaceNil;if(c===0){c=32;}if(a.length===0){f=new $Int64(0,0);g=T("ParseInt",a);d=f;e=g;return[d,e];}h=a;i=false;if(a.charCodeAt(0)===43){a=$substring(a,1);}else if(a.charCodeAt(0)===45){i=true;a=$substring(a,1);}j=new $Uint64(0,0);k=V(a,b,c);j=k[0];e=k[1];if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual($assertType(e,CZ).Err,$pkg.ErrRange))){$assertType(e,CZ).Func="ParseInt";$assertType(e,CZ).Num=h;l=new $Int64(0,0);m=e;d=l;e=m;return[d,e];}n=$shiftLeft64(new $Uint64(0,1),((c-1>>0)>>>0));if(!i&&(j.$high>n.$high||(j.$high===n.$high&&j.$low>=n.$low))){o=(p=new $Uint64(n.$high-0,n.$low-1),new $Int64(p.$high,p.$low));q=U("ParseInt",h);d=o;e=q;return[d,e];}if(i&&(j.$high>n.$high||(j.$high===n.$high&&j.$low>n.$low))){r=(s=new $Int64(n.$high,n.$low),new $Int64(-s.$high,-s.$low));t=U("ParseInt",h);d=r;e=t;return[d,e];}u=new $Int64(j.$high,j.$low);if(i){u=new $Int64(-u.$high,-u.$low);}v=u;w=$ifaceNil;d=v;e=w;return[d,e];};$pkg.ParseInt=W;X=function(a){var $ptr,a,b,c,d,e,f,g;b=W(a,10,0);c=b[0];d=b[1];e=$assertType(d,CZ,true);f=e[0];g=e[1];if(g){f.Func="Atoi";}return[((c.$low+((c.$high>>31)*4294967296))>>0),d];};$pkg.Atoi=X;Y.ptr.prototype.String=function(){var $ptr,a,b,c,d;a=this;b=10+a.nd>>0;if(a.dp>0){b=b+(a.dp)>>0;}if(a.dp<0){b=b+(-a.dp)>>0;}c=$makeSlice(DA,b);d=0;if((a.nd===0)){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+(Z($subslice(c,d,(d+-a.dp>>0))))>>0;d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.nd)))>>0;}else if(a.dp<a.nd){d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.dp)))>>0;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.nd)))>>0;d=d+(Z($subslice(c,d,((d+a.dp>>0)-a.nd>>0))))>>0;}return $bytesToString($subslice(c,0,d));};Y.prototype.String=function(){return this.$val.String();};Z=function(a){var $ptr,a,b,c,d;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=c;((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=48);c++;}return a.$length;};AA=function(a){var $ptr,a,b,c;while(true){if(!(a.nd>0&&((b=a.d,c=a.nd-1>>0,((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]))===48))){break;}a.nd=a.nd-(1)>>0;}if(a.nd===0){a.dp=0;}};Y.ptr.prototype.Assign=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=DB.zero();d=0;while(true){if(!((a.$high>0||(a.$high===0&&a.$low>0)))){break;}e=$div64(a,new $Uint64(0,10),false);a=(f=$mul64(new $Uint64(0,10),e),new $Uint64(a.$high-f.$high,a.$low-f.$low));((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d]=(new $Uint64(a.$high+0,a.$low+48).$low<<24>>>24));d=d+(1)>>0;a=e;}b.nd=0;d=d-(1)>>0;while(true){if(!(d>=0)){break;}(g=b.d,h=b.nd,((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]=((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d])));b.nd=b.nd+(1)>>0;d=d-(1)>>0;}b.dp=b.nd;AA(b);};Y.prototype.Assign=function(a){return this.$val.Assign(a);};AB=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;c=0;d=0;e=0;while(true){if(!(((f=b,f<32?(e>>>f):0)>>>0)===0)){break;}if(c>=a.nd){if(e===0){a.nd=0;return;}while(true){if(!(((g=b,g<32?(e>>>g):0)>>>0)===0)){break;}e=e*10>>>0;c=c+(1)>>0;}break;}i=((h=a.d,((c<0||c>=h.length)?($throwRuntimeError("index out of range"),undefined):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;k=(((j=b,j<32?(1<<j):0)>>>0))-1>>>0;while(true){if(!(c<a.nd)){break;}m=((l=a.d,((c<0||c>=l.length)?($throwRuntimeError("index out of range"),undefined):l[c]))>>>0);o=(n=b,n<32?(e>>>n):0)>>>0;e=(e&(k))>>>0;(p=a.d,((d<0||d>=p.length)?($throwRuntimeError("index out of range"),undefined):p[d]=((o+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+m>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}r=(q=b,q<32?(e>>>q):0)>>>0;e=(e&(k))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?($throwRuntimeError("index out of range"),undefined):s[d]=((r+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(r>0){a.trunc=true;}e=e*10>>>0;}a.nd=d;AA(a);};AE=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c<b.length)){break;}if(c>=a.$length){return true;}if(!((((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])<b.charCodeAt(c);}c=c+(1)>>0;}return false;};AF=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;c=((b<0||b>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new DA(a.d),0,a.nd),((b<0||b>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+b]).cutoff)){c=c-(1)>>0;}d=a.nd;e=a.nd+c>>0;f=0;d=d-(1)>>0;while(true){if(!(d>=0)){break;}f=f+(((g=b,g<32?(((((h=a.d,((d<0||d>=h.length)?($throwRuntimeError("index out of range"),undefined):h[d]))>>>0)-48>>>0))<<g):0)>>>0))>>>0;j=(i=f/10,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));k=f-(10*j>>>0)>>>0;e=e-(1)>>0;if(e<800){(l=a.d,((e<0||e>=l.length)?($throwRuntimeError("index out of range"),undefined):l[e]=((k+48>>>0)<<24>>>24)));}else if(!((k===0))){a.trunc=true;}f=j;d=d-(1)>>0;}while(true){if(!(f>0)){break;}n=(m=f/10,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));o=f-(10*n>>>0)>>>0;e=e-(1)>>0;if(e<800){(p=a.d,((e<0||e>=p.length)?($throwRuntimeError("index out of range"),undefined):p[e]=((o+48>>>0)<<24>>>24)));}else if(!((o===0))){a.trunc=true;}f=n;}a.nd=a.nd+(c)>>0;if(a.nd>=800){a.nd=800;}a.dp=a.dp+(c)>>0;AA(a);};Y.ptr.prototype.Shift=function(a){var $ptr,a,b;b=this;if((b.nd===0)){}else if(a>0){while(true){if(!(a>28)){break;}AF(b,28);a=a-(28)>>0;}AF(b,(a>>>0));}else if(a<0){while(true){if(!(a<-28)){break;}AB(b,28);a=a+(28)>>0;}AB(b,(-a>>>0));}};Y.prototype.Shift=function(a){return this.$val.Shift(a);};AG=function(a,b){var $ptr,a,b,c,d,e,f,g;if(b<0||b>=a.nd){return false;}if(((c=a.d,((b<0||b>=c.length)?($throwRuntimeError("index out of range"),undefined):c[b]))===53)&&((b+1>>0)===a.nd)){if(a.trunc){return true;}return b>0&&!(((d=(((e=a.d,f=b-1>>0,((f<0||f>=e.length)?($throwRuntimeError("index out of range"),undefined):e[f]))-48<<24>>>24))%2,d===d?d:$throwRuntimeError("integer divide by zero"))===0));}return(g=a.d,((b<0||b>=g.length)?($throwRuntimeError("index out of range"),undefined):g[b]))>=53;};Y.ptr.prototype.Round=function(a){var $ptr,a,b;b=this;if(a<0||a>=b.nd){return;}if(AG(b,a)){b.RoundUp(a);}else{b.RoundDown(a);}};Y.prototype.Round=function(a){return this.$val.Round(a);};Y.ptr.prototype.RoundDown=function(a){var $ptr,a,b;b=this;if(a<0||a>=b.nd){return;}b.nd=a;AA(b);};Y.prototype.RoundDown=function(a){return this.$val.RoundDown(a);};Y.ptr.prototype.RoundUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;if(a<0||a>=b.nd){return;}c=a-1>>0;while(true){if(!(c>=0)){break;}e=(d=b.d,((c<0||c>=d.length)?($throwRuntimeError("index out of range"),undefined):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?($throwRuntimeError("index out of range"),undefined):g[c]=((f=b.d,((c<0||c>=f.length)?($throwRuntimeError("index out of range"),undefined):f[c]))+(1)<<24>>>24)));b.nd=c+1>>0;return;}c=c-(1)>>0;}b.d[0]=49;b.nd=1;b.dp=b.dp+(1)>>0;};Y.prototype.RoundUp=function(a){return this.$val.RoundUp(a);};Y.ptr.prototype.RoundedInteger=function(){var $ptr,a,b,c,d,e,f,g;a=this;if(a.dp>20){return new $Uint64(4294967295,4294967295);}b=0;c=new $Uint64(0,0);b=0;while(true){if(!(b<a.dp&&b<a.nd)){break;}c=(d=$mul64(c,new $Uint64(0,10)),e=new $Uint64(0,((f=a.d,((b<0||b>=f.length)?($throwRuntimeError("index out of range"),undefined):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b<a.dp)){break;}c=$mul64(c,(new $Uint64(0,10)));b=b+(1)>>0;}if(AG(a,a.dp)){c=(g=new $Uint64(0,1),new $Uint64(c.$high+g.$high,c.$low+g.$low));}return c;};Y.prototype.RoundedInteger=function(){return this.$val.RoundedInteger();};AH.ptr.prototype.floatBits=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;b=new $Uint64(0,0);c=false;d=this;d.Normalize();e=d.exp+63>>0;if(e<(a.bias+1>>0)){f=(a.bias+1>>0)-e>>0;d.mant=$shiftRightUint64(d.mant,((f>>>0)));e=e+(f)>>0;}g=$shiftRightUint64(d.mant,((63-a.mantbits>>>0)));if(!((h=(i=d.mant,j=$shiftLeft64(new $Uint64(0,1),((62-a.mantbits>>>0))),new $Uint64(i.$high&j.$high,(i.$low&j.$low)>>>0)),(h.$high===0&&h.$low===0)))){g=(k=new $Uint64(0,1),new $Uint64(g.$high+k.$high,g.$low+k.$low));}if((l=$shiftLeft64(new $Uint64(0,2),a.mantbits),(g.$high===l.$high&&g.$low===l.$low))){g=$shiftRightUint64(g,(1));e=e+(1)>>0;}if((e-a.bias>>0)>=(((m=a.expbits,m<32?(1<<m):0)>>0)-1>>0)){g=new $Uint64(0,0);e=(((p=a.expbits,p<32?(1<<p):0)>>0)-1>>0)+a.bias>>0;c=true;}else if((n=(o=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(g.$high&o.$high,(g.$low&o.$low)>>>0)),(n.$high===0&&n.$low===0))){e=a.bias;}b=(q=(r=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(r.$high-0,r.$low-1)),new $Uint64(g.$high&q.$high,(g.$low&q.$low)>>>0));b=(s=$shiftLeft64(new $Uint64(0,(((e-a.bias>>0))&((((t=a.expbits,t<32?(1<<t):0)>>0)-1>>0)))),a.mantbits),new $Uint64(b.$high|s.$high,(b.$low|s.$low)>>>0));if(d.neg){b=(u=$shiftLeft64(new $Uint64(0,1),((a.mantbits+a.expbits>>>0))),new $Uint64(b.$high|u.$high,(b.$low|u.$low)>>>0));}return[b,c];};AH.prototype.floatBits=function(a){return this.$val.floatBits(a);};AH.ptr.prototype.AssignComputeBounds=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=new AH.ptr(new $Uint64(0,0),0,false);f=new AH.ptr(new $Uint64(0,0),0,false);g=this;g.mant=a;g.exp=b-(d.mantbits>>0)>>0;g.neg=c;if(g.exp<=0&&(h=$shiftLeft64(($shiftRightUint64(a,(-g.exp>>>0))),(-g.exp>>>0)),(a.$high===h.$high&&a.$low===h.$low))){g.mant=$shiftRightUint64(g.mant,((-g.exp>>>0)));g.exp=0;i=$clone(g,AH);j=$clone(g,AH);AH.copy(e,i);AH.copy(f,j);return[e,f];}k=b-d.bias>>0;AH.copy(f,new AH.ptr((l=$mul64(new $Uint64(0,2),g.mant),new $Uint64(l.$high+0,l.$low+1)),g.exp-1>>0,g.neg));if(!((m=$shiftLeft64(new $Uint64(0,1),d.mantbits),(a.$high===m.$high&&a.$low===m.$low)))||(k===1)){AH.copy(e,new AH.ptr((n=$mul64(new $Uint64(0,2),g.mant),new $Uint64(n.$high-0,n.$low-1)),g.exp-1>>0,g.neg));}else{AH.copy(e,new AH.ptr((o=$mul64(new $Uint64(0,4),g.mant),new $Uint64(o.$high-0,o.$low-1)),g.exp-2>>0,g.neg));}return[e,f];};AH.prototype.AssignComputeBounds=function(a,b,c,d){return this.$val.AssignComputeBounds(a,b,c,d);};AH.ptr.prototype.Normalize=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;a=0;b=this;c=b.mant;d=b.exp;e=c;f=d;if((e.$high===0&&e.$low===0)){a=0;return a;}if((g=$shiftRightUint64(e,32),(g.$high===0&&g.$low===0))){e=$shiftLeft64(e,(32));f=f-(32)>>0;}if((h=$shiftRightUint64(e,48),(h.$high===0&&h.$low===0))){e=$shiftLeft64(e,(16));f=f-(16)>>0;}if((i=$shiftRightUint64(e,56),(i.$high===0&&i.$low===0))){e=$shiftLeft64(e,(8));f=f-(8)>>0;}if((j=$shiftRightUint64(e,60),(j.$high===0&&j.$low===0))){e=$shiftLeft64(e,(4));f=f-(4)>>0;}if((k=$shiftRightUint64(e,62),(k.$high===0&&k.$low===0))){e=$shiftLeft64(e,(2));f=f-(2)>>0;}if((l=$shiftRightUint64(e,63),(l.$high===0&&l.$low===0))){e=$shiftLeft64(e,(1));f=f-(1)>>0;}a=((b.exp-f>>0)>>>0);m=e;n=f;b.mant=m;b.exp=n;return a;};AH.prototype.Normalize=function(){return this.$val.Normalize();};AH.ptr.prototype.Multiply=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;b=this;c=$shiftRightUint64(b.mant,32);d=new $Uint64(0,(b.mant.$low>>>0));e=c;f=d;g=$shiftRightUint64(a.mant,32);h=new $Uint64(0,(a.mant.$low>>>0));i=g;j=h;k=$mul64(e,j);l=$mul64(f,i);b.mant=(m=(n=$mul64(e,i),o=$shiftRightUint64(k,32),new $Uint64(n.$high+o.$high,n.$low+o.$low)),p=$shiftRightUint64(l,32),new $Uint64(m.$high+p.$high,m.$low+p.$low));u=(q=(r=new $Uint64(0,(k.$low>>>0)),s=new $Uint64(0,(l.$low>>>0)),new $Uint64(r.$high+s.$high,r.$low+s.$low)),t=$shiftRightUint64(($mul64(f,j)),32),new $Uint64(q.$high+t.$high,q.$low+t.$low));u=(v=new $Uint64(0,2147483648),new $Uint64(u.$high+v.$high,u.$low+v.$low));b.mant=(w=b.mant,x=($shiftRightUint64(u,32)),new $Uint64(w.$high+x.$high,w.$low+x.$low));b.exp=(b.exp+a.exp>>0)+64>>0;};AH.prototype.Multiply=function(a){return this.$val.Multiply(a);};AH.ptr.prototype.AssignDecimal=function(a,b,c,d,e){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=false;g=this;h=0;if(d){h=h+(4)>>0;}g.mant=a;g.exp=0;g.neg=c;j=(i=((b- -348>>0))/8,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"));if(b<-348||j>=87){f=false;return f;}l=(k=((b- -348>>0))%8,k===k?k:$throwRuntimeError("integer divide by zero"));if(l<19&&(m=(n=19-l>>0,((n<0||n>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[n])),(a.$high<m.$high||(a.$high===m.$high&&a.$low<m.$low)))){g.mant=$mul64(g.mant,(((l<0||l>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply($clone(((l<0||l>=AI.length)?($throwRuntimeError("index out of range"),undefined):AI[l]),AH));h=h+(4)>>0;}g.Multiply($clone(((j<0||j>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[j]),AH));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<<p):0)>>0;q=e.bias-63>>0;r=0;if(g.exp<=q){r=((63-e.mantbits>>>0)+1>>>0)+((q-g.exp>>0)>>>0)>>>0;}else{r=63-e.mantbits>>>0;}s=$shiftLeft64(new $Uint64(0,1),((r-1>>>0)));w=(t=g.mant,u=(v=$shiftLeft64(new $Uint64(0,1),r),new $Uint64(v.$high-0,v.$low-1)),new $Uint64(t.$high&u.$high,(t.$low&u.$low)>>>0));if((x=(y=new $Int64(s.$high,s.$low),z=new $Int64(0,h),new $Int64(y.$high-z.$high,y.$low-z.$low)),aa=new $Int64(w.$high,w.$low),(x.$high<aa.$high||(x.$high===aa.$high&&x.$low<aa.$low)))&&(ab=new $Int64(w.$high,w.$low),ac=(ad=new $Int64(s.$high,s.$low),ae=new $Int64(0,h),new $Int64(ad.$high+ae.$high,ad.$low+ae.$low)),(ab.$high<ac.$high||(ab.$high===ac.$high&&ab.$low<ac.$low)))){f=false;return f;}f=true;return f;};AH.prototype.AssignDecimal=function(a,b,c,d,e){return this.$val.AssignDecimal(a,b,c,d,e);};AH.ptr.prototype.frexp10=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=this;e=(d=($imul(((-46-c.exp>>0)),28))/93,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));g=(f=((e- -348>>0))/8,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));Loop:while(true){h=(c.exp+((g<0||g>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[g]).exp>>0)+64>>0;if(h<-60){g=g+(1)>>0;}else if(h>-32){g=g-(1)>>0;}else{break Loop;}}c.Multiply($clone(((g<0||g>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[g]),AH));i=-((-348+($imul(g,8))>>0));j=g;a=i;b=j;return[a,b];};AH.prototype.frexp10=function(){return this.$val.frexp10();};AL=function(a,b,c){var $ptr,a,b,c,d,e,f;d=0;e=c.frexp10();d=e[0];f=e[1];a.Multiply($clone(((f<0||f>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[f]),AH));b.Multiply($clone(((f<0||f>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[f]),AH));return d;};AH.ptr.prototype.FixedDecimal=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if((d=c.mant,(d.$high===0&&d.$low===0))){a.nd=0;a.dp=0;a.neg=c.neg;return true;}if(b===0){$panic(new $String("strconv: internal error: extFloat.FixedDecimal called with n == 0"));}c.Normalize();e=c.frexp10();f=e[0];g=(-c.exp>>>0);h=($shiftRightUint64(c.mant,g).$low>>>0);k=(i=c.mant,j=$shiftLeft64(new $Uint64(0,h),g),new $Uint64(i.$high-j.$high,i.$low-j.$low));l=new $Uint64(0,1);m=b;n=0;o=new $Uint64(0,1);p=0;q=new $Uint64(0,1);r=p;s=q;while(true){if(!(r<20)){break;}if((t=new $Uint64(0,h),(s.$high>t.$high||(s.$high===t.$high&&s.$low>t.$low)))){n=r;break;}s=$mul64(s,(new $Uint64(0,10)));r=r+(1)>>0;}u=h;if(n>m){o=(v=n-m>>0,((v<0||v>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[v]));h=(w=h/((o.$low>>>0)),(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));u=u-(($imul(h,(o.$low>>>0))>>>0))>>>0;}else{u=0;}x=DC.zero();y=32;z=h;while(true){if(!(z>0)){break;}ab=(aa=z/10,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>>0:$throwRuntimeError("integer divide by zero"));z=z-(($imul(10,ab)>>>0))>>>0;y=y-(1)>>0;((y<0||y>=x.length)?($throwRuntimeError("index out of range"),undefined):x[y]=((z+48>>>0)<<24>>>24));z=ab;}ac=y;while(true){if(!(ac<32)){break;}(ad=a.d,ae=ac-y>>0,((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?($throwRuntimeError("index out of range"),undefined):x[ac])));ac=ac+(1)>>0;}af=32-y>>0;a.nd=af;a.dp=n+f>>0;m=m-(af)>>0;if(m>0){if(!((u===0))||!((o.$high===0&&o.$low===1))){$panic(new $String("strconv: internal error, rest != 0 but needed > 0"));}while(true){if(!(m>0)){break;}k=$mul64(k,(new $Uint64(0,10)));l=$mul64(l,(new $Uint64(0,10)));if((ag=$mul64(new $Uint64(0,2),l),ah=$shiftLeft64(new $Uint64(0,1),g),(ag.$high>ah.$high||(ag.$high===ah.$high&&ag.$low>ah.$low)))){return false;}ai=$shiftRightUint64(k,g);(aj=a.d,((af<0||af>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+af]=(new $Uint64(ai.$high+0,ai.$low+48).$low<<24>>>24)));k=(ak=$shiftLeft64(ai,g),new $Uint64(k.$high-ak.$high,k.$low-ak.$low));af=af+(1)>>0;m=m-(1)>>0;}a.nd=af;}am=AM(a,(al=$shiftLeft64(new $Uint64(0,u),g),new $Uint64(al.$high|k.$high,(al.$low|k.$low)>>>0)),o,g,l);if(!am){return false;}an=a.nd-1>>0;while(true){if(!(an>=0)){break;}if(!(((ao=a.d,((an<0||an>=ao.$length)?($throwRuntimeError("index out of range"),undefined):ao.$array[ao.$offset+an]))===48))){a.nd=an+1>>0;break;}an=an-(1)>>0;}return true;};AH.prototype.FixedDecimal=function(a,b){return this.$val.FixedDecimal(a,b);};AM=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;if((f=$shiftLeft64(c,d),(b.$high>f.$high||(b.$high===f.$high&&b.$low>f.$low)))){$panic(new $String("strconv: num > den<<shift in adjustLastDigitFixed"));}if((g=$mul64(new $Uint64(0,2),e),h=$shiftLeft64(c,d),(g.$high>h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<<shift)/2"));}if((i=$mul64(new $Uint64(0,2),(new $Uint64(b.$high+e.$high,b.$low+e.$low))),j=$shiftLeft64(c,d),(i.$high<j.$high||(i.$high===j.$high&&i.$low<j.$low)))){return true;}if((k=$mul64(new $Uint64(0,2),(new $Uint64(b.$high-e.$high,b.$low-e.$low))),l=$shiftLeft64(c,d),(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))){m=a.nd-1>>0;while(true){if(!(m>=0)){break;}if((n=a.d,((m<0||m>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+m]))===57){a.nd=a.nd-(1)>>0;}else{break;}m=m-(1)>>0;}if(m<0){(o=a.d,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]=49));a.nd=1;a.dp=a.dp+(1)>>0;}else{(q=a.d,((m<0||m>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+m]))+(1)<<24>>>24)));}return true;}return false;};AH.ptr.prototype.ShortestDecimal=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;d=this;if((e=d.mant,(e.$high===0&&e.$low===0))){a.nd=0;a.dp=0;a.neg=d.neg;return true;}if((d.exp===0)&&$equal(b,d,AH)&&$equal(b,c,AH)){f=DB.zero();g=23;h=d.mant;while(true){if(!((h.$high>0||(h.$high===0&&h.$low>0)))){break;}i=$div64(h,new $Uint64(0,10),false);h=(j=$mul64(new $Uint64(0,10),i),new $Uint64(h.$high-j.$high,h.$low-j.$low));((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g]=(new $Uint64(h.$high+0,h.$low+48).$low<<24>>>24));g=g-(1)>>0;h=i;}k=(24-g>>0)-1>>0;l=0;while(true){if(!(l<k)){break;}(n=a.d,((l<0||l>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?($throwRuntimeError("index out of range"),undefined):f[m]))));l=l+(1)>>0;}o=k;p=k;a.nd=o;a.dp=p;while(true){if(!(a.nd>0&&((q=a.d,r=a.nd-1>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]))===48))){break;}a.nd=a.nd-(1)>>0;}if(a.nd===0){a.dp=0;}a.neg=d.neg;return true;}c.Normalize();if(d.exp>c.exp){d.mant=$shiftLeft64(d.mant,(((d.exp-c.exp>>0)>>>0)));d.exp=c.exp;}if(b.exp>c.exp){b.mant=$shiftLeft64(b.mant,(((b.exp-c.exp>>0)>>>0)));b.exp=c.exp;}s=AL(b,d,c);c.mant=(t=c.mant,u=new $Uint64(0,1),new $Uint64(t.$high+u.$high,t.$low+u.$low));b.mant=(v=b.mant,w=new $Uint64(0,1),new $Uint64(v.$high-w.$high,v.$low-w.$low));x=(-c.exp>>>0);y=($shiftRightUint64(c.mant,x).$low>>>0);ab=(z=c.mant,aa=$shiftLeft64(new $Uint64(0,y),x),new $Uint64(z.$high-aa.$high,z.$low-aa.$low));ae=(ac=c.mant,ad=b.mant,new $Uint64(ac.$high-ad.$high,ac.$low-ad.$low));ah=(af=c.mant,ag=d.mant,new $Uint64(af.$high-ag.$high,af.$low-ag.$low));ai=0;aj=0;ak=new $Uint64(0,1);al=aj;am=ak;while(true){if(!(al<20)){break;}if((an=new $Uint64(0,y),(am.$high>an.$high||(am.$high===an.$high&&am.$low>an.$low)))){ai=al;break;}am=$mul64(am,(new $Uint64(0,10)));al=al+(1)>>0;}ao=0;while(true){if(!(ao<ai)){break;}aq=(ap=(ai-ao>>0)-1>>0,((ap<0||ap>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[ap]));as=(ar=y/(aq.$low>>>0),(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"));(at=a.d,((ao<0||ao>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+ao]=((as+48>>>0)<<24>>>24)));y=y-(($imul(as,(aq.$low>>>0))>>>0))>>>0;av=(au=$shiftLeft64(new $Uint64(0,y),x),new $Uint64(au.$high+ab.$high,au.$low+ab.$low));if((av.$high<ae.$high||(av.$high===ae.$high&&av.$low<ae.$low))){a.nd=ao+1>>0;a.dp=ai+s>>0;a.neg=d.neg;return AN(a,av,ah,ae,$shiftLeft64(aq,x),new $Uint64(0,2));}ao=ao+(1)>>0;}a.nd=ai;a.dp=a.nd+s>>0;a.neg=d.neg;aw=0;ax=new $Uint64(0,1);while(true){ab=$mul64(ab,(new $Uint64(0,10)));ax=$mul64(ax,(new $Uint64(0,10)));aw=($shiftRightUint64(ab,x).$low>>0);(ay=a.d,az=a.nd,((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]=((aw+48>>0)<<24>>>24)));a.nd=a.nd+(1)>>0;ab=(ba=$shiftLeft64(new $Uint64(0,aw),x),new $Uint64(ab.$high-ba.$high,ab.$low-ba.$low));if((bb=$mul64(ae,ax),(ab.$high<bb.$high||(ab.$high===bb.$high&&ab.$low<bb.$low)))){return AN(a,ab,$mul64(ah,ax),$mul64(ae,ax),$shiftLeft64(new $Uint64(0,1),x),$mul64(ax,new $Uint64(0,2)));}}};AH.prototype.ShortestDecimal=function(a,b,c){return this.$val.ShortestDecimal(a,b,c);};AN=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;if((g=$mul64(new $Uint64(0,2),f),(e.$high<g.$high||(e.$high===g.$high&&e.$low<g.$low)))){return false;}while(true){if(!((h=(i=(j=$div64(e,new $Uint64(0,2),false),new $Uint64(b.$high+j.$high,b.$low+j.$low)),new $Uint64(i.$high+f.$high,i.$low+f.$low)),(h.$high<c.$high||(h.$high===c.$high&&h.$low<c.$low))))){break;}k=a.nd-1>>0;(m=a.d,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]))-(1)<<24>>>24)));b=(n=e,new $Uint64(b.$high+n.$high,b.$low+n.$low));}if((o=new $Uint64(b.$high+e.$high,b.$low+e.$low),p=(q=(r=$div64(e,new $Uint64(0,2),false),new $Uint64(c.$high+r.$high,c.$low+r.$low)),new $Uint64(q.$high+f.$high,q.$low+f.$low)),(o.$high<p.$high||(o.$high===p.$high&&o.$low<=p.$low)))){return false;}if((b.$high<f.$high||(b.$high===f.$high&&b.$low<f.$low))||(s=new $Uint64(d.$high-f.$high,d.$low-f.$low),(b.$high>s.$high||(b.$high===s.$high&&b.$low>s.$low)))){return false;}if((a.nd===1)&&((t=a.d,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};AR=function(a,b,c,d){var $ptr,a,b,c,d;return $bytesToString(AT($makeSlice(DA,0,BC(c+4>>0,24)),a,b,c,d));};$pkg.FormatFloat=AR;AS=function(a,b,c,d,e){var $ptr,a,b,c,d,e;return AT(a,b,c,d,e);};$pkg.AppendFloat=AS;AT=function(a,b,c,d,e){var $ptr,a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=new $Uint64(0,0);g=DD.nil;h=e;if(h===(32)){f=new $Uint64(0,A.Float32bits($fround(b)));g=AP;}else if(h===(64)){f=A.Float64bits(b);g=AQ;}else{$panic(new $String("strconv: illegal AppendFloat/FormatFloat bitSize"));}j=!((i=$shiftRightUint64(f,((g.expbits+g.mantbits>>>0))),(i.$high===0&&i.$low===0)));l=($shiftRightUint64(f,g.mantbits).$low>>0)&((((k=g.expbits,k<32?(1<<k):0)>>0)-1>>0));o=(m=(n=$shiftLeft64(new $Uint64(0,1),g.mantbits),new $Uint64(n.$high-0,n.$low-1)),new $Uint64(f.$high&m.$high,(f.$low&m.$low)>>>0));p=l;if(p===((((q=g.expbits,q<32?(1<<q):0)>>0)-1>>0))){r="";if(!((o.$high===0&&o.$low===0))){r="NaN";}else if(j){r="-Inf";}else{r="+Inf";}return $appendSlice(a,r);}else if(p===(0)){l=l+(1)>>0;}else{o=(s=$shiftLeft64(new $Uint64(0,1),g.mantbits),new $Uint64(o.$high|s.$high,(o.$low|s.$low)>>>0));}l=l+(g.bias)>>0;if(c===98){return BA(a,j,o,l,g);}if(!G){return AU(a,d,c,j,o,l,g);}t=new AX.ptr(DA.nil,0,0,false);u=false;v=d<0;if(v){w=new AH.ptr(new $Uint64(0,0),0,false);x=w.AssignComputeBounds(o,l,j,g);y=$clone(x[0],AH);z=$clone(x[1],AH);aa=DC.zero();t.d=new DA(aa);u=w.ShortestDecimal(t,y,z);if(!u){return AU(a,d,c,j,o,l,g);}ab=c;if((ab===(101))||(ab===(69))){d=BC(t.nd-1>>0,0);}else if(ab===(102)){d=BC(t.nd-t.dp>>0,0);}else if((ab===(103))||(ab===(71))){d=t.nd;}}else if(!((c===102))){ac=d;ad=c;if((ad===(101))||(ad===(69))){ac=ac+(1)>>0;}else if((ad===(103))||(ad===(71))){if(d===0){d=1;}ac=d;}if(ac<=15){ae=DB.zero();t.d=new DA(ae);af=new AH.ptr(o,l-(g.mantbits>>0)>>0,j);u=af.FixedDecimal(t,ac);}}if(!u){return AU(a,d,c,j,o,l,g);}return AV(a,v,j,$clone(t,AX),d,c);};AU=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;h=new Y.ptr(CY.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(DA.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new DA(h.d),h.nd,h.dp,false));k=c;if((k===(101))||(k===(69))){b=i.nd-1>>0;}else if(k===(102)){b=BC(i.nd-i.dp>>0,0);}else if((k===(103))||(k===(71))){b=i.nd;}}else{l=c;if((l===(101))||(l===(69))){h.Round(b+1>>0);}else if(l===(102)){h.Round(h.dp+b>>0);}else if((l===(103))||(l===(71))){if(b===0){b=1;}h.Round(b);}AX.copy(i,new AX.ptr(new DA(h.d),h.nd,h.dp,false));}return AV(a,j,d,$clone(i,AX),b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;g=f;if((g===(101))||(g===(69))){return AY(a,c,$clone(d,AX),e,f);}else if(g===(102)){return AZ(a,c,$clone(d,AX),e);}else if((g===(103))||(g===(71))){h=e;if(h>d.nd&&d.nd>=d.dp){h=d.nd;}if(b){h=6;}i=d.dp-1>>0;if(i<-4||i>=h){if(e>d.nd){e=d.nd;}return AY(a,c,$clone(d,AX),e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,$clone(d,AX),BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;if((b.$high===0&&b.$low===0)){a.nd=0;return;}e=d.bias+1>>0;if(c>e&&($imul(332,((a.dp-a.nd>>0))))>=($imul(100,((c-(d.mantbits>>0)>>0))))){return;}f=new Y.ptr(CY.zero(),0,0,false,false);f.Assign((g=$mul64(b,new $Uint64(0,2)),new $Uint64(g.$high+0,g.$low+1)));f.Shift((c-(d.mantbits>>0)>>0)-1>>0);h=new $Uint64(0,0);i=0;if((j=$shiftLeft64(new $Uint64(0,1),d.mantbits),(b.$high>j.$high||(b.$high===j.$high&&b.$low>j.$low)))||(c===e)){h=new $Uint64(b.$high-0,b.$low-1);i=c;}else{h=(k=$mul64(b,new $Uint64(0,2)),new $Uint64(k.$high-0,k.$low-1));i=c-1>>0;}l=new Y.ptr(CY.zero(),0,0,false,false);l.Assign((m=$mul64(h,new $Uint64(0,2)),new $Uint64(m.$high+0,m.$low+1)));l.Shift((i-(d.mantbits>>0)>>0)-1>>0);o=(n=$div64(b,new $Uint64(0,2),true),(n.$high===0&&n.$low===0));p=0;while(true){if(!(p<a.nd)){break;}q=48;if(p<l.nd){q=(r=l.d,((p<0||p>=r.length)?($throwRuntimeError("index out of range"),undefined):r[p]));}t=(s=a.d,((p<0||p>=s.length)?($throwRuntimeError("index out of range"),undefined):s[p]));u=48;if(p<f.nd){u=(v=f.d,((p<0||p>=v.length)?($throwRuntimeError("index out of range"),undefined):v[p]));}w=!((q===t))||o&&((p+1>>0)===l.nd);x=!((t===u))&&(o||(t+1<<24>>>24)<u||(p+1>>0)<f.nd);if(w&&x){a.Round(p+1>>0);return;}else if(w){a.RoundDown(p+1>>0);return;}else if(x){a.RoundUp(p+1>>0);return;}p=p+(1)>>0;}};AY=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]));}a=$append(a,f);if(d>0){a=$append(a,46);h=1;i=BB(c.nd,d+1>>0);if(h<i){a=$appendSlice(a,$subslice(c.d,h,i));h=i;}while(true){if(!(h<=d)){break;}a=$append(a,48);h=h+(1)>>0;}}a=$append(a,e);j=c.dp-1>>0;if(c.nd===0){j=0;}if(j<0){f=45;j=-j;}else{f=43;}a=$append(a,f);if(j<10){a=$append(a,48,(j<<24>>>24)+48<<24>>>24);}else if(j<100){a=$append(a,((k=j/10,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24,((l=j%10,l===l?l:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24);}else{a=$append(a,((m=j/100,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24,(n=((o=j/10,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)%10,n===n?n:$throwRuntimeError("integer divide by zero"))+48<<24>>>24,((p=j%10,p===p?p:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24);}return a;};AZ=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;if(b){a=$append(a,45);}if(c.dp>0){e=BB(c.nd,c.dp);a=$appendSlice(a,$subslice(c.d,0,e));while(true){if(!(e<c.dp)){break;}a=$append(a,48);e=e+(1)>>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f<d)){break;}g=48;h=c.dp+f>>0;if(0<=h&&h<c.nd){g=(i=c.d,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]));}a=$append(a,g);f=f+(1)>>0;}}return a;};BA=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g;if(b){a=$append(a,45);}f=BO(a,c,10,false,true);a=f[0];a=$append(a,112);d=d-((e.mantbits>>0))>>0;if(d>=0){a=$append(a,43);}g=BO(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(a<b){return a;}return b;};BC=function(a,b){var $ptr,a,b;if(a>b){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BO(DA.nil,a,b,false,false);d=c[1];return d;};$pkg.FormatUint=BI;BJ=function(a,b){var $ptr,a,b,c,d;c=BO(DA.nil,new $Uint64(a.$high,a.$low),b,(a.$high<0||(a.$high===0&&a.$low<0)),false);d=c[1];return d;};$pkg.FormatInt=BJ;BK=function(a){var $ptr,a;return BJ(new $Int64(0,a),10);};$pkg.Itoa=BK;BM=function(a,b,c){var $ptr,a,b,c,d;d=BO(a,b,c,false,true);a=d[0];return a;};$pkg.AppendUint=BM;BO=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;f=DA.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=DE.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){if(true){while(true){if(!((b.$high>0||(b.$high===0&&b.$low>4294967295)))){break;}j=$div64(b,new $Uint64(0,1000000000),false);l=((k=$mul64(j,new $Uint64(0,1000000000)),new $Uint64(b.$high-k.$high,b.$low-k.$low)).$low>>>0);m=9;while(true){if(!(m>0)){break;}i=i-(1)>>0;o=(n=l/10,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=(((l-($imul(o,10)>>>0)>>>0)+48>>>0)<<24>>>24));l=o;m=m-(1)>>0;}b=j;}}p=(b.$low>>>0);while(true){if(!(p>=10)){break;}i=i-(1)>>0;r=(q=p/10,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=(((p-($imul(r,10)>>>0)>>>0)+48>>>0)<<24>>>24));p=r;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BN.length)?($throwRuntimeError("index out of range"),undefined):BN[c]);if(s>0){t=new $Uint64(0,c);u=(t.$low>>>0)-1>>>0;while(true){if(!((b.$high>t.$high||(b.$high===t.$high&&b.$low>=t.$low)))){break;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((((b.$low>>>0)&u)>>>0)));b=$shiftRightUint64(b,(s));}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}else{v=new $Uint64(0,c);while(true){if(!((b.$high>v.$high||(b.$high===v.$high&&b.$low>=v.$low)))){break;}i=i-(1)>>0;w=$div64(b,v,false);((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((x=$mul64(w,v),new $Uint64(b.$high-x.$high,b.$low-x.$low)).$low>>>0)));b=w;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new DA(h),i));return[f,g];}g=$bytesToString($subslice(new DA(h),i));return[f,g];};BP=function(a,b,c,d){var $ptr,a,b,c,d,e;return $bytesToString(BR($makeSlice(DA,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"))),a,b,c,d));};BR=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h;a=$append(a,c);f=0;while(true){if(!(b.length>0)){break;}g=(b.charCodeAt(0)>>0);f=1;if(g>=128){h=C.DecodeRuneInString(b);g=h[0];f=h[1];}if((f===1)&&(g===65533)){a=$appendSlice(a,"\\x");a=$append(a,"0123456789abcdef".charCodeAt((b.charCodeAt(0)>>>4<<24>>>24)));a=$append(a,"0123456789abcdef".charCodeAt(((b.charCodeAt(0)&15)>>>0)));b=$substring(b,f);continue;}a=BT(a,g,f,c,d,e);b=$substring(b,f);}a=$append(a,c);return a;};BS=function(a,b,c,d,e){var $ptr,a,b,c,d,e;a=$append(a,c);if(!C.ValidRune(b)){b=65533;}a=BT(a,b,C.RuneLen(b),c,d,e);a=$append(a,c);return a;};BT=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k;g=DF.zero();if((b===(d>>0))||(b===92)){a=$append(a,92);a=$append(a,(b<<24>>>24));return a;}if(e){if(b<128&&CN(b)){a=$append(a,(b<<24>>>24));return a;}}else if(CN(b)||f&&CP(b)){h=C.EncodeRune(new DA(g),b);a=$appendSlice(a,$subslice(new DA(g),0,h));return a;}i=b;if(i===(7)){a=$appendSlice(a,"\\a");}else if(i===(8)){a=$appendSlice(a,"\\b");}else if(i===(12)){a=$appendSlice(a,"\\f");}else if(i===(10)){a=$appendSlice(a,"\\n");}else if(i===(13)){a=$appendSlice(a,"\\r");}else if(i===(9)){a=$appendSlice(a,"\\t");}else if(i===(11)){a=$appendSlice(a,"\\v");}else{if(b<32){a=$appendSlice(a,"\\x");a=$append(a,"0123456789abcdef".charCodeAt(((b<<24>>>24)>>>4<<24>>>24)));a=$append(a,"0123456789abcdef".charCodeAt((((b<<24>>>24)&15)>>>0)));}else if(b>1114111){b=65533;a=$appendSlice(a,"\\u");j=12;while(true){if(!(j>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((j>>>0),31))>>0)&15)));j=j-(4)>>0;}}else if(b<65536){a=$appendSlice(a,"\\u");j=12;while(true){if(!(j>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((j>>>0),31))>>0)&15)));j=j-(4)>>0;}}else{a=$appendSlice(a,"\\U");k=28;while(true){if(!(k>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((k>>>0),31))>>0)&15)));k=k-(4)>>0;}}}return a;};BU=function(a){var $ptr,a;return BP(a,34,false,false);};$pkg.Quote=BU;BV=function(a,b){var $ptr,a,b;return BR(a,b,34,false,false);};$pkg.AppendQuote=BV;BW=function(a){var $ptr,a;return BP(a,34,true,false);};$pkg.QuoteToASCII=BW;BX=function(a,b){var $ptr,a,b;return BR(a,b,34,true,false);};$pkg.AppendQuoteToASCII=BX;CB=function(a,b){var $ptr,a,b;return BS(a,b,39,false,false);};$pkg.AppendQuoteRune=CB;CD=function(a,b){var $ptr,a,b;return BS(a,b,39,true,false);};$pkg.AppendQuoteRuneToASCII=CD;CG=function(a){var $ptr,a,b,c,d;while(true){if(!(a.length>0)){break;}b=C.DecodeRuneInString(a);c=b[0];d=b[1];a=$substring(a,d);if(d>1){if(c===65279){return false;}continue;}if(c===65533){return false;}if((c<32&&!((c===9)))||(c===96)||(c===127)){return false;}}return true;};$pkg.CanBackquote=CG;CH=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=false;d=(a>>0);if(48<=d&&d<=57){e=d-48>>0;f=true;b=e;c=f;return[b,c];}else if(97<=d&&d<=102){g=(d-97>>0)+10>>0;h=true;b=g;c=h;return[b,c];}else if(65<=d&&d<=70){i=(d-65>>0)+10>>0;j=true;b=i;c=j;return[b,c];}return[b,c];};CI=function(a,b){var $ptr,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=0;d=false;e="";f=$ifaceNil;g=a.charCodeAt(0);if((g===b)&&((b===39)||(b===34))){f=$pkg.ErrSyntax;return[c,d,e,f];}else if(g>=128){h=C.DecodeRuneInString(a);i=h[0];j=h[1];k=i;l=true;m=$substring(a,j);n=$ifaceNil;c=k;d=l;e=m;f=n;return[c,d,e,f];}else if(!((g===92))){o=(a.charCodeAt(0)>>0);p=false;q=$substring(a,1);r=$ifaceNil;c=o;d=p;e=q;f=r;return[c,d,e,f];}if(a.length<=1){f=$pkg.ErrSyntax;return[c,d,e,f];}s=a.charCodeAt(1);a=$substring(a,2);switch(0){default:t=s;if(t===(97)){c=7;}else if(t===(98)){c=8;}else if(t===(102)){c=12;}else if(t===(110)){c=10;}else if(t===(114)){c=13;}else if(t===(116)){c=9;}else if(t===(118)){c=11;}else if((t===(120))||(t===(117))||(t===(85))){u=0;v=s;if(v===(120)){u=2;}else if(v===(117)){u=4;}else if(v===(85)){u=8;}w=0;if(a.length<u){f=$pkg.ErrSyntax;return[c,d,e,f];}x=0;while(true){if(!(x<u)){break;}y=CH(a.charCodeAt(x));z=y[0];aa=y[1];if(!aa){f=$pkg.ErrSyntax;return[c,d,e,f];}w=(w<<4>>0)|z;x=x+(1)>>0;}a=$substring(a,u);if(s===120){c=w;break;}if(w>1114111){f=$pkg.ErrSyntax;return[c,d,e,f];}c=w;d=true;}else if((t===(48))||(t===(49))||(t===(50))||(t===(51))||(t===(52))||(t===(53))||(t===(54))||(t===(55))){ab=(s>>0)-48>>0;if(a.length<2){f=$pkg.ErrSyntax;return[c,d,e,f];}ac=0;while(true){if(!(ac<2)){break;}ad=(a.charCodeAt(ac)>>0)-48>>0;if(ad<0||ad>7){f=$pkg.ErrSyntax;return[c,d,e,f];}ab=((ab<<3>>0))|ad;ac=ac+(1)>>0;}a=$substring(a,2);if(ab>255){f=$pkg.ErrSyntax;return[c,d,e,f];}c=ab;}else if(t===(92)){c=92;}else if((t===(39))||(t===(34))){if(!((s===b))){f=$pkg.ErrSyntax;return[c,d,e,f];}c=(s>>0);}else{f=$pkg.ErrSyntax;return[c,d,e,f];}}e=a;return[c,d,e,f];};$pkg.UnquoteChar=CI;CJ=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;b=a.length;if(b<2){return["",$pkg.ErrSyntax];}c=a.charCodeAt(0);if(!((c===a.charCodeAt((b-1>>0))))){return["",$pkg.ErrSyntax];}a=$substring(a,1,(b-1>>0));if(c===96){if(CK(a,96)){return["",$pkg.ErrSyntax];}if(CK(a,13)){d=$makeSlice(DA,0,(a.length-1>>0));e=0;while(true){if(!(e<a.length)){break;}if(!((a.charCodeAt(e)===13))){d=$append(d,a.charCodeAt(e));}e=e+(1)>>0;}return[$bytesToString(d),$ifaceNil];}return[a,$ifaceNil];}if(!((c===34))&&!((c===39))){return["",$pkg.ErrSyntax];}if(CK(a,10)){return["",$pkg.ErrSyntax];}if(!CK(a,92)&&!CK(a,c)){f=c;if(f===(34)){return[a,$ifaceNil];}else if(f===(39)){g=C.DecodeRuneInString(a);h=g[0];i=g[1];if((i===a.length)&&(!((h===65533))||!((i===1)))){return[a,$ifaceNil];}}}j=DF.zero();l=$makeSlice(DA,0,(k=($imul(3,a.length))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}m=CI(a,c);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){return["",q];}a=p;if(n<128||!o){l=$append(l,(n<<24>>>24));}else{r=C.EncodeRune(new DA(j),n);l=$appendSlice(l,$subslice(new DA(j),0,r));}if((c===39)&&!((a.length===0))){return["",$pkg.ErrSyntax];}}return[$bytesToString(l),$ifaceNil];};$pkg.Unquote=CJ;CK=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c<a.length)){break;}if(a.charCodeAt(c)===b){return true;}c=c+(1)>>0;}return false;};CL=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=0;d=a.$length;e=c;f=d;while(true){if(!(e<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;if(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h])<b){e=h+1>>0;}else{f=h;}}return e;};CM=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=0;d=a.$length;e=c;f=d;while(true){if(!(e<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;if(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h])<b){e=h+1>>0;}else{f=h;}}return e;};CN=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;if(a<=255){if(32<=a&&a<=126){return true;}if(161<=a&&a<=255){return!((a===173));}return false;}if(0<=a&&a<65536){b=(a<<16>>>16);c=BD;d=BE;e=b;f=c;g=d;h=CL(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]))<e){return false;}k=CL(g,e);return k>=g.$length||!((((k<0||k>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CM(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+t]))<o){return false;}if(a>=131072){return true;}a=a-(65536)>>0;u=CL(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CN;CP=function(a){var $ptr,a,b,c;if(a>65535){return false;}b=(a<<16>>>16);c=CL(BH,b);return c<BH.$length&&(b===((c<0||c>=BH.$length)?($throwRuntimeError("index out of range"),undefined):BH.$array[BH.$offset+c]));};CZ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([DD],[$Uint64,$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Assign",name:"Assign",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"Shift",name:"Shift",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundDown",name:"RoundDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundUp",name:"RoundUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundedInteger",name:"RoundedInteger",pkg:"",typ:$funcType([],[$Uint64],false)}];DI.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([DD],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,DD],[AH,AH],false)},{prop:"Normalize",name:"Normalize",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Multiply",name:"Multiply",pkg:"",typ:$funcType([AH],[],false)},{prop:"AssignDecimal",name:"AssignDecimal",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,$Bool,DD],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([DH,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([DH,DI,DI],[$Bool],false)}];S.init("",[{prop:"Func",name:"Func",exported:true,typ:$String,tag:""},{prop:"Num",name:"Num",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);Y.init("strconv",[{prop:"d",name:"d",exported:false,typ:CY,tag:""},{prop:"nd",name:"nd",exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""},{prop:"trunc",name:"trunc",exported:false,typ:$Bool,tag:""}]);AC.init("strconv",[{prop:"delta",name:"delta",exported:false,typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",exported:false,typ:$String,tag:""}]);AH.init("strconv",[{prop:"mant",name:"mant",exported:false,typ:$Uint64,tag:""},{prop:"exp",name:"exp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""}]);AO.init("strconv",[{prop:"mantbits",name:"mantbits",exported:false,typ:$Uint,tag:""},{prop:"expbits",name:"expbits",exported:false,typ:$Uint,tag:""},{prop:"bias",name:"bias",exported:false,typ:$Int,tag:""}]);AX.init("strconv",[{prop:"d",name:"d",exported:false,typ:DA,tag:""},{prop:"nd",name:"nd",exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;K=new CS([1,3,6,9,13,16,19,23,26]);L=new CT([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10,1e+11,1e+12,1e+13,1e+14,1e+15,1e+16,1e+17,1e+18,1e+19,1e+20,1e+21,1e+22]);M=new CU([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10]);$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CV([new AC.ptr(0,""),new AC.ptr(1,"5"),new AC.ptr(1,"25"),new AC.ptr(1,"125"),new AC.ptr(2,"625"),new AC.ptr(2,"3125"),new AC.ptr(2,"15625"),new AC.ptr(3,"78125"),new AC.ptr(3,"390625"),new AC.ptr(3,"1953125"),new AC.ptr(4,"9765625"),new AC.ptr(4,"48828125"),new AC.ptr(4,"244140625"),new AC.ptr(4,"1220703125"),new AC.ptr(5,"6103515625"),new AC.ptr(5,"30517578125"),new AC.ptr(5,"152587890625"),new AC.ptr(6,"762939453125"),new AC.ptr(6,"3814697265625"),new AC.ptr(6,"19073486328125"),new AC.ptr(7,"95367431640625"),new AC.ptr(7,"476837158203125"),new AC.ptr(7,"2384185791015625"),new AC.ptr(7,"11920928955078125"),new AC.ptr(8,"59604644775390625"),new AC.ptr(8,"298023223876953125"),new AC.ptr(8,"1490116119384765625"),new AC.ptr(9,"7450580596923828125"),new AC.ptr(9,"37252902984619140625"),new AC.ptr(9,"186264514923095703125"),new AC.ptr(10,"931322574615478515625"),new AC.ptr(10,"4656612873077392578125"),new AC.ptr(10,"23283064365386962890625"),new AC.ptr(10,"116415321826934814453125"),new AC.ptr(11,"582076609134674072265625"),new AC.ptr(11,"2910383045673370361328125"),new AC.ptr(11,"14551915228366851806640625"),new AC.ptr(12,"72759576141834259033203125"),new AC.ptr(12,"363797880709171295166015625"),new AC.ptr(12,"1818989403545856475830078125"),new AC.ptr(13,"9094947017729282379150390625"),new AC.ptr(13,"45474735088646411895751953125"),new AC.ptr(13,"227373675443232059478759765625"),new AC.ptr(13,"1136868377216160297393798828125"),new AC.ptr(14,"5684341886080801486968994140625"),new AC.ptr(14,"28421709430404007434844970703125"),new AC.ptr(14,"142108547152020037174224853515625"),new AC.ptr(15,"710542735760100185871124267578125"),new AC.ptr(15,"3552713678800500929355621337890625"),new AC.ptr(15,"17763568394002504646778106689453125"),new AC.ptr(16,"88817841970012523233890533447265625"),new AC.ptr(16,"444089209850062616169452667236328125"),new AC.ptr(16,"2220446049250313080847263336181640625"),new AC.ptr(16,"11102230246251565404236316680908203125"),new AC.ptr(17,"55511151231257827021181583404541015625"),new AC.ptr(17,"277555756156289135105907917022705078125"),new AC.ptr(17,"1387778780781445675529539585113525390625"),new AC.ptr(18,"6938893903907228377647697925567626953125"),new AC.ptr(18,"34694469519536141888238489627838134765625"),new AC.ptr(18,"173472347597680709441192448139190673828125"),new AC.ptr(19,"867361737988403547205962240695953369140625")]);AI=$toNativeArray($kindStruct,[new AH.ptr(new $Uint64(2147483648,0),-63,false),new AH.ptr(new $Uint64(2684354560,0),-60,false),new AH.ptr(new $Uint64(3355443200,0),-57,false),new AH.ptr(new $Uint64(4194304000,0),-54,false),new AH.ptr(new $Uint64(2621440000,0),-50,false),new AH.ptr(new $Uint64(3276800000,0),-47,false),new AH.ptr(new $Uint64(4096000000,0),-44,false),new AH.ptr(new $Uint64(2560000000,0),-40,false)]);AJ=$toNativeArray($kindStruct,[new AH.ptr(new $Uint64(4203730336,136053384),-1220,false),new AH.ptr(new $Uint64(3132023167,2722021238),-1193,false),new AH.ptr(new $Uint64(2333539104,810921078),-1166,false),new AH.ptr(new $Uint64(3477244234,1573795306),-1140,false),new AH.ptr(new $Uint64(2590748842,1432697645),-1113,false),new AH.ptr(new $Uint64(3860516611,1025131999),-1087,false),new AH.ptr(new $Uint64(2876309015,3348809418),-1060,false),new AH.ptr(new $Uint64(4286034428,3200048207),-1034,false),new AH.ptr(new $Uint64(3193344495,1097586188),-1007,false),new AH.ptr(new $Uint64(2379227053,2424306748),-980,false),new AH.ptr(new $Uint64(3545324584,827693699),-954,false),new AH.ptr(new $Uint64(2641472655,2913388981),-927,false),new AH.ptr(new $Uint64(3936100983,602835915),-901,false),new AH.ptr(new $Uint64(2932623761,1081627501),-874,false),new AH.ptr(new $Uint64(2184974969,1572261463),-847,false),new AH.ptr(new $Uint64(3255866422,1308317239),-821,false),new AH.ptr(new $Uint64(2425809519,944281679),-794,false),new AH.ptr(new $Uint64(3614737867,629291719),-768,false),new AH.ptr(new $Uint64(2693189581,2545915892),-741,false),new AH.ptr(new $Uint64(4013165208,388672741),-715,false),new AH.ptr(new $Uint64(2990041083,708162190),-688,false),new AH.ptr(new $Uint64(2227754207,3536207675),-661,false),new AH.ptr(new $Uint64(3319612455,450088378),-635,false),new AH.ptr(new $Uint64(2473304014,3139815830),-608,false),new AH.ptr(new $Uint64(3685510180,2103616900),-582,false),new AH.ptr(new $Uint64(2745919064,224385782),-555,false),new AH.ptr(new $Uint64(4091738259,3737383206),-529,false),new AH.ptr(new $Uint64(3048582568,2868871352),-502,false),new AH.ptr(new $Uint64(2271371013,1820084875),-475,false),new AH.ptr(new $Uint64(3384606560,885076051),-449,false),new AH.ptr(new $Uint64(2521728396,2444895829),-422,false),new AH.ptr(new $Uint64(3757668132,1881767613),-396,false),new AH.ptr(new $Uint64(2799680927,3102062735),-369,false),new AH.ptr(new $Uint64(4171849679,2289335700),-343,false),new AH.ptr(new $Uint64(3108270227,2410191823),-316,false),new AH.ptr(new $Uint64(2315841784,3205436779),-289,false),new AH.ptr(new $Uint64(3450873173,1697722806),-263,false),new AH.ptr(new $Uint64(2571100870,3497754540),-236,false),new AH.ptr(new $Uint64(3831238852,707476230),-210,false),new AH.ptr(new $Uint64(2854495385,1769181907),-183,false),new AH.ptr(new $Uint64(4253529586,2197867022),-157,false),new AH.ptr(new $Uint64(3169126500,2450594539),-130,false),new AH.ptr(new $Uint64(2361183241,1867548876),-103,false),new AH.ptr(new $Uint64(3518437208,3793315116),-77,false),new AH.ptr(new $Uint64(2621440000,0),-50,false),new AH.ptr(new $Uint64(3906250000,0),-24,false),new AH.ptr(new $Uint64(2910383045,2892103680),3,false),new AH.ptr(new $Uint64(2168404344,4170451332),30,false),new AH.ptr(new $Uint64(3231174267,3372684723),56,false),new AH.ptr(new $Uint64(2407412430,2078956656),83,false),new AH.ptr(new $Uint64(3587324068,2884206696),109,false),new AH.ptr(new $Uint64(2672764710,395977285),136,false),new AH.ptr(new $Uint64(3982729777,3569679143),162,false),new AH.ptr(new $Uint64(2967364920,2361961896),189,false),new AH.ptr(new $Uint64(2210859150,447440347),216,false),new AH.ptr(new $Uint64(3294436857,1114709402),242,false),new AH.ptr(new $Uint64(2454546732,2786846552),269,false),new AH.ptr(new $Uint64(3657559652,443583978),295,false),new AH.ptr(new $Uint64(2725094297,2599384906),322,false),new AH.ptr(new $Uint64(4060706939,3028118405),348,false),new AH.ptr(new $Uint64(3025462433,2044532855),375,false),new AH.ptr(new $Uint64(2254145170,1536935362),402,false),new AH.ptr(new $Uint64(3358938053,3365297469),428,false),new AH.ptr(new $Uint64(2502603868,4204241075),455,false),new AH.ptr(new $Uint64(3729170365,2577424355),481,false),new AH.ptr(new $Uint64(2778448436,3677981733),508,false),new AH.ptr(new $Uint64(4140210802,2744688476),534,false),new AH.ptr(new $Uint64(3084697427,1424604878),561,false),new AH.ptr(new $Uint64(2298278679,4062331362),588,false),new AH.ptr(new $Uint64(3424702107,3546052773),614,false),new AH.ptr(new $Uint64(2551601907,2065781727),641,false),new AH.ptr(new $Uint64(3802183132,2535403578),667,false),new AH.ptr(new $Uint64(2832847187,1558426518),694,false),new AH.ptr(new $Uint64(4221271257,2762425404),720,false),new AH.ptr(new $Uint64(3145092172,2812560400),747,false),new AH.ptr(new $Uint64(2343276271,3057687578),774,false),new AH.ptr(new $Uint64(3491753744,2790753324),800,false),new AH.ptr(new $Uint64(2601559269,3918606633),827,false),new AH.ptr(new $Uint64(3876625403,2711358621),853,false),new AH.ptr(new $Uint64(2888311001,1648096297),880,false),new AH.ptr(new $Uint64(2151959390,2057817989),907,false),new AH.ptr(new $Uint64(3206669376,61660461),933,false),new AH.ptr(new $Uint64(2389154863,1581580175),960,false),new AH.ptr(new $Uint64(3560118173,2626467905),986,false),new AH.ptr(new $Uint64(2652494738,3034782633),1013,false),new AH.ptr(new $Uint64(3952525166,3135207385),1039,false),new AH.ptr(new $Uint64(2944860731,2616258155),1066,false)]);AK=$toNativeArray($kindUint64,[new $Uint64(0,1),new $Uint64(0,10),new $Uint64(0,100),new $Uint64(0,1000),new $Uint64(0,10000),new $Uint64(0,100000),new $Uint64(0,1000000),new $Uint64(0,10000000),new $Uint64(0,100000000),new $Uint64(0,1000000000),new $Uint64(2,1410065408),new $Uint64(23,1215752192),new $Uint64(232,3567587328),new $Uint64(2328,1316134912),new $Uint64(23283,276447232),new $Uint64(232830,2764472320),new $Uint64(2328306,1874919424),new $Uint64(23283064,1569325056),new $Uint64(232830643,2808348672),new $Uint64(2328306436,2313682944)]);AP=new AO.ptr(23,8,-127);AQ=new AO.ptr(52,11,-1023);BD=new CW([32,126,161,887,890,895,900,1366,1369,1418,1421,1479,1488,1514,1520,1524,1542,1563,1566,1805,1808,1866,1869,1969,1984,2042,2048,2093,2096,2139,2142,2142,2208,2237,2260,2444,2447,2448,2451,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2531,2534,2555,2561,2570,2575,2576,2579,2617,2620,2626,2631,2632,2635,2637,2641,2641,2649,2654,2662,2677,2689,2745,2748,2765,2768,2768,2784,2787,2790,2801,2809,2809,2817,2828,2831,2832,2835,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2915,2918,2935,2946,2954,2958,2965,2969,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3021,3024,3024,3031,3031,3046,3066,3072,3129,3133,3149,3157,3162,3168,3171,3174,3183,3192,3257,3260,3277,3285,3286,3294,3299,3302,3314,3329,3386,3389,3407,3412,3427,3430,3455,3458,3478,3482,3517,3520,3526,3530,3530,3535,3551,3558,3567,3570,3572,3585,3642,3647,3675,3713,3716,3719,3722,3725,3725,3732,3751,3754,3773,3776,3789,3792,3801,3804,3807,3840,3948,3953,4058,4096,4295,4301,4301,4304,4685,4688,4701,4704,4749,4752,4789,4792,4805,4808,4885,4888,4954,4957,4988,4992,5017,5024,5109,5112,5117,5120,5788,5792,5880,5888,5908,5920,5942,5952,5971,5984,6003,6016,6109,6112,6121,6128,6137,6144,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6443,6448,6459,6464,6464,6468,6509,6512,6516,6528,6571,6576,6601,6608,6618,6622,6683,6686,6780,6783,6793,6800,6809,6816,6829,6832,6846,6912,6987,6992,7036,7040,7155,7164,7223,7227,7241,7245,7304,7360,7367,7376,7417,7424,7669,7675,7957,7960,7965,7968,8005,8008,8013,8016,8061,8064,8147,8150,8175,8178,8190,8208,8231,8240,8286,8304,8305,8308,8348,8352,8382,8400,8432,8448,8587,8592,9254,9280,9290,9312,11123,11126,11157,11160,11193,11197,11217,11244,11247,11264,11507,11513,11559,11565,11565,11568,11623,11631,11632,11647,11670,11680,11844,11904,12019,12032,12245,12272,12283,12289,12438,12441,12543,12549,12589,12593,12730,12736,12771,12784,19893,19904,40917,40960,42124,42128,42182,42192,42539,42560,42743,42752,42935,42999,43051,43056,43065,43072,43127,43136,43205,43214,43225,43232,43261,43264,43347,43359,43388,43392,43481,43486,43574,43584,43597,43600,43609,43612,43714,43739,43766,43777,43782,43785,43790,43793,43798,43808,43877,43888,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64449,64467,64831,64848,64911,64914,64967,65008,65021,65024,65049,65056,65131,65136,65276,65281,65470,65474,65479,65482,65487,65490,65495,65498,65500,65504,65518,65532,65533]);BE=new CW([173,907,909,930,1328,1376,1416,1424,1757,2111,2229,2274,2436,2473,2481,2526,2564,2601,2609,2612,2615,2621,2653,2692,2702,2706,2729,2737,2740,2758,2762,2820,2857,2865,2868,2910,2948,2961,2971,2973,3017,3076,3085,3089,3113,3141,3145,3159,3204,3213,3217,3241,3252,3269,3273,3295,3312,3332,3341,3345,3397,3401,3460,3506,3516,3541,3543,3715,3721,3736,3744,3748,3750,3756,3770,3781,3783,3912,3992,4029,4045,4294,4681,4695,4697,4745,4785,4799,4801,4823,4881,5760,5901,5997,6001,6431,6751,7415,8024,8026,8028,8030,8117,8133,8156,8181,8335,9215,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,42927,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CX([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65947,65952,65952,66000,66045,66176,66204,66208,66256,66272,66299,66304,66339,66352,66378,66384,66426,66432,66499,66504,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66927,66927,67072,67382,67392,67413,67424,67431,67584,67589,67592,67640,67644,67644,67647,67742,67751,67759,67808,67829,67835,67867,67871,67897,67903,67903,67968,68023,68028,68047,68050,68102,68108,68147,68152,68154,68159,68167,68176,68184,68192,68255,68288,68326,68331,68342,68352,68405,68409,68437,68440,68466,68472,68497,68505,68508,68521,68527,68608,68680,68736,68786,68800,68850,68858,68863,69216,69246,69632,69709,69714,69743,69759,69825,69840,69864,69872,69881,69888,69955,69968,70006,70016,70093,70096,70132,70144,70206,70272,70313,70320,70378,70384,70393,70400,70412,70415,70416,70419,70457,70460,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70749,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71264,71276,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,72704,72773,72784,72812,72816,72847,72850,72886,73728,74649,74752,74868,74880,75075,77824,78894,82944,83526,92160,92728,92736,92777,92782,92783,92880,92909,92912,92917,92928,92997,93008,93047,93053,93071,93952,94020,94032,94078,94095,94111,94176,94176,94208,100332,100352,101106,110592,110593,113664,113770,113776,113788,113792,113800,113808,113817,113820,113823,118784,119029,119040,119078,119081,119154,119163,119272,119296,119365,119552,119638,119648,119665,119808,119967,119970,119970,119973,119974,119977,120074,120077,120134,120138,120485,120488,120779,120782,121483,121499,121519,122880,122904,122907,122922,124928,125124,125127,125142,125184,125258,125264,125273,125278,125279,126464,126500,126503,126523,126530,126530,126535,126548,126551,126564,126567,126619,126625,126651,126704,126705,126976,127019,127024,127123,127136,127150,127153,127221,127232,127244,127248,127339,127344,127404,127462,127490,127504,127547,127552,127560,127568,127569,127744,128722,128736,128748,128752,128758,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129319,129328,129328,129331,129355,129360,129374,129408,129425,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CW([12,39,59,62,399,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,5210,5212,7177,7223,7336,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,57351,57378,57381,60932,60960,60963,60968,60979,60984,60986,61000,61002,61004,61008,61011,61016,61018,61020,61022,61024,61027,61035,61043,61048,61053,61055,61066,61092,61098,61632,61648,61743,63775,63807]);BH=new CW([160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288]);BN=$toNativeArray($kindUint,[0,0,1,0,2,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["reflect"]=(function(){var $pkg={},$init,A,C,F,D,B,E,L,N,O,P,AU,BY,BZ,CA,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CP,CY,CZ,DA,DE,DF,DG,EZ,FA,FD,HM,HN,HO,HP,HQ,HR,IG,IH,II,IJ,IK,IL,IM,IN,IO,IP,IQ,IR,IS,IT,IU,IX,IY,IZ,JA,JB,JC,JN,JP,JQ,JS,JT,JU,KB,KC,G,M,Q,S,U,BG,BH,BL,CQ,DB,FM,H,I,J,K,R,T,V,W,X,Y,Z,AA,AB,AC,AF,AH,AI,AJ,AK,AM,AP,AQ,AR,AS,AT,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BI,BJ,BK,BM,BN,DI,DK,DL,DM,DN,ER,EW,FN,FS,FU,FV,GD,GE,GF,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HB,HC;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];L=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType",true,"reflect",false,function(pkgPath_,mcount_,_$2_,moff_,_$4_,_methods_){this.$val=this;if(arguments.length===0){this.pkgPath=0;this.mcount=0;this._$2=0;this.moff=0;this._$4=0;this._methods=HP.nil;return;}this.pkgPath=pkgPath_;this.mcount=mcount_;this._$2=_$2_;this.moff=moff_;this._$4=_$4_;this._methods=_methods_;});N=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType",true,"reflect",false,function(rtype_,inCount_,outCount_,_in_,_out_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.inCount=0;this.outCount=0;this._in=HO.nil;this._out=HO.nil;return;}this.rtype=rtype_;this.inCount=inCount_;this.outCount=outCount_;this._in=_in_;this._out=_out_;});O=$pkg.name=$newType(0,$kindStruct,"reflect.name",true,"reflect",false,function(bytes_){this.$val=this;if(arguments.length===0){this.bytes=IL.nil;return;}this.bytes=bytes_;});P=$pkg.nameData=$newType(0,$kindStruct,"reflect.nameData",true,"reflect",false,function(name_,tag_,pkgPath_,exported_){this.$val=this;if(arguments.length===0){this.name="";this.tag="";this.pkgPath="";this.exported=false;return;}this.name=name_;this.tag=tag_;this.pkgPath=pkgPath_;this.exported=exported_;});AU=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter",true,"reflect",false,function(t_,m_,keys_,i_){this.$val=this;if(arguments.length===0){this.t=$ifaceNil;this.m=null;this.keys=null;this.i=0;return;}this.t=t_;this.m=m_;this.keys=keys_;this.i=i_;});BY=$pkg.Type=$newType(8,$kindInterface,"reflect.Type",true,"reflect",true,null);BZ=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind",true,"reflect",true,null);CA=$pkg.tflag=$newType(1,$kindUint8,"reflect.tflag",true,"reflect",false,null);CB=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype",true,"reflect",false,function(size_,ptrdata_,hash_,tflag_,align_,fieldAlign_,kind_,alg_,gcdata_,str_,ptrToThis_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this.tflag=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=IK.nil;this.gcdata=IL.nil;this.str=0;this.ptrToThis=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this.tflag=tflag_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.str=str_;this.ptrToThis=ptrToThis_;});CC=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg",true,"reflect",false,function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});CD=$pkg.method=$newType(0,$kindStruct,"reflect.method",true,"reflect",false,function(name_,mtyp_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=0;this.mtyp=0;this.ifn=0;this.tfn=0;return;}this.name=name_;this.mtyp=mtyp_;this.ifn=ifn_;this.tfn=tfn_;});CE=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir",true,"reflect",true,null);CF=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType",true,"reflect",false,function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;this.slice=HN.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});CG=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType",true,"reflect",false,function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});CH=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod",true,"reflect",false,function(name_,typ_){this.$val=this;if(arguments.length===0){this.name=0;this.typ=0;return;}this.name=name_;this.typ=typ_;});CI=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType",true,"reflect",false,function(rtype_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.pkgPath=new O.ptr(IL.nil);this.methods=IM.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.methods=methods_;});CJ=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType",true,"reflect",false,function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_,needkeyupdate_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.key=HN.nil;this.elem=HN.nil;this.bucket=HN.nil;this.hmap=HN.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=false;this.needkeyupdate=false;return;}this.rtype=rtype_;this.key=key_;this.elem=elem_;this.bucket=bucket_;this.hmap=hmap_;this.keysize=keysize_;this.indirectkey=indirectkey_;this.valuesize=valuesize_;this.indirectvalue=indirectvalue_;this.bucketsize=bucketsize_;this.reflexivekey=reflexivekey_;this.needkeyupdate=needkeyupdate_;});CK=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;return;}this.rtype=rtype_;this.elem=elem_;});CL=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;return;}this.rtype=rtype_;this.elem=elem_;});CM=$pkg.structField=$newType(0,$kindStruct,"reflect.structField",true,"reflect",false,function(name_,typ_,offset_){this.$val=this;if(arguments.length===0){this.name=new O.ptr(IL.nil);this.typ=HN.nil;this.offset=0;return;}this.name=name_;this.typ=typ_;this.offset=offset_;});CN=$pkg.structType=$newType(0,$kindStruct,"reflect.structType",true,"reflect",false,function(rtype_,pkgPath_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.pkgPath=new O.ptr(IL.nil);this.fields=IN.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.fields=fields_;});CP=$pkg.Method=$newType(0,$kindStruct,"reflect.Method",true,"reflect",true,function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new EZ.ptr(HN.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CY=$pkg.nameOff=$newType(4,$kindInt32,"reflect.nameOff",true,"reflect",false,null);CZ=$pkg.typeOff=$newType(4,$kindInt32,"reflect.typeOff",true,"reflect",false,null);DA=$pkg.textOff=$newType(4,$kindInt32,"reflect.textOff",true,"reflect",false,null);DE=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField",true,"reflect",true,function(Name_,PkgPath_,Type_,Tag_,Offset_,Index_,Anonymous_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Tag="";this.Offset=0;this.Index=IZ.nil;this.Anonymous=false;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Tag=Tag_;this.Offset=Offset_;this.Index=Index_;this.Anonymous=Anonymous_;});DF=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag",true,"reflect",true,null);DG=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan",true,"reflect",false,function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=JB.nil;this.index=IZ.nil;return;}this.typ=typ_;this.index=index_;});EZ=$pkg.Value=$newType(0,$kindStruct,"reflect.Value",true,"reflect",true,function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=HN.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});FA=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag",true,"reflect",false,null);FD=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError",true,"reflect",true,function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});HM=$sliceType(O);HN=$ptrType(CB);HO=$sliceType(HN);HP=$sliceType(CD);HQ=$mapType(HN,HP);HR=$structType("reflect",[{prop:"RWMutex",name:"",exported:true,typ:E.RWMutex,tag:""},{prop:"m",name:"m",exported:false,typ:HQ,tag:""}]);IG=$sliceType($emptyInterface);IH=$ptrType(C.Object);II=$funcType([IG],[IH],true);IJ=$sliceType($String);IK=$ptrType(CC);IL=$ptrType($Uint8);IM=$sliceType(CH);IN=$sliceType(CM);IO=$ptrType(L);IP=$ptrType(P);IQ=$structType("reflect",[{prop:"str",name:"str",exported:false,typ:$String,tag:""}]);IR=$sliceType(IH);IS=$sliceType(EZ);IT=$sliceType(BY);IU=$sliceType(IR);IX=$ptrType(CI);IY=$ptrType(CH);IZ=$sliceType($Int);JA=$sliceType(DG);JB=$ptrType(CN);JC=$sliceType($Uint8);JN=$ptrType($UnsafePointer);JP=$sliceType($Int32);JQ=$ptrType(N);JS=$funcType([$String],[$Bool],false);JT=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);JU=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);KB=$arrayType($Uintptr,2);KC=$ptrType(FD);H=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=(function(am){var $ptr,am;});$r=am((an=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new an.constructor.elem(an)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ao=new L.ptr(0,0,0,0,0,HP.nil),new ao.constructor.elem(ao)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ap=new CD.ptr(0,0,0,0),new ap.constructor.elem(ap)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((aq=new CF.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,HN.nil,0),new aq.constructor.elem(aq)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ar=new CG.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,0),new ar.constructor.elem(ar)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((as=new N.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),0,0,HO.nil,HO.nil),new as.constructor.elem(as)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((at=new CI.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new O.ptr(IL.nil),IM.nil),new at.constructor.elem(at)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((au=new CJ.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,HN.nil,HN.nil,HN.nil,0,0,0,0,0,false,false),new au.constructor.elem(au)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((av=new CK.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil),new av.constructor.elem(av)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((aw=new CL.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil),new aw.constructor.elem(aw)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ax=new CN.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new O.ptr(IL.nil),IN.nil),new ax.constructor.elem(ax)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ay=new CH.ptr(0,0),new ay.constructor.elem(ay)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((az=new CM.ptr(new O.ptr(IL.nil),HN.nil,0),new az.constructor.elem(az)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;FM=$assertType(AB(new $Uint8(0)),HN);$s=-1;return;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};I=function(am){var $ptr,am;return am.jsType;};J=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu;if(am.reflectType===undefined){an=new CB.ptr((($parseInt(am.size)>>0)>>>0),0,0,0,0,0,(($parseInt(am.kind)>>0)<<24>>>24),IK.nil,IL.nil,T($clone(R(W(am.string),"","",!!(am.exported)),O)),0);an.jsType=am;am.reflectType=an;ao=$methodSet(am);if(!(($parseInt(ao.length)===0))||!!(am.named)){an.tflag=(an.tflag|(1))>>>0;if(!!(am.named)){an.tflag=(an.tflag|(4))>>>0;}ap=$makeSlice(HP,$parseInt(ao.length));aq=ap;ar=0;while(true){if(!(ar<aq.$length)){break;}as=ar;at=ao[as];CD.copy(((as<0||as>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+as]),new CD.ptr(T($clone(R(W(at.name),"","",W(at.pkg)===""),O)),V(J(at.typ)),0,0));ar++;}au=new L.ptr(T($clone(R(W(am.pkg),"","",false),O)),($parseInt(ao.length)<<16>>>16),0,0,0,ap);av=an;(M||$throwRuntimeError("assignment to entry in nil map"))[HN.keyFor(av)]={k:av,v:au};au.jsType=am;}aw=an.Kind();if(aw===(17)){K(an,new CF.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem),HN.nil,(($parseInt(am.len)>>0)>>>0)));}else if(aw===(18)){ax=3;if(!!(am.sendOnly)){ax=2;}if(!!(am.recvOnly)){ax=1;}K(an,new CG.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem),(ax>>>0)));}else if(aw===(19)){ay=am.params;az=$makeSlice(HO,$parseInt(ay.length));ba=az;bb=0;while(true){if(!(bb<ba.$length)){break;}bc=bb;((bc<0||bc>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+bc]=J(ay[bc]));bb++;}bd=am.results;be=$makeSlice(HO,$parseInt(bd.length));bf=be;bg=0;while(true){if(!(bg<bf.$length)){break;}bh=bg;((bh<0||bh>=be.$length)?($throwRuntimeError("index out of range"),undefined):be.$array[be.$offset+bh]=J(bd[bh]));bg++;}bi=($parseInt(bd.length)<<16>>>16);if(!!(am.variadic)){bi=(bi|(32768))>>>0;}K(an,new N.ptr($clone(an,CB),($parseInt(ay.length)<<16>>>16),bi,az,be));}else if(aw===(20)){bj=am.methods;bk=$makeSlice(IM,$parseInt(bj.length));bl=bk;bm=0;while(true){if(!(bm<bl.$length)){break;}bn=bm;bo=bj[bn];CH.copy(((bn<0||bn>=bk.$length)?($throwRuntimeError("index out of range"),undefined):bk.$array[bk.$offset+bn]),new CH.ptr(T($clone(R(W(bo.name),"","",W(bo.pkg)===""),O)),V(J(bo.typ))));bm++;}K(an,new CI.ptr($clone(an,CB),new O.ptr(IL.nil),bk));}else if(aw===(21)){K(an,new CJ.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.key),J(am.elem),HN.nil,HN.nil,0,0,0,0,0,false,false));}else if(aw===(22)){K(an,new CK.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem)));}else if(aw===(23)){K(an,new CL.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem)));}else if(aw===(25)){bp=am.fields;bq=$makeSlice(IN,$parseInt(bp.length));br=bq;bs=0;while(true){if(!(bs<br.$length)){break;}bt=bs;bu=bp[bt];CM.copy(((bt<0||bt>=bq.$length)?($throwRuntimeError("index out of range"),undefined):bq.$array[bq.$offset+bt]),new CM.ptr($clone(R(W(bu.name),W(bu.tag),"",!!(bu.exported)),O),J(bu.typ),(bt>>>0)));bs++;}K(an,new CN.ptr($clone(an,CB),$clone(R(W(am.pkgPath),"","",false),O),bq));}}return am.reflectType;};K=function(am,an){var $ptr,am,an;am.kindType=an;an.rtype=am;};L.ptr.prototype.methods=function(){var $ptr,am;am=this;return am._methods;};L.prototype.methods=function(){return this.$val.methods();};CB.ptr.prototype.uncommon=function(){var $ptr,am,an;am=this;return(an=M[HN.keyFor(am)],an!==undefined?an.v:IO.nil);};CB.prototype.uncommon=function(){return this.$val.uncommon();};N.ptr.prototype.in$=function(){var $ptr,am;am=this;return am._in;};N.prototype.in$=function(){return this.$val.in$();};N.ptr.prototype.out=function(){var $ptr,am;am=this;return am._out;};N.prototype.out=function(){return this.$val.out();};O.ptr.prototype.name=function(){var $ptr,am,an,ao;am="";an=this;am=(ao=Q[IL.keyFor(an.bytes)],ao!==undefined?ao.v:IP.nil).name;return am;};O.prototype.name=function(){return this.$val.name();};O.ptr.prototype.tag=function(){var $ptr,am,an,ao;am="";an=this;am=(ao=Q[IL.keyFor(an.bytes)],ao!==undefined?ao.v:IP.nil).tag;return am;};O.prototype.tag=function(){return this.$val.tag();};O.ptr.prototype.pkgPath=function(){var $ptr,am,an;am=this;return(an=Q[IL.keyFor(am.bytes)],an!==undefined?an.v:IP.nil).pkgPath;};O.prototype.pkgPath=function(){return this.$val.pkgPath();};O.ptr.prototype.isExported=function(){var $ptr,am,an;am=this;return(an=Q[IL.keyFor(am.bytes)],an!==undefined?an.v:IP.nil).exported;};O.prototype.isExported=function(){return this.$val.isExported();};R=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar;aq=$newDataPointer(0,IL);ar=aq;(Q||$throwRuntimeError("assignment to entry in nil map"))[IL.keyFor(ar)]={k:ar,v:new P.ptr(am,an,ao,ap)};return new O.ptr(aq);};CB.ptr.prototype.nameOff=function(am){var $ptr,am,an,ao;an=this;return(ao=(am>>0),((ao<0||ao>=S.$length)?($throwRuntimeError("index out of range"),undefined):S.$array[S.$offset+ao]));};CB.prototype.nameOff=function(am){return this.$val.nameOff(am);};T=function(am){var $ptr,am,an;an=S.$length;S=$append(S,am);return(an>>0);};CB.ptr.prototype.typeOff=function(am){var $ptr,am,an,ao;an=this;return(ao=(am>>0),((ao<0||ao>=U.$length)?($throwRuntimeError("index out of range"),undefined):U.$array[U.$offset+ao]));};CB.prototype.typeOff=function(am){return this.$val.typeOff(am);};V=function(am){var $ptr,am,an;an=U.$length;U=$append(U,am);return(an>>0);};W=function(am){var $ptr,am,an;an=new IQ.ptr("");an.str=am;return an.str;};X=function(am){var $ptr,am;return!!(I(am).wrapped);};Y=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar;ap=I(ao).fields;aq=0;while(true){if(!(aq<$parseInt(ap.length))){break;}ar=$internalize(ap[aq].prop,$String);am[$externalize(ar,$String)]=an[$externalize(ar,$String)];aq=aq+(1)>>0;}};Z=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=am.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;at=am.Kind();$s=6;case 6:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===17){as=true;$s=5;continue s;}au=am.Kind();$s=7;case 7:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au===25;case 5:if(as){ar=true;$s=4;continue s;}av=am.Kind();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}ar=av===22;case 4:if(ar){$s=2;continue;}$s=3;continue;case 2:aw=am.Kind();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,an,(ao|(aw>>>0))>>>0);case 3:ax=am.Kind();$s=10;case 10:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,$newDataPointer(an,I(aq.ptrTo())),(((ao|(ax>>>0))>>>0)|128)>>>0);}return;}if($f===undefined){$f={$blk:Z};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};AA=function(am,an,ao){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];ap=am[0].Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!((ap===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(an<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ao<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(an>ao){$panic(new $String("reflect.MakeSlice: len > cap"));}aq=Z(am[0],$makeSlice(I(am[0]),an,ao,(function(am){return function $b(){var $ptr,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=am[0].Elem();$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=I(aq);$s=2;case 2:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};})(am)),0);$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return aq;}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=AA;AB=function(am){var $ptr,am;if(!G){return new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);}if($interfaceIsEqual(am,$ifaceNil)){return $ifaceNil;}return J(am.constructor);};$pkg.TypeOf=AB;AC=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(am,$ifaceNil)){$s=-1;return new EZ.ptr(HN.nil,0,0);}an=Z(J(am.constructor),am.$val,0);$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=AC;AF=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(ao)){ap=false;$s=3;continue s;}if(am.$length===0){aq=true;$s=4;continue s;}as=(ar=am.$length-1>>0,((ar<0||ar>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+ar])).Kind();$s=5;case 5:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}aq=!((as===23));case 4:ap=aq;case 3:if(ap){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.FuncOf: last arg of variadic func must be slice"));case 2:at=$makeSlice(IR,am.$length);au=am;av=0;while(true){if(!(av<au.$length)){break;}aw=av;ax=((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]);((aw<0||aw>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+aw]=I(ax));av++;}ay=$makeSlice(IR,an.$length);az=an;ba=0;while(true){if(!(ba<az.$length)){break;}bb=ba;bc=((ba<0||ba>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+ba]);((bb<0||bb>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+bb]=I(bc));ba++;}$s=-1;return J($funcType($externalize(at,IR),$externalize(ay,IR),$externalize(ao,$Bool)));}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.$s=$s;$f.$r=$r;return $f;};$pkg.FuncOf=AF;CB.ptr.prototype.ptrTo=function(){var $ptr,am;am=this;return J($ptrType(I(am)));};CB.prototype.ptrTo=function(){return this.$val.ptrTo();};AH=function(am){var $ptr,am;return J($sliceType(I(am)));};$pkg.SliceOf=AH;AI=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=Z(am,I(am).zero(),0);$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=AI;AJ=function(am){var $ptr,am,an;an=am.Kind();if(an===(25)){return new(I(am).ptr)();}else if(an===(17)){return I(am).zero();}else{return $newDataPointer(I(am).zero(),I(am.ptrTo()));}};AK=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.Kind();if(as===(3)){ar.$set((an.$low<<24>>24));}else if(as===(4)){ar.$set((an.$low<<16>>16));}else if((as===(2))||(as===(5))){ar.$set((an.$low>>0));}else if(as===(6)){ar.$set(new $Int64(an.$high,an.$low));}else if(as===(8)){ar.$set((an.$low<<24>>>24));}else if(as===(9)){ar.$set((an.$low<<16>>>16));}else if((as===(7))||(as===(10))||(as===(12))){ar.$set((an.$low>>>0));}else if(as===(11)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};AM=function(am,an,ao){var $ptr,am,an,ao;an.$set(ao.$get());};AP=function(am){var $ptr,am,an;an=0;an=new($global.Object)();return an;};AQ=function(am,an){var $ptr,am,an,ao,ap;ao=an;if(!(ao.$get===undefined)){ao=ao.$get();}ap=$internalize(I(am.Key()).keyFor(ao),$String);return[ao,ap];};AR=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar;ap=AQ(am,ao);aq=ap[1];ar=an[$externalize(aq,$String)];if(ar===undefined){return 0;}return $newDataPointer(ar.v,I(DI(am.Elem())));};AS=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=AQ(am,ao);ar=aq[0];as=aq[1];at=ap.$get();au=am.Elem();av=au.Kind();$s=3;case 3:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(av===25){$s=1;continue;}$s=2;continue;case 1:aw=I(au).zero();Y(aw,at,au);at=aw;case 2:ax=new($global.Object)();ax.k=ar;ax.v=at;an[$externalize(as,$String)]=ax;$s=-1;return;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};AT=function(am,an,ao){var $ptr,am,an,ao,ap,aq;ap=AQ(am,ao);aq=ap[1];delete an[$externalize(aq,$String)];};AV=function(am,an){var $ptr,am,an;return new AU.ptr(am,an,$keys(an),0);};AW=function(am){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=am;ao=an.keys[an.i];ap=an.t.Key();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=DI(ap);$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=I(aq);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return $newDataPointer(an.m[$externalize($internalize(ao,$String),$String)].k,ar);}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};AX=function(am){var $ptr,am,an;an=am;an.i=an.i+(1)>>0;};AY=function(am){var $ptr,am;return $parseInt($keys(am).length);};AZ=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=$clone(am,EZ).object();if(ao===I(am.typ).nil){$s=1;continue;}$s=2;continue;case 1:ap=Z(an,I(an).nil,am.flag);$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;case 2:aq=null;ar=an.Kind();$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;at=as;if(at===(23)){$s=6;continue;}if(at===(22)){$s=7;continue;}if(at===(25)){$s=8;continue;}if((at===(17))||(at===(1))||(at===(18))||(at===(19))||(at===(20))||(at===(21))||(at===(24))){$s=9;continue;}$s=10;continue;case 6:au=new(I(an))(ao.$array);au.$offset=ao.$offset;au.$length=ao.$length;au.$capacity=ao.$capacity;aq=$newDataPointer(au,I(DI(an)));$s=11;continue;case 7:av=an.Elem();$s=14;case 14:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av.Kind();$s=15;case 15:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw===25){$s=12;continue;}$s=13;continue;case 12:ax=an.Elem();$s=18;case 18:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if($interfaceIsEqual(ax,am.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:aq=ao;$s=4;continue;case 17:aq=new(I(an))();ay=aq;az=ao;ba=an.Elem();$s=19;case 19:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$r=Y(ay,az,bb);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=4;continue;case 13:aq=new(I(an))(ao.$get,ao.$set);$s=11;continue;case 8:aq=new(I(an).ptr)();Y(aq,ao,an);$s=11;continue;case 9:aq=am.ptr;$s=11;continue;case 10:$panic(new FD.ptr("reflect.Convert",as));case 11:case 4:bc=an.common();$s=21;case 21:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=an.Kind();$s=22;case 22:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(bc,aq,(((am.flag&224)>>>0)|(bd>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AZ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};BA=function(am,an){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=new FA(am.flag).kind();if(!((ao===17))&&!((ao===23))){$panic(new FD.ptr("reflect.Copy",ao));}if(ao===17){new FA(am.flag).mustBeAssignable();}new FA(am.flag).mustBeExported();ap=new FA(an.flag).kind();if(!((ap===17))&&!((ap===23))){$panic(new FD.ptr("reflect.Copy",ap));}new FA(an.flag).mustBeExported();$r=FS("reflect.Copy",am.typ.Elem(),an.typ.Elem());$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}aq=$clone(am,EZ).object();if(ao===17){aq=new(I(AH(am.typ.Elem())))(aq);}ar=$clone(an,EZ).object();if(ap===17){ar=new(I(AH(an.typ.Elem())))(ar);}$s=-1;return $parseInt($copySlice(aq,ar))>>0;}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Copy=BA;BB=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;ap=HN.nil;aq=HN.nil;ar=0;as="";if(an.typ.Kind()===20){at=an.typ.kindType;if(ao<0||ao>=at.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}av=(au=at.methods,((ao<0||ao>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+ao]));if(!$clone(at.rtype.nameOff(av.name),O).isExported()){$panic(new $String("reflect: "+am+" of unexported method"));}aq=at.rtype.typeOff(av.typ);as=$clone(at.rtype.nameOff(av.name),O).name();}else{aw=an.typ.uncommon();if(aw===IO.nil||(ao>>>0)>=(aw.mcount>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ay=$clone((ax=aw.methods(),((ao<0||ao>=ax.$length)?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+ao])),CD);if(!$clone(an.typ.nameOff(ay.name),O).isExported()){$panic(new $String("reflect: "+am+" of unexported method"));}aq=an.typ.typeOff(ay.mtyp);as=$internalize($methodSet(I(an.typ))[ao].prop,$String);}az=$clone(an,EZ).object();if(X(an.typ)){az=new(I(an.typ))(az);}ar=az[$externalize(as,$String)];return[ap,aq,ar];};BC=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am.flag===0){$panic(new FD.ptr("reflect.Value.Interface",0));}if(an&&!((((am.flag&96)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((am.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ao=BF("Interface",$clone(am,EZ));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;case 2:if(X(am.typ)){$s=-1;return new(I(am.typ))($clone(am,EZ).object());}$s=-1;return $clone(am,EZ).object();}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};BD=function(am,an,ao){var $ptr,am,an,ao;ao.$set(an);};BE=function(){var $ptr;return"?FIXME?";};BF=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=[ao];ap=[ap];if(((an.flag&512)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}aq=BB(am,$clone(an,EZ),(an.flag>>0)>>10>>0);ao[0]=aq[2];ap[0]=$clone(an,EZ).object();if(X(an.typ)){ap[0]=new(I(an.typ))(ap[0]);}ar=C.MakeFunc((function(ao,ap){return function(ar,as){var $ptr,ar,as;return new $jsObjectPtr(ao[0].apply(ap[0],$externalize(as,IR)));};})(ao,ap));as=$clone(an,EZ).Type().common();$s=1;case 1:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(as,ar,(((an.flag&96)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:BF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};CB.ptr.prototype.pointers=function(){var $ptr,am,an;am=this;an=am.Kind();if((an===(22))||(an===(21))||(an===(18))||(an===(19))||(an===(25))||(an===(17))){return true;}else{return false;}};CB.prototype.pointers=function(){return this.$val.pointers();};CB.ptr.prototype.Comparable=function(){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=am.Kind();if((an===(19))||(an===(23))||(an===(21))){$s=2;continue;}if(an===(17)){$s=3;continue;}if(an===(25)){$s=4;continue;}$s=5;continue;case 2:$s=-1;return false;case 3:ao=am.Elem().Comparable();$s=6;case 6:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;case 4:ap=0;case 7:if(!(ap<am.NumField())){$s=8;continue;}aq=am.Field(ap);$s=11;case 11:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Type.Comparable();$s=12;case 12:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(!ar){$s=9;continue;}$s=10;continue;case 9:$s=-1;return false;case 10:ap=ap+(1)>>0;$s=7;continue;case 8:case 5:case 1:$s=-1;return true;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Comparable=function(){return this.$val.Comparable();};CB.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=[an];ao=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ap=this;if(ap.Kind()===20){aq=ap.kindType;CP.copy(ao,aq.Method(am));$s=-1;return ao;}ar=ap.exportedMethods();$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(am<0||am>=as.$length){$panic(new $String("reflect: Method index out of range"));}at=$clone(((am<0||am>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+am]),CD);au=$clone(ap.nameOff(at.name),O);ao.Name=$clone(au,O).name();av=19;aw=ap.typeOff(at.mtyp);ax=aw.kindType;ay=$makeSlice(IT,0,(1+ax.in$().$length>>0));ay=$append(ay,ap);az=ax.in$();ba=0;while(true){if(!(ba<az.$length)){break;}bb=((ba<0||ba>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+ba]);ay=$append(ay,bb);ba++;}bc=$makeSlice(IT,0,ax.out().$length);bd=ax.out();be=0;while(true){if(!(be<bd.$length)){break;}bf=((be<0||be>=bd.$length)?($throwRuntimeError("index out of range"),undefined):bd.$array[bd.$offset+be]);bc=$append(bc,bf);be++;}bg=AF(ay,bc,ax.rtype.IsVariadic());$s=2;case 2:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bh=bg;ao.Type=bh;an[0]=$internalize($methodSet(ap.jsType)[am].prop,$String);bi=C.MakeFunc((function(an){return function(bi,bj){var $ptr,bi,bj,bk;bk=(0>=bj.$length?($throwRuntimeError("index out of range"),undefined):bj.$array[bj.$offset+0]);return new $jsObjectPtr(bk[$externalize(an[0],$String)].apply(bk,$externalize($subslice(bj,1),IR)));};})(an));ao.Func=new EZ.ptr($assertType(bh,HN),bi,av);ao.Index=am;CP.copy(ao,ao);$s=-1;return ao;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Method};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Method=function(am){return this.$val.Method(am);};EZ.ptr.prototype.object=function(){var $ptr,am,an,ao,ap;am=this;if((am.typ.Kind()===17)||(am.typ.Kind()===25)){return am.ptr;}if(!((((am.flag&128)>>>0)===0))){an=am.ptr.$get();if(!(an===$ifaceNil)&&!(an.constructor===I(am.typ))){switch(0){default:ao=am.typ.Kind();if((ao===(11))||(ao===(6))){an=new(I(am.typ))(an.$high,an.$low);}else if((ao===(15))||(ao===(16))){an=new(I(am.typ))(an.$real,an.$imag);}else if(ao===(23)){if(an===an.constructor.nil){an=I(am.typ).nil;break;}ap=new(I(am.typ))(an.$array);ap.$offset=an.$offset;ap.$length=an.$length;ap.$capacity=an.$capacity;an=ap;}}}return an;}return am.ptr;};EZ.prototype.object=function(){return this.$val.object();};EZ.ptr.prototype.call=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;ce=$f.ce;cf=$f.cf;cg=$f.cg;ch=$f.ch;ci=$f.ci;cj=$f.cj;ck=$f.ck;cl=$f.cl;cm=$f.cm;cn=$f.cn;co=$f.co;cp=$f.cp;cq=$f.cq;cr=$f.cr;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;ap=HN.nil;aq=0;ar=null;if(!((((ao.flag&512)>>>0)===0))){as=BB(am,$clone(ao,EZ),(ao.flag>>0)>>10>>0);ap=as[1];aq=as[2];ar=$clone(ao,EZ).object();if(X(ao.typ)){ar=new(I(ao.typ))(ar);}}else{ap=ao.typ;aq=$clone(ao,EZ).object();ar=undefined;}if(aq===0){$panic(new $String("reflect.Value.Call: call of nil function"));}at=am==="CallSlice";au=ap.NumIn();if(at){if(!ap.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(an.$length<au){$panic(new $String("reflect: CallSlice with too few input arguments"));}if(an.$length>au){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(ap.IsVariadic()){au=au-(1)>>0;}if(an.$length<au){$panic(new $String("reflect: Call with too few input arguments"));}if(!ap.IsVariadic()&&an.$length>au){$panic(new $String("reflect: Call with too many input arguments"));}}av=an;aw=0;while(true){if(!(aw<av.$length)){break;}ax=((aw<0||aw>=av.$length)?($throwRuntimeError("index out of range"),undefined):av.$array[av.$offset+aw]);if($clone(ax,EZ).Kind()===0){$panic(new $String("reflect: "+am+" using zero Value argument"));}aw++;}ay=0;case 1:if(!(ay<au)){$s=2;continue;}az=$clone(((ay<0||ay>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+ay]),EZ).Type();ba=ap.In(ay);bb=az;bc=ba;bd=bb.AssignableTo(bc);$s=5;case 5:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}if(!bd){$s=3;continue;}$s=4;continue;case 3:be=bb.String();$s=6;case 6:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=bc.String();$s=7;case 7:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}$panic(new $String("reflect: "+am+" using "+be+" as type "+bf));case 4:ay=ay+(1)>>0;$s=1;continue;case 2:if(!at&&ap.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:bg=an.$length-au>>0;bh=AA(ap.In(au),bg,bg);$s=10;case 10:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=ap.In(au).Elem();$s=11;case 11:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bk=bj;bl=0;case 12:if(!(bl<bg)){$s=13;continue;}bn=(bm=au+bl>>0,((bm<0||bm>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+bm]));bo=$clone(bn,EZ).Type();bp=bo.AssignableTo(bk);$s=16;case 16:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}if(!bp){$s=14;continue;}$s=15;continue;case 14:bq=bo.String();$s=17;case 17:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bk.String();$s=18;case 18:if($c){$c=false;br=br.$blk();}if(br&&br.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bq+" as type "+br+" in "+am));case 15:bs=$clone(bi,EZ).Index(bl);$s=19;case 19:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}$r=$clone(bs,EZ).Set($clone(bn,EZ));$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bl=bl+(1)>>0;$s=12;continue;case 13:bt=an;an=$makeSlice(IS,(au+1>>0));$copySlice($subslice(an,0,au),bt);((au<0||au>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+au]=bi);case 9:bu=an.$length;if(!((bu===ap.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bv=ap.NumOut();bw=new($global.Array)(ap.NumIn());bx=an;by=0;case 21:if(!(by<bx.$length)){$s=22;continue;}bz=by;ca=((by<0||by>=bx.$length)?($throwRuntimeError("index out of range"),undefined):bx.$array[bx.$offset+by]);cb=ap.In(bz);cc=ap.In(bz).common();$s=23;case 23:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cd=cc;ce=0;cf=$clone(ca,EZ).assignTo("reflect.Value.Call",cd,ce);$s=24;case 24:if($c){$c=false;cf=cf.$blk();}if(cf&&cf.$blk!==undefined){break s;}cg=$clone(cf,EZ).object();$s=25;case 25:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}ch=cg;ci=BJ(cb,ch);$s=26;case 26:if($c){$c=false;ci=ci.$blk();}if(ci&&ci.$blk!==undefined){break s;}bw[bz]=ci;by++;$s=21;continue;case 22:cj=BG(new IG([new $jsObjectPtr(aq),new $jsObjectPtr(ar),new $jsObjectPtr(bw)]));$s=27;case 27:if($c){$c=false;cj=cj.$blk();}if(cj&&cj.$blk!==undefined){break s;}ck=cj;cl=bv;if(cl===(0)){$s=29;continue;}if(cl===(1)){$s=30;continue;}$s=31;continue;case 29:$s=-1;return IS.nil;case 30:cm=Z(ap.Out(0),BI(ap.Out(0),ck),0);$s=33;case 33:if($c){$c=false;cm=cm.$blk();}if(cm&&cm.$blk!==undefined){break s;}$s=-1;return new IS([$clone(cm,EZ)]);case 31:cn=$makeSlice(IS,bv);co=cn;cp=0;case 34:if(!(cp<co.$length)){$s=35;continue;}cq=cp;cr=Z(ap.Out(cq),BI(ap.Out(cq),ck[cq]),0);$s=36;case 36:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}((cq<0||cq>=cn.$length)?($throwRuntimeError("index out of range"),undefined):cn.$array[cn.$offset+cq]=cr);cp++;$s=34;continue;case 35:$s=-1;return cn;case 32:case 28:$s=-1;return IS.nil;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.call};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.ce=ce;$f.cf=cf;$f.cg=cg;$f.ch=ch;$f.ci=ci;$f.cj=cj;$f.ck=ck;$f.cl=cl;$f.cm=cm;$f.cn=cn;$f.co=co;$f.cp=cp;$f.cq=cq;$f.cr=cr;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.call=function(am,an){return this.$val.call(am,an);};EZ.ptr.prototype.Cap=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(17)){return am.typ.Len();}else if((ao===(18))||(ao===(23))){return $parseInt($clone(am,EZ).object().$capacity)>>0;}$panic(new FD.ptr("reflect.Value.Cap",an));};EZ.prototype.Cap=function(){return this.$val.Cap();};BI=function(am,an){var $ptr,am,an;if($interfaceIsEqual(am,BH)){return new(I(BH))(an);}return an;};BJ=function(am,an){var $ptr,am,an;if($interfaceIsEqual(am,BH)){return an.object;}return an;};EZ.ptr.prototype.Elem=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=new FA(am.flag).kind();ao=an;if(ao===(20)){$s=2;continue;}if(ao===(22)){$s=3;continue;}$s=4;continue;case 2:ap=$clone(am,EZ).object();if(ap===$ifaceNil){$s=-1;return new EZ.ptr(HN.nil,0,0);}aq=J(ap.constructor);ar=Z(aq,ap.$val,(am.flag&96)>>>0);$s=6;case 6:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar;case 3:if($clone(am,EZ).IsNil()){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=$clone(am,EZ).object();at=am.typ.kindType;au=(((((am.flag&96)>>>0)|128)>>>0)|256)>>>0;au=(au|((at.elem.Kind()>>>0)))>>>0;$s=-1;return new EZ.ptr(at.elem,BI(at.elem,as),au);case 4:$panic(new FD.ptr("reflect.Value.Elem",an));case 5:case 1:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Elem};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Elem=function(){return this.$val.Elem();};EZ.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=[an];ao=[ao];ap=[ap];aq=[aq];ar=this;if(!((new FA(ar.flag).kind()===25))){$panic(new FD.ptr("reflect.Value.Field",new FA(ar.flag).kind()));}as=ar.typ.kindType;if((am>>>0)>=(as.fields.$length>>>0)){$panic(new $String("reflect: Field index out of range"));}ao[0]=$internalize(I(ar.typ).fields[am].prop,$String);au=(at=as.fields,((am<0||am>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+am]));aq[0]=au.typ;av=(((ar.flag&416)>>>0)|(aq[0].Kind()>>>0))>>>0;if(!$clone(au.name,O).isExported()){if($clone(au.name,O).name()===""){av=(av|(64))>>>0;}else{av=(av|(32))>>>0;}}ax=$clone((aw=as.fields,((am<0||am>=aw.$length)?($throwRuntimeError("index out of range"),undefined):aw.$array[aw.$offset+am])).name,O).tag();if(!(ax==="")&&!((am===0))){$s=1;continue;}$s=2;continue;case 1:an[0]=BK(ax);if(!(an[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:ay=[ay];az=$clone(ar,EZ).Field(0);$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ar=az;if(ar.typ===BH){$s=8;continue;}$s=9;continue;case 8:ay[0]=$clone(ar,EZ).object().object;$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(an,ao,ap,aq,ay){return function(){var $ptr;return $internalize(ay[0][$externalize(an[0],$String)],I(aq[0]));};})(an,ao,ap,aq,ay),(function(an,ao,ap,aq,ay){return function(ba){var $ptr,ba;ay[0][$externalize(an[0],$String)]=$externalize(ba,I(aq[0]));};})(an,ao,ap,aq,ay)),av);case 9:if(ar.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:ba=$clone(ar,EZ).Elem();$s=12;case 12:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}ar=ba;case 11:$s=5;continue;case 6:case 4:case 2:ap[0]=ar.ptr;if(!((((av&128)>>>0)===0))&&!((aq[0].Kind()===17))&&!((aq[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(an,ao,ap,aq){return function(){var $ptr;return BI(aq[0],ap[0][$externalize(ao[0],$String)]);};})(an,ao,ap,aq),(function(an,ao,ap,aq){return function(bb){var $ptr,bb;ap[0][$externalize(ao[0],$String)]=BJ(aq[0],bb);};})(an,ao,ap,aq)),av);case 14:bb=Z(aq[0],BI(aq[0],ap[0][$externalize(ao[0],$String)]),av);$s=15;case 15:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Field=function(am){return this.$val.Field(am);};BK=function(am){var $ptr,am,an,ao,ap,aq,ar;while(true){if(!(!(am===""))){break;}an=0;while(true){if(!(an<am.length&&(am.charCodeAt(an)===32))){break;}an=an+(1)>>0;}am=$substring(am,an);if(am===""){break;}an=0;while(true){if(!(an<am.length&&!((am.charCodeAt(an)===32))&&!((am.charCodeAt(an)===58))&&!((am.charCodeAt(an)===34)))){break;}an=an+(1)>>0;}if((an+1>>0)>=am.length||!((am.charCodeAt(an)===58))||!((am.charCodeAt((an+1>>0))===34))){break;}ao=$substring(am,0,an);am=$substring(am,(an+1>>0));an=1;while(true){if(!(an<am.length&&!((am.charCodeAt(an)===34)))){break;}if(am.charCodeAt(an)===92){an=an+(1)>>0;}an=an+(1)>>0;}if(an>=am.length){break;}ap=$substring(am,0,(an+1>>0));am=$substring(am,(an+1>>0));if(ao==="js"){aq=B.Unquote(ap);ar=aq[0];return ar;}}return"";};EZ.ptr.prototype.Index=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];an=[an];ao=[ao];ap=[ap];aq=[aq];ar=[ar];as=this;at=new FA(as.flag).kind();au=at;if(au===(17)){$s=2;continue;}if(au===(23)){$s=3;continue;}if(au===(24)){$s=4;continue;}$s=5;continue;case 2:av=as.typ.kindType;if(am[0]<0||am[0]>(av.len>>0)){$panic(new $String("reflect: array index out of range"));}aq[0]=av.elem;aw=(as.flag&480)>>>0;aw=(aw|((aq[0].Kind()>>>0)))>>>0;ao[0]=as.ptr;if(!((((aw&128)>>>0)===0))&&!((aq[0].Kind()===17))&&!((aq[0].Kind()===25))){$s=7;continue;}$s=8;continue;case 7:$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(am,an,ao,ap,aq,ar){return function(){var $ptr;return BI(aq[0],ao[0][am[0]]);};})(am,an,ao,ap,aq,ar),(function(am,an,ao,ap,aq,ar){return function(ax){var $ptr,ax;ao[0][am[0]]=BJ(aq[0],ax);};})(am,an,ao,ap,aq,ar)),aw);case 8:ax=Z(aq[0],BI(aq[0],ao[0][am[0]]),aw);$s=9;case 9:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return ax;case 3:ay=$clone(as,EZ).object();if(am[0]<0||am[0]>=($parseInt(ay.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}az=as.typ.kindType;ar[0]=az.elem;ba=(384|((as.flag&96)>>>0))>>>0;ba=(ba|((ar[0].Kind()>>>0)))>>>0;am[0]=am[0]+(($parseInt(ay.$offset)>>0))>>0;an[0]=ay.$array;if(!((((ba&128)>>>0)===0))&&!((ar[0].Kind()===17))&&!((ar[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:$s=-1;return new EZ.ptr(ar[0],new(I(DI(ar[0])))((function(am,an,ao,ap,aq,ar){return function(){var $ptr;return BI(ar[0],an[0][am[0]]);};})(am,an,ao,ap,aq,ar),(function(am,an,ao,ap,aq,ar){return function(bb){var $ptr,bb;an[0][am[0]]=BJ(ar[0],bb);};})(am,an,ao,ap,aq,ar)),ba);case 11:bb=Z(ar[0],BI(ar[0],an[0][am[0]]),ba);$s=12;case 12:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;case 4:bc=as.ptr.$get();if(am[0]<0||am[0]>=bc.length){$panic(new $String("reflect: string index out of range"));}bd=(((as.flag&96)>>>0)|8)>>>0;ap[0]=bc.charCodeAt(am[0]);$s=-1;return new EZ.ptr(FM,(ap.$ptr||(ap.$ptr=new IL(function(){return this.$target[0];},function($v){this.$target[0]=$v;},ap))),(bd|128)>>>0);case 5:$panic(new FD.ptr("reflect.Value.Index",at));case 6:case 1:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Index};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Index=function(am){return this.$val.Index(am);};EZ.ptr.prototype.InterfaceData=function(){var $ptr,am;am=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};EZ.prototype.InterfaceData=function(){return this.$val.InterfaceData();};EZ.ptr.prototype.IsNil=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(22))||(ao===(23))){return $clone(am,EZ).object()===I(am.typ).nil;}else if(ao===(18)){return $clone(am,EZ).object()===$chanNil;}else if(ao===(19)){return $clone(am,EZ).object()===$throwNilPointerError;}else if(ao===(21)){return $clone(am,EZ).object()===false;}else if(ao===(20)){return $clone(am,EZ).object()===$ifaceNil;}else{$panic(new FD.ptr("reflect.Value.IsNil",an));}};EZ.prototype.IsNil=function(){return this.$val.IsNil();};EZ.ptr.prototype.Len=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(17))||(ao===(24))){return $parseInt($clone(am,EZ).object().length);}else if(ao===(23)){return $parseInt($clone(am,EZ).object().$length)>>0;}else if(ao===(18)){return $parseInt($clone(am,EZ).object().$buffer.length)>>0;}else if(ao===(21)){return $parseInt($keys($clone(am,EZ).object()).length);}else{$panic(new FD.ptr("reflect.Value.Len",an));}};EZ.prototype.Len=function(){return this.$val.Len();};EZ.ptr.prototype.Pointer=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(18))||(ao===(21))||(ao===(22))||(ao===(26))){if($clone(am,EZ).IsNil()){return 0;}return $clone(am,EZ).object();}else if(ao===(19)){if($clone(am,EZ).IsNil()){return 0;}return 1;}else if(ao===(23)){if($clone(am,EZ).IsNil()){return 0;}return $clone(am,EZ).object().$array;}else{$panic(new FD.ptr("reflect.Value.Pointer",an));}};EZ.prototype.Pointer=function(){return this.$val.Pointer();};EZ.ptr.prototype.Set=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(am.flag).mustBeExported();ao=$clone(am,EZ).assignTo("reflect.Set",an.typ,0);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;if(!((((an.flag&128)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:ap=an.typ.Kind();if(ap===(17)){$s=5;continue;}if(ap===(20)){$s=6;continue;}if(ap===(25)){$s=7;continue;}$s=8;continue;case 5:I(an.typ).copy(an.ptr,am.ptr);$s=9;continue;case 6:aq=BC($clone(am,EZ),false);$s=10;case 10:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}an.ptr.$set(aq);$s=9;continue;case 7:Y(an.ptr,am.ptr,an.typ);$s=9;continue;case 8:an.ptr.$set($clone(am,EZ).object());case 9:case 4:$s=-1;return;case 3:an.ptr=am.ptr;$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Set};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Set=function(am){return this.$val.Set(am);};EZ.ptr.prototype.SetBytes=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ap=am;if(!(an.typ.Name()==="")){aq=true;$s=6;continue s;}ar=an.typ.Elem().Name();$s=7;case 7:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=!(ar==="");case 6:if(aq){$s=4;continue;}$s=5;continue;case 4:as=new(I(an.typ))(ap.$array);as.$offset=ap.$offset;as.$length=ap.$length;as.$capacity=ap.$capacity;ap=as;case 5:an.ptr.$set(ap);$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.SetBytes=function(am){return this.$val.SetBytes(am);};EZ.ptr.prototype.SetCap=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.ptr.$get();if(am<($parseInt(ao.$length)>>0)||am>($parseInt(ao.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}ap=new(I(an.typ))(ao.$array);ap.$offset=ao.$offset;ap.$length=ao.$length;ap.$capacity=am;an.ptr.$set(ap);};EZ.prototype.SetCap=function(am){return this.$val.SetCap(am);};EZ.ptr.prototype.SetLen=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.ptr.$get();if(am<0||am>($parseInt(ao.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}ap=new(I(an.typ))(ao.$array);ap.$offset=ao.$offset;ap.$length=am;ap.$capacity=ao.$capacity;an.ptr.$set(ap);};EZ.prototype.SetLen=function(am){return this.$val.SetLen(am);};EZ.ptr.prototype.Slice=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;ap=0;aq=$ifaceNil;ar=null;as=new FA(ao.flag).kind();at=as;if(at===(17)){$s=2;continue;}if(at===(23)){$s=3;continue;}if(at===(24)){$s=4;continue;}$s=5;continue;case 2:if(((ao.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}au=ao.typ.kindType;ap=(au.len>>0);aq=AH(au.elem);ar=new(I(aq))($clone(ao,EZ).object());$s=6;continue;case 3:aq=ao.typ;ar=$clone(ao,EZ).object();ap=$parseInt(ar.$capacity)>>0;$s=6;continue;case 4:av=ao.ptr.$get();if(am<0||an<am||an>av.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aw=AC(new $String($substring(av,am,an)));$s=7;case 7:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return aw;case 5:$panic(new FD.ptr("reflect.Value.Slice",as));case 6:case 1:if(am<0||an<am||an>ap){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ax=Z(aq,$subslice(ar,am,an),(ao.flag&96)>>>0);$s=8;case 8:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return ax;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Slice};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Slice=function(am,an){return this.$val.Slice(am,an);};EZ.ptr.prototype.Slice3=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=this;aq=0;ar=$ifaceNil;as=null;at=new FA(ap.flag).kind();au=at;if(au===(17)){if(((ap.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}av=ap.typ.kindType;aq=(av.len>>0);ar=AH(av.elem);as=new(I(ar))($clone(ap,EZ).object());}else if(au===(23)){ar=ap.typ;as=$clone(ap,EZ).object();aq=$parseInt(as.$capacity)>>0;}else{$panic(new FD.ptr("reflect.Value.Slice3",at));}if(am<0||an<am||ao<an||ao>aq){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aw=Z(ar,$subslice(as,am,an,ao),(ap.flag&96)>>>0);$s=1;case 1:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return aw;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Slice3};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Slice3=function(am,an,ao){return this.$val.Slice3(am,an,ao);};EZ.ptr.prototype.Close=function(){var $ptr,am;am=this;new FA(am.flag).mustBe(18);new FA(am.flag).mustBeExported();$close($clone(am,EZ).object());};EZ.prototype.Close=function(){return this.$val.Close();};BM=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=false;ar=false;as=new IU([new IR([an])]);if(ao){as=$append(as,new IR([]));}at=BL(new IG([as]));$s=1;case 1:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;if(ao&&(($parseInt(au[0])>>0)===1)){av=false;aw=false;aq=av;ar=aw;$s=-1;return[aq,ar];}ax=au[1];ap.$set(ax[0]);ay=true;az=!!(ax[1]);aq=ay;ar=az;$s=-1;return[aq,ar];}return;}if($f===undefined){$f={$blk:BM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};BN=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=new IU([new IR([an,ao.$get()])]);if(ap){aq=$append(aq,new IR([]));}ar=BL(new IG([aq]));$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(ap&&(($parseInt(as[0])>>0)===1)){$s=-1;return false;}$s=-1;return true;}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};BZ.prototype.String=function(){var $ptr,am;am=this.$val;if((am>>0)<CQ.$length){return((am<0||am>=CQ.$length)?($throwRuntimeError("index out of range"),undefined):CQ.$array[CQ.$offset+am]);}return"kind"+B.Itoa((am>>0));};$ptrType(BZ).prototype.String=function(){return new BZ(this.$get()).String();};CB.ptr.prototype.String=function(){var $ptr,am,an;am=this;an=$clone(am.nameOff(am.str),O).name();if(!((((am.tflag&2)>>>0)===0))){return $substring(an,1);}return an;};CB.prototype.String=function(){return this.$val.String();};CB.ptr.prototype.Size=function(){var $ptr,am;am=this;return am.size;};CB.prototype.Size=function(){return this.$val.Size();};CB.ptr.prototype.Bits=function(){var $ptr,am,an;am=this;if(am===HN.nil){$panic(new $String("reflect: Bits of nil Type"));}an=am.Kind();if(an<2||an>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+am.String()));}return $imul((am.size>>0),8);};CB.prototype.Bits=function(){return this.$val.Bits();};CB.ptr.prototype.Align=function(){var $ptr,am;am=this;return(am.align>>0);};CB.prototype.Align=function(){return this.$val.Align();};CB.ptr.prototype.FieldAlign=function(){var $ptr,am;am=this;return(am.fieldAlign>>0);};CB.prototype.FieldAlign=function(){return this.$val.FieldAlign();};CB.ptr.prototype.Kind=function(){var $ptr,am;am=this;return(((am.kind&31)>>>0)>>>0);};CB.prototype.Kind=function(){return this.$val.Kind();};CB.ptr.prototype.common=function(){var $ptr,am;am=this;return am;};CB.prototype.common=function(){return this.$val.common();};CB.ptr.prototype.exportedMethods=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;$r=DB.RWMutex.RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}an=(ao=DB.m[HN.keyFor(am)],ao!==undefined?[ao.v,true]:[HP.nil,false]);ap=an[0];aq=an[1];$r=DB.RWMutex.RUnlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(aq){$s=-1;return ap;}ar=am.uncommon();if(ar===IO.nil){$s=-1;return HP.nil;}as=ar.methods();at=true;au=as;av=0;while(true){if(!(av<au.$length)){break;}aw=$clone(((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]),CD);ax=$clone(am.nameOff(aw.name),O);if(!$clone(ax,O).isExported()){at=false;break;}av++;}if(at){ap=as;}else{ap=$makeSlice(HP,0,as.$length);ay=as;az=0;while(true){if(!(az<ay.$length)){break;}ba=$clone(((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]),CD);bb=$clone(am.nameOff(ba.name),O);if($clone(bb,O).isExported()){ap=$append(ap,ba);}az++;}ap=$subslice(ap,0,ap.$length,ap.$length);}$r=DB.RWMutex.Lock();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(DB.m===false){DB.m={};}bc=am;(DB.m||$throwRuntimeError("assignment to entry in nil map"))[HN.keyFor(bc)]={k:bc,v:ap};$r=DB.RWMutex.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.exportedMethods};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.exportedMethods=function(){return this.$val.exportedMethods();};CB.ptr.prototype.NumMethod=function(){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;if(am.Kind()===20){an=am.kindType;$s=-1;return an.NumMethod();}if(((am.tflag&1)>>>0)===0){$s=-1;return 0;}ao=am.exportedMethods();$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao.$length;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.NumMethod};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.NumMethod=function(){return this.$val.NumMethod();};CB.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=false;ap=this;if(ap.Kind()===20){aq=ap.kindType;ar=aq.MethodByName(am);CP.copy(an,ar[0]);ao=ar[1];$s=-1;return[an,ao];}as=ap.uncommon();if(as===IO.nil){at=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);au=false;CP.copy(an,at);ao=au;$s=-1;return[an,ao];}av=as.methods();aw=0;case 1:if(!(aw<(as.mcount>>0))){$s=2;continue;}ax=$clone(((aw<0||aw>=av.$length)?($throwRuntimeError("index out of range"),undefined):av.$array[av.$offset+aw]),CD);ay=$clone(ap.nameOff(ax.name),O);if($clone(ay,O).isExported()&&$clone(ay,O).name()===am){$s=3;continue;}$s=4;continue;case 3:ba=ap.Method(aw);$s=5;case 5:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}az=$clone(ba,CP);bb=true;CP.copy(an,az);ao=bb;$s=-1;return[an,ao];case 4:aw=aw+(1)>>0;$s=1;continue;case 2:bc=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);bd=false;CP.copy(an,bc);ao=bd;$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.MethodByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};CB.ptr.prototype.PkgPath=function(){var $ptr,am,an;am=this;if(((am.tflag&4)>>>0)===0){return"";}an=am.uncommon();if(an===IO.nil){return"";}return $clone(am.nameOff(an.pkgPath),O).name();};CB.prototype.PkgPath=function(){return this.$val.PkgPath();};CB.ptr.prototype.Name=function(){var $ptr,am,an,ao;am=this;if(((am.tflag&4)>>>0)===0){return"";}an=am.String();ao=an.length-1>>0;while(true){if(!(ao>=0)){break;}if(an.charCodeAt(ao)===46){break;}ao=ao-(1)>>0;}return $substring(an,(ao+1>>0));};CB.prototype.Name=function(){return this.$val.Name();};CB.ptr.prototype.ChanDir=function(){var $ptr,am,an;am=this;if(!((am.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}an=am.kindType;return(an.dir>>0);};CB.prototype.ChanDir=function(){return this.$val.ChanDir();};CB.ptr.prototype.IsVariadic=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}an=am.kindType;return!((((an.outCount&32768)>>>0)===0));};CB.prototype.IsVariadic=function(){return this.$val.IsVariadic();};CB.ptr.prototype.Elem=function(){var $ptr,am,an,ao,ap,aq,ar,as;am=this;an=am.Kind();if(an===(17)){ao=am.kindType;return ER(ao.elem);}else if(an===(18)){ap=am.kindType;return ER(ap.elem);}else if(an===(21)){aq=am.kindType;return ER(aq.elem);}else if(an===(22)){ar=am.kindType;return ER(ar.elem);}else if(an===(23)){as=am.kindType;return ER(as.elem);}$panic(new $String("reflect: Elem of invalid type"));};CB.prototype.Elem=function(){return this.$val.Elem();};CB.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ao=an.kindType;ap=ao.Field(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Field=function(am){return this.$val.Field(am);};CB.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ao=an.kindType;ap=ao.FieldByIndex(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};CB.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ao=an.kindType;ap=ao.FieldByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};CB.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ao=an.kindType;ap=ao.FieldByNameFunc(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};CB.ptr.prototype.In=function(am){var $ptr,am,an,ao,ap;an=this;if(!((an.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ao=an.kindType;return ER((ap=ao.in$(),((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am])));};CB.prototype.In=function(am){return this.$val.In(am);};CB.ptr.prototype.Key=function(){var $ptr,am,an;am=this;if(!((am.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}an=am.kindType;return ER(an.key);};CB.prototype.Key=function(){return this.$val.Key();};CB.ptr.prototype.Len=function(){var $ptr,am,an;am=this;if(!((am.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}an=am.kindType;return(an.len>>0);};CB.prototype.Len=function(){return this.$val.Len();};CB.ptr.prototype.NumField=function(){var $ptr,am,an;am=this;if(!((am.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}an=am.kindType;return an.fields.$length;};CB.prototype.NumField=function(){return this.$val.NumField();};CB.ptr.prototype.NumIn=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}an=am.kindType;return(an.inCount>>0);};CB.prototype.NumIn=function(){return this.$val.NumIn();};CB.ptr.prototype.NumOut=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}an=am.kindType;return an.out().$length;};CB.prototype.NumOut=function(){return this.$val.NumOut();};CB.ptr.prototype.Out=function(am){var $ptr,am,an,ao,ap;an=this;if(!((an.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ao=an.kindType;return ER((ap=ao.out(),((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am])));};CB.prototype.Out=function(am){return this.$val.Out(am);};CE.prototype.String=function(){var $ptr,am,an;am=this.$val;an=am;if(an===(2)){return"chan<-";}else if(an===(1)){return"<-chan";}else if(an===(3)){return"chan";}return"ChanDir"+B.Itoa((am>>0));};$ptrType(CE).prototype.String=function(){return new CE(this.$get()).String();};CI.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,ar;an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=this;if(am<0||am>=ao.methods.$length){return an;}aq=(ap=ao.methods,((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am]));ar=$clone(ao.rtype.nameOff(aq.name),O);an.Name=$clone(ar,O).name();if(!$clone(ar,O).isExported()){an.PkgPath=$clone(ar,O).pkgPath();if(an.PkgPath===""){an.PkgPath=$clone(ao.pkgPath,O).name();}}an.Type=ER(ao.rtype.typeOff(aq.typ));an.Index=am;return an;};CI.prototype.Method=function(am){return this.$val.Method(am);};CI.ptr.prototype.NumMethod=function(){var $ptr,am;am=this;return am.methods.$length;};CI.prototype.NumMethod=function(){return this.$val.NumMethod();};CI.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw;an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=false;ap=this;if(ap===IX.nil){return[an,ao];}aq=IY.nil;ar=ap.methods;as=0;while(true){if(!(as<ar.$length)){break;}at=as;aq=(au=ap.methods,((at<0||at>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+at]));if($clone(ap.rtype.nameOff(aq.name),O).name()===am){av=$clone(ap.Method(at),CP);aw=true;CP.copy(an,av);ao=aw;return[an,ao];}as++;}return[an,ao];};CI.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};DF.prototype.Get=function(am){var $ptr,am,an,ao,ap;an=this.$val;ao=new DF(an).Lookup(am);ap=ao[0];return ap;};$ptrType(DF).prototype.Get=function(am){return new DF(this.$get()).Get(am);};DF.prototype.Lookup=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;an="";ao=false;ap=this.$val;while(true){if(!(!(ap===""))){break;}aq=0;while(true){if(!(aq<ap.length&&(ap.charCodeAt(aq)===32))){break;}aq=aq+(1)>>0;}ap=$substring(ap,aq);if(ap===""){break;}aq=0;while(true){if(!(aq<ap.length&&ap.charCodeAt(aq)>32&&!((ap.charCodeAt(aq)===58))&&!((ap.charCodeAt(aq)===34))&&!((ap.charCodeAt(aq)===127)))){break;}aq=aq+(1)>>0;}if((aq===0)||(aq+1>>0)>=ap.length||!((ap.charCodeAt(aq)===58))||!((ap.charCodeAt((aq+1>>0))===34))){break;}ar=$substring(ap,0,aq);ap=$substring(ap,(aq+1>>0));aq=1;while(true){if(!(aq<ap.length&&!((ap.charCodeAt(aq)===34)))){break;}if(ap.charCodeAt(aq)===92){aq=aq+(1)>>0;}aq=aq+(1)>>0;}if(aq>=ap.length){break;}as=$substring(ap,0,(aq+1>>0));ap=$substring(ap,(aq+1>>0));if(am===ar){at=B.Unquote(as);au=at[0];av=at[1];if(!($interfaceIsEqual(av,$ifaceNil))){break;}aw=au;ax=true;an=aw;ao=ax;return[an,ao];}}ay="";az=false;an=ay;ao=az;return[an,ao];};$ptrType(DF).prototype.Lookup=function(am){return new DF(this.$get()).Lookup(am);};CN.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=this;if(am<0||am>=ao.fields.$length){$panic(new $String("reflect: Field index out of bounds"));}aq=(ap=ao.fields,((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am]));an.Type=ER(aq.typ);ar=$clone(aq.name,O).name();if(!(ar==="")){$s=1;continue;}$s=2;continue;case 1:an.Name=ar;$s=3;continue;case 2:as=an.Type;at=as.Kind();$s=6;case 6:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===22){$s=4;continue;}$s=5;continue;case 4:au=as.Elem();$s=7;case 7:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;case 5:av=as.Name();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}an.Name=av;an.Anonymous=true;case 3:if(!$clone(aq.name,O).isExported()){an.PkgPath=$clone(aq.name,O).pkgPath();if(an.PkgPath===""){an.PkgPath=$clone(ao.pkgPath,O).name();}}aw=$clone(aq.name,O).tag();if(!(aw==="")){an.Tag=aw;}an.Offset=aq.offset;an.Index=new IZ([am]);$s=-1;return an;}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.Field=function(am){return this.$val.Field(am);};CN.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=this;an.Type=ER(ao.rtype);ap=am;aq=0;case 1:if(!(aq<ap.$length)){$s=2;continue;}ar=aq;as=((aq<0||aq>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+aq]);if(ar>0){$s=3;continue;}$s=4;continue;case 3:at=an.Type;av=at.Kind();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(!(av===22)){au=false;$s=7;continue s;}aw=at.Elem();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw.Kind();$s=10;case 10:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}au=ax===25;case 7:if(au){$s=5;continue;}$s=6;continue;case 5:ay=at.Elem();$s=11;case 11:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}at=ay;case 6:an.Type=at;case 4:az=an.Type.Field(as);$s=12;case 12:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}DE.copy(an,az);aq++;$s=1;continue;case 2:$s=-1;return an;}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};CN.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=false;ap=this;aq=new JA([]);ar=new JA([new DG.ptr(ap,IZ.nil)]);as=false;at=$makeMap(JB.keyFor,[]);case 1:if(!(ar.$length>0)){$s=2;continue;}au=ar;av=$subslice(aq,0,0);aq=au;ar=av;aw=as;as=false;ax=aq;ay=0;case 3:if(!(ay<ax.$length)){$s=4;continue;}az=$clone(((ay<0||ay>=ax.$length)?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+ay]),DG);ba=az.typ;if((bb=at[JB.keyFor(ba)],bb!==undefined?bb.v:false)){$s=5;continue;}$s=6;continue;case 5:ay++;$s=3;continue;case 6:bc=ba;(at||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bc)]={k:bc,v:true};bd=ba.fields;be=0;case 7:if(!(be<bd.$length)){$s=8;continue;}bf=be;bh=(bg=ba.fields,((bf<0||bf>=bg.$length)?($throwRuntimeError("index out of range"),undefined):bg.$array[bg.$offset+bf]));bi="";bj=HN.nil;bk=$clone(bh.name,O).name();if(!(bk==="")){$s=9;continue;}$s=10;continue;case 9:bi=bk;$s=11;continue;case 10:bj=bh.typ;if(bj.Kind()===22){$s=12;continue;}$s=13;continue;case 12:bl=bj.Elem().common();$s=14;case 14:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bj=bl;case 13:bi=bj.Name();case 11:bm=am(bi);$s=17;case 17:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}if(bm){$s=15;continue;}$s=16;continue;case 15:if((bn=aw[JB.keyFor(ba)],bn!==undefined?bn.v:0)>1||ao){bo=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);bp=false;DE.copy(an,bo);ao=bp;$s=-1;return[an,ao];}bq=ba.Field(bf);$s=18;case 18:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}DE.copy(an,bq);an.Index=IZ.nil;an.Index=$appendSlice(an.Index,az.index);an.Index=$append(an.Index,bf);ao=true;be++;$s=7;continue;case 16:if(ao||bj===HN.nil||!((bj.Kind()===25))){be++;$s=7;continue;}br=bj.kindType;if((bs=as[JB.keyFor(br)],bs!==undefined?bs.v:0)>0){bt=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bt)]={k:bt,v:2};be++;$s=7;continue;}if(as===false){as=$makeMap(JB.keyFor,[]);}bu=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bu)]={k:bu,v:1};if((bv=aw[JB.keyFor(ba)],bv!==undefined?bv.v:0)>1){bw=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bw)]={k:bw,v:2};}bx=IZ.nil;bx=$appendSlice(bx,az.index);bx=$append(bx,bf);ar=$append(ar,new DG.ptr(br,bx));be++;$s=7;continue;case 8:ay++;$s=3;continue;case 4:if(ao){$s=2;continue;}$s=1;continue;case 2:$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};CN.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=false;ap=this;aq=false;if(!(am[0]==="")){$s=1;continue;}$s=2;continue;case 1:ar=ap.fields;as=0;case 3:if(!(as<ar.$length)){$s=4;continue;}at=as;av=(au=ap.fields,((at<0||at>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+at]));aw=$clone(av.name,O).name();if(aw===""){$s=5;continue;}$s=6;continue;case 5:aq=true;as++;$s=3;continue;case 6:if(aw===am[0]){$s=7;continue;}$s=8;continue;case 7:ay=ap.Field(at);$s=9;case 9:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ax=$clone(ay,DE);az=true;DE.copy(an,ax);ao=az;$s=-1;return[an,ao];case 8:as++;$s=3;continue;case 4:case 2:if(!aq){$s=-1;return[an,ao];}bb=ap.FieldByNameFunc((function(am){return function(bb){var $ptr,bb;return bb===am[0];};})(am));$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;DE.copy(an,ba[0]);ao=ba[1];$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};DI=function(am){var $ptr,am;return $assertType(am,HN).ptrTo();};$pkg.PtrTo=DI;CB.ptr.prototype.Implements=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ao=am.Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:$s=-1;return DK($assertType(am,HN),an);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Implements=function(am){return this.$val.Implements(am);};CB.ptr.prototype.AssignableTo=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ao=$assertType(am,HN);ap=DL(ao,an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap||DK(ao,an);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.AssignableTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.AssignableTo=function(am){return this.$val.AssignableTo(am);};CB.ptr.prototype.ConvertibleTo=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ao=$assertType(am,HN);ap=GH(ao,an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return!(ap===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.ConvertibleTo=function(am){return this.$val.ConvertibleTo(am);};DK=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc;if(!((am.Kind()===20))){return false;}ao=am.kindType;if(ao.methods.$length===0){return true;}if(an.Kind()===20){ap=an.kindType;aq=0;ar=0;while(true){if(!(ar<ap.methods.$length)){break;}at=(as=ao.methods,((aq<0||aq>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+aq]));av=(au=ap.methods,((ar<0||ar>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+ar]));if($clone(an.nameOff(av.name),O).name()===$clone(ao.rtype.nameOff(at.name),O).name()&&an.typeOff(av.typ)===ao.rtype.typeOff(at.typ)){aq=aq+(1)>>0;if(aq>=ao.methods.$length){return true;}}ar=ar+(1)>>0;}return false;}aw=an.uncommon();if(aw===IO.nil){return false;}ax=0;ay=aw.methods();az=0;while(true){if(!(az<(aw.mcount>>0))){break;}bb=(ba=ao.methods,((ax<0||ax>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+ax]));bc=$clone(((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]),CD);if($clone(an.nameOff(bc.name),O).name()===$clone(ao.rtype.nameOff(bb.name),O).name()&&an.typeOff(bc.mtyp)===ao.rtype.typeOff(bb.typ)){ax=ax+(1)>>0;if(ax>=ao.methods.$length){return true;}}az=az+(1)>>0;}return false;};DL=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am===an){$s=-1;return true;}if(!(am.Name()==="")&&!(an.Name()==="")||!((am.Kind()===an.Kind()))){$s=-1;return false;}ao=DN(am,an,true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:DL};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};DM=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(ao){$s=-1;return $interfaceIsEqual(am,an);}aq=am.Name();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=an.Name();$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(!(aq===ar)){ap=true;$s=3;continue s;}as=am.Kind();$s=6;case 6:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}at=an.Kind();$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}ap=!((as===at));case 3:if(ap){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:au=am.common();$s=8;case 8:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;aw=an.common();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=DN(av,ax,false);$s=10;case 10:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}$s=-1;return ay;}return;}if($f===undefined){$f={$blk:DM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.$s=$s;$f.$r=$r;return $f;};DN=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am===an){$s=-1;return true;}ap=am.Kind();if(!((ap===an.Kind()))){$s=-1;return false;}if(1<=ap&&ap<=16||(ap===24)||(ap===26)){$s=-1;return true;}aq=ap;if(aq===(17)){$s=2;continue;}if(aq===(18)){$s=3;continue;}if(aq===(19)){$s=4;continue;}if(aq===(20)){$s=5;continue;}if(aq===(21)){$s=6;continue;}if((aq===(22))||(aq===(23))){$s=7;continue;}if(aq===(25)){$s=8;continue;}$s=9;continue;case 2:if(!(am.Len()===an.Len())){ar=false;$s=10;continue s;}as=DM(am.Elem(),an.Elem(),ao);$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;case 10:$s=-1;return ar;case 3:if(!(an.ChanDir()===3)){at=false;$s=14;continue s;}au=DM(am.Elem(),an.Elem(),ao);$s=15;case 15:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;case 14:if(at){$s=12;continue;}$s=13;continue;case 12:$s=-1;return true;case 13:if(!(an.ChanDir()===am.ChanDir())){av=false;$s=16;continue s;}aw=DM(am.Elem(),an.Elem(),ao);$s=17;case 17:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}av=aw;case 16:$s=-1;return av;case 4:ax=am.kindType;ay=an.kindType;if(!((ax.outCount===ay.outCount))||!((ax.inCount===ay.inCount))){$s=-1;return false;}az=0;case 18:if(!(az<ax.rtype.NumIn())){$s=19;continue;}ba=DM(ax.rtype.In(az),ay.rtype.In(az),ao);$s=22;case 22:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}if(!ba){$s=20;continue;}$s=21;continue;case 20:$s=-1;return false;case 21:az=az+(1)>>0;$s=18;continue;case 19:bb=0;case 23:if(!(bb<ax.rtype.NumOut())){$s=24;continue;}bc=DM(ax.rtype.Out(bb),ay.rtype.Out(bb),ao);$s=27;case 27:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}if(!bc){$s=25;continue;}$s=26;continue;case 25:$s=-1;return false;case 26:bb=bb+(1)>>0;$s=23;continue;case 24:$s=-1;return true;case 5:bd=am.kindType;be=an.kindType;if((bd.methods.$length===0)&&(be.methods.$length===0)){$s=-1;return true;}$s=-1;return false;case 6:bg=DM(am.Key(),an.Key(),ao);$s=29;case 29:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}if(!(bg)){bf=false;$s=28;continue s;}bh=DM(am.Elem(),an.Elem(),ao);$s=30;case 30:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bf=bh;case 28:$s=-1;return bf;case 7:bi=DM(am.Elem(),an.Elem(),ao);$s=31;case 31:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}$s=-1;return bi;case 8:bj=am.kindType;bk=an.kindType;if(!((bj.fields.$length===bk.fields.$length))){$s=-1;return false;}bl=bj.fields;bm=0;case 32:if(!(bm<bl.$length)){$s=33;continue;}bn=bm;bp=(bo=bj.fields,((bn<0||bn>=bo.$length)?($throwRuntimeError("index out of range"),undefined):bo.$array[bo.$offset+bn]));br=(bq=bk.fields,((bn<0||bn>=bq.$length)?($throwRuntimeError("index out of range"),undefined):bq.$array[bq.$offset+bn]));if(!($clone(bp.name,O).name()===$clone(br.name,O).name())){$s=-1;return false;}bs=DM(bp.typ,br.typ,ao);$s=36;case 36:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}if(!bs){$s=34;continue;}$s=35;continue;case 34:$s=-1;return false;case 35:if(ao&&!($clone(bp.name,O).tag()===$clone(br.name,O).tag())){$s=-1;return false;}if(!((bp.offset===br.offset))){$s=-1;return false;}if(!$clone(bp.name,O).isExported()){bt=$clone(bp.name,O).pkgPath();if(bt===""){bt=$clone(bj.pkgPath,O).name();}bu=$clone(br.name,O).pkgPath();if(bu===""){bu=$clone(bk.pkgPath,O).name();}if(!(bt===bu)){$s=-1;return false;}}bm++;$s=32;continue;case 33:$s=-1;return true;case 9:case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:DN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.$s=$s;$f.$r=$r;return $f;};ER=function(am){var $ptr,am;if(am===HN.nil){return $ifaceNil;}return am;};EW=function(am){var $ptr,am;return((am.kind&32)>>>0)===0;};FA.prototype.kind=function(){var $ptr,am;am=this.$val;return(((am&31)>>>0)>>>0);};$ptrType(FA).prototype.kind=function(){return new FA(this.$get()).kind();};EZ.ptr.prototype.pointer=function(){var $ptr,am;am=this;if(!((am.typ.size===4))||!am.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((am.flag&128)>>>0)===0))){return am.ptr.$get();}return am.ptr;};EZ.prototype.pointer=function(){return this.$val.pointer();};FD.ptr.prototype.Error=function(){var $ptr,am;am=this;if(am.Kind===0){return"reflect: call of "+am.Method+" on zero Value";}return"reflect: call of "+am.Method+" on "+new BZ(am.Kind).String()+" Value";};FD.prototype.Error=function(){return this.$val.Error();};FA.prototype.mustBe=function(am){var $ptr,am,an;an=this.$val;if(!((new FA(an).kind()===am))){$panic(new FD.ptr(BE(),new FA(an).kind()));}};$ptrType(FA).prototype.mustBe=function(am){return new FA(this.$get()).mustBe(am);};FA.prototype.mustBeExported=function(){var $ptr,am;am=this.$val;if(am===0){$panic(new FD.ptr(BE(),0));}if(!((((am&96)>>>0)===0))){$panic(new $String("reflect: "+BE()+" using value obtained using unexported field"));}};$ptrType(FA).prototype.mustBeExported=function(){return new FA(this.$get()).mustBeExported();};FA.prototype.mustBeAssignable=function(){var $ptr,am;am=this.$val;if(am===0){$panic(new FD.ptr(BE(),0));}if(!((((am&96)>>>0)===0))){$panic(new $String("reflect: "+BE()+" using value obtained using unexported field"));}if(((am&256)>>>0)===0){$panic(new $String("reflect: "+BE()+" using unaddressable value"));}};$ptrType(FA).prototype.mustBeAssignable=function(){return new FA(this.$get()).mustBeAssignable();};EZ.ptr.prototype.Addr=function(){var $ptr,am;am=this;if(((am.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new EZ.ptr(am.typ.ptrTo(),am.ptr,((((am.flag&96)>>>0))|22)>>>0);};EZ.prototype.Addr=function(){return this.$val.Addr();};EZ.ptr.prototype.Bool=function(){var $ptr,am;am=this;new FA(am.flag).mustBe(1);return am.ptr.$get();};EZ.prototype.Bool=function(){return this.$val.Bool();};EZ.ptr.prototype.Bytes=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(23);an=am.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:$s=-1;return am.ptr.$get();}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Bytes=function(){return this.$val.Bytes();};EZ.ptr.prototype.runes=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(23);an=am.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:$s=-1;return am.ptr.$get();}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.runes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.runes=function(){return this.$val.runes();};EZ.ptr.prototype.CanAddr=function(){var $ptr,am;am=this;return!((((am.flag&256)>>>0)===0));};EZ.prototype.CanAddr=function(){return this.$val.CanAddr();};EZ.ptr.prototype.CanSet=function(){var $ptr,am;am=this;return((am.flag&352)>>>0)===256;};EZ.prototype.CanSet=function(){return this.$val.CanSet();};EZ.ptr.prototype.Call=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(19);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).call("Call",am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Call};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Call=function(am){return this.$val.Call(am);};EZ.ptr.prototype.CallSlice=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(19);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).call("CallSlice",am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.CallSlice=function(am){return this.$val.CallSlice(am);};EZ.ptr.prototype.Complex=function(){var $ptr,am,an,ao,ap;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(15)){return(ap=am.ptr.$get(),new $Complex128(ap.$real,ap.$imag));}else if(ao===(16)){return am.ptr.$get();}$panic(new FD.ptr("reflect.Value.Complex",new FA(am.flag).kind()));};EZ.prototype.Complex=function(){return this.$val.Complex();};EZ.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(am.$length===1){$s=1;continue;}$s=2;continue;case 1:ao=$clone(an,EZ).Field((0>=am.$length?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+0]));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;case 2:new FA(an.flag).mustBe(25);ap=am;aq=0;case 4:if(!(aq<ap.$length)){$s=5;continue;}ar=aq;as=((aq<0||aq>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+aq]);if(ar>0){$s=6;continue;}$s=7;continue;case 6:if(!($clone(an,EZ).Kind()===22)){at=false;$s=10;continue s;}au=an.typ.Elem().Kind();$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au===25;case 10:if(at){$s=8;continue;}$s=9;continue;case 8:if($clone(an,EZ).IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}av=$clone(an,EZ).Elem();$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}an=av;case 9:case 7:aw=$clone(an,EZ).Field(as);$s=13;case 13:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}an=aw;aq++;$s=4;continue;case 5:$s=-1;return an;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};EZ.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(25);ap=an.typ.FieldByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],DE);ar=ao[1];if(ar){$s=2;continue;}$s=3;continue;case 2:as=$clone(an,EZ).FieldByIndex(aq.Index);$s=4;case 4:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 3:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};EZ.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;ap=an.typ.FieldByNameFunc(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],DE);ar=ao[1];if(ar){$s=2;continue;}$s=3;continue;case 2:as=$clone(an,EZ).FieldByIndex(aq.Index);$s=4;case 4:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 3:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};EZ.ptr.prototype.Float=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(13)){return am.ptr.$get();}else if(ao===(14)){return am.ptr.$get();}$panic(new FD.ptr("reflect.Value.Float",new FA(am.flag).kind()));};EZ.prototype.Float=function(){return this.$val.Float();};EZ.ptr.prototype.Int=function(){var $ptr,am,an,ao,ap;am=this;an=new FA(am.flag).kind();ao=am.ptr;ap=an;if(ap===(2)){return new $Int64(0,ao.$get());}else if(ap===(3)){return new $Int64(0,ao.$get());}else if(ap===(4)){return new $Int64(0,ao.$get());}else if(ap===(5)){return new $Int64(0,ao.$get());}else if(ap===(6)){return ao.$get();}$panic(new FD.ptr("reflect.Value.Int",new FA(am.flag).kind()));};EZ.prototype.Int=function(){return this.$val.Int();};EZ.ptr.prototype.CanInterface=function(){var $ptr,am;am=this;if(am.flag===0){$panic(new FD.ptr("reflect.Value.CanInterface",0));}return((am.flag&96)>>>0)===0;};EZ.prototype.CanInterface=function(){return this.$val.CanInterface();};EZ.ptr.prototype.Interface=function(){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=$ifaceNil;an=this;ao=BC($clone(an,EZ),true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;$s=-1;return am;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Interface=function(){return this.$val.Interface();};EZ.ptr.prototype.IsValid=function(){var $ptr,am;am=this;return!((am.flag===0));};EZ.prototype.IsValid=function(){return this.$val.IsValid();};EZ.ptr.prototype.Kind=function(){var $ptr,am;am=this;return new FA(am.flag).kind();};EZ.prototype.Kind=function(){return this.$val.Kind();};EZ.ptr.prototype.MapIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(21);ao=an.typ.kindType;ap=$clone(am,EZ).assignTo("reflect.Value.MapIndex",ao.key,0);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}am=ap;aq=0;if(!((((am.flag&128)>>>0)===0))){aq=am.ptr;}else{aq=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}ar=AR(an.typ,$clone(an,EZ).pointer(),aq);if(ar===0){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=ao.elem;at=((((an.flag|am.flag)>>>0))&96)>>>0;at=(at|((as.Kind()>>>0)))>>>0;if(EW(as)){au=AJ(as);AM(as,au,ar);$s=-1;return new EZ.ptr(as,au,(at|128)>>>0);}else{$s=-1;return new EZ.ptr(as,ar.$get(),at);}$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MapIndex=function(am){return this.$val.MapIndex(am);};EZ.ptr.prototype.MapKeys=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(21);an=am.typ.kindType;ao=an.key;ap=(((am.flag&96)>>>0)|(ao.Kind()>>>0))>>>0;aq=$clone(am,EZ).pointer();ar=0;if(!(aq===0)){ar=AY(aq);}as=AV(am.typ,aq);at=$makeSlice(IS,ar);au=0;au=0;case 1:if(!(au<at.$length)){$s=2;continue;}av=AW(as);$s=3;case 3:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if(aw===0){$s=2;continue;}if(EW(ao)){ax=AJ(ao);AM(ao,ax,aw);((au<0||au>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+au]=new EZ.ptr(ao,ax,(ap|128)>>>0));}else{((au<0||au>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+au]=new EZ.ptr(ao,aw.$get(),ap));}AX(as);au=au+(1)>>0;$s=1;continue;case 2:$s=-1;return $subslice(at,0,au);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MapKeys=function(){return this.$val.MapKeys();};EZ.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(an.typ===HN.nil){$panic(new FD.ptr("reflect.Value.Method",0));}if(!((((an.flag&512)>>>0)===0))){ao=true;$s=3;continue s;}ap=an.typ.NumMethod();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=(am>>>0)>=(ap>>>0);case 3:if(ao){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: Method index out of range"));case 2:if((an.typ.Kind()===20)&&$clone(an,EZ).IsNil()){$panic(new $String("reflect: Method on nil interface value"));}aq=(an.flag&160)>>>0;aq=(aq|(19))>>>0;aq=(aq|(((((am>>>0)<<10>>>0)|512)>>>0)))>>>0;$s=-1;return new EZ.ptr(an.typ,an.ptr,aq);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Method};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Method=function(am){return this.$val.Method(am);};EZ.ptr.prototype.NumMethod=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;if(am.typ===HN.nil){$panic(new FD.ptr("reflect.Value.NumMethod",0));}if(!((((am.flag&512)>>>0)===0))){$s=-1;return 0;}an=am.typ.NumMethod();$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.NumMethod};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.NumMethod=function(){return this.$val.NumMethod();};EZ.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(an.typ===HN.nil){$panic(new FD.ptr("reflect.Value.MethodByName",0));}if(!((((an.flag&512)>>>0)===0))){$s=-1;return new EZ.ptr(HN.nil,0,0);}ap=an.typ.MethodByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],CP);ar=ao[1];if(!ar){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=$clone(an,EZ).Method(aq.Index);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MethodByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};EZ.ptr.prototype.NumField=function(){var $ptr,am,an;am=this;new FA(am.flag).mustBe(25);an=am.typ.kindType;return an.fields.$length;};EZ.prototype.NumField=function(){return this.$val.NumField();};EZ.ptr.prototype.OverflowComplex=function(am){var $ptr,am,an,ao,ap;an=this;ao=new FA(an.flag).kind();ap=ao;if(ap===(15)){return FN(am.$real)||FN(am.$imag);}else if(ap===(16)){return false;}$panic(new FD.ptr("reflect.Value.OverflowComplex",new FA(an.flag).kind()));};EZ.prototype.OverflowComplex=function(am){return this.$val.OverflowComplex(am);};EZ.ptr.prototype.OverflowFloat=function(am){var $ptr,am,an,ao,ap;an=this;ao=new FA(an.flag).kind();ap=ao;if(ap===(13)){return FN(am);}else if(ap===(14)){return false;}$panic(new FD.ptr("reflect.Value.OverflowFloat",new FA(an.flag).kind()));};EZ.prototype.OverflowFloat=function(am){return this.$val.OverflowFloat(am);};FN=function(am){var $ptr,am;if(am<0){am=-am;}return 3.4028234663852886e+38<am&&am<=1.7976931348623157e+308;};EZ.ptr.prototype.OverflowInt=function(am){var $ptr,am,an,ao,ap,aq,ar;an=this;ao=new FA(an.flag).kind();ap=ao;if((ap===(2))||(ap===(3))||(ap===(4))||(ap===(5))||(ap===(6))){aq=$imul(an.typ.size,8)>>>0;ar=$shiftRightInt64(($shiftLeft64(am,((64-aq>>>0)))),((64-aq>>>0)));return!((am.$high===ar.$high&&am.$low===ar.$low));}$panic(new FD.ptr("reflect.Value.OverflowInt",new FA(an.flag).kind()));};EZ.prototype.OverflowInt=function(am){return this.$val.OverflowInt(am);};EZ.ptr.prototype.OverflowUint=function(am){var $ptr,am,an,ao,ap,aq,ar;an=this;ao=new FA(an.flag).kind();ap=ao;if((ap===(7))||(ap===(12))||(ap===(8))||(ap===(9))||(ap===(10))||(ap===(11))){aq=$imul(an.typ.size,8)>>>0;ar=$shiftRightUint64(($shiftLeft64(am,((64-aq>>>0)))),((64-aq>>>0)));return!((am.$high===ar.$high&&am.$low===ar.$low));}$panic(new FD.ptr("reflect.Value.OverflowUint",new FA(an.flag).kind()));};EZ.prototype.OverflowUint=function(am){return this.$val.OverflowUint(am);};EZ.ptr.prototype.Recv=function(){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=new EZ.ptr(HN.nil,0,0);an=false;ao=this;new FA(ao.flag).mustBe(18);new FA(ao.flag).mustBeExported();aq=$clone(ao,EZ).recv(false);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;am=ap[0];an=ap[1];$s=-1;return[am,an];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Recv=function(){return this.$val.Recv();};EZ.ptr.prototype.recv=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new EZ.ptr(HN.nil,0,0);ao=false;ap=this;aq=ap.typ.kindType;if(((aq.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}ar=aq.elem;an=new EZ.ptr(ar,0,(ar.Kind()>>>0));as=0;if(EW(ar)){as=AJ(ar);an.ptr=as;an.flag=(an.flag|(128))>>>0;}else{as=(an.$ptr_ptr||(an.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},an)));}au=BM(ap.typ,$clone(ap,EZ).pointer(),am,as);$s=1;case 1:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;av=at[0];ao=at[1];if(!av){an=new EZ.ptr(HN.nil,0,0);}$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.recv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.recv=function(am){return this.$val.recv(am);};EZ.ptr.prototype.Send=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(18);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).send($clone(am,EZ),false);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ao;$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Send};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Send=function(am){return this.$val.Send(am);};EZ.ptr.prototype.send=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=false;ap=this;aq=ap.typ.kindType;if(((aq.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new FA(am.flag).mustBeExported();ar=$clone(am,EZ).assignTo("reflect.Value.Send",aq.elem,0);$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}am=ar;as=0;if(!((((am.flag&128)>>>0)===0))){as=am.ptr;}else{as=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}at=BN(ap.typ,$clone(ap,EZ).pointer(),as,an);$s=2;case 2:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}ao=at;$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.send};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.send=function(am,an){return this.$val.send(am,an);};EZ.ptr.prototype.SetBool=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(1);an.ptr.$set(am);};EZ.prototype.SetBool=function(am){return this.$val.SetBool(am);};EZ.ptr.prototype.setRunes=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:an.ptr.$set(am);$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.setRunes=function(am){return this.$val.setRunes(am);};EZ.ptr.prototype.SetComplex=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(15)){an.ptr.$set(new $Complex64(am.$real,am.$imag));}else if(ap===(16)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetComplex",new FA(an.flag).kind()));}};EZ.prototype.SetComplex=function(am){return this.$val.SetComplex(am);};EZ.ptr.prototype.SetFloat=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(13)){an.ptr.$set($fround(am));}else if(ap===(14)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetFloat",new FA(an.flag).kind()));}};EZ.prototype.SetFloat=function(am){return this.$val.SetFloat(am);};EZ.ptr.prototype.SetInt=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(2)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))>>0));}else if(ap===(3)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))<<24>>24));}else if(ap===(4)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))<<16>>16));}else if(ap===(5)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))>>0));}else if(ap===(6)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetInt",new FA(an.flag).kind()));}};EZ.prototype.SetInt=function(am){return this.$val.SetInt(am);};EZ.ptr.prototype.SetMapIndex=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;new FA(ao.flag).mustBe(21);new FA(ao.flag).mustBeExported();new FA(am.flag).mustBeExported();ap=ao.typ.kindType;aq=$clone(am,EZ).assignTo("reflect.Value.SetMapIndex",ap.key,0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}am=aq;ar=0;if(!((((am.flag&128)>>>0)===0))){ar=am.ptr;}else{ar=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}if(an.typ===HN.nil){AT(ao.typ,$clone(ao,EZ).pointer(),ar);$s=-1;return;}new FA(an.flag).mustBeExported();as=$clone(an,EZ).assignTo("reflect.Value.SetMapIndex",ap.elem,0);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;at=0;if(!((((an.flag&128)>>>0)===0))){at=an.ptr;}else{at=(an.$ptr_ptr||(an.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},an)));}$r=AS(ao.typ,$clone(ao,EZ).pointer(),ar,at);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.SetMapIndex=function(am,an){return this.$val.SetMapIndex(am,an);};EZ.ptr.prototype.SetUint=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(7)){an.ptr.$set((am.$low>>>0));}else if(ap===(8)){an.ptr.$set((am.$low<<24>>>24));}else if(ap===(9)){an.ptr.$set((am.$low<<16>>>16));}else if(ap===(10)){an.ptr.$set((am.$low>>>0));}else if(ap===(11)){an.ptr.$set(am);}else if(ap===(12)){an.ptr.$set((am.$low>>>0));}else{$panic(new FD.ptr("reflect.Value.SetUint",new FA(an.flag).kind()));}};EZ.prototype.SetUint=function(am){return this.$val.SetUint(am);};EZ.ptr.prototype.SetPointer=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(26);an.ptr.$set(am);};EZ.prototype.SetPointer=function(am){return this.$val.SetPointer(am);};EZ.ptr.prototype.SetString=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(24);an.ptr.$set(am);};EZ.prototype.SetString=function(am){return this.$val.SetString(am);};EZ.ptr.prototype.String=function(){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=new FA(am.flag).kind();ao=an;if(ao===(0)){$s=-1;return"<invalid Value>";}else if(ao===(24)){$s=-1;return am.ptr.$get();}ap=$clone(am,EZ).Type().String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return"<"+ap+" Value>";}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.String};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.String=function(){return this.$val.String();};EZ.ptr.prototype.TryRecv=function(){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=new EZ.ptr(HN.nil,0,0);an=false;ao=this;new FA(ao.flag).mustBe(18);new FA(ao.flag).mustBeExported();aq=$clone(ao,EZ).recv(true);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;am=ap[0];an=ap[1];$s=-1;return[am,an];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.TryRecv=function(){return this.$val.TryRecv();};EZ.ptr.prototype.TrySend=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(18);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).send($clone(am,EZ),true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.TrySend=function(am){return this.$val.TrySend(am);};EZ.ptr.prototype.Type=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au;am=this;an=am.flag;if(an===0){$panic(new FD.ptr("reflect.Value.Type",0));}if(((an&512)>>>0)===0){return am.typ;}ao=(am.flag>>0)>>10>>0;if(am.typ.Kind()===20){ap=am.typ.kindType;if((ao>>>0)>=(ap.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ar=(aq=ap.methods,((ao<0||ao>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ao]));return am.typ.typeOff(ar.typ);}as=am.typ.uncommon();if(as===IO.nil||(ao>>>0)>=(as.mcount>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}au=$clone((at=as.methods(),((ao<0||ao>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+ao])),CD);return am.typ.typeOff(au.mtyp);};EZ.prototype.Type=function(){return this.$val.Type();};EZ.ptr.prototype.Uint=function(){var $ptr,am,an,ao,ap,aq;am=this;an=new FA(am.flag).kind();ao=am.ptr;ap=an;if(ap===(7)){return new $Uint64(0,ao.$get());}else if(ap===(8)){return new $Uint64(0,ao.$get());}else if(ap===(9)){return new $Uint64(0,ao.$get());}else if(ap===(10)){return new $Uint64(0,ao.$get());}else if(ap===(11)){return ao.$get();}else if(ap===(12)){return(aq=ao.$get(),new $Uint64(0,aq.constructor===Number?aq:1));}$panic(new FD.ptr("reflect.Value.Uint",new FA(am.flag).kind()));};EZ.prototype.Uint=function(){return this.$val.Uint();};EZ.ptr.prototype.UnsafeAddr=function(){var $ptr,am;am=this;if(am.typ===HN.nil){$panic(new FD.ptr("reflect.Value.UnsafeAddr",0));}if(((am.flag&256)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return am.ptr;};EZ.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};FS=function(am,an,ao){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!($interfaceIsEqual(an,ao))){$s=1;continue;}$s=2;continue;case 1:ap=an.String();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ao.String();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$panic(new $String(am+": "+ap+" != "+aq));case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:FS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};FU=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=$clone(am,EZ).Len();ap=ao+an>>0;if(ap<ao){$panic(new $String("reflect.Append: slice overflow"));}aq=$clone(am,EZ).Cap();if(ap<=aq){$s=1;continue;}$s=2;continue;case 1:ar=$clone(am,EZ).Slice(0,ap);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return[ar,ao,ap];case 2:if(aq===0){aq=an;}else{while(true){if(!(aq<ap)){break;}if(ao<1024){aq=aq+(aq)>>0;}else{aq=aq+((as=aq/4,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero")))>>0;}}}at=AA($clone(am,EZ).Type(),ap,aq);$s=4;case 4:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;av=BA($clone(au,EZ),$clone(am,EZ));$s=5;case 5:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}av;$s=-1;return[au,ao,ap];}return;}if($f===undefined){$f={$blk:FU};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};FV=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:new FA(am.flag).mustBe(23);ap=FU($clone(am,EZ),an.$length);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;am=ao[0];aq=ao[1];ar=ao[2];as=aq;at=0;au=as;av=at;case 2:if(!(au<ar)){$s=3;continue;}aw=$clone(am,EZ).Index(au);$s=4;case 4:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$r=$clone(aw,EZ).Set($clone(((av<0||av>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+av]),EZ));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ax=au+1>>0;ay=av+1>>0;au=ax;av=ay;$s=2;continue;case 3:$s=-1;return am;}return;}if($f===undefined){$f={$blk:FV};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Append=FV;GD=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=am.Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===21))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeMap of non-map type"));case 2:ao=AP($assertType(am,HN));ap=am.common();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(ap,ao,21);}return;}if($f===undefined){$f={$blk:GD};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeMap=GD;GE=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(($clone(am,EZ).Kind()===22))){$s=-1;return am;}an=$clone(am,EZ).Elem();$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:GE};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Indirect=GE;GF=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}an=AJ($assertType(am,HN));ao=22;ap=am.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.ptrTo();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,an,ao);}return;}if($f===undefined){$f={$blk:GF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=GF;EZ.ptr.prototype.assignTo=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=this;if(!((((ap.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:aq=BF(am,$clone(ap,EZ));$s=3;case 3:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;case 2:ar=DL(an,ap.typ);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(ar){$s=5;continue;}if(DK(an,ap.typ)){$s=6;continue;}$s=7;continue;case 5:ap.typ=an;as=(ap.flag&480)>>>0;as=(as|((an.Kind()>>>0)))>>>0;$s=-1;return new EZ.ptr(an,ap.ptr,as);case 6:if(ao===0){ao=AJ(an);}at=BC($clone(ap,EZ),false);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;av=an.NumMethod();$s=13;case 13:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(av===0){$s=10;continue;}$s=11;continue;case 10:ao.$set(au);$s=12;continue;case 11:BD(an,au,ao);case 12:$s=-1;return new EZ.ptr(an,ao,148);case 7:case 4:$panic(new $String(am+": value of type "+ap.typ.String()+" is not assignable to type "+an.String()));$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.assignTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.assignTo=function(am,an,ao){return this.$val.assignTo(am,an,ao);};EZ.ptr.prototype.Convert=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((((an.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ao=BF("Convert",$clone(an,EZ));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;case 2:ap=am.common();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=GH(ap,an.typ);$s=5;case 5:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;if(ar===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:as=am.String();$s=8;case 8:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+an.typ.String()+" cannot be converted to type "+as));case 7:at=ar($clone(an,EZ),am);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=-1;return at;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Convert=function(am){return this.$val.Convert(am);};GH=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=an.Kind();if((ao===(2))||(ao===(3))||(ao===(4))||(ao===(5))||(ao===(6))){$s=2;continue;}if((ao===(7))||(ao===(8))||(ao===(9))||(ao===(10))||(ao===(11))||(ao===(12))){$s=3;continue;}if((ao===(13))||(ao===(14))){$s=4;continue;}if((ao===(15))||(ao===(16))){$s=5;continue;}if(ao===(24)){$s=6;continue;}if(ao===(23)){$s=7;continue;}$s=8;continue;case 2:ap=am.Kind();if((ap===(2))||(ap===(3))||(ap===(4))||(ap===(5))||(ap===(6))||(ap===(7))||(ap===(8))||(ap===(9))||(ap===(10))||(ap===(11))||(ap===(12))){$s=-1;return GN;}else if((ap===(13))||(ap===(14))){$s=-1;return GR;}else if(ap===(24)){$s=-1;return GV;}$s=8;continue;case 3:aq=am.Kind();if((aq===(2))||(aq===(3))||(aq===(4))||(aq===(5))||(aq===(6))||(aq===(7))||(aq===(8))||(aq===(9))||(aq===(10))||(aq===(11))||(aq===(12))){$s=-1;return GO;}else if((aq===(13))||(aq===(14))){$s=-1;return GS;}else if(aq===(24)){$s=-1;return GW;}$s=8;continue;case 4:ar=am.Kind();if((ar===(2))||(ar===(3))||(ar===(4))||(ar===(5))||(ar===(6))){$s=-1;return GP;}else if((ar===(7))||(ar===(8))||(ar===(9))||(ar===(10))||(ar===(11))||(ar===(12))){$s=-1;return GQ;}else if((ar===(13))||(ar===(14))){$s=-1;return GT;}$s=8;continue;case 5:as=am.Kind();if((as===(15))||(as===(16))){$s=-1;return GU;}$s=8;continue;case 6:if(!(am.Kind()===23)){at=false;$s=11;continue s;}au=am.Elem().PkgPath();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au==="";case 11:if(at){$s=9;continue;}$s=10;continue;case 9:av=am.Elem().Kind();$s=14;case 14:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if(aw===(8)){$s=-1;return GY;}else if(aw===(5)){$s=-1;return HA;}case 13:case 10:$s=8;continue;case 7:if(!(am.Kind()===24)){ax=false;$s=17;continue s;}ay=an.Elem().PkgPath();$s=18;case 18:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ax=ay==="";case 17:if(ax){$s=15;continue;}$s=16;continue;case 15:az=an.Elem().Kind();$s=20;case 20:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;if(ba===(8)){$s=-1;return GX;}else if(ba===(5)){$s=-1;return GZ;}case 19:case 16:case 8:case 1:bb=DN(am,an,false);$s=23;case 23:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}if(bb){$s=21;continue;}$s=22;continue;case 21:$s=-1;return AZ;case 22:if(!((am.Kind()===22)&&am.Name()===""&&(an.Kind()===22)&&an.Name()==="")){bc=false;$s=26;continue s;}bd=am.Elem().common();$s=27;case 27:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=an.Elem().common();$s=28;case 28:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf;bh=DN(be,bg,false);$s=29;case 29:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bc=bh;case 26:if(bc){$s=24;continue;}$s=25;continue;case 24:$s=-1;return AZ;case 25:if(DK(am,an)){if(an.Kind()===20){$s=-1;return HC;}$s=-1;return HB;}$s=-1;return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:GH};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.$s=$s;$f.$r=$r;return $f;};GI=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.size;if(as===(4)){ar.$set($fround(an));}else if(as===(8)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:GI};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GJ=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.size;if(as===(8)){ar.$set(new $Complex64(an.$real,an.$imag));}else if(as===(16)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:GJ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GK=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$clone(ar,EZ).SetString(an);ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GK};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GL=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=$clone(ar,EZ).SetBytes(an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GL};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GM=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=$clone(ar,EZ).setRunes(an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GN=function(am,an){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=AK((am.flag&96)>>>0,(ao=$clone(am,EZ).Int(),new $Uint64(ao.$high,ao.$low)),an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:GN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};GO=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=AK((am.flag&96)>>>0,$clone(am,EZ).Uint(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GO};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GP=function(am,an){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=AK((am.flag&96)>>>0,(ao=new $Int64(0,$clone(am,EZ).Float()),new $Uint64(ao.$high,ao.$low)),an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:GP};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};GQ=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=AK((am.flag&96)>>>0,new $Uint64(0,$clone(am,EZ).Float()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GQ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GR=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$flatten64($clone(am,EZ).Int()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GR};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GS=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$flatten64($clone(am,EZ).Uint()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GT=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$clone(am,EZ).Float(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GT};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GU=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GJ((am.flag&96)>>>0,$clone(am,EZ).Complex(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GU};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GV=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GK((am.flag&96)>>>0,$encodeRune($clone(am,EZ).Int().$low),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GV};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GW=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GK((am.flag&96)>>>0,$encodeRune($clone(am,EZ).Uint().$low),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GW};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GX=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).Bytes();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$bytesToString(ap);ar=an;as=GK(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GX};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GY=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=new JC($stringToBytes(ap));ar=an;as=GL(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GY};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GZ=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).runes();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$runesToString(ap);ar=an;as=GK(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GZ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};HA=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=new JP($stringToRunes(ap));ar=an;as=GM(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:HA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};HB=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=an.common();$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=AJ(ao);$s=2;case 2:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=BC($clone(am,EZ),false);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;at=an.NumMethod();$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===0){$s=4;continue;}$s=5;continue;case 4:aq.$set(as);$s=6;continue;case 5:BD($assertType(an,HN),as,aq);case 6:au=an.common();$s=8;case 8:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(au,aq,(((((am.flag&96)>>>0)|128)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:HB};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};HC=function(am,an){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(am,EZ).IsNil()){$s=1;continue;}$s=2;continue;case 1:ao=AI(an);$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=ao;ap.flag=(ap.flag|(((am.flag&96)>>>0)))>>>0;$s=-1;return ap;case 2:aq=$clone(am,EZ).Elem();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=HB($clone(aq,EZ),an);$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar;}return;}if($f===undefined){$f={$blk:HC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};IO.methods=[{prop:"methods",name:"methods",pkg:"reflect",typ:$funcType([],[HP],false)}];JQ.methods=[{prop:"in$",name:"in",pkg:"reflect",typ:$funcType([],[HO],false)},{prop:"out",name:"out",pkg:"reflect",typ:$funcType([],[HO],false)}];O.methods=[{prop:"name",name:"name",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"tag",name:"tag",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"isExported",name:"isExported",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"data",name:"data",pkg:"reflect",typ:$funcType([$Int],[IL],false)},{prop:"nameLen",name:"nameLen",pkg:"reflect",typ:$funcType([],[$Int],false)},{prop:"tagLen",name:"tagLen",pkg:"reflect",typ:$funcType([],[$Int],false)}];BZ.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HN.methods=[{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[IO],false)},{prop:"nameOff",name:"nameOff",pkg:"reflect",typ:$funcType([CY],[O],false)},{prop:"typeOff",name:"typeOff",pkg:"reflect",typ:$funcType([CZ],[HN],false)},{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"textOff",name:"textOff",pkg:"reflect",typ:$funcType([DA],[$UnsafePointer],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"exportedMethods",name:"exportedMethods",pkg:"reflect",typ:$funcType([],[HP],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CE],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BY],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BY],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BY],[$Bool],false)}];CE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];IX.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)}];JB.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)}];DF.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Lookup",name:"Lookup",pkg:"",typ:$funcType([$String],[$String,$Bool],false)}];EZ.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[IH],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,IS],[IS],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[EZ],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[KB],false)},{prop:"IsNil",name:"IsNil",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Pointer",name:"Pointer",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([EZ],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([JC],[],false)},{prop:"SetCap",name:"SetCap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetLen",name:"SetLen",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Slice",name:"Slice",pkg:"",typ:$funcType([$Int,$Int],[EZ],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[EZ],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[],false)},{prop:"pointer",name:"pointer",pkg:"reflect",typ:$funcType([],[$UnsafePointer],false)},{prop:"Addr",name:"Addr",pkg:"",typ:$funcType([],[EZ],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[JC],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[JP],false)},{prop:"CanAddr",name:"CanAddr",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"CanSet",name:"CanSet",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([IS],[IS],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([IS],[IS],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[EZ],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[EZ],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[EZ],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"CanInterface",name:"CanInterface",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"IsValid",name:"IsValid",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([EZ],[EZ],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[IS],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[EZ],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"OverflowComplex",name:"OverflowComplex",pkg:"",typ:$funcType([$Complex128],[$Bool],false)},{prop:"OverflowFloat",name:"OverflowFloat",pkg:"",typ:$funcType([$Float64],[$Bool],false)},{prop:"OverflowInt",name:"OverflowInt",pkg:"",typ:$funcType([$Int64],[$Bool],false)},{prop:"OverflowUint",name:"OverflowUint",pkg:"",typ:$funcType([$Uint64],[$Bool],false)},{prop:"Recv",name:"Recv",pkg:"",typ:$funcType([],[EZ,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[EZ,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([EZ],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([EZ,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([JP],[],false)},{prop:"SetComplex",name:"SetComplex",pkg:"",typ:$funcType([$Complex128],[],false)},{prop:"SetFloat",name:"SetFloat",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"SetInt",name:"SetInt",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"SetMapIndex",name:"SetMapIndex",pkg:"",typ:$funcType([EZ,EZ],[],false)},{prop:"SetUint",name:"SetUint",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"SetPointer",name:"SetPointer",pkg:"",typ:$funcType([$UnsafePointer],[],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"TryRecv",name:"TryRecv",pkg:"",typ:$funcType([],[EZ,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([EZ],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BY],false)},{prop:"Uint",name:"Uint",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"UnsafeAddr",name:"UnsafeAddr",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"assignTo",name:"assignTo",pkg:"reflect",typ:$funcType([$String,HN,$UnsafePointer],[EZ],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BY],[EZ],false)}];FA.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BZ],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BZ],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];KC.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];L.init("reflect",[{prop:"pkgPath",name:"pkgPath",exported:false,typ:CY,tag:""},{prop:"mcount",name:"mcount",exported:false,typ:$Uint16,tag:""},{prop:"_$2",name:"_",exported:false,typ:$Uint16,tag:""},{prop:"moff",name:"moff",exported:false,typ:$Uint32,tag:""},{prop:"_$4",name:"_",exported:false,typ:$Uint32,tag:""},{prop:"_methods",name:"_methods",exported:false,typ:HP,tag:""}]);N.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"func\""},{prop:"inCount",name:"inCount",exported:false,typ:$Uint16,tag:""},{prop:"outCount",name:"outCount",exported:false,typ:$Uint16,tag:""},{prop:"_in",name:"_in",exported:false,typ:HO,tag:""},{prop:"_out",name:"_out",exported:false,typ:HO,tag:""}]);O.init("reflect",[{prop:"bytes",name:"bytes",exported:false,typ:IL,tag:""}]);P.init("reflect",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"tag",name:"tag",exported:false,typ:$String,tag:""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:$String,tag:""},{prop:"exported",name:"exported",exported:false,typ:$Bool,tag:""}]);AU.init("reflect",[{prop:"t",name:"t",exported:false,typ:BY,tag:""},{prop:"m",name:"m",exported:false,typ:IH,tag:""},{prop:"keys",name:"keys",exported:false,typ:IH,tag:""},{prop:"i",name:"i",exported:false,typ:$Int,tag:""}]);BY.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CE],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BY],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BY],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[IO],false)}]);CB.init("reflect",[{prop:"size",name:"size",exported:false,typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",exported:false,typ:$Uintptr,tag:""},{prop:"hash",name:"hash",exported:false,typ:$Uint32,tag:""},{prop:"tflag",name:"tflag",exported:false,typ:CA,tag:""},{prop:"align",name:"align",exported:false,typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",exported:false,typ:$Uint8,tag:""},{prop:"kind",name:"kind",exported:false,typ:$Uint8,tag:""},{prop:"alg",name:"alg",exported:false,typ:IK,tag:""},{prop:"gcdata",name:"gcdata",exported:false,typ:IL,tag:""},{prop:"str",name:"str",exported:false,typ:CY,tag:""},{prop:"ptrToThis",name:"ptrToThis",exported:false,typ:CZ,tag:""}]);CC.init("reflect",[{prop:"hash",name:"hash",exported:false,typ:JT,tag:""},{prop:"equal",name:"equal",exported:false,typ:JU,tag:""}]);CD.init("reflect",[{prop:"name",name:"name",exported:false,typ:CY,tag:""},{prop:"mtyp",name:"mtyp",exported:false,typ:CZ,tag:""},{prop:"ifn",name:"ifn",exported:false,typ:DA,tag:""},{prop:"tfn",name:"tfn",exported:false,typ:DA,tag:""}]);CF.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"array\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"slice",name:"slice",exported:false,typ:HN,tag:""},{prop:"len",name:"len",exported:false,typ:$Uintptr,tag:""}]);CG.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"dir",name:"dir",exported:false,typ:$Uintptr,tag:""}]);CH.init("reflect",[{prop:"name",name:"name",exported:false,typ:CY,tag:""},{prop:"typ",name:"typ",exported:false,typ:CZ,tag:""}]);CI.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"interface\""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:O,tag:""},{prop:"methods",name:"methods",exported:false,typ:IM,tag:""}]);CJ.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"map\""},{prop:"key",name:"key",exported:false,typ:HN,tag:""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"bucket",name:"bucket",exported:false,typ:HN,tag:""},{prop:"hmap",name:"hmap",exported:false,typ:HN,tag:""},{prop:"keysize",name:"keysize",exported:false,typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",exported:false,typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",exported:false,typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",exported:false,typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",exported:false,typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",exported:false,typ:$Bool,tag:""},{prop:"needkeyupdate",name:"needkeyupdate",exported:false,typ:$Bool,tag:""}]);CK.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""}]);CL.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""}]);CM.init("reflect",[{prop:"name",name:"name",exported:false,typ:O,tag:""},{prop:"typ",name:"typ",exported:false,typ:HN,tag:""},{prop:"offset",name:"offset",exported:false,typ:$Uintptr,tag:""}]);CN.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"struct\""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:O,tag:""},{prop:"fields",name:"fields",exported:false,typ:IN,tag:""}]);CP.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",exported:true,typ:BY,tag:""},{prop:"Func",name:"Func",exported:true,typ:EZ,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Int,tag:""}]);DE.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",exported:true,typ:BY,tag:""},{prop:"Tag",name:"Tag",exported:true,typ:DF,tag:""},{prop:"Offset",name:"Offset",exported:true,typ:$Uintptr,tag:""},{prop:"Index",name:"Index",exported:true,typ:IZ,tag:""},{prop:"Anonymous",name:"Anonymous",exported:true,typ:$Bool,tag:""}]);DG.init("reflect",[{prop:"typ",name:"typ",exported:false,typ:JB,tag:""},{prop:"index",name:"index",exported:false,typ:IZ,tag:""}]);EZ.init("reflect",[{prop:"typ",name:"typ",exported:false,typ:HN,tag:""},{prop:"ptr",name:"ptr",exported:false,typ:$UnsafePointer,tag:""},{prop:"flag",name:"",exported:false,typ:FA,tag:""}]);FD.init("",[{prop:"Method",name:"Method",exported:true,typ:$String,tag:""},{prop:"Kind",name:"Kind",exported:true,typ:BZ,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}S=HM.nil;U=HO.nil;DB=new HR.ptr(new E.RWMutex.ptr(new E.Mutex.ptr(0,0),0,0,0,0),false);G=false;M={};Q={};BG=$assertType($internalize($call,$emptyInterface),II);BL=$assertType($internalize($select,$emptyInterface),II);BH=J($jsObjectPtr);CQ=new IJ(["invalid","bool","int","int8","int16","int32","int64","uint","uint8","uint16","uint32","uint64","uintptr","float32","float64","complex64","complex128","array","chan","func","interface","map","ptr","slice","string","struct","unsafe.Pointer"]);FM=$assertType(AB(new $Uint8(0)),HN);$r=H();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["fmt"]=(function(){var $pkg={},$init,C,D,H,E,F,A,G,B,I,J,K,L,M,N,O,P,AI,AU,AV,AW,BI,BJ,BK,BL,BM,BN,BO,BP,BS,CN,CO,Q,AF,AX,BB,BD,BE,R,S,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AG,AH,AY,AZ,BF;C=$packages["errors"];D=$packages["io"];H=$packages["math"];E=$packages["os"];F=$packages["reflect"];A=$packages["strconv"];G=$packages["sync"];B=$packages["unicode/utf8"];I=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags",true,"fmt",false,function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,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.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.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});J=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt",true,"fmt",false,function(buf_,fmtFlags_,wid_,prec_,intbuf_){this.$val=this;if(arguments.length===0){this.buf=BK.nil;this.fmtFlags=new I.ptr(false,false,false,false,false,false,false,false,false);this.wid=0;this.prec=0;this.intbuf=BL.zero();return;}this.buf=buf_;this.fmtFlags=fmtFlags_;this.wid=wid_;this.prec=prec_;this.intbuf=intbuf_;});K=$pkg.State=$newType(8,$kindInterface,"fmt.State",true,"fmt",true,null);L=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter",true,"fmt",true,null);M=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer",true,"fmt",true,null);N=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer",true,"fmt",true,null);O=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer",true,"fmt",false,null);P=$pkg.pp=$newType(0,$kindStruct,"fmt.pp",true,"fmt",false,function(buf_,arg_,value_,fmt_,reordered_,goodArgNum_,panicking_,erroring_){this.$val=this;if(arguments.length===0){this.buf=O.nil;this.arg=$ifaceNil;this.value=new F.Value.ptr(BJ.nil,0,0);this.fmt=new J.ptr(BK.nil,new I.ptr(false,false,false,false,false,false,false,false,false),0,0,BL.zero());this.reordered=false;this.goodArgNum=false;this.panicking=false;this.erroring=false;return;}this.buf=buf_;this.arg=arg_;this.value=value_;this.fmt=fmt_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.panicking=panicking_;this.erroring=erroring_;});AI=$pkg.ScanState=$newType(8,$kindInterface,"fmt.ScanState",true,"fmt",true,null);AU=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError",true,"fmt",false,function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});AV=$pkg.ss=$newType(0,$kindStruct,"fmt.ss",true,"fmt",false,function(rs_,buf_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rs=$ifaceNil;this.buf=O.nil;this.count=0;this.atEOF=false;this.ssave=new AW.ptr(false,false,false,0,0,0);return;}this.rs=rs_;this.buf=buf_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});AW=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave",true,"fmt",false,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_;});BI=$sliceType($emptyInterface);BJ=$ptrType(F.rtype);BK=$ptrType(O);BL=$arrayType($Uint8,68);BM=$arrayType($Uint16,2);BN=$sliceType(BM);BO=$sliceType($Uint8);BP=$ptrType(P);BS=$ptrType(AV);CN=$ptrType(J);CO=$funcType([$Int32],[$Bool],false);J.ptr.prototype.clearflags=function(){var $ptr,a;a=this;I.copy(a.fmtFlags,new I.ptr(false,false,false,false,false,false,false,false,false));};J.prototype.clearflags=function(){return this.$val.clearflags();};J.ptr.prototype.init=function(a){var $ptr,a,b;b=this;b.buf=a;b.clearflags();};J.prototype.init=function(a){return this.$val.init(a);};J.ptr.prototype.writePadding=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=this;if(a<=0){return;}c=b.buf.$get();d=c.$length;e=d+a>>0;if(e>c.$capacity){c=$makeSlice(O,(($imul(c.$capacity,2))+a>>0));$copySlice(c,b.buf.$get());}f=32;if(b.fmtFlags.zero){f=48;}g=$subslice(c,d,e);h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=f);i++;}b.buf.$set($subslice(c,0,e));};J.prototype.writePadding=function(a){return this.$val.writePadding(a);};J.ptr.prototype.pad=function(a){var $ptr,a,b,c;b=this;if(!b.fmtFlags.widPresent||(b.wid===0)){b.buf.Write(a);return;}c=b.wid-B.RuneCount(a)>>0;if(!b.fmtFlags.minus){b.writePadding(c);b.buf.Write(a);}else{b.buf.Write(a);b.writePadding(c);}};J.prototype.pad=function(a){return this.$val.pad(a);};J.ptr.prototype.padString=function(a){var $ptr,a,b,c;b=this;if(!b.fmtFlags.widPresent||(b.wid===0)){b.buf.WriteString(a);return;}c=b.wid-B.RuneCountInString(a)>>0;if(!b.fmtFlags.minus){b.writePadding(c);b.buf.WriteString(a);}else{b.buf.WriteString(a);b.writePadding(c);}};J.prototype.padString=function(a){return this.$val.padString(a);};J.ptr.prototype.fmt_boolean=function(a){var $ptr,a,b;b=this;if(a){b.padString("true");}else{b.padString("false");}};J.prototype.fmt_boolean=function(a){return this.$val.fmt_boolean(a);};J.ptr.prototype.fmt_unicode=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=$subslice(new BO(b.intbuf),0);d=4;if(b.fmtFlags.precPresent&&b.prec>4){d=b.prec;e=(((2+d>>0)+2>>0)+4>>0)+1>>0;if(e>c.$length){c=$makeSlice(BO,e);}}f=c.$length;if(b.fmtFlags.sharp&&(a.$high<0||(a.$high===0&&a.$low<=1114111))&&A.IsPrint((a.$low>>0))){f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=39);f=f-(B.RuneLen((a.$low>>0)))>>0;B.EncodeRune($subslice(c,f),(a.$low>>0));f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=39);f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=32);}while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=16)))){break;}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]="0123456789ABCDEFX".charCodeAt($flatten64(new $Uint64(a.$high&0,(a.$low&15)>>>0))));d=d-(1)>>0;a=$shiftRightUint64(a,(4));}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]="0123456789ABCDEFX".charCodeAt($flatten64(a)));d=d-(1)>>0;while(true){if(!(d>0)){break;}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=48);d=d-(1)>>0;}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=43);f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=85);g=b.fmtFlags.zero;b.fmtFlags.zero=false;b.pad($subslice(c,f));b.fmtFlags.zero=g;};J.prototype.fmt_unicode=function(a){return this.$val.fmt_unicode(a);};J.ptr.prototype.fmt_integer=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;e=this;g=c&&(f=new $Int64(a.$high,a.$low),(f.$high<0||(f.$high===0&&f.$low<0)));if(g){a=new $Uint64(-a.$high,-a.$low);}h=$subslice(new BO(e.intbuf),0);if(e.fmtFlags.widPresent||e.fmtFlags.precPresent){i=(3+e.wid>>0)+e.prec>>0;if(i>h.$length){h=$makeSlice(BO,i);}}j=0;if(e.fmtFlags.precPresent){j=e.prec;if((j===0)&&(a.$high===0&&a.$low===0)){k=e.fmtFlags.zero;e.fmtFlags.zero=false;e.writePadding(e.wid);e.fmtFlags.zero=k;return;}}else if(e.fmtFlags.zero&&e.fmtFlags.widPresent){j=e.wid;if(g||e.fmtFlags.plus||e.fmtFlags.space){j=j-(1)>>0;}}l=h.$length;m=b;if(m===(10)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=10)))){break;}l=l-(1)>>0;n=$div64(a,new $Uint64(0,10),false);((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=((o=new $Uint64(0+a.$high,48+a.$low),p=$mul64(n,new $Uint64(0,10)),new $Uint64(o.$high-p.$high,o.$low-p.$low)).$low<<24>>>24));a=n;}}else if(m===(16)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=d.charCodeAt($flatten64(new $Uint64(a.$high&0,(a.$low&15)>>>0))));a=$shiftRightUint64(a,(4));}}else if(m===(8)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=((q=new $Uint64(a.$high&0,(a.$low&7)>>>0),new $Uint64(0+q.$high,48+q.$low)).$low<<24>>>24));a=$shiftRightUint64(a,(3));}}else if(m===(2)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=((r=new $Uint64(a.$high&0,(a.$low&1)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));a=$shiftRightUint64(a,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=d.charCodeAt($flatten64(a)));while(true){if(!(l>0&&j>(h.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=48);}if(e.fmtFlags.sharp){s=b;if(s===(8)){if(!((((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=48);}}else if(s===(16)){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=d.charCodeAt(16));l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=48);}}if(g){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=45);}else if(e.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=43);}else if(e.fmtFlags.space){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=32);}t=e.fmtFlags.zero;e.fmtFlags.zero=false;e.pad($subslice(h,l));e.fmtFlags.zero=t;};J.prototype.fmt_integer=function(a,b,c,d){return this.$val.fmt_integer(a,b,c,d);};J.ptr.prototype.truncate=function(a){var $ptr,a,b,c,d,e,f,g;b=this;if(b.fmtFlags.precPresent){c=b.prec;d=a;e=0;while(true){if(!(e<d.length)){break;}f=$decodeRune(d,e);g=e;c=c-(1)>>0;if(c<0){return $substring(a,0,g);}e+=f[1];}}return a;};J.prototype.truncate=function(a){return this.$val.truncate(a);};J.ptr.prototype.fmt_s=function(a){var $ptr,a,b;b=this;a=b.truncate(a);b.padString(a);};J.prototype.fmt_s=function(a){return this.$val.fmt_s(a);};J.ptr.prototype.fmt_sbx=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=this;e=b.$length;if(b===BO.nil){e=a.length;}if(d.fmtFlags.precPresent&&d.prec<e){e=d.prec;}f=$imul(2,e);if(f>0){if(d.fmtFlags.space){if(d.fmtFlags.sharp){f=$imul(f,(2));}f=f+((e-1>>0))>>0;}else if(d.fmtFlags.sharp){f=f+(2)>>0;}}else{if(d.fmtFlags.widPresent){d.writePadding(d.wid);}return;}if(d.fmtFlags.widPresent&&d.wid>f&&!d.fmtFlags.minus){d.writePadding(d.wid-f>>0);}g=d.buf.$get();if(d.fmtFlags.sharp){g=$append(g,48,c.charCodeAt(16));}h=0;i=0;while(true){if(!(i<e)){break;}if(d.fmtFlags.space&&i>0){g=$append(g,32);if(d.fmtFlags.sharp){g=$append(g,48,c.charCodeAt(16));}}if(!(b===BO.nil)){h=((i<0||i>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+i]);}else{h=a.charCodeAt(i);}g=$append(g,c.charCodeAt((h>>>4<<24>>>24)),c.charCodeAt(((h&15)>>>0)));i=i+(1)>>0;}d.buf.$set(g);if(d.fmtFlags.widPresent&&d.wid>f&&d.fmtFlags.minus){d.writePadding(d.wid-f>>0);}};J.prototype.fmt_sbx=function(a,b,c){return this.$val.fmt_sbx(a,b,c);};J.ptr.prototype.fmt_sx=function(a,b){var $ptr,a,b,c;c=this;c.fmt_sbx(a,BO.nil,b);};J.prototype.fmt_sx=function(a,b){return this.$val.fmt_sx(a,b);};J.ptr.prototype.fmt_bx=function(a,b){var $ptr,a,b,c;c=this;c.fmt_sbx("",a,b);};J.prototype.fmt_bx=function(a,b){return this.$val.fmt_bx(a,b);};J.ptr.prototype.fmt_q=function(a){var $ptr,a,b,c;b=this;a=b.truncate(a);if(b.fmtFlags.sharp&&A.CanBackquote(a)){b.padString("`"+a+"`");return;}c=$subslice(new BO(b.intbuf),0,0);if(b.fmtFlags.plus){b.pad(A.AppendQuoteToASCII(c,a));}else{b.pad(A.AppendQuote(c,a));}};J.prototype.fmt_q=function(a){return this.$val.fmt_q(a);};J.ptr.prototype.fmt_c=function(a){var $ptr,a,b,c,d,e;b=this;c=(a.$low>>0);if((a.$high>0||(a.$high===0&&a.$low>1114111))){c=65533;}d=$subslice(new BO(b.intbuf),0,0);e=B.EncodeRune($subslice(d,0,4),c);b.pad($subslice(d,0,e));};J.prototype.fmt_c=function(a){return this.$val.fmt_c(a);};J.ptr.prototype.fmt_qc=function(a){var $ptr,a,b,c,d;b=this;c=(a.$low>>0);if((a.$high>0||(a.$high===0&&a.$low>1114111))){c=65533;}d=$subslice(new BO(b.intbuf),0,0);if(b.fmtFlags.plus){b.pad(A.AppendQuoteRuneToASCII(d,c));}else{b.pad(A.AppendQuoteRune(d,c));}};J.prototype.fmt_qc=function(a){return this.$val.fmt_qc(a);};J.ptr.prototype.fmt_float=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=this;if(e.fmtFlags.precPresent){d=e.prec;}f=A.AppendFloat($subslice(new BO(e.intbuf),0,1),a,(c<<24>>>24),d,b);if(((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===45)||((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===43)){f=$subslice(f,1);}else{(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=43);}if(e.fmtFlags.space&&((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])===43)&&!e.fmtFlags.plus){(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=32);}if(((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===73)||((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===78)){g=e.fmtFlags.zero;e.fmtFlags.zero=false;if(((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===78)&&!e.fmtFlags.space&&!e.fmtFlags.plus){f=$subslice(f,1);}e.pad(f);e.fmtFlags.zero=g;return;}if(e.fmtFlags.plus||!(((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])===43))){if(e.fmtFlags.zero&&e.fmtFlags.widPresent&&e.wid>f.$length){e.buf.WriteByte((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]));e.writePadding(e.wid-f.$length>>0);e.buf.Write($subslice(f,1));return;}e.pad(f);return;}e.pad($subslice(f,1));};J.prototype.fmt_float=function(a,b,c,d){return this.$val.fmt_float(a,b,c,d);};$ptrType(O).prototype.Write=function(a){var $ptr,a,b;b=this;b.$set($appendSlice(b.$get(),a));};$ptrType(O).prototype.WriteString=function(a){var $ptr,a,b;b=this;b.$set($appendSlice(b.$get(),a));};$ptrType(O).prototype.WriteByte=function(a){var $ptr,a,b;b=this;b.$set($append(b.$get(),a));};$ptrType(O).prototype.WriteRune=function(a){var $ptr,a,b,c,d,e,f;b=this;if(a<128){b.$set($append(b.$get(),(a<<24>>>24)));return;}c=b.$get();d=c.$length;while(true){if(!((d+4>>0)>c.$capacity)){break;}c=$append(c,0);}f=B.EncodeRune((e=$subslice(c,d,(d+4>>0)),$subslice(new BO(e.$array),e.$offset,e.$offset+e.$length)),a);b.$set($subslice(c,0,(d+f>>0)));};R=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=Q.Get();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}b=$assertType(a,BP);b.panicking=false;b.erroring=false;b.fmt.init((b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))));$s=-1;return b;}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};P.ptr.prototype.free=function(){var $ptr,a;a=this;a.buf=$subslice(a.buf,0,0);a.arg=$ifaceNil;a.value=new F.Value.ptr(BJ.nil,0,0);Q.Put(a);};P.prototype.free=function(){return this.$val.free();};P.ptr.prototype.Width=function(){var $ptr,a,b,c,d,e;a=0;b=false;c=this;d=c.fmt.wid;e=c.fmt.fmtFlags.widPresent;a=d;b=e;return[a,b];};P.prototype.Width=function(){return this.$val.Width();};P.ptr.prototype.Precision=function(){var $ptr,a,b,c,d,e;a=0;b=false;c=this;d=c.fmt.prec;e=c.fmt.fmtFlags.precPresent;a=d;b=e;return[a,b];};P.prototype.Precision=function(){return this.$val.Precision();};P.ptr.prototype.Flag=function(a){var $ptr,a,b,c;b=this;c=a;if(c===(45)){return b.fmt.fmtFlags.minus;}else if(c===(43)){return b.fmt.fmtFlags.plus||b.fmt.fmtFlags.plusV;}else if(c===(35)){return b.fmt.fmtFlags.sharp||b.fmt.fmtFlags.sharpV;}else if(c===(32)){return b.fmt.fmtFlags.space;}else if(c===(48)){return b.fmt.fmtFlags.zero;}return false;};P.prototype.Flag=function(a){return this.$val.Flag(a);};P.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(a);e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};P.prototype.Write=function(a){return this.$val.Write(a);};S=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;f=R();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$r=g.doPrintf(b,c);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=a.Write((i=g.buf,$subslice(new BO(i.$array),i.$offset,i.$offset+i.$length)));$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}h=j;d=h[0];e=h[1];g.free();$s=-1;return[d,e];}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.$s=$s;$f.$r=$r;return $f;};$pkg.Fprintf=S;U=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=R();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$r=d.doPrintf(a,b);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=$bytesToString(d.buf);d.free();$s=-1;return e;}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.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=U;V=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=U(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=C.New(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:V};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=V;W=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=$ifaceNil;e=R();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrint(b);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=a.Write((h=f.buf,$subslice(new BO(h.$array),h.$offset,h.$offset+h.$length)));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=i;c=g[0];d=g[1];f.free();$s=-1;return[c,d];}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.Fprint=W;X=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;e=W(E.Stdout,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;b=d[0];c=d[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:X};}$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.Print=X;Y=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=R();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$r=c.doPrint(a);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$bytesToString(c.buf);c.free();$s=-1;return d;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=Y;Z=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=$ifaceNil;e=R();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintln(b);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=a.Write((h=f.buf,$subslice(new BO(h.$array),h.$offset,h.$offset+h.$length)));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=i;c=g[0];d=g[1];f.free();$s=-1;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.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fprintln=Z;AA=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;e=Z(E.Stdout,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;b=d[0];c=d[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:AA};}$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.Println=AA;AB=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=R();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$r=c.doPrintln(a);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$bytesToString(c.buf);c.free();$s=-1;return d;}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AB;AC=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=$clone(a,F.Value).Field(b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(($clone(d,F.Value).Kind()===20)&&!$clone(d,F.Value).IsNil()){$s=2;continue;}$s=3;continue;case 2:e=$clone(d,F.Value).Elem();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 3:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AD=function(a){var $ptr,a;return a>1000000||a<-1000000;};AE=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=0;e=false;f=0;if(b>=c){g=0;h=false;i=c;d=g;e=h;f=i;return[d,e,f];}f=b;while(true){if(!(f<c&&48<=a.charCodeAt(f)&&a.charCodeAt(f)<=57)){break;}if(AD(d)){j=0;k=false;l=c;d=j;e=k;f=l;return[d,e,f];}d=($imul(d,10))+((a.charCodeAt(f)-48<<24>>>24)>>0)>>0;e=true;f=f+(1)>>0;}return[d,e,f];};P.ptr.prototype.unknownType=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(!$clone(a,F.Value).IsValid()){(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("<nil>");$s=-1;return;}(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(63);c=$clone(a,F.Value).Type().String();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$r=(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString(c);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(63);$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.unknownType=function(a){return this.$val.unknownType(a);};P.ptr.prototype.badVerb=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.erroring=true;(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("%!");(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteRune(a);(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(40);if(!($interfaceIsEqual(b.arg,$ifaceNil))){$s=2;continue;}if($clone(b.value,F.Value).IsValid()){$s=3;continue;}$s=4;continue;case 2:c=F.TypeOf(b.arg).String();$s=6;case 6:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$r=(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString(c);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(61);$r=b.printArg(b.arg,118);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 3:d=$clone(b.value,F.Value).Type().String();$s=9;case 9:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$r=(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString(d);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(61);$r=b.printValue($clone(b.value,F.Value),118,0);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("<nil>");case 5:case 1:(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(41);b.erroring=false;$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.badVerb};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.badVerb=function(a){return this.$val.badVerb(a);};P.ptr.prototype.fmtBool=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;d=b;if((d===(116))||(d===(118))){$s=2;continue;}$s=3;continue;case 2:c.fmt.fmt_boolean(a);$s=4;continue;case 3:$r=c.badVerb(b);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtBool=function(a,b){return this.$val.fmtBool(a,b);};P.ptr.prototype.fmt0x64=function(a,b){var $ptr,a,b,c,d;c=this;d=c.fmt.fmtFlags.sharp;c.fmt.fmtFlags.sharp=b;c.fmt.fmt_integer(a,16,false,"0123456789abcdefx");c.fmt.fmtFlags.sharp=d;};P.prototype.fmt0x64=function(a,b){return this.$val.fmt0x64(a,b);};P.ptr.prototype.fmtInteger=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=c;if(e===(118)){$s=2;continue;}if(e===(100)){$s=3;continue;}if(e===(98)){$s=4;continue;}if(e===(111)){$s=5;continue;}if(e===(120)){$s=6;continue;}if(e===(88)){$s=7;continue;}if(e===(99)){$s=8;continue;}if(e===(113)){$s=9;continue;}if(e===(85)){$s=10;continue;}$s=11;continue;case 2:if(d.fmt.fmtFlags.sharpV&&!b){d.fmt0x64(a,true);}else{d.fmt.fmt_integer(a,10,b,"0123456789abcdefx");}$s=12;continue;case 3:d.fmt.fmt_integer(a,10,b,"0123456789abcdefx");$s=12;continue;case 4:d.fmt.fmt_integer(a,2,b,"0123456789abcdefx");$s=12;continue;case 5:d.fmt.fmt_integer(a,8,b,"0123456789abcdefx");$s=12;continue;case 6:d.fmt.fmt_integer(a,16,b,"0123456789abcdefx");$s=12;continue;case 7:d.fmt.fmt_integer(a,16,b,"0123456789ABCDEFX");$s=12;continue;case 8:d.fmt.fmt_c(a);$s=12;continue;case 9:if((a.$high<0||(a.$high===0&&a.$low<=1114111))){$s=13;continue;}$s=14;continue;case 13:d.fmt.fmt_qc(a);$s=15;continue;case 14:$r=d.badVerb(c);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:$s=12;continue;case 10:d.fmt.fmt_unicode(a);$s=12;continue;case 11:$r=d.badVerb(c);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 12:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtInteger};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtInteger=function(a,b,c){return this.$val.fmtInteger(a,b,c);};P.ptr.prototype.fmtFloat=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=c;if(e===(118)){$s=2;continue;}if((e===(98))||(e===(103))||(e===(71))){$s=3;continue;}if((e===(102))||(e===(101))||(e===(69))){$s=4;continue;}if(e===(70)){$s=5;continue;}$s=6;continue;case 2:d.fmt.fmt_float(a,b,103,-1);$s=7;continue;case 3:d.fmt.fmt_float(a,b,c,-1);$s=7;continue;case 4:d.fmt.fmt_float(a,b,c,6);$s=7;continue;case 5:d.fmt.fmt_float(a,b,102,6);$s=7;continue;case 6:$r=d.badVerb(c);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtFloat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtFloat=function(a,b,c){return this.$val.fmtFloat(a,b,c);};P.ptr.prototype.fmtComplex=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:d=this;e=c;if((e===(118))||(e===(98))||(e===(103))||(e===(71))||(e===(102))||(e===(70))||(e===(101))||(e===(69))){$s=2;continue;}$s=3;continue;case 2:f=d.fmt.fmtFlags.plus;(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(40);$r=d.fmtFloat(a.$real,(g=b/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),c);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.fmt.fmtFlags.plus=true;$r=d.fmtFloat(a.$imag,(h=b/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),c);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("i)");d.fmt.fmtFlags.plus=f;$s=4;continue;case 3:$r=d.badVerb(c);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtComplex};}$f.$ptr=$ptr;$f.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.fmtComplex=function(a,b,c){return this.$val.fmtComplex(a,b,c);};P.ptr.prototype.fmtString=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;d=b;if(d===(118)){$s=2;continue;}if(d===(115)){$s=3;continue;}if(d===(120)){$s=4;continue;}if(d===(88)){$s=5;continue;}if(d===(113)){$s=6;continue;}$s=7;continue;case 2:if(c.fmt.fmtFlags.sharpV){c.fmt.fmt_q(a);}else{c.fmt.fmt_s(a);}$s=8;continue;case 3:c.fmt.fmt_s(a);$s=8;continue;case 4:c.fmt.fmt_sx(a,"0123456789abcdefx");$s=8;continue;case 5:c.fmt.fmt_sx(a,"0123456789ABCDEFX");$s=8;continue;case 6:c.fmt.fmt_q(a);$s=8;continue;case 7:$r=c.badVerb(b);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtString=function(a,b){return this.$val.fmtString(a,b);};P.ptr.prototype.fmtBytes=function(a,b,c){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:d=this;e=b;if((e===(118))||(e===(100))){$s=2;continue;}if(e===(115)){$s=3;continue;}if(e===(120)){$s=4;continue;}if(e===(88)){$s=5;continue;}if(e===(113)){$s=6;continue;}$s=7;continue;case 2:if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(c);if(a===BO.nil){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("(nil)");$s=-1;return;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(123);f=a;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(h>0){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(", ");}d.fmt0x64(new $Uint64(0,i),true);g++;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(125);}else{(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(91);j=a;k=0;while(true){if(!(k<j.$length)){break;}l=k;m=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);if(l>0){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(32);}d.fmt.fmt_integer(new $Uint64(0,m),10,false,"0123456789abcdefx");k++;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(93);}$s=8;continue;case 3:d.fmt.fmt_s($bytesToString(a));$s=8;continue;case 4:d.fmt.fmt_bx(a,"0123456789abcdefx");$s=8;continue;case 5:d.fmt.fmt_bx(a,"0123456789ABCDEFX");$s=8;continue;case 6:d.fmt.fmt_q($bytesToString(a));$s=8;continue;case 7:n=F.ValueOf(a);$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=d.printValue($clone(n,F.Value),b,0);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtBytes};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.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;};P.prototype.fmtBytes=function(a,b,c){return this.$val.fmtBytes(a,b,c);};P.ptr.prototype.fmtPointer=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=0;e=$clone(a,F.Value).Kind();if((e===(18))||(e===(19))||(e===(21))||(e===(22))||(e===(23))||(e===(26))){$s=2;continue;}$s=3;continue;case 2:d=$clone(a,F.Value).Pointer();$s=4;continue;case 3:$r=c.badVerb(b);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 4:case 1:f=b;if(f===(118)){$s=7;continue;}if(f===(112)){$s=8;continue;}if((f===(98))||(f===(111))||(f===(100))||(f===(120))||(f===(88))){$s=9;continue;}$s=10;continue;case 7:if(c.fmt.fmtFlags.sharpV){$s=12;continue;}$s=13;continue;case 12:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(40);g=$clone(a,F.Value).Type().String();$s=15;case 15:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$r=(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString(g);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString(")(");if(d===0){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("nil");}else{c.fmt0x64(new $Uint64(0,d.constructor===Number?d:1),true);}(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(41);$s=14;continue;case 13:if(d===0){c.fmt.padString("<nil>");}else{c.fmt0x64(new $Uint64(0,d.constructor===Number?d:1),!c.fmt.fmtFlags.sharp);}case 14:$s=11;continue;case 8:c.fmt0x64(new $Uint64(0,d.constructor===Number?d:1),!c.fmt.fmtFlags.sharp);$s=11;continue;case 9:$r=c.fmtInteger(new $Uint64(0,d.constructor===Number?d:1),false,b);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 10:$r=c.badVerb(b);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:case 6:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtPointer};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtPointer=function(a,b){return this.$val.fmtPointer(a,b);};P.ptr.prototype.catchPanic=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=$recover();if(!($interfaceIsEqual(d,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:e=F.ValueOf(a);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(($clone(f,F.Value).Kind()===22)&&$clone(f,F.Value).IsNil()){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("<nil>");$s=-1;return;}if(c.panicking){$panic(d);}g=$clone(c.fmt.fmtFlags,I);c.fmt.clearflags();(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!");(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteRune(b);(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("(PANIC=");c.panicking=true;$r=c.printArg(d,118);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.panicking=false;(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(41);I.copy(c.fmt.fmtFlags,g);case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.catchPanic};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.catchPanic=function(a,b){return this.$val.catchPanic(a,b);};P.ptr.prototype.handleMethods=function(a){var $ptr,a,b,c,d,e,f,g,h,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;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;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);b=false;c=this;if(c.erroring){$s=-1;return b;}d=$assertType(c.arg,L,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a]]);$r=e.Format(c,a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b;case 2:if(c.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:g=$assertType(c.arg,N,true);h=g[0];i=g[1];if(i){$s=7;continue;}$s=8;continue;case 7:b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a]]);j=h.GoString();$s=9;case 9:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$r=c.fmt.fmt_s(j);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b;case 8:$s=6;continue;case 5:k=a;if((k===(118))||(k===(115))||(k===(120))||(k===(88))||(k===(113))){$s=12;continue;}$s=13;continue;case 12:l=c.arg;if($assertType(l,$error,true)[1]){$s=14;continue;}if($assertType(l,M,true)[1]){$s=15;continue;}$s=16;continue;case 14:m=l;b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a]]);o=m.Error();$s=17;case 17:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$r=c.fmtString(o,a);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b;case 15:n=l;b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a]]);p=n.String();$s=19;case 19:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=c.fmtString(p,a);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b;case 16:case 13:case 11:case 6:b=false;$s=-1;return b;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return b;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.handleMethods};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.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;}}};P.prototype.handleMethods=function(a){return this.$val.handleMethods(a);};P.ptr.prototype.printArg=function(a,b){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:c=this;c.arg=a;c.value=new F.Value.ptr(BJ.nil,0,0);if($interfaceIsEqual(a,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:d=b;if((d===(84))||(d===(118))){$s=4;continue;}$s=5;continue;case 4:c.fmt.padString("<nil>");$s=6;continue;case 5:$r=c.badVerb(b);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:case 3:$s=-1;return;case 2:e=b;if(e===(84)){$s=9;continue;}if(e===(112)){$s=10;continue;}$s=11;continue;case 9:f=F.TypeOf(a).String();$s=12;case 12:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=c.fmt.fmt_s(f);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 10:g=F.ValueOf(a);$s=14;case 14:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$r=c.fmtPointer($clone(g,F.Value),112);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 11:case 8:h=a;if($assertType(h,$Bool,true)[1]){$s=16;continue;}if($assertType(h,$Float32,true)[1]){$s=17;continue;}if($assertType(h,$Float64,true)[1]){$s=18;continue;}if($assertType(h,$Complex64,true)[1]){$s=19;continue;}if($assertType(h,$Complex128,true)[1]){$s=20;continue;}if($assertType(h,$Int,true)[1]){$s=21;continue;}if($assertType(h,$Int8,true)[1]){$s=22;continue;}if($assertType(h,$Int16,true)[1]){$s=23;continue;}if($assertType(h,$Int32,true)[1]){$s=24;continue;}if($assertType(h,$Int64,true)[1]){$s=25;continue;}if($assertType(h,$Uint,true)[1]){$s=26;continue;}if($assertType(h,$Uint8,true)[1]){$s=27;continue;}if($assertType(h,$Uint16,true)[1]){$s=28;continue;}if($assertType(h,$Uint32,true)[1]){$s=29;continue;}if($assertType(h,$Uint64,true)[1]){$s=30;continue;}if($assertType(h,$Uintptr,true)[1]){$s=31;continue;}if($assertType(h,$String,true)[1]){$s=32;continue;}if($assertType(h,BO,true)[1]){$s=33;continue;}if($assertType(h,F.Value,true)[1]){$s=34;continue;}$s=35;continue;case 16:i=h.$val;$r=c.fmtBool(i,b);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 17:j=h.$val;$r=c.fmtFloat(j,32,b);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 18:k=h.$val;$r=c.fmtFloat(k,64,b);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 19:l=h.$val;$r=c.fmtComplex(new $Complex128(l.$real,l.$imag),64,b);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 20:m=h.$val;$r=c.fmtComplex(m,128,b);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 21:n=h.$val;$r=c.fmtInteger(new $Uint64(0,n),true,b);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 22:o=h.$val;$r=c.fmtInteger(new $Uint64(0,o),true,b);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 23:p=h.$val;$r=c.fmtInteger(new $Uint64(0,p),true,b);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 24:q=h.$val;$r=c.fmtInteger(new $Uint64(0,q),true,b);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 25:r=h.$val;$r=c.fmtInteger(new $Uint64(r.$high,r.$low),true,b);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 26:s=h.$val;$r=c.fmtInteger(new $Uint64(0,s),false,b);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 27:t=h.$val;$r=c.fmtInteger(new $Uint64(0,t),false,b);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 28:u=h.$val;$r=c.fmtInteger(new $Uint64(0,u),false,b);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 29:v=h.$val;$r=c.fmtInteger(new $Uint64(0,v),false,b);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 30:w=h.$val;$r=c.fmtInteger(w,false,b);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 31:x=h.$val;$r=c.fmtInteger(new $Uint64(0,x.constructor===Number?x:1),false,b);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 32:y=h.$val;$r=c.fmtString(y,b);$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 33:z=h.$val;$r=c.fmtBytes(z,b,"[]byte");$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 34:aa=h.$val;if($clone(aa,F.Value).IsValid()&&$clone(aa,F.Value).CanInterface()){$s=55;continue;}$s=56;continue;case 55:ac=$clone(aa,F.Value).Interface();$s=57;case 57:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}c.arg=ac;ad=c.handleMethods(b);$s=60;case 60:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}if(ad){$s=58;continue;}$s=59;continue;case 58:$s=-1;return;case 59:case 56:$r=c.printValue($clone(aa,F.Value),b,0);$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 35:ab=h;ae=c.handleMethods(b);$s=64;case 64:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}if(!ae){$s=62;continue;}$s=63;continue;case 62:af=F.ValueOf(ab);$s=65;case 65:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}$r=c.printValue($clone(af,F.Value),b,0);$s=66;case 66:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 63:case 36:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.printArg};}$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;};P.prototype.printArg=function(a,b){return this.$val.printArg(a,b);};P.ptr.prototype.printValue=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,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;if(c>0&&$clone(a,F.Value).IsValid()&&$clone(a,F.Value).CanInterface()){$s=1;continue;}$s=2;continue;case 1:e=$clone(a,F.Value).Interface();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.arg=e;f=d.handleMethods(b);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f){$s=4;continue;}$s=5;continue;case 4:$s=-1;return;case 5:case 2:d.arg=$ifaceNil;d.value=a;g=a;h=$clone(a,F.Value).Kind();if(h===(0)){$s=8;continue;}if(h===(1)){$s=9;continue;}if((h===(2))||(h===(3))||(h===(4))||(h===(5))||(h===(6))){$s=10;continue;}if((h===(7))||(h===(8))||(h===(9))||(h===(10))||(h===(11))||(h===(12))){$s=11;continue;}if(h===(13)){$s=12;continue;}if(h===(14)){$s=13;continue;}if(h===(15)){$s=14;continue;}if(h===(16)){$s=15;continue;}if(h===(24)){$s=16;continue;}if(h===(21)){$s=17;continue;}if(h===(25)){$s=18;continue;}if(h===(20)){$s=19;continue;}if((h===(17))||(h===(23))){$s=20;continue;}if(h===(22)){$s=21;continue;}if((h===(18))||(h===(19))||(h===(26))){$s=22;continue;}$s=23;continue;case 8:if(c===0){$s=25;continue;}$s=26;continue;case 25:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("<invalid reflect.Value>");$s=27;continue;case 26:i=b;if(i===(118)){$s=29;continue;}$s=30;continue;case 29:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("<nil>");$s=31;continue;case 30:$r=d.badVerb(b);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 31:case 28:case 27:$s=24;continue;case 9:$r=d.fmtBool($clone(g,F.Value).Bool(),b);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 10:$r=d.fmtInteger((j=$clone(g,F.Value).Int(),new $Uint64(j.$high,j.$low)),true,b);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 11:$r=d.fmtInteger($clone(g,F.Value).Uint(),false,b);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 12:$r=d.fmtFloat($clone(g,F.Value).Float(),32,b);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 13:$r=d.fmtFloat($clone(g,F.Value).Float(),64,b);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 14:$r=d.fmtComplex($clone(g,F.Value).Complex(),64,b);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 15:$r=d.fmtComplex($clone(g,F.Value).Complex(),128,b);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 16:k=$clone(g,F.Value).String();$s=40;case 40:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=d.fmtString(k,b);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 17:if(d.fmt.fmtFlags.sharpV){$s=42;continue;}$s=43;continue;case 42:l=$clone(g,F.Value).Type().String();$s=45;case 45:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(l);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if($clone(g,F.Value).IsNil()){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("(nil)");$s=-1;return;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(123);$s=44;continue;case 43:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("map[");case 44:m=$clone(g,F.Value).MapKeys();$s=47;case 47:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=n;p=0;case 48:if(!(p<o.$length)){$s=49;continue;}q=p;r=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if(q>0){if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(", ");}else{(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(32);}}$r=d.printValue($clone(r,F.Value),b,c+1>>0);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(58);s=$clone(g,F.Value).MapIndex($clone(r,F.Value));$s=51;case 51:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=d.printValue($clone(s,F.Value),b,c+1>>0);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p++;$s=48;continue;case 49:if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(125);}else{(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(93);}$s=24;continue;case 18:if(d.fmt.fmtFlags.sharpV){$s=53;continue;}$s=54;continue;case 53:t=$clone(g,F.Value).Type().String();$s=55;case 55:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(t);$s=56;case 56:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 54:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(123);u=0;case 57:if(!(u<$clone(g,F.Value).NumField())){$s=58;continue;}if(u>0){if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(", ");}else{(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(32);}}if(d.fmt.fmtFlags.plusV||d.fmt.fmtFlags.sharpV){$s=59;continue;}$s=60;continue;case 59:v=$clone(g,F.Value).Type().Field(u);$s=61;case 61:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v.Name;if(!(w==="")){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(w);(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(58);}case 60:x=AC($clone(g,F.Value),u);$s=62;case 62:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=d.printValue($clone(x,F.Value),b,c+1>>0);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u=u+(1)>>0;$s=57;continue;case 58:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(125);$s=24;continue;case 19:y=$clone(g,F.Value).Elem();$s=64;case 64:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(!$clone(z,F.Value).IsValid()){$s=65;continue;}$s=66;continue;case 65:if(d.fmt.fmtFlags.sharpV){$s=68;continue;}$s=69;continue;case 68:aa=$clone(g,F.Value).Type().String();$s=71;case 71:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(aa);$s=72;case 72:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("(nil)");$s=70;continue;case 69:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("<nil>");case 70:$s=67;continue;case 66:$r=d.printValue($clone(z,F.Value),b,c+1>>0);$s=73;case 73:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 67:$s=24;continue;case 20:ab=b;if((ab===(115))||(ab===(113))||(ab===(120))||(ab===(88))){$s=75;continue;}$s=76;continue;case 75:ac=$clone(g,F.Value).Type();ad=ac.Elem();$s=79;case 79:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad.Kind();$s=80;case 80:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}if(ae===8){$s=77;continue;}$s=78;continue;case 77:af=BO.nil;if($clone(g,F.Value).Kind()===23){$s=81;continue;}if($clone(g,F.Value).CanAddr()){$s=82;continue;}$s=83;continue;case 81:ag=$clone(g,F.Value).Bytes();$s=85;case 85:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;$s=84;continue;case 82:ah=$clone(g,F.Value).Slice(0,$clone(g,F.Value).Len());$s=86;case 86:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value).Bytes();$s=87;case 87:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}af=ai;$s=84;continue;case 83:af=$makeSlice(BO,$clone(g,F.Value).Len());aj=af;ak=0;case 88:if(!(ak<aj.$length)){$s=89;continue;}al=ak;am=$clone(g,F.Value).Index(al);$s=90;case 90:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=$clone(am,F.Value).Uint();$s=91;case 91:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}((al<0||al>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+al]=(an.$low<<24>>>24));ak++;$s=88;continue;case 89:case 84:ao=af;ap=b;aq=ac.String();$s=92;case 92:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=d.fmtBytes(ao,ap,ar);$s=93;case 93:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 78:case 76:case 74:if(d.fmt.fmtFlags.sharpV){$s=94;continue;}$s=95;continue;case 94:as=$clone(g,F.Value).Type().String();$s=97;case 97:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(as);$s=98;case 98:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(($clone(g,F.Value).Kind()===23)&&$clone(g,F.Value).IsNil()){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("(nil)");$s=-1;return;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(123);at=0;case 99:if(!(at<$clone(g,F.Value).Len())){$s=100;continue;}if(at>0){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(", ");}au=$clone(g,F.Value).Index(at);$s=101;case 101:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}$r=d.printValue($clone(au,F.Value),b,c+1>>0);$s=102;case 102:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}at=at+(1)>>0;$s=99;continue;case 100:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(125);$s=96;continue;case 95:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(91);av=0;case 103:if(!(av<$clone(g,F.Value).Len())){$s=104;continue;}if(av>0){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(32);}aw=$clone(g,F.Value).Index(av);$s=105;case 105:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$r=d.printValue($clone(aw,F.Value),b,c+1>>0);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}av=av+(1)>>0;$s=103;continue;case 104:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(93);case 96:$s=24;continue;case 21:if((c===0)&&!(($clone(g,F.Value).Pointer()===0))){$s=107;continue;}$s=108;continue;case 107:ax=$clone(g,F.Value).Elem();$s=110;case 110:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ay=ax;az=$clone(ay,F.Value).Kind();if((az===(17))||(az===(23))||(az===(25))||(az===(21))){$s=111;continue;}$s=112;continue;case 111:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(38);$r=d.printValue($clone(ay,F.Value),b,c+1>>0);$s=113;case 113:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 112:case 109:case 108:$r=d.fmtPointer($clone(g,F.Value),b);$s=114;case 114:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 22:$r=d.fmtPointer($clone(g,F.Value),b);$s=115;case 115:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 23:$r=d.unknownType($clone(g,F.Value));$s=116;case 116:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:case 7:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.printValue};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.printValue=function(a,b,c){return this.$val.printValue(a,b,c);};AG=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=0;d=false;e=0;e=b;if(b<a.$length){$s=1;continue;}$s=2;continue;case 1:f=$assertType(((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]),$Int,true);c=f[0];d=f[1];if(!d){$s=3;continue;}$s=4;continue;case 3:g=F.ValueOf(((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]));$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h,F.Value).Kind();if((i===(2))||(i===(3))||(i===(4))||(i===(5))||(i===(6))){j=$clone(h,F.Value).Int();if((k=new $Int64(0,((j.$low+((j.$high>>31)*4294967296))>>0)),(k.$high===j.$high&&k.$low===j.$low))){c=((j.$low+((j.$high>>31)*4294967296))>>0);d=true;}}else if((i===(7))||(i===(8))||(i===(9))||(i===(10))||(i===(11))||(i===(12))){l=$clone(h,F.Value).Uint();if((m=new $Int64(l.$high,l.$low),(m.$high>0||(m.$high===0&&m.$low>=0)))&&(n=new $Uint64(0,(l.$low>>0)),(n.$high===l.$high&&n.$low===l.$low))){c=(l.$low>>0);d=true;}}case 5:case 4:e=b+1>>0;if(AD(c)){c=0;d=false;}case 2:$s=-1;return[c,d,e];}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.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;};AH=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=0;c=0;d=false;if(a.length<3){e=0;f=1;g=false;b=e;c=f;d=g;return[b,c,d];}h=1;while(true){if(!(h<a.length)){break;}if(a.charCodeAt(h)===93){i=AE(a,1,h);j=i[0];k=i[1];l=i[2];if(!k||!((l===h))){m=0;n=h+1>>0;o=false;b=m;c=n;d=o;return[b,c,d];}p=j-1>>0;q=h+1>>0;r=true;b=p;c=q;d=r;return[b,c,d];}h=h+(1)>>0;}s=0;t=1;u=false;b=s;c=t;d=u;return[b,c,d];};P.ptr.prototype.argNumber=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;e=0;f=0;g=false;h=this;if(b.length<=c||!((b.charCodeAt(c)===91))){i=a;j=c;k=false;e=i;f=j;g=k;return[e,f,g];}h.reordered=true;l=AH($substring(b,c));m=l[0];n=l[1];o=l[2];if(o&&0<=m&&m<d){p=m;q=c+n>>0;r=true;e=p;f=q;g=r;return[e,f,g];}h.goodArgNum=false;s=a;t=c+n>>0;u=o;e=s;f=t;g=u;return[e,f,g];};P.prototype.argNumber=function(a,b,c,d){return this.$val.argNumber(a,b,c,d);};P.ptr.prototype.badArgNum=function(a){var $ptr,a,b;b=this;(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("%!");(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteRune(a);(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("(BADINDEX)");};P.prototype.badArgNum=function(a){return this.$val.badArgNum(a);};P.ptr.prototype.missingArg=function(a){var $ptr,a,b;b=this;(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("%!");(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteRune(a);(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("(MISSING)");};P.prototype.missingArg=function(a){return this.$val.missingArg(a);};P.ptr.prototype.doPrintf=function(a,b){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:c=this;d=a.length;e=0;f=false;c.reordered=false;g=0;case 1:if(!(g<d)){$s=2;continue;}c.goodArgNum=true;h=g;while(true){if(!(g<d&&!((a.charCodeAt(g)===37)))){break;}g=g+(1)>>0;}if(g>h){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString($substring(a,h,g));}if(g>=d){$s=2;continue;}g=g+(1)>>0;c.fmt.clearflags();case 3:if(!(g<d)){$s=4;continue;}i=a.charCodeAt(g);j=i;if(j===(35)){$s=6;continue;}if(j===(48)){$s=7;continue;}if(j===(43)){$s=8;continue;}if(j===(45)){$s=9;continue;}if(j===(32)){$s=10;continue;}$s=11;continue;case 6:c.fmt.fmtFlags.sharp=true;$s=12;continue;case 7:c.fmt.fmtFlags.zero=!c.fmt.fmtFlags.minus;$s=12;continue;case 8:c.fmt.fmtFlags.plus=true;$s=12;continue;case 9:c.fmt.fmtFlags.minus=true;c.fmt.fmtFlags.zero=false;$s=12;continue;case 10:c.fmt.fmtFlags.space=true;$s=12;continue;case 11:if(97<=i&&i<=122&&e<b.$length){$s=13;continue;}$s=14;continue;case 13:if(i===118){c.fmt.fmtFlags.sharpV=c.fmt.fmtFlags.sharp;c.fmt.fmtFlags.sharp=false;c.fmt.fmtFlags.plusV=c.fmt.fmtFlags.plus;c.fmt.fmtFlags.plus=false;}$r=c.printArg(((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]),(i>>0));$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;g=g+(1)>>0;$s=1;continue s;case 14:$s=4;continue s;case 12:case 5:g=g+(1)>>0;$s=3;continue;case 4:k=c.argNumber(e,a,g,b.$length);e=k[0];g=k[1];f=k[2];if(g<d&&(a.charCodeAt(g)===42)){$s=16;continue;}$s=17;continue;case 16:g=g+(1)>>0;m=AG(b,e);$s=19;case 19:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;c.fmt.wid=l[0];c.fmt.fmtFlags.widPresent=l[1];e=l[2];if(!c.fmt.fmtFlags.widPresent){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!(BADWIDTH)");}if(c.fmt.wid<0){c.fmt.wid=-c.fmt.wid;c.fmt.fmtFlags.minus=true;c.fmt.fmtFlags.zero=false;}f=false;$s=18;continue;case 17:n=AE(a,g,d);c.fmt.wid=n[0];c.fmt.fmtFlags.widPresent=n[1];g=n[2];if(f&&c.fmt.fmtFlags.widPresent){c.goodArgNum=false;}case 18:if((g+1>>0)<d&&(a.charCodeAt(g)===46)){$s=20;continue;}$s=21;continue;case 20:g=g+(1)>>0;if(f){c.goodArgNum=false;}o=c.argNumber(e,a,g,b.$length);e=o[0];g=o[1];f=o[2];if(g<d&&(a.charCodeAt(g)===42)){$s=22;continue;}$s=23;continue;case 22:g=g+(1)>>0;q=AG(b,e);$s=25;case 25:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;c.fmt.prec=p[0];c.fmt.fmtFlags.precPresent=p[1];e=p[2];if(c.fmt.prec<0){c.fmt.prec=0;c.fmt.fmtFlags.precPresent=false;}if(!c.fmt.fmtFlags.precPresent){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!(BADPREC)");}f=false;$s=24;continue;case 23:r=AE(a,g,d);c.fmt.prec=r[0];c.fmt.fmtFlags.precPresent=r[1];g=r[2];if(!c.fmt.fmtFlags.precPresent){c.fmt.prec=0;c.fmt.fmtFlags.precPresent=true;}case 24:case 21:if(!f){s=c.argNumber(e,a,g,b.$length);e=s[0];g=s[1];f=s[2];}if(g>=d){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!(NOVERB)");$s=2;continue;}t=B.DecodeRuneInString($substring(a,g));u=t[0];v=t[1];g=g+(v)>>0;if((u===37)){$s=27;continue;}if(!c.goodArgNum){$s=28;continue;}if(e>=b.$length){$s=29;continue;}if((u===118)){$s=30;continue;}$s=31;continue;case 27:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(37);$s=32;continue;case 28:c.badArgNum(u);$s=32;continue;case 29:c.missingArg(u);$s=32;continue;case 30:c.fmt.fmtFlags.sharpV=c.fmt.fmtFlags.sharp;c.fmt.fmtFlags.sharp=false;c.fmt.fmtFlags.plusV=c.fmt.fmtFlags.plus;c.fmt.fmtFlags.plus=false;$r=c.printArg(((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]),u);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=32;continue;case 31:$r=c.printArg(((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]),u);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;case 32:case 26:$s=1;continue;case 2:if(!c.reordered&&e<b.$length){$s=35;continue;}$s=36;continue;case 35:c.fmt.clearflags();(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!(EXTRA ");w=$subslice(b,e);x=0;case 37:if(!(x<w.$length)){$s=38;continue;}y=x;z=((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]);if(y>0){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString(", ");}if($interfaceIsEqual(z,$ifaceNil)){$s=39;continue;}$s=40;continue;case 39:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("<nil>");$s=41;continue;case 40:aa=F.TypeOf(z).String();$s=42;case 42:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$r=(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString(aa);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(61);$r=c.printArg(z,118);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 41:x++;$s=37;continue;case 38:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(41);case 36:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.doPrintf};}$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;};P.prototype.doPrintf=function(a,b){return this.$val.doPrintf(a,b);};P.ptr.prototype.doPrint=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;c=false;d=a;e=0;case 1:if(!(e<d.$length)){$s=2;continue;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(!(!($interfaceIsEqual(g,$ifaceNil)))){h=false;$s=3;continue s;}i=F.TypeOf(g).Kind();$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i===24;case 3:j=h;if(f>0&&!j&&!c){(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(32);}$r=b.printArg(g,118);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=j;e++;$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.doPrint};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.doPrint=function(a){return this.$val.doPrint(a);};P.ptr.prototype.doPrintln=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=a;d=0;case 1:if(!(d<c.$length)){$s=2;continue;}e=d;f=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e>0){(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(32);}$r=b.printArg(f,118);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d++;$s=1;continue;case 2:(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(10);$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.doPrintln};}$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;};P.prototype.doPrintln=function(a){return this.$val.doPrintln(a);};AV.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;e=0;f=C.New("ScanState's Read should not be called. Use ReadRune");b=e;c=f;return[b,c];};AV.prototype.Read=function(a){return this.$val.Read(a);};AV.ptr.prototype.ReadRune=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=0;b=0;c=$ifaceNil;d=this;if(d.atEOF||d.count>=d.ssave.argLimit){c=D.EOF;$s=-1;return[a,b,c];}f=d.rs.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];b=e[1];c=e[2];if($interfaceIsEqual(c,$ifaceNil)){d.count=d.count+(1)>>0;if(d.ssave.nlIsEnd&&(a===10)){d.atEOF=true;}}else if($interfaceIsEqual(c,D.EOF)){d.atEOF=true;}$s=-1;return[a,b,c];}return;}if($f===undefined){$f={$blk:AV.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.$s=$s;$f.$r=$r;return $f;};AV.prototype.ReadRune=function(){return this.$val.ReadRune();};AV.ptr.prototype.Width=function(){var $ptr,a,b,c,d,e,f,g;a=0;b=false;c=this;if(c.ssave.maxWid===1073741824){d=0;e=false;a=d;b=e;return[a,b];}f=c.ssave.maxWid;g=true;a=f;b=g;return[a,b];};AV.prototype.Width=function(){return this.$val.Width();};AV.ptr.prototype.getRune=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=0;b=this;d=b.ReadRune();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;a=c[0];e=c[2];if(!($interfaceIsEqual(e,$ifaceNil))){if($interfaceIsEqual(e,D.EOF)){a=-1;$s=-1;return a;}b.error(e);}$s=-1;return a;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.getRune};}$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;};AV.prototype.getRune=function(){return this.$val.getRune();};AV.ptr.prototype.UnreadRune=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.rs.UnreadRune();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;a.atEOF=false;a.count=a.count-(1)>>0;$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AV.prototype.UnreadRune=function(){return this.$val.UnreadRune();};AV.ptr.prototype.error=function(a){var $ptr,a,b,c;b=this;$panic((c=new AU.ptr(a),new c.constructor.elem(c)));};AV.prototype.error=function(a){return this.$val.error(a);};AV.ptr.prototype.errorString=function(a){var $ptr,a,b,c;b=this;$panic((c=new AU.ptr(C.New(a)),new c.constructor.elem(c)));};AV.prototype.errorString=function(a){return this.$val.errorString(a);};AV.ptr.prototype.Token=function(a,b){var $ptr,a,b,c,d,e,f,$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;$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=BO.nil;c[0]=$ifaceNil;e=this;$deferred.push([(function(c){return function(){var $ptr,f,g,h,i;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){g=$assertType(f,AU,true);h=$clone(g[0],AU);i=g[1];if(i){c[0]=h.err;}else{$panic(f);}}};})(c),[]]);if(b===$throwNilPointerError){b=AZ;}e.buf=$subslice(e.buf,0,0);f=e.token(a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;$s=-1;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:AV.ptr.prototype.Token};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AV.prototype.Token=function(a,b){return this.$val.Token(a,b);};AY=function(a){var $ptr,a,b,c,d,e;if(a>=65536){return false;}b=(a<<16>>>16);c=AX;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),BM);if(b<e[0]){return false;}if(b<=e[1]){return true;}d++;}return false;};AZ=function(a){var $ptr,a;return!AY(a);};AV.ptr.prototype.SkipSpace=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=a.skipSpace(false);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.SkipSpace};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AV.prototype.SkipSpace=function(){return this.$val.SkipSpace();};AV.ptr.prototype.free=function(a){var $ptr,a,b;b=this;if(a.validSave){AW.copy(b.ssave,a);return;}if(b.buf.$capacity>1024){return;}b.buf=$subslice(b.buf,0,0);b.rs=$ifaceNil;BB.Put(b);};AV.prototype.free=function(a){return this.$val.free(a);};AV.ptr.prototype.skipSpace=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:c=b.getRune();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(d===-1){$s=-1;return;}if(!(d===13)){e=false;$s=6;continue s;}f=b.peek("\n");$s=7;case 7:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 6:if(e){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(d===10){$s=8;continue;}$s=9;continue;case 8:if(a){$s=2;continue;}if(b.ssave.nlIsSpace){$s=1;continue;}b.errorString("unexpected newline");$s=-1;return;case 9:if(!AY(d)){$s=10;continue;}$s=11;continue;case 10:g=b.UnreadRune();$s=12;case 12:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.skipSpace};}$f.$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;};AV.prototype.skipSpace=function(a){return this.$val.skipSpace(a);};AV.ptr.prototype.token=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;if(a){$s=1;continue;}$s=2;continue;case 1:$r=c.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:d=c.getRune();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===-1){$s=5;continue;}f=b(e);$s=9;case 9:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!f){$s=7;continue;}$s=8;continue;case 7:g=c.UnreadRune();$s=10;case 10:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=5;continue;case 8:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteRune(e);$s=4;continue;case 5:$s=-1;return(h=c.buf,$subslice(new BO(h.$array),h.$offset,h.$offset+h.$length));}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.token};}$f.$ptr=$ptr;$f.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;};AV.prototype.token=function(a,b){return this.$val.token(a,b);};BF=function(a,b){var $ptr,a,b,c,d,e,f,g;c=a;d=0;while(true){if(!(d<c.length)){break;}e=$decodeRune(c,d);f=d;g=e[0];if(g===b){return f;}d+=e[1];}return-1;};AV.ptr.prototype.peek=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=b.getRune();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!((d===-1))){$s=2;continue;}$s=3;continue;case 2:e=b.UnreadRune();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 3:$s=-1;return BF(a,d)>=0;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.peek};}$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;};AV.prototype.peek=function(a){return this.$val.peek(a);};CN.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([BK],[],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([BO],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"fmt_unicode",name:"fmt_unicode",pkg:"fmt",typ:$funcType([$Uint64],[],false)},{prop:"fmt_integer",name:"fmt_integer",pkg:"fmt",typ:$funcType([$Uint64,$Int,$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,BO,$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([BO,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_c",name:"fmt_c",pkg:"fmt",typ:$funcType([$Uint64],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Uint64],[],false)},{prop:"fmt_float",name:"fmt_float",pkg:"fmt",typ:$funcType([$Float64,$Int,$Int32,$Int],[],false)}];BK.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([BO],[],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[],false)}];BP.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:"Write",name:"Write",pkg:"",typ:$funcType([BO],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([F.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtInteger",name:"fmtInteger",pkg:"fmt",typ:$funcType([$Uint64,$Bool,$Int32],[],false)},{prop:"fmtFloat",name:"fmtFloat",pkg:"fmt",typ:$funcType([$Float64,$Int,$Int32],[],false)},{prop:"fmtComplex",name:"fmtComplex",pkg:"fmt",typ:$funcType([$Complex128,$Int,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([BO,$Int32,$String],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([F.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([F.Value,$Int32,$Int],[],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"badArgNum",name:"badArgNum",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"missingArg",name:"missingArg",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,BI],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([BI],[],false)},{prop:"doPrintln",name:"doPrintln",pkg:"fmt",typ:$funcType([BI],[],false)}];BS.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([BO],[$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,CO],[BO,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([AW],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,CO],[BO],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([BI],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,BI],[$Int,$error],false)}];I.init("fmt",[{prop:"widPresent",name:"widPresent",exported:false,typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",exported:false,typ:$Bool,tag:""},{prop:"minus",name:"minus",exported:false,typ:$Bool,tag:""},{prop:"plus",name:"plus",exported:false,typ:$Bool,tag:""},{prop:"sharp",name:"sharp",exported:false,typ:$Bool,tag:""},{prop:"space",name:"space",exported:false,typ:$Bool,tag:""},{prop:"zero",name:"zero",exported:false,typ:$Bool,tag:""},{prop:"plusV",name:"plusV",exported:false,typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",exported:false,typ:$Bool,tag:""}]);J.init("fmt",[{prop:"buf",name:"buf",exported:false,typ:BK,tag:""},{prop:"fmtFlags",name:"",exported:false,typ:I,tag:""},{prop:"wid",name:"wid",exported:false,typ:$Int,tag:""},{prop:"prec",name:"prec",exported:false,typ:$Int,tag:""},{prop:"intbuf",name:"intbuf",exported:false,typ:BL,tag:""}]);K.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([BO],[$Int,$error],false)}]);L.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([K,$Int32],[],false)}]);M.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);N.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);O.init($Uint8);P.init("fmt",[{prop:"buf",name:"buf",exported:false,typ:O,tag:""},{prop:"arg",name:"arg",exported:false,typ:$emptyInterface,tag:""},{prop:"value",name:"value",exported:false,typ:F.Value,tag:""},{prop:"fmt",name:"fmt",exported:false,typ:J,tag:""},{prop:"reordered",name:"reordered",exported:false,typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",exported:false,typ:$Bool,tag:""},{prop:"panicking",name:"panicking",exported:false,typ:$Bool,tag:""},{prop:"erroring",name:"erroring",exported:false,typ:$Bool,tag:""}]);AI.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BO],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,CO],[BO,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)}]);AU.init("fmt",[{prop:"err",name:"err",exported:false,typ:$error,tag:""}]);AV.init("fmt",[{prop:"rs",name:"rs",exported:false,typ:D.RuneScanner,tag:""},{prop:"buf",name:"buf",exported:false,typ:O,tag:""},{prop:"count",name:"count",exported:false,typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",exported:false,typ:$Bool,tag:""},{prop:"ssave",name:"",exported:false,typ:AW,tag:""}]);AW.init("fmt",[{prop:"validSave",name:"validSave",exported:false,typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",exported:false,typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",exported:false,typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",exported:false,typ:$Int,tag:""},{prop:"limit",name:"limit",exported:false,typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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=F.$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;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new G.Pool.ptr(0,0,BI.nil,(function(){var $ptr;return new P.ptr(O.nil,$ifaceNil,new F.Value.ptr(BJ.nil,0,0),new J.ptr(BK.nil,new I.ptr(false,false,false,false,false,false,false,false,false),0,0,BL.zero()),false,false,false,false);}));AF=F.TypeOf(new $Uint8(0));AX=new BN([$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])]);BB=new G.Pool.ptr(0,0,BI.nil,(function(){var $ptr;return new AV.ptr($ifaceNil,O.nil,0,false,new AW.ptr(false,false,false,0,0,0));}));BD=C.New("syntax error scanning complex number");BE=C.New("syntax error scanning boolean");}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,K,M,AF,AH,AL,AM,AN,AO,AP,AQ,AS,AT,C,D,E,G,H,I,P,AG,F,L,N,O,AI;B=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["math"];J=$pkg.Source=$newType(8,$kindInterface,"rand.Source",true,"math/rand",true,null);K=$pkg.Source64=$newType(8,$kindInterface,"rand.Source64",true,"math/rand",true,null);M=$pkg.Rand=$newType(0,$kindStruct,"rand.Rand",true,"math/rand",true,function(src_,s64_,readVal_,readPos_){this.$val=this;if(arguments.length===0){this.src=$ifaceNil;this.s64=$ifaceNil;this.readVal=new $Int64(0,0);this.readPos=0;return;}this.src=src_;this.s64=s64_;this.readVal=readVal_;this.readPos=readPos_;});AF=$pkg.lockedSource=$newType(0,$kindStruct,"rand.lockedSource",true,"math/rand",false,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_;});AH=$pkg.rngSource=$newType(0,$kindStruct,"rand.rngSource",true,"math/rand",false,function(tap_,feed_,vec_){this.$val=this;if(arguments.length===0){this.tap=0;this.feed=0;this.vec=AL.zero();return;}this.tap=tap_;this.feed=feed_;this.vec=vec_;});AL=$arrayType($Int64,607);AM=$ptrType(AF);AN=$ptrType($Int8);AO=$sliceType($Int);AP=$ptrType($Int64);AQ=$ptrType(M);AS=$sliceType($Uint8);AT=$ptrType(AH);M.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"),undefined):D[d]);if(c<((d<0||d>=C.length)?($throwRuntimeError("index out of range"),undefined):C[d])){$s=-1;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=-1;return 7.69711747013105-g;case 5:h=a.Float64();$s=10;case 10: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"),undefined):E[d])+$fround($fround(h)*($fround((i=d-1>>>0,((i<0||i>=E.length)?($throwRuntimeError("index out of range"),undefined):E[i]))-((d<0||d>=E.length)?($throwRuntimeError("index out of range"),undefined):E[d])))))<$fround(A.Exp(-e))){$s=8;continue;}$s=9;continue;case 8:$s=-1;return e;case 9:$s=1;continue;case 2:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.ExpFloat64=function(){return this.$val.ExpFloat64();};F=function(a){var $ptr,a;if(a<0){return(-a>>>0);}return(a>>>0);};M.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"),undefined):H[d]);if(F(c)<((d<0||d>=G.length)?($throwRuntimeError("index out of range"),undefined):G[d])){$s=-1;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){$s=-1;return 3.442619855899+e;}$s=-1;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"),undefined):I[d])+$fround($fround(k)*($fround((l=d-1>>0,((l<0||l>=I.length)?($throwRuntimeError("index out of range"),undefined):I[l]))-((d<0||d>=I.length)?($throwRuntimeError("index out of range"),undefined):I[d])))))<$fround(A.Exp(-0.5*e*e))){$s=12;continue;}$s=13;continue;case 12:$s=-1;return e;case 13:$s=1;continue;case 2:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.NormFloat64=function(){return this.$val.NormFloat64();};L=function(a){var $ptr,a,b;b=new AH.ptr(0,0,AL.zero());b.Seed(a);return b;};$pkg.NewSource=L;N=function(a){var $ptr,a,b,c;b=$assertType(a,K,true);c=b[0];return new M.ptr(a,c,new $Int64(0,0),0);};$pkg.New=N;M.ptr.prototype.Seed=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=$assertType(b.src,AM,true);d=c[0];e=c[1];if(e){$s=1;continue;}$s=2;continue;case 1:$r=d.seedPos(a,(b.$ptr_readPos||(b.$ptr_readPos=new AN(function(){return this.$target.readPos;},function($v){this.$target.readPos=$v;},b))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 2:$r=b.src.Seed(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.readPos=0;$s=-1;return;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Seed};}$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;};M.prototype.Seed=function(a){return this.$val.Seed(a);};M.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=-1;return b;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Int63};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Int63=function(){return this.$val.Int63();};M.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=-1;return($shiftRightInt64(b,31).$low>>>0);}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Uint32=function(){return this.$val.Uint32();};M.ptr.prototype.Uint64=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(!($interfaceIsEqual(a.s64,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:b=a.s64.Uint64();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;case 2:e=a.Int63();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}h=a.Int63();$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return(c=$shiftRightUint64((d=e,new $Uint64(d.$high,d.$low)),31),f=$shiftLeft64((g=h,new $Uint64(g.$high,g.$low)),32),new $Uint64(c.$high|f.$high,(c.$low|f.$low)>>>0));}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Uint64};}$f.$ptr=$ptr;$f.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;};M.prototype.Uint64=function(){return this.$val.Uint64();};M.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=-1;return((b=$shiftRightInt64(c,32),b.$low+((b.$high>>31)*4294967296))>>0);}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Int31};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Int31=function(){return this.$val.Int31();};M.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);$s=-1;return(((c<<1>>>0)>>>1>>>0)>>0);}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Int};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Int=function(){return this.$val.Int();};M.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=-1;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=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;case 5:if(!((l.$high>j.$high||(l.$high===j.$high&&l.$low>j.$low)))){$s=6;continue;}m=b.Int63();$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;$s=5;continue;case 6:$s=-1;return $div64(l,a,true);}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.Int63n=function(a){return this.$val.Int63n(a);};M.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=-1;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=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;case 5:if(!(g>e)){$s=6;continue;}h=b.Int31();$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;$s=5;continue;case 6:$s=-1;return(i=g%a,i===i?i:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.Int31n=function(a){return this.$val.Int31n(a);};M.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=-1;return(c>>0);case 2:e=b.Int63n(new $Int64(0,a));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return((d=e,d.$low+((d.$high>>31)*4294967296))>>0);}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.Intn=function(a){return this.$val.Intn(a);};M.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;case 1:b=a.Int63();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=$flatten64(b)/9.223372036854776e+18;if(c===1){$s=3;continue;}$s=4;continue;case 3:$s=1;continue;case 4:$s=-1;return c;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Float64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Float64=function(){return this.$val.Float64();};M.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;case 1:b=a.Float64();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=$fround(b);if(c===1){$s=3;continue;}$s=4;continue;case 3:$s=1;continue;case 4:$s=-1;return c;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Float32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Float32=function(){return this.$val.Float32();};M.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(AO,a);d=0;case 1:if(!(d<a)){$s=2;continue;}e=b.Intn(d+1>>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"),undefined):c.$array[c.$offset+d]=((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]));((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=d);d=d+(1)>>0;$s=1;continue;case 2:$s=-1;return c;}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.Perm=function(a){return this.$val.Perm(a);};M.ptr.prototype.Read=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=0;c=$ifaceNil;d=this;e=$assertType(d.src,AM,true);f=e[0];g=e[1];if(g){$s=1;continue;}$s=2;continue;case 1:i=f.read(a,(d.$ptr_readVal||(d.$ptr_readVal=new AP(function(){return this.$target.readVal;},function($v){this.$target.readVal=$v;},d))),(d.$ptr_readPos||(d.$ptr_readPos=new AN(function(){return this.$target.readPos;},function($v){this.$target.readPos=$v;},d))));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;b=h[0];c=h[1];$s=-1;return[b,c];case 2:k=O(a,$methodVal(d,"Int63"),(d.$ptr_readVal||(d.$ptr_readVal=new AP(function(){return this.$target.readVal;},function($v){this.$target.readVal=$v;},d))),(d.$ptr_readPos||(d.$ptr_readPos=new AN(function(){return this.$target.readPos;},function($v){this.$target.readPos=$v;},d))));$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;b=j[0];c=j[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Read=function(a){return this.$val.Read(a);};O=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=0;f=$ifaceNil;g=d.$get();h=c.$get();e=0;case 1:if(!(e<a.$length)){$s=2;continue;}if(g===0){$s=3;continue;}$s=4;continue;case 3:i=b();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;g=7;case 4:((e<0||e>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+e]=(h.$low<<24>>>24));h=$shiftRightInt64(h,(8));g=g-(1)<<24>>24;e=e+(1)>>0;$s=1;continue;case 2:d.$set(g);c.$set(h);$s=-1;return[e,f];}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.$s=$s;$f.$r=$r;return $f;};AF.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();$s=-1;return a;}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Int63};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Int63=function(){return this.$val.Int63();};AF.ptr.prototype.Uint64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=new $Uint64(0,0);b=this;b.lk.Lock();c=b.src.Uint64();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a=c;b.lk.Unlock();$s=-1;return a;}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Uint64=function(){return this.$val.Uint64();};AF.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;return;}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Seed};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Seed=function(a){return this.$val.Seed(a);};AF.ptr.prototype.seedPos=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=this;c.lk.Lock();$r=c.src.Seed(a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.$set(0);c.lk.Unlock();$s=-1;return;}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.seedPos};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.seedPos=function(a,b){return this.$val.seedPos(a,b);};AF.ptr.prototype.read=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:d=0;e=$ifaceNil;f=this;f.lk.Lock();h=O(a,$methodVal(f.src,"Int63"),b,c);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;d=g[0];e=g[1];f.lk.Unlock();$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:AF.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;};AF.prototype.read=function(a,b,c){return this.$val.read(a,b,c);};AI=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;};AH.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=AI(d);if(e>=0){f=new $Int64(0,0);f=$shiftLeft64(new $Int64(0,d),40);d=AI(d);f=(g=$shiftLeft64(new $Int64(0,d),20),new $Int64(f.$high^g.$high,(f.$low^g.$low)>>>0));d=AI(d);f=(h=new $Int64(0,d),new $Int64(f.$high^h.$high,(f.$low^h.$low)>>>0));f=(i=((e<0||e>=AG.length)?($throwRuntimeError("index out of range"),undefined):AG[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"),undefined):j[e]=f));}e=e+(1)>>0;}};AH.prototype.Seed=function(a){return this.$val.Seed(a);};AH.ptr.prototype.Int63=function(){var $ptr,a,b,c;a=this;return(b=(c=a.Uint64(),new $Uint64(c.$high&2147483647,(c.$low&4294967295)>>>0)),new $Int64(b.$high,b.$low));};AH.prototype.Int63=function(){return this.$val.Int63();};AH.ptr.prototype.Uint64=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;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;}h=(b=(c=a.vec,d=a.feed,((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d])),e=(f=a.vec,g=a.tap,((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g])),new $Int64(b.$high+e.$high,b.$low+e.$low));(i=a.vec,j=a.feed,((j<0||j>=i.length)?($throwRuntimeError("index out of range"),undefined):i[j]=h));return new $Uint64(h.$high,h.$low);};AH.prototype.Uint64=function(){return this.$val.Uint64();};AQ.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:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],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],[AO],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AS],[$Int,$error],false)}];AM.methods=[{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"seedPos",name:"seedPos",pkg:"math/rand",typ:$funcType([$Int64,AN],[],false)},{prop:"read",name:"read",pkg:"math/rand",typ:$funcType([AS,AP,AN],[$Int,$error],false)}];AT.methods=[{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)}];J.init([{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)}]);K.init([{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)}]);M.init("math/rand",[{prop:"src",name:"src",exported:false,typ:J,tag:""},{prop:"s64",name:"s64",exported:false,typ:K,tag:""},{prop:"readVal",name:"readVal",exported:false,typ:$Int64,tag:""},{prop:"readPos",name:"readPos",exported:false,typ:$Int8,tag:""}]);AF.init("math/rand",[{prop:"lk",name:"lk",exported:false,typ:B.Mutex,tag:""},{prop:"src",name:"src",exported:false,typ:K,tag:""}]);AH.init("math/rand",[{prop:"tap",name:"tap",exported:false,typ:$Int,tag:""},{prop:"feed",name:"feed",exported:false,typ:$Int,tag:""},{prop:"vec",name:"vec",exported:false,typ:AL,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]);AG=$toNativeArray($kindInt64,[new $Int64(-973649357,3952672746),new $Int64(-1065661887,3130416987),new $Int64(324977939,3414273807),new $Int64(1241840476,2806224363),new $Int64(-1477934308,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(-1654874170,1609182556),new $Int64(1069394745,1241596776),new $Int64(1895445337,1771189259),new $Int64(-1374618802,3467012610),new $Int64(-140526423,2344407434),new $Int64(-1745367887,782467244),new $Int64(26335124,3404933915),new $Int64(1063924276,618867887),new $Int64(-968700782,520164395),new $Int64(-1591572833,1341358184),new $Int64(-1515085039,665794848),new $Int64(1527227641,3183648150),new $Int64(1781176124,696329606),new $Int64(1789146075,4151988961),new $Int64(-2087444114,998951326),new $Int64(-612324923,1364957564),new $Int64(63173359,4090230633),new $Int64(-1498029007,4009697548),new $Int64(248009524,2569622517),new $Int64(778703922,3742421481),new $Int64(-1109106023,1506914633),new $Int64(1738099768,1983412561),new $Int64(236311649,1436266083),new $Int64(-1111517500,3922894967),new $Int64(-1336974714,1792680179),new $Int64(563141142,1188796351),new $Int64(1349617468,405968250),new $Int64(1044074554,433754187),new $Int64(870549669,4073162024),new $Int64(-1094251604,433121399),new $Int64(2451824,4162580594),new $Int64(-137262572,4132415622),new $Int64(-1536231048,3033822028),new $Int64(2016407895,824682382),new $Int64(2366218,3583765414),new $Int64(-624604839,535386927),new $Int64(1637219058,2286693689),new $Int64(1453075389,2968466525),new $Int64(193683513,1351410206),new $Int64(-283806096,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(-2067810156,3430061722),new $Int64(-1484435135,3820169661),new $Int64(-1665985194,2981816134),new $Int64(1017155588,4184371017),new $Int64(206574701,2119206761),new $Int64(-852109057,2472200560),new $Int64(-560457548,2853524696),new $Int64(1307803389,1681119904),new $Int64(-174986835,95608918),new $Int64(392686347,3690479145),new $Int64(-1205570926,1397922290),new $Int64(-1159314025,1516129515),new $Int64(-320178155,1547420459),new $Int64(1311333971,1470949486),new $Int64(-1953469798,1336785672),new $Int64(-45086614,4131677129),new $Int64(-1392278100,4246329084),new $Int64(-1142500187,3788585631),new $Int64(-66478285,3080389532),new $Int64(-646438364,2215402037),new $Int64(391002300,1171593935),new $Int64(1408774047,1423855166),new $Int64(-519177718,2276716302),new $Int64(-368453140,2068027241),new $Int64(1369359303,3427553297),new $Int64(189241615,3289637845),new $Int64(1057480830,3486407650),new $Int64(-1512910664,3071877822),new $Int64(1159653919,3363620705),new $Int64(-934256930,4159821533),new $Int64(-76621938,1894661),new $Int64(-674493898,1156868282),new $Int64(348271067,776219088),new $Int64(-501428838,2425634259),new $Int64(1716021749,680510161),new $Int64(-574263456,1310101429),new $Int64(1095885995,2964454134),new $Int64(-325695512,3467098407),new $Int64(1990672920,2109628894),new $Int64(-2139648704,1232604732),new $Int64(-1838070714,3261916179),new $Int64(1699175360,434597899),new $Int64(235436061,1624796439),new $Int64(-1626402839,3589632480),new $Int64(1198416575,864579159),new $Int64(-1938748161,1380889830),new $Int64(619206309,2654509477),new $Int64(1419738251,1468209306),new $Int64(-1744284772,100794388),new $Int64(-1191421458,2991674471),new $Int64(-208666741,2224662036),new $Int64(-173659161,977097250),new $Int64(1351320195,726419512),new $Int64(-183459897,1747974366),new $Int64(-753095183,1556430604),new $Int64(-1049492215,1080776742),new $Int64(-385846958,280794874),new $Int64(117767733,919835643),new $Int64(-967009426,3434019658),new $Int64(-1951414480,2461941785),new $Int64(133215641,3615001066),new $Int64(417204809,3103414427),new $Int64(790056561,3380809712),new $Int64(-1267681408,2724693469),new $Int64(547796833,598827710),new $Int64(-1846559452,3452273442),new $Int64(-75778224,649274915),new $Int64(-801301329,2585724112),new $Int64(-1510934263,3165579553),new $Int64(1185578221,2635894283),new $Int64(-52910178,2053289721),new $Int64(985976581,3169337108),new $Int64(1170569632,144717764),new $Int64(1079216270,1383666384),new $Int64(-124804942,681540375),new $Int64(1375448925,537050586),new $Int64(-1964768344,315246468),new $Int64(226402871,849323088),new $Int64(-885062465,45543944),new $Int64(-946445250,2319052083),new $Int64(-40708194,3613090841),new $Int64(560472520,2992171180),new $Int64(-381863169,2068244785),new $Int64(917538188,4239862634),new $Int64(-1369555809,3892253031),new $Int64(720683925,958186149),new $Int64(-423297785,1877702262),new $Int64(1357886971,837674867),new $Int64(1837048883,1507589294),new $Int64(1905518400,873336795),new $Int64(-1879761037,2764496274),new $Int64(-1806480530,4196182374),new $Int64(-1066765755,550964545),new $Int64(818747069,420611474),new $Int64(-1924830376,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(-1367475956,2099949527),new $Int64(1424094358,338442522),new $Int64(490737398,637158004),new $Int64(-1727621530,281976339),new $Int64(574970164,3619802330),new $Int64(-431930823,3084554784),new $Int64(-1264611183,4129772886),new $Int64(-2104399043,1680378557),new $Int64(-1621962591,3339087776),new $Int64(1680500332,4220317857),new $Int64(-1935828963,2959322499),new $Int64(1675600481,1488354890),new $Int64(-834863562,3958162143),new $Int64(-1226511573,2773705983),new $Int64(1876039582,225908689),new $Int64(-1183735113,908216283),new $Int64(-605696219,3574646075),new $Int64(-1827723091,1936937569),new $Int64(1519770881,75492235),new $Int64(816689472,1935193178),new $Int64(2142521206,2018250883),new $Int64(455141620,3943126022),new $Int64(-601399488,3066544345),new $Int64(1932392669,2793082663),new $Int64(-1239009361,3297036421),new $Int64(1640597065,2206987825),new $Int64(-553246738,807894872),new $Int64(-1781325307,766252117),new $Int64(2060649606,3833114345),new $Int64(845619743,1255067973),new $Int64(1201145605,741697208),new $Int64(-1476242608,2810093753),new $Int64(1109032642,4229340371),new $Int64(1462188720,1361684224),new $Int64(-1159399429,1906263026),new $Int64(475781207,3904421704),new $Int64(-623537128,1769075545),new $Int64(1062308525,2621599764),new $Int64(1279509432,3431891480),new $Int64(-1742751146,1871896503),new $Int64(128756421,1412808876),new $Int64(1605404688,952876175),new $Int64(-230443691,1824438899),new $Int64(1662295856,1005035476),new $Int64(-156574141,527508597),new $Int64(1288873303,3066806859),new $Int64(565995893,3244940914),new $Int64(-889746188,209092916),new $Int64(-247669406,1242699167),new $Int64(-713830396,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(-1197583895,3803658212),new $Int64(1883670356,479946959),new $Int64(685713571,1562982345),new $Int64(-1946242443,1766109365),new $Int64(700596547,3257093788),new $Int64(-184714929,2365720207),new $Int64(93384808,3742754173),new $Int64(-458385235,2878193673),new $Int64(1096135042,2174002182),new $Int64(-834260953,3573511231),new $Int64(-754572527,1760299077),new $Int64(-1375627191,2260779833),new $Int64(-866019274,1452805722),new $Int64(-1229671918,2940011802),new $Int64(1890251082,1886183802),new $Int64(893897673,2514369088),new $Int64(1644345561,3924317791),new $Int64(-1974867432,500935732),new $Int64(1403501753,676580929),new $Int64(-1565912283,1184984890),new $Int64(-691968413,1271474274),new $Int64(-1828754738,3163791473),new $Int64(2051027584,2842487377),new $Int64(1511537551,2170968612),new $Int64(573262976,3535856740),new $Int64(-2053227187,1488599718),new $Int64(-1180531831,3408913763),new $Int64(-2086531912,2501050084),new $Int64(-875130448,1639124157),new $Int64(-2009482504,4088176393),new $Int64(1574896563,3989947576),new $Int64(-165243708,3414355209),new $Int64(-792329287,2275136352),new $Int64(-2057774345,2151835223),new $Int64(-931144933,1654534827),new $Int64(-679921451,377892833),new $Int64(-482716010,660204544),new $Int64(85706799,390828249),new $Int64(-1422172693,3402783878),new $Int64(-1468634160,3717936603),new $Int64(1113532086,2211058823),new $Int64(1564224320,2692150867),new $Int64(1952770442,1928910388),new $Int64(788716862,3931011137),new $Int64(1083670504,1112701047),new $Int64(-68150572,2452299106),new $Int64(-896164822,2337204777),new $Int64(1774877857,273889282),new $Int64(1798719843,1462008793),new $Int64(2138834788,1554494002),new $Int64(-1194967131,182675323),new $Int64(-1598554764,1882802136),new $Int64(589279648,3700220025),new $Int64(381039426,3083431543),new $Int64(-851859191,3622207527),new $Int64(338126939,432729309),new $Int64(-1667470126,2391914317),new $Int64(-1849558151,235747924),new $Int64(2120733629,3088823825),new $Int64(-745079795,2314658321),new $Int64(1165929723,2957634338),new $Int64(501323675,4117056981),new $Int64(1564699815,1482500298),new $Int64(-740826490,840489337),new $Int64(799522364,3483178565),new $Int64(532129761,2074004656),new $Int64(724246478,3643392642),new $Int64(-665153481,1583624461),new $Int64(-885822954,287473085),new $Int64(1667835381,3136843981),new $Int64(1138806821,1266970974),new $Int64(135185781,1998688839),new $Int64(392094735,1492900209),new $Int64(1031326774,1538112737),new $Int64(-2070568842,2207265429),new $Int64(-1886797613,963263315),new $Int64(1671145500,2295892134),new $Int64(1068469660,2002560897),new $Int64(-356250305,1369254035),new $Int64(33436120,3353312708),new $Int64(57507843,947771099),new $Int64(-1945755145,1747061399),new $Int64(1507240140,2047354631),new $Int64(720000810,4165367136),new $Int64(479265078,3388864963),new $Int64(-952181250,286492130),new $Int64(2045622690,2795735007),new $Int64(-715730566,3703961339),new $Int64(-148436487,1797825479),new $Int64(1429039600,1116589674),new $Int64(-1665420098,2593309206),new $Int64(1329049334,3404995677),new $Int64(-750579440,3453462936),new $Int64(1014767077,3016498634),new $Int64(75698599,1650371545),new $Int64(1592007860,212344364),new $Int64(1127766888,3843932156),new $Int64(-748019856,3573129983),new $Int64(-890581831,665897820),new $Int64(1071492673,1675628772),new $Int64(243225682,2831752928),new $Int64(2120298836,1486294219),new $Int64(-1954407413,268782709),new $Int64(-1002123503,4186179080),new $Int64(624342951,1613720397),new $Int64(857179861,2703686015),new $Int64(-911618704,2205342611),new $Int64(-672703993,1411666394),new $Int64(-1528454899,677744900),new $Int64(-1876628533,4172867247),new $Int64(135494707,2163418403),new $Int64(849547544,2841526879),new $Int64(-1117516959,1082141470),new $Int64(-1770111792,4046134367),new $Int64(51415528,2142943655),new $Int64(-249824333,3124627521),new $Int64(998228909,219992939),new $Int64(-1078790951,1756846531),new $Int64(1283749206,1225118210),new $Int64(-525858006,1647770243),new $Int64(-2035959705,444807907),new $Int64(2036369448,3952076173),new $Int64(53201823,1461839639),new $Int64(315761893,3699250910),new $Int64(702974850,1373688981),new $Int64(734022261,147523747),new $Int64(-2047330906,1211276581),new $Int64(1294440951,2548832680),new $Int64(1144696256,1995631888),new $Int64(-1992983070,2011457303),new $Int64(-1351022674,3057425772),new $Int64(667839456,81484597),new $Int64(-1681980888,3646681560),new $Int64(-1372462725,635548515),new $Int64(602489502,2508044581),new $Int64(-1794220117,1014917157),new $Int64(719992433,3214891315),new $Int64(-1294799037,959582252),new $Int64(226415134,3347040449),new $Int64(-362868096,4102971975),new $Int64(397887437,4078022210),new $Int64(-536803826,2851767182),new $Int64(-1398321012,1540160644),new $Int64(-1549098876,1057290595),new $Int64(-112592988,3907769253),new $Int64(579300318,4248952684),new $Int64(-1054576049,132554364),new $Int64(-1085862414,1029351092),new $Int64(697840928,2583007416),new $Int64(298619124,1486185789),new $Int64(55905697,2871589073),new $Int64(2017643612,723203291),new $Int64(146250550,2494333952),new $Int64(-1082993397,2230939180),new $Int64(-1804568072,3943232912),new $Int64(1768732449,2181367922),new $Int64(-729261111,2889274791),new $Int64(1824032949,2046728161),new $Int64(1653899792,1376052477),new $Int64(1022327048,381236993),new $Int64(-1113097690,3188942166),new $Int64(-74480109,350070824),new $Int64(144881592,61758415),new $Int64(-741824226,3492950336),new $Int64(-2030042720,3093818430),new $Int64(-453590535,2962480613),new $Int64(-1912050708,3154871160),new $Int64(-1636478569,3228564679),new $Int64(610731502,888276216),new $Int64(-946702974,3574998604),new $Int64(-1277068380,1967526716),new $Int64(-1556147941,1554691298),new $Int64(-1573024234,339944798),new $Int64(1223764147,1154515356),new $Int64(1825645307,967516237),new $Int64(1546195135,596588202),new $Int64(-1867600880,3764362170),new $Int64(-1655392592,266611402),new $Int64(-393255880,2047856075),new $Int64(-1000726433,21444105),new $Int64(-949424754,3065563181),new $Int64(-232418803,1140663212),new $Int64(633187674,2323741028),new $Int64(2126290159,3103873707),new $Int64(1008658319,2766828349),new $Int64(-485587503,1970872996),new $Int64(1628585413,3766615585),new $Int64(-595148528,2036813414),new $Int64(-1994877121,3105536507),new $Int64(13954645,3396176938),new $Int64(-721402003,1377154485),new $Int64(-61839181,3807014186),new $Int64(543009040,3710110597),new $Int64(-1751425519,916420443),new $Int64(734556788,2103831255),new $Int64(-1766161494,717331943),new $Int64(-1574598896,3550505941),new $Int64(45939673,378749927),new $Int64(-1997615719,611017331),new $Int64(592130075,758907650),new $Int64(1012992349,154266815),new $Int64(-1040454942,1407468696),new $Int64(-1678191250,970098704),new $Int64(-285057486,1971660656),new $Int64(998365243,3332747885),new $Int64(1947089649,1935189867),new $Int64(1510248801,203520055),new $Int64(-1305165746,3916463034),new $Int64(-388598655,3474113316),new $Int64(1036101639,316544223),new $Int64(-1773744891,1650844677),new $Int64(-907191419,4267565603),new $Int64(-1070275024,2501167616),new $Int64(-1520651863,3929401789),new $Int64(-2091360852,337170252),new $Int64(-960502090,2061966842),new $Int64(-304190848,2508461464),new $Int64(-1941471116,2791377107),new $Int64(1240791848,1227227588),new $Int64(1813978778,1709681848),new $Int64(1153692192,3768820575),new $Int64(-1002297449,2887126398),new $Int64(-1447111334,296561685),new $Int64(700300844,3729960077),new $Int64(-1572311344,372833036),new $Int64(2078875613,2409779288),new $Int64(1829161290,555274064),new $Int64(-1105595719,4239804901),new $Int64(1839403216,3723486978),new $Int64(-1649093095,2145871984),new $Int64(-1582765715,3565480803),new $Int64(-1568653827,2197313814),new $Int64(974785092,3613674566),new $Int64(438638731,3042093666),new $Int64(-96556264,3324034321),new $Int64(869420878,3708873369),new $Int64(946682149,1698090092),new $Int64(1618900382,4213940712),new $Int64(-1843479747,2087477361),new $Int64(-1766167800,2407950639),new $Int64(-1296225558,3942568569),new $Int64(-1223900450,4088074412),new $Int64(723260036,2964773675),new $Int64(-673921829,1539178386),new $Int64(1062961552,2694849566),new $Int64(460977733,2120273838),new $Int64(-1604570740,2484608657),new $Int64(880846449,2956190677),new $Int64(1970902366,4223313749),new $Int64(662161910,3502682327),new $Int64(705634754,4133891139),new $Int64(-1031359300,1166449596),new $Int64(1038247601,3362705993),new $Int64(93734798,3892921029),new $Int64(1876124043,786869787),new $Int64(1057490746,1046342263),new $Int64(242763728,493777327),new $Int64(-853573201,3304827646),new $Int64(616460742,125356352),new $Int64(499300063,74094113),new $Int64(-795586925,2500816079),new $Int64(-490248444,514015239),new $Int64(1377565129,543520454),new $Int64(-2039776725,3614531153),new $Int64(2056746300,2356753985),new $Int64(1390062617,2018141668),new $Int64(131272971,2087974891),new $Int64(-1502927041,3166972343),new $Int64(372256200,1517638666),new $Int64(-935275664,173466846),new $Int64(-695774461,4241513471),new $Int64(-1413550842,2783126920),new $Int64(1972004134,4167264826),new $Int64(29260506,3907395640),new $Int64(-910901561,1539634186),new $Int64(-595957298,178241987),new $Int64(-113277636,182168164),new $Int64(-1102530459,2386154934),new $Int64(1379126408,4077374341),new $Int64(-2114679722,1732699140),new $Int64(-421057745,1041306002),new $Int64(1860414813,2068001749),new $Int64(1005320202,3208962910),new $Int64(844054010,697710380),new $Int64(-1509359403,2228431183),new $Int64(-810313977,3554678728),new $Int64(-750989047,173470263),new $Int64(-85886265,3848297795),new $Int64(-926936977,246236185),new $Int64(-1984190461,2066374846),new $Int64(1771673660,312890749),new $Int64(703378057,3573310289),new $Int64(-598851901,143166754),new $Int64(613554316,2081511079),new $Int64(1197802104,486038032),new $Int64(-1906483789,2982218564),new $Int64(364901986,1000939191),new $Int64(1902782651,2750454885),new $Int64(-671844857,3375313137),new $Int64(-1643868040,881302957),new $Int64(-1508784745,2514186393),new $Int64(-1703622845,360024739),new $Int64(1399671872,292500025),new $Int64(1381210821,2276300752),new $Int64(521803381,4069087683),new $Int64(-1938982667,1637778212),new $Int64(720490469,1676670893),new $Int64(1067262482,3855174429),new $Int64(2114075974,2067248671),new $Int64(-89426259,2884561259),new $Int64(-805741095,2456511185),new $Int64(983726246,561175414),new $Int64(-1719489563,432588903),new $Int64(885133709,4059399550),new $Int64(-93096266,1075014784),new $Int64(-1733832628,2728058415),new $Int64(1839142064,1299703678),new $Int64(1262333188,2347583393),new $Int64(1285481956,2468164145),new $Int64(-1158354011,1140014346),new $Int64(2033889184,1936972070),new $Int64(-1737578993,3870530098),new $Int64(-484494257,1717789158),new $Int64(-232997156,1153452491),new $Int64(-990424416,3948827651),new $Int64(-1357145630,2101413152),new $Int64(1495744672,3854091229),new $Int64(83644069,4215565463),new $Int64(-1385277313,1202710438),new $Int64(-564909037,2072216740),new $Int64(705690639,2066751068),new $Int64(-2113583312,173902580),new $Int64(-741983806,142459001),new $Int64(172391592,1889151926),new $Int64(-498943125,3034199774),new $Int64(1618587731,516490102),new $Int64(93114264,3692577783),new $Int64(-2078821353,2953948865),new $Int64(-320938673,4041040923),new $Int64(-1942517976,592046130),new $Int64(-705643640,384297211),new $Int64(-2051649464,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(-1703423246,4013676611),new $Int64(1718532237,2265047407),new $Int64(1433593806,875071080),new $Int64(-343047503,1418843655),new $Int64(2009228711,451657300),new $Int64(1229446621,1866374663),new $Int64(1653472867,1551455622),new $Int64(577191481,3560962459),new $Int64(1669204077,3347903778),new $Int64(-298327194,2675874918),new $Int64(-1831355577,2762991672),new $Int64(530492383,3689068477),new $Int64(844089962,4071997905),new $Int64(1508155730,1381702441),new $Int64(2089931018,2373284878),new $Int64(-864267462,2143983064),new $Int64(308739063,1938207195),new $Int64(1754949306,1188152253),new $Int64(1272345009,615870490),new $Int64(742653194,2662252621),new $Int64(1477718295,3839976789),new $Int64(-2091334213,306752547),new $Int64(-1426688067,2162363077),new $Int64(-57052633,2767224719),new $Int64(-1471624099,2628837712),new $Int64(1678405918,2967771969),new $Int64(1694285728,499792248),new $Int64(-1744131281,4285253508),new $Int64(962357072,2856511070),new $Int64(679471692,2526409716),new $Int64(-1793706473,1240875658),new $Int64(-914893422,2577342868),new $Int64(-1001298215,4136853496),new $Int64(-1477114974,2403540137),new $Int64(1372824515,1371410668),new $Int64(-176562048,371758825),new $Int64(-441063112,1528834084),new $Int64(-71688630,1504757260),new $Int64(-1461820072,699052551),new $Int64(-505543539,3347789870),new $Int64(1951619734,3430604759),new $Int64(2119672219,1935601723),new $Int64(966789690,834676166)]);P=N(new AF.ptr(new B.Mutex.ptr(false),$assertType(L(new $Int64(0,1)),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,A,F,T,Z,AW,B,E,G,H,I,J,L,M,N,O,U;A=$packages["reflect"];F=$pkg.Interface=$newType(8,$kindInterface,"sort.Interface",true,"sort",true,null);T=$pkg.reverse=$newType(0,$kindStruct,"sort.reverse",true,"sort",false,function(Interface_){this.$val=this;if(arguments.length===0){this.Interface=$ifaceNil;return;}this.Interface=Interface_;});Z=$pkg.StringSlice=$newType(12,$kindSlice,"sort.StringSlice",true,"sort",true,null);AW=$sliceType($String);B=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<f)){$s=2;continue;}h=e+(g=((f-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:$s=-1;return e;}return;}if($f===undefined){$f={$blk:B};}$f.$ptr=$ptr;$f.a=a;$f.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=B;E=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=B(a[0].$length,(function(a,b){return function(c){var $ptr,c;return((c<0||c>=a[0].$length)?($throwRuntimeError("index out of range"),undefined):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=-1;return c;}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SearchStrings=E;Z.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=E($subslice(new AW(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=-1;return c;}return;}if($f===undefined){$f={$blk:Z.prototype.Search};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(Z).prototype.Search=function(a){return this.$get().Search(a);};G=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:d=b+1>>0;case 1:if(!(d<c)){$s=2;continue;}e=d;case 3:if(!(e>b)){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;return;}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)<c)){g=false;$s=5;continue s;}h=a.Less(d+f>>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:$s=-1;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;return;}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;return;}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;return;}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;};L=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,b,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;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$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=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=c-1>>0;m=k;n=l;case 7:if(!(m<n)){o=false;$s=9;continue s;}p=a.Less(m,j);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;case 9:if(!(o)){$s=8;continue;}m=m+(1)>>0;$s=7;continue;case 8:q=m;case 11:case 13:if(!(q<n)){r=false;$s=15;continue s;}s=a.Less(j,q);$s=16;case 16:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=!s;case 15:if(!(r)){$s=14;continue;}q=q+(1)>>0;$s=13;continue;case 14:case 17:if(!(q<n)){t=false;$s=19;continue s;}u=a.Less(j,n-1>>0);$s=20;case 20:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;case 19:if(!(t)){$s=18;continue;}n=n-(1)>>0;$s=17;continue;case 18:if(q>=n){$s=12;continue;}$r=a.Swap(q,n-1>>0);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=q+(1)>>0;n=n-(1)>>0;$s=11;continue;case 12:v=(c-n>>0)<5;if(!v&&(c-n>>0)<(w=((c-b>>0))/4,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"))){$s=22;continue;}$s=23;continue;case 22:x=0;y=a.Less(j,c-1>>0);$s=26;case 26:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(!y){$s=24;continue;}$s=25;continue;case 24:$r=a.Swap(n,c-1>>0);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=n+(1)>>0;x=x+(1)>>0;case 25:z=a.Less(q-1>>0,j);$s=30;case 30:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}if(!z){$s=28;continue;}$s=29;continue;case 28:q=q-(1)>>0;x=x+(1)>>0;case 29:aa=a.Less(g,j);$s=33;case 33:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}if(!aa){$s=31;continue;}$s=32;continue;case 31:$r=a.Swap(g,q-1>>0);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=q-(1)>>0;x=x+(1)>>0;case 32:v=x>1;case 23:if(v){$s=35;continue;}$s=36;continue;case 35:case 37:case 39:if(!(m<q)){ab=false;$s=41;continue s;}ac=a.Less(q-1>>0,j);$s=42;case 42:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=!ac;case 41:if(!(ab)){$s=40;continue;}q=q-(1)>>0;$s=39;continue;case 40:case 43:if(!(m<q)){ad=false;$s=45;continue s;}ae=a.Less(m,j);$s=46;case 46:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;case 45:if(!(ad)){$s=44;continue;}m=m+(1)>>0;$s=43;continue;case 44:if(m>=q){$s=38;continue;}$r=a.Swap(m,q-1>>0);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}m=m+(1)>>0;q=q-(1)>>0;$s=37;continue;case 38:case 36:$r=a.Swap(j,q-1>>0);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}af=q-1>>0;ag=n;d=af;e=ag;$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:L};}$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.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};M=function(a,b,c,d){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:case 1:if(!((c-b>>0)>12)){$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;}$s=-1;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:i=b+6>>0;case 14:if(!(i<c)){$s=15;continue;}j=a.Less(i,i-6>>0);$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(j){$s=16;continue;}$s=17;continue;case 16:$r=a.Swap(i,i-6>>0);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 17:i=i+(1)>>0;$s=14;continue;case 15:$r=G(a,b,c);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=-1;return;}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,$s,$r;$s=0;var $f,$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=a.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$r=M(a,0,c,O(c));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sort=N;O=function(a){var $ptr,a,b,c;b=0;c=a;while(true){if(!(c>0)){break;}b=b+(1)>>0;c=(c>>$min((1),31))>>0;}return $imul(b,2);};T.ptr.prototype.Less=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;d=c.Interface.Less(b,a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:T.ptr.prototype.Less};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};T.prototype.Less=function(a,b){return this.$val.Less(a,b);};U=function(a){var $ptr,a;return new T.ptr(a);};$pkg.Reverse=U;Z.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(Z).prototype.Len=function(){return this.$get().Len();};Z.prototype.Less=function(a,b){var $ptr,a,b,c;c=this;return((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a])<((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);};$ptrType(Z).prototype.Less=function(a,b){return this.$get().Less(a,b);};Z.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e;c=this;d=((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);e=((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]);((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=d);((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]=e);};$ptrType(Z).prototype.Swap=function(a,b){return this.$get().Swap(a,b);};Z.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;return;}return;}if($f===undefined){$f={$blk:Z.prototype.Sort};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(Z).prototype.Sort=function(){return this.$get().Sort();};T.methods=[{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)}];Z.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)}];F.init([{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)}]);T.init("",[{prop:"Interface",name:"",exported:true,typ:F,tag:""}]);Z.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:$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["github.com/r0fls/gostats"]=(function(){var $pkg={},$init,A,B,C,D;A=$packages["math"];B=$packages["math/rand"];C=$packages["sort"];D=$packages["time"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/subtle"]=(function(){var $pkg={},$init,C;C=function(a,b){var $ptr,a,b,c;c=~(((a^b)<<24>>>24))<<24>>>24;c=(c&((c>>>4<<24>>>24)))>>>0;c=(c&((c>>>2<<24>>>24)))>>>0;c=(c&((c>>>1<<24>>>24)))>>>0;return(c>>0);};$pkg.ConstantTimeByteEq=C;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/cipher"]=(function(){var $pkg={},$init,A,B,C,D,R,AW,AD;A=$packages["crypto/subtle"];B=$packages["errors"];C=$packages["io"];D=$packages["runtime"];R=$pkg.Stream=$newType(8,$kindInterface,"cipher.Stream",true,"crypto/cipher",true,null);AW=$sliceType($Uint8);R.init([{prop:"XORKeyStream",name:"XORKeyStream",pkg:"",typ:$funcType([AW,AW],[],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AD=B.New("cipher: message authentication failed");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["encoding"]=(function(){var $pkg={},$init,A,B,C,D,E;A=$pkg.BinaryMarshaler=$newType(8,$kindInterface,"encoding.BinaryMarshaler",true,"encoding",true,null);B=$pkg.BinaryUnmarshaler=$newType(8,$kindInterface,"encoding.BinaryUnmarshaler",true,"encoding",true,null);C=$pkg.TextMarshaler=$newType(8,$kindInterface,"encoding.TextMarshaler",true,"encoding",true,null);D=$pkg.TextUnmarshaler=$newType(8,$kindInterface,"encoding.TextUnmarshaler",true,"encoding",true,null);E=$sliceType($Uint8);A.init([{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[E,$error],false)}]);B.init([{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([E],[$error],false)}]);C.init([{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[E,$error],false)}]);D.init([{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([E],[$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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["encoding/binary"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,N,O,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,U,H,I,K,L,P,Q,R;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];E=$pkg.ByteOrder=$newType(8,$kindInterface,"binary.ByteOrder",true,"encoding/binary",true,null);F=$pkg.littleEndian=$newType(0,$kindStruct,"binary.littleEndian",true,"encoding/binary",false,function(){this.$val=this;if(arguments.length===0){return;}});G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian",true,"encoding/binary",false,function(){this.$val=this;if(arguments.length===0){return;}});N=$pkg.decoder=$newType(0,$kindStruct,"binary.decoder",true,"encoding/binary",false,function(order_,buf_){this.$val=this;if(arguments.length===0){this.order=$ifaceNil;this.buf=Y.nil;return;}this.order=order_;this.buf=buf_;});O=$pkg.encoder=$newType(0,$kindStruct,"binary.encoder",true,"encoding/binary",false,function(order_,buf_){this.$val=this;if(arguments.length===0){this.order=$ifaceNil;this.buf=Y.nil;return;}this.order=order_;this.buf=buf_;});X=$arrayType($Uint8,8);Y=$sliceType($Uint8);Z=$ptrType($Bool);AA=$ptrType($Int8);AB=$ptrType($Uint8);AC=$ptrType($Int16);AD=$ptrType($Uint16);AE=$ptrType($Int32);AF=$ptrType($Uint32);AG=$ptrType($Int64);AH=$ptrType($Uint64);AI=$sliceType($Bool);AJ=$sliceType($Int8);AK=$sliceType($Int16);AL=$sliceType($Uint16);AM=$sliceType($Int32);AN=$sliceType($Uint32);AO=$sliceType($Int64);AP=$sliceType($Uint64);AQ=$ptrType(N);AR=$ptrType(O);F.ptr.prototype.Uint16=function(a){var $ptr,a;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));return(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])<<16>>>16)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])<<16>>>16)<<8<<16>>>16))>>>0;};F.prototype.Uint16=function(a){return this.$val.Uint16(a);};F.ptr.prototype.PutUint16=function(a,b){var $ptr,a,b;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>8<<16>>>16)<<24>>>24));};F.prototype.PutUint16=function(a,b){return this.$val.PutUint16(a,b);};F.ptr.prototype.Uint32=function(a){var $ptr,a;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));return(((((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>>0)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])>>>0)<<24>>>0))>>>0;};F.prototype.Uint32=function(a){return this.$val.Uint32(a);};F.ptr.prototype.PutUint32=function(a,b){var $ptr,a,b;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>8>>>0)<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((b>>>16>>>0)<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((b>>>24>>>0)<<24>>>24));};F.prototype.PutUint32=function(a,b){return this.$val.PutUint32(a,b);};F.ptr.prototype.Uint64=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])),i=$shiftLeft64(new $Uint64(0,(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])),8),new $Uint64(h.$high|i.$high,(h.$low|i.$low)>>>0)),j=$shiftLeft64(new $Uint64(0,(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])),16),new $Uint64(g.$high|j.$high,(g.$low|j.$low)>>>0)),k=$shiftLeft64(new $Uint64(0,(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])),24),new $Uint64(f.$high|k.$high,(f.$low|k.$low)>>>0)),l=$shiftLeft64(new $Uint64(0,(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4])),32),new $Uint64(e.$high|l.$high,(e.$low|l.$low)>>>0)),m=$shiftLeft64(new $Uint64(0,(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5])),40),new $Uint64(d.$high|m.$high,(d.$low|m.$low)>>>0)),n=$shiftLeft64(new $Uint64(0,(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6])),48),new $Uint64(c.$high|n.$high,(c.$low|n.$low)>>>0)),o=$shiftLeft64(new $Uint64(0,(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7])),56),new $Uint64(b.$high|o.$high,(b.$low|o.$low)>>>0));};F.prototype.Uint64=function(a){return this.$val.Uint64(a);};F.ptr.prototype.PutUint64=function(a,b){var $ptr,a,b;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b.$low<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=($shiftRightUint64(b,8).$low<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=($shiftRightUint64(b,16).$low<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=($shiftRightUint64(b,24).$low<<24>>>24));(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]=($shiftRightUint64(b,32).$low<<24>>>24));(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]=($shiftRightUint64(b,40).$low<<24>>>24));(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]=($shiftRightUint64(b,48).$low<<24>>>24));(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]=($shiftRightUint64(b,56).$low<<24>>>24));};F.prototype.PutUint64=function(a,b){return this.$val.PutUint64(a,b);};F.ptr.prototype.String=function(){var $ptr;return"LittleEndian";};F.prototype.String=function(){return this.$val.String();};F.ptr.prototype.GoString=function(){var $ptr;return"binary.LittleEndian";};F.prototype.GoString=function(){return this.$val.GoString();};G.ptr.prototype.Uint16=function(a){var $ptr,a;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));return(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])<<16>>>16)<<8<<16>>>16))>>>0;};G.prototype.Uint16=function(a){return this.$val.Uint16(a);};G.ptr.prototype.PutUint16=function(a,b){var $ptr,a,b;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=(b<<24>>>24));};G.prototype.PutUint16=function(a,b){return this.$val.PutUint16(a,b);};G.ptr.prototype.Uint32=function(a){var $ptr,a;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));return(((((((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>>0)<<24>>>0))>>>0;};G.prototype.Uint32=function(a){return this.$val.Uint32(a);};G.ptr.prototype.PutUint32=function(a,b){var $ptr,a,b;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=(b<<24>>>24));};G.prototype.PutUint32=function(a,b){return this.$val.PutUint32(a,b);};G.ptr.prototype.Uint64=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6])),8),new $Uint64(h.$high|i.$high,(h.$low|i.$low)>>>0)),j=$shiftLeft64(new $Uint64(0,(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5])),16),new $Uint64(g.$high|j.$high,(g.$low|j.$low)>>>0)),k=$shiftLeft64(new $Uint64(0,(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4])),24),new $Uint64(f.$high|k.$high,(f.$low|k.$low)>>>0)),l=$shiftLeft64(new $Uint64(0,(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])),32),new $Uint64(e.$high|l.$high,(e.$low|l.$low)>>>0)),m=$shiftLeft64(new $Uint64(0,(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])),40),new $Uint64(d.$high|m.$high,(d.$low|m.$low)>>>0)),n=$shiftLeft64(new $Uint64(0,(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])),48),new $Uint64(c.$high|n.$high,(c.$low|n.$low)>>>0)),o=$shiftLeft64(new $Uint64(0,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])),56),new $Uint64(b.$high|o.$high,(b.$low|o.$low)>>>0));};G.prototype.Uint64=function(a){return this.$val.Uint64(a);};G.ptr.prototype.PutUint64=function(a,b){var $ptr,a,b;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]=(b.$low<<24>>>24));};G.prototype.PutUint64=function(a,b){return this.$val.PutUint64(a,b);};G.ptr.prototype.String=function(){var $ptr;return"BigEndian";};G.prototype.String=function(){return this.$val.String();};G.ptr.prototype.GoString=function(){var $ptr;return"binary.BigEndian";};G.prototype.GoString=function(){return this.$val.GoString();};H=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;c=$f.c;ca=$f.ca;cb=$f.cb;cc=$f.cc;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=P(c);if(!((d===0))){$s=1;continue;}$s=2;continue;case 1:e=X.zero();f=Y.nil;if(d>8){f=$makeSlice(Y,d);}else{f=$subslice(new Y(e),0,d);}h=B.ReadFull(a,f);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return i;}j=c;if($assertType(j,Z,true)[1]){$s=4;continue;}if($assertType(j,AA,true)[1]){$s=5;continue;}if($assertType(j,AB,true)[1]){$s=6;continue;}if($assertType(j,AC,true)[1]){$s=7;continue;}if($assertType(j,AD,true)[1]){$s=8;continue;}if($assertType(j,AE,true)[1]){$s=9;continue;}if($assertType(j,AF,true)[1]){$s=10;continue;}if($assertType(j,AG,true)[1]){$s=11;continue;}if($assertType(j,AH,true)[1]){$s=12;continue;}if($assertType(j,AI,true)[1]){$s=13;continue;}if($assertType(j,AJ,true)[1]){$s=14;continue;}if($assertType(j,Y,true)[1]){$s=15;continue;}if($assertType(j,AK,true)[1]){$s=16;continue;}if($assertType(j,AL,true)[1]){$s=17;continue;}if($assertType(j,AM,true)[1]){$s=18;continue;}if($assertType(j,AN,true)[1]){$s=19;continue;}if($assertType(j,AO,true)[1]){$s=20;continue;}if($assertType(j,AP,true)[1]){$s=21;continue;}$s=22;continue;case 4:k=j.$val;k.$set(!((e[0]===0)));$s=22;continue;case 5:l=j.$val;l.$set((e[0]<<24>>24));$s=22;continue;case 6:m=j.$val;m.$set(e[0]);$s=22;continue;case 7:n=j.$val;ac=b.Uint16(f);$s=23;case 23:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}n.$set((ac<<16>>16));$s=22;continue;case 8:o=j.$val;ad=b.Uint16(f);$s=24;case 24:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}o.$set(ad);$s=22;continue;case 9:p=j.$val;ae=b.Uint32(f);$s=25;case 25:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}p.$set((ae>>0));$s=22;continue;case 10:q=j.$val;af=b.Uint32(f);$s=26;case 26:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}q.$set(af);$s=22;continue;case 11:r=j.$val;ah=b.Uint64(f);$s=27;case 27:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}r.$set((ag=ah,new $Int64(ag.$high,ag.$low)));$s=22;continue;case 12:s=j.$val;ai=b.Uint64(f);$s=28;case 28:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}s.$set(ai);$s=22;continue;case 13:t=j.$val;aj=f;ak=0;while(true){if(!(ak<aj.$length)){break;}al=ak;am=((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]);((al<0||al>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+al]=!((am===0)));ak++;}$s=22;continue;case 14:u=j.$val;an=f;ao=0;while(true){if(!(ao<an.$length)){break;}ap=ao;aq=((ao<0||ao>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+ao]);((ap<0||ap>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+ap]=(aq<<24>>24));ao++;}$s=22;continue;case 15:v=j.$val;$copySlice(v,f);$s=22;continue;case 16:w=j.$val;ar=w;as=0;case 29:if(!(as<ar.$length)){$s=30;continue;}at=as;au=b.Uint16($subslice(f,($imul(2,at))));$s=31;case 31:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}((at<0||at>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+at]=(au<<16>>16));as++;$s=29;continue;case 30:$s=22;continue;case 17:x=j.$val;av=x;aw=0;case 32:if(!(aw<av.$length)){$s=33;continue;}ax=aw;ay=b.Uint16($subslice(f,($imul(2,ax))));$s=34;case 34:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}((ax<0||ax>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+ax]=ay);aw++;$s=32;continue;case 33:$s=22;continue;case 18:y=j.$val;az=y;ba=0;case 35:if(!(ba<az.$length)){$s=36;continue;}bb=ba;bc=b.Uint32($subslice(f,($imul(4,bb))));$s=37;case 37:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}((bb<0||bb>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+bb]=(bc>>0));ba++;$s=35;continue;case 36:$s=22;continue;case 19:z=j.$val;bd=z;be=0;case 38:if(!(be<bd.$length)){$s=39;continue;}bf=be;bg=b.Uint32($subslice(f,($imul(4,bf))));$s=40;case 40:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}((bf<0||bf>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+bf]=bg);be++;$s=38;continue;case 39:$s=22;continue;case 20:aa=j.$val;bh=aa;bi=0;case 41:if(!(bi<bh.$length)){$s=42;continue;}bj=bi;bl=b.Uint64($subslice(f,($imul(8,bj))));$s=43;case 43:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}((bj<0||bj>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+bj]=(bk=bl,new $Int64(bk.$high,bk.$low)));bi++;$s=41;continue;case 42:$s=22;continue;case 21:ab=j.$val;bm=ab;bn=0;case 44:if(!(bn<bm.$length)){$s=45;continue;}bo=bn;bp=b.Uint64($subslice(f,($imul(8,bo))));$s=46;case 46:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}((bo<0||bo>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+bo]=bp);bn++;$s=44;continue;case 45:case 22:$s=-1;return $ifaceNil;case 2:bq=D.ValueOf(c);$s=47;case 47:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bq;bs=-1;bt=$clone(br,D.Value).Kind();if(bt===(22)){$s=49;continue;}if(bt===(23)){$s=50;continue;}$s=51;continue;case 49:bu=$clone(br,D.Value).Elem();$s=52;case 52:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}br=bu;bv=K($clone(br,D.Value));$s=53;case 53:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bs=bv;$s=51;continue;case 50:bw=K($clone(br,D.Value));$s=54;case 54:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bs=bw;case 51:case 48:if(bs<0){$s=55;continue;}$s=56;continue;case 55:bx=D.TypeOf(c).String();$s=57;case 57:if($c){$c=false;bx=bx.$blk();}if(bx&&bx.$blk!==undefined){break s;}by=A.New("binary.Read: invalid type "+bx);$s=58;case 58:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}$s=-1;return by;case 56:bz=new N.ptr(b,$makeSlice(Y,bs));cb=B.ReadFull(a,bz.buf);$s=59;case 59:if($c){$c=false;cb=cb.$blk();}if(cb&&cb.$blk!==undefined){break s;}ca=cb;cc=ca[1];if(!($interfaceIsEqual(cc,$ifaceNil))){$s=-1;return cc;}$r=bz.value($clone(br,D.Value));$s=60;case 60:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.c=c;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Read=H;I=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;c=$f.c;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=P(c);if(!((d===0))){$s=1;continue;}$s=2;continue;case 1:e=X.zero();f=Y.nil;if(d>8){f=$makeSlice(Y,d);}else{f=$subslice(new Y(e),0,d);}g=c;if($assertType(g,Z,true)[1]){$s=3;continue;}if($assertType(g,$Bool,true)[1]){$s=4;continue;}if($assertType(g,AI,true)[1]){$s=5;continue;}if($assertType(g,AA,true)[1]){$s=6;continue;}if($assertType(g,$Int8,true)[1]){$s=7;continue;}if($assertType(g,AJ,true)[1]){$s=8;continue;}if($assertType(g,AB,true)[1]){$s=9;continue;}if($assertType(g,$Uint8,true)[1]){$s=10;continue;}if($assertType(g,Y,true)[1]){$s=11;continue;}if($assertType(g,AC,true)[1]){$s=12;continue;}if($assertType(g,$Int16,true)[1]){$s=13;continue;}if($assertType(g,AK,true)[1]){$s=14;continue;}if($assertType(g,AD,true)[1]){$s=15;continue;}if($assertType(g,$Uint16,true)[1]){$s=16;continue;}if($assertType(g,AL,true)[1]){$s=17;continue;}if($assertType(g,AE,true)[1]){$s=18;continue;}if($assertType(g,$Int32,true)[1]){$s=19;continue;}if($assertType(g,AM,true)[1]){$s=20;continue;}if($assertType(g,AF,true)[1]){$s=21;continue;}if($assertType(g,$Uint32,true)[1]){$s=22;continue;}if($assertType(g,AN,true)[1]){$s=23;continue;}if($assertType(g,AG,true)[1]){$s=24;continue;}if($assertType(g,$Int64,true)[1]){$s=25;continue;}if($assertType(g,AO,true)[1]){$s=26;continue;}if($assertType(g,AH,true)[1]){$s=27;continue;}if($assertType(g,$Uint64,true)[1]){$s=28;continue;}if($assertType(g,AP,true)[1]){$s=29;continue;}$s=30;continue;case 3:h=g.$val;if(h.$get()){e[0]=1;}else{e[0]=0;}$s=30;continue;case 4:i=g.$val;if(i){e[0]=1;}else{e[0]=0;}$s=30;continue;case 5:j=g.$val;ai=j;aj=0;while(true){if(!(aj<ai.$length)){break;}ak=aj;al=((aj<0||aj>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+aj]);if(al){((ak<0||ak>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ak]=1);}else{((ak<0||ak>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ak]=0);}aj++;}$s=30;continue;case 6:k=g.$val;e[0]=(k.$get()<<24>>>24);$s=30;continue;case 7:l=g.$val;e[0]=(l<<24>>>24);$s=30;continue;case 8:m=g.$val;am=m;an=0;while(true){if(!(an<am.$length)){break;}ao=an;ap=((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an]);((ao<0||ao>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ao]=(ap<<24>>>24));an++;}$s=30;continue;case 9:n=g.$val;e[0]=n.$get();$s=30;continue;case 10:o=g.$val;e[0]=o;$s=30;continue;case 11:p=g.$val;f=p;$s=30;continue;case 12:q=g.$val;$r=b.PutUint16(f,(q.$get()<<16>>>16));$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 13:r=g.$val;$r=b.PutUint16(f,(r<<16>>>16));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 14:s=g.$val;aq=s;ar=0;case 33:if(!(ar<aq.$length)){$s=34;continue;}as=ar;at=((ar<0||ar>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ar]);$r=b.PutUint16($subslice(f,($imul(2,as))),(at<<16>>>16));$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar++;$s=33;continue;case 34:$s=30;continue;case 15:t=g.$val;$r=b.PutUint16(f,t.$get());$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 16:u=g.$val;$r=b.PutUint16(f,u);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 17:v=g.$val;au=v;av=0;case 38:if(!(av<au.$length)){$s=39;continue;}aw=av;ax=((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]);$r=b.PutUint16($subslice(f,($imul(2,aw))),ax);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}av++;$s=38;continue;case 39:$s=30;continue;case 18:w=g.$val;$r=b.PutUint32(f,(w.$get()>>>0));$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 19:x=g.$val;$r=b.PutUint32(f,(x>>>0));$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 20:y=g.$val;ay=y;az=0;case 43:if(!(az<ay.$length)){$s=44;continue;}ba=az;bb=((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]);$r=b.PutUint32($subslice(f,($imul(4,ba))),(bb>>>0));$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}az++;$s=43;continue;case 44:$s=30;continue;case 21:z=g.$val;$r=b.PutUint32(f,z.$get());$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 22:aa=g.$val;$r=b.PutUint32(f,aa);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 23:ab=g.$val;bc=ab;bd=0;case 48:if(!(bd<bc.$length)){$s=49;continue;}be=bd;bf=((bd<0||bd>=bc.$length)?($throwRuntimeError("index out of range"),undefined):bc.$array[bc.$offset+bd]);$r=b.PutUint32($subslice(f,($imul(4,be))),bf);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bd++;$s=48;continue;case 49:$s=30;continue;case 24:ac=g.$val;$r=b.PutUint64(f,(bg=ac.$get(),new $Uint64(bg.$high,bg.$low)));$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 25:ad=g.$val;$r=b.PutUint64(f,new $Uint64(ad.$high,ad.$low));$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 26:ae=g.$val;bh=ae;bi=0;case 53:if(!(bi<bh.$length)){$s=54;continue;}bj=bi;bk=((bi<0||bi>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bi]);$r=b.PutUint64($subslice(f,($imul(8,bj))),new $Uint64(bk.$high,bk.$low));$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bi++;$s=53;continue;case 54:$s=30;continue;case 27:af=g.$val;$r=b.PutUint64(f,af.$get());$s=56;case 56:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 28:ag=g.$val;$r=b.PutUint64(f,ag);$s=57;case 57:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 29:ah=g.$val;bl=ah;bm=0;case 58:if(!(bm<bl.$length)){$s=59;continue;}bn=bm;bo=((bm<0||bm>=bl.$length)?($throwRuntimeError("index out of range"),undefined):bl.$array[bl.$offset+bm]);$r=b.PutUint64($subslice(f,($imul(8,bn))),bo);$s=60;case 60:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bm++;$s=58;continue;case 59:case 30:bq=a.Write(f);$s=61;case 61:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}bp=bq;br=bp[1];$s=-1;return br;case 2:bs=D.ValueOf(c);$s=62;case 62:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=D.Indirect($clone(bs,D.Value));$s=63;case 63:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}bu=bt;bv=K($clone(bu,D.Value));$s=64;case 64:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bw=bv;if(bw<0){$s=65;continue;}$s=66;continue;case 65:bx=D.TypeOf(c).String();$s=67;case 67:if($c){$c=false;bx=bx.$blk();}if(bx&&bx.$blk!==undefined){break s;}by=A.New("binary.Write: invalid type "+bx);$s=68;case 68:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}$s=-1;return by;case 66:bz=$makeSlice(Y,bw);ca=new O.ptr(b,bz);$r=ca.value($clone(bu,D.Value));$s=69;case 69:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}cc=a.Write(bz);$s=70;case 70:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cb=cc;cd=cb[1];$s=-1;return cd;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.c=c;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Write=I;K=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(a,D.Value).Kind()===23){$s=1;continue;}$s=2;continue;case 1:b=$clone(a,D.Value).Type().Elem();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=L(b);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(d>=0){$s=-1;return $imul(d,$clone(a,D.Value).Len());}$s=-1;return-1;case 2:e=L($clone(a,D.Value).Type());$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:K};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=a.Kind();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(c===(17)){$s=3;continue;}if(c===(25)){$s=4;continue;}if((c===(1))||(c===(8))||(c===(9))||(c===(10))||(c===(11))||(c===(3))||(c===(4))||(c===(5))||(c===(6))||(c===(13))||(c===(14))||(c===(15))||(c===(16))){$s=5;continue;}$s=6;continue;case 3:d=a.Elem();$s=7;case 7:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=L(d);$s=8;case 8:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f>=0){$s=9;continue;}$s=10;continue;case 9:g=a.Len();$s=11;case 11:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return $imul(f,g);case 10:$s=6;continue;case 4:h=0;i=0;k=a.NumField();$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=i;m=j;case 13:if(!(l<m)){$s=14;continue;}n=a.Field(l);$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=L(n.Type);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(p<0){$s=-1;return-1;}h=h+(p)>>0;l=l+(1)>>0;$s=13;continue;case 14:$s=-1;return h;case 5:q=a.Size();$s=17;case 17:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return(q>>0);case 6:case 1:$s=-1;return-1;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};N.ptr.prototype.bool=function(){var $ptr,a,b,c;a=this;c=(b=a.buf,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));a.buf=$subslice(a.buf,1);return!((c===0));};N.prototype.bool=function(){return this.$val.bool();};O.ptr.prototype.bool=function(a){var $ptr,a,b,c,d;b=this;if(a){(c=b.buf,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]=1));}else{(d=b.buf,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]=0));}b.buf=$subslice(b.buf,1);};O.prototype.bool=function(a){return this.$val.bool(a);};N.ptr.prototype.uint8=function(){var $ptr,a,b,c;a=this;c=(b=a.buf,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));a.buf=$subslice(a.buf,1);return c;};N.prototype.uint8=function(){return this.$val.uint8();};O.ptr.prototype.uint8=function(a){var $ptr,a,b,c;b=this;(c=b.buf,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]=a));b.buf=$subslice(b.buf,1);};O.prototype.uint8=function(a){return this.$val.uint8(a);};N.ptr.prototype.uint16=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint16($subslice(a.buf,0,2));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,2);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint16=function(){return this.$val.uint16();};O.ptr.prototype.uint16=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint16($subslice(b.buf,0,2),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,2);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint16=function(a){return this.$val.uint16(a);};N.ptr.prototype.uint32=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint32($subslice(a.buf,0,4));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,4);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint32=function(){return this.$val.uint32();};O.ptr.prototype.uint32=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint32($subslice(b.buf,0,4),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,4);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint32=function(a){return this.$val.uint32(a);};N.ptr.prototype.uint64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint64($subslice(a.buf,0,8));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,8);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint64=function(){return this.$val.uint64();};O.ptr.prototype.uint64=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint64($subslice(b.buf,0,8),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,8);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint64=function(a){return this.$val.uint64(a);};N.ptr.prototype.int8=function(){var $ptr,a;a=this;return(a.uint8()<<24>>24);};N.prototype.int8=function(){return this.$val.int8();};O.ptr.prototype.int8=function(a){var $ptr,a,b;b=this;b.uint8((a<<24>>>24));};O.prototype.int8=function(a){return this.$val.int8(a);};N.ptr.prototype.int16=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.uint16();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return(b<<16>>16);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int16=function(){return this.$val.int16();};O.ptr.prototype.int16=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint16((a<<16>>>16));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int16=function(a){return this.$val.int16(a);};N.ptr.prototype.int32=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.uint32();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return(b>>0);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int32=function(){return this.$val.int32();};O.ptr.prototype.int32=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint32((a>>>0));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int32=function(a){return this.$val.int32(a);};N.ptr.prototype.int64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;c=a.uint64();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return(b=c,new $Int64(b.$high,b.$low));}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int64=function(){return this.$val.int64();};O.ptr.prototype.int64=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint64(new $Uint64(a.$high,a.$low));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int64=function(a){return this.$val.int64(a);};N.ptr.prototype.value=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(a,D.Value).Kind();if(c===(17)){$s=2;continue;}if(c===(25)){$s=3;continue;}if(c===(23)){$s=4;continue;}if(c===(1)){$s=5;continue;}if(c===(3)){$s=6;continue;}if(c===(4)){$s=7;continue;}if(c===(5)){$s=8;continue;}if(c===(6)){$s=9;continue;}if(c===(8)){$s=10;continue;}if(c===(9)){$s=11;continue;}if(c===(10)){$s=12;continue;}if(c===(11)){$s=13;continue;}if(c===(13)){$s=14;continue;}if(c===(14)){$s=15;continue;}if(c===(15)){$s=16;continue;}if(c===(16)){$s=17;continue;}$s=18;continue;case 2:d=$clone(a,D.Value).Len();e=0;case 19:if(!(e<d)){$s=20;continue;}f=$clone(a,D.Value).Index(e);$s=21;case 21:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=b.value($clone(f,D.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=19;continue;case 20:$s=18;continue;case 3:g=$clone(a,D.Value).Type();h=$clone(a,D.Value).NumField();i=0;case 23:if(!(i<h)){$s=24;continue;}j=$clone(a,D.Value).Field(i);$s=25;case 25:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if($clone(k,D.Value).CanSet()){l=true;$s=29;continue s;}m=g.Field(i);$s=30;case 30:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=!(m.Name==="_");case 29:if(l){$s=26;continue;}$s=27;continue;case 26:$r=b.value($clone(k,D.Value));$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=28;continue;case 27:$r=b.skip($clone(k,D.Value));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 28:i=i+(1)>>0;$s=23;continue;case 24:$s=18;continue;case 4:n=$clone(a,D.Value).Len();o=0;case 33:if(!(o<n)){$s=34;continue;}p=$clone(a,D.Value).Index(o);$s=35;case 35:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=b.value($clone(p,D.Value));$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=33;continue;case 34:$s=18;continue;case 5:$clone(a,D.Value).SetBool(b.bool());$s=18;continue;case 6:$clone(a,D.Value).SetInt(new $Int64(0,b.int8()));$s=18;continue;case 7:q=b.int16();$s=37;case 37:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(new $Int64(0,q));$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 8:r=b.int32();$s=39;case 39:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(new $Int64(0,r));$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 9:s=b.int64();$s=41;case 41:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(s);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 10:$clone(a,D.Value).SetUint(new $Uint64(0,b.uint8()));$s=18;continue;case 11:t=b.uint16();$s=43;case 43:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(new $Uint64(0,t));$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 12:u=b.uint32();$s=45;case 45:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(new $Uint64(0,u));$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 13:v=b.uint64();$s=47;case 47:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(v);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 14:w=b.uint32();$s=49;case 49:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=C.Float32frombits(w);$s=50;case 50:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetFloat(x);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 15:y=b.uint64();$s=52;case 52:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=C.Float64frombits(y);$s=53;case 53:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetFloat(z);$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 16:aa=b.uint32();$s=55;case 55:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}ab=C.Float32frombits(aa);$s=56;case 56:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;ad=b.uint32();$s=57;case 57:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=C.Float32frombits(ad);$s=58;case 58:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$r=$clone(a,D.Value).SetComplex(new $Complex128(ac,af));$s=59;case 59:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 17:ag=b.uint64();$s=60;case 60:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=C.Float64frombits(ag);$s=61;case 61:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;aj=b.uint64();$s=62;case 62:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=C.Float64frombits(aj);$s=63;case 63:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=$clone(a,D.Value).SetComplex(new $Complex128(ai,al));$s=64;case 64:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.value};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.value=function(a){return this.$val.value(a);};O.ptr.prototype.value=function(a){var $ptr,a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(a,D.Value).Kind();if(c===(17)){$s=2;continue;}if(c===(25)){$s=3;continue;}if(c===(23)){$s=4;continue;}if(c===(1)){$s=5;continue;}if((c===(2))||(c===(3))||(c===(4))||(c===(5))||(c===(6))){$s=6;continue;}if((c===(7))||(c===(8))||(c===(9))||(c===(10))||(c===(11))||(c===(12))){$s=7;continue;}if((c===(13))||(c===(14))){$s=8;continue;}if((c===(15))||(c===(16))){$s=9;continue;}$s=10;continue;case 2:d=$clone(a,D.Value).Len();e=0;case 11:if(!(e<d)){$s=12;continue;}f=$clone(a,D.Value).Index(e);$s=13;case 13:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=b.value($clone(f,D.Value));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=11;continue;case 12:$s=10;continue;case 3:g=$clone(a,D.Value).Type();h=$clone(a,D.Value).NumField();i=0;case 15:if(!(i<h)){$s=16;continue;}j=$clone(a,D.Value).Field(i);$s=17;case 17:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if($clone(k,D.Value).CanSet()){l=true;$s=21;continue s;}m=g.Field(i);$s=22;case 22:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=!(m.Name==="_");case 21:if(l){$s=18;continue;}$s=19;continue;case 18:$r=b.value($clone(k,D.Value));$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=20;continue;case 19:$r=b.skip($clone(k,D.Value));$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:i=i+(1)>>0;$s=15;continue;case 16:$s=10;continue;case 4:n=$clone(a,D.Value).Len();o=0;case 25:if(!(o<n)){$s=26;continue;}p=$clone(a,D.Value).Index(o);$s=27;case 27:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=b.value($clone(p,D.Value));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=25;continue;case 26:$s=10;continue;case 5:b.bool($clone(a,D.Value).Bool());$s=10;continue;case 6:q=$clone(a,D.Value).Type().Kind();$s=30;case 30:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(r===(3)){$s=31;continue;}if(r===(4)){$s=32;continue;}if(r===(5)){$s=33;continue;}if(r===(6)){$s=34;continue;}$s=35;continue;case 31:b.int8(((s=$clone(a,D.Value).Int(),s.$low+((s.$high>>31)*4294967296))<<24>>24));$s=35;continue;case 32:$r=b.int16(((t=$clone(a,D.Value).Int(),t.$low+((t.$high>>31)*4294967296))<<16>>16));$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=35;continue;case 33:$r=b.int32(((u=$clone(a,D.Value).Int(),u.$low+((u.$high>>31)*4294967296))>>0));$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=35;continue;case 34:$r=b.int64($clone(a,D.Value).Int());$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 35:case 29:$s=10;continue;case 7:v=$clone(a,D.Value).Type().Kind();$s=40;case 40:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(w===(8)){$s=41;continue;}if(w===(9)){$s=42;continue;}if(w===(10)){$s=43;continue;}if(w===(11)){$s=44;continue;}$s=45;continue;case 41:b.uint8(($clone(a,D.Value).Uint().$low<<24>>>24));$s=45;continue;case 42:$r=b.uint16(($clone(a,D.Value).Uint().$low<<16>>>16));$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=45;continue;case 43:$r=b.uint32(($clone(a,D.Value).Uint().$low>>>0));$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=45;continue;case 44:$r=b.uint64($clone(a,D.Value).Uint());$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 45:case 39:$s=10;continue;case 8:x=$clone(a,D.Value).Type().Kind();$s=50;case 50:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;if(y===(13)){$s=51;continue;}if(y===(14)){$s=52;continue;}$s=53;continue;case 51:$r=b.uint32(C.Float32bits($fround($clone(a,D.Value).Float())));$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=53;continue;case 52:$r=b.uint64(C.Float64bits($clone(a,D.Value).Float()));$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 53:case 49:$s=10;continue;case 9:z=$clone(a,D.Value).Type().Kind();$s=57;case 57:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=z;if(aa===(15)){$s=58;continue;}if(aa===(16)){$s=59;continue;}$s=60;continue;case 58:ab=$clone(a,D.Value).Complex();$r=b.uint32(C.Float32bits($fround(ab.$real)));$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.uint32(C.Float32bits($fround(ab.$imag)));$s=62;case 62:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=60;continue;case 59:ac=$clone(a,D.Value).Complex();$r=b.uint64(C.Float64bits(ac.$real));$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.uint64(C.Float64bits(ac.$imag));$s=64;case 64:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 60:case 56:case 10:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.value};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.value=function(a){return this.$val.value(a);};N.ptr.prototype.skip=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=K($clone(a,D.Value));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b.buf=$subslice(b.buf,c);$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.skip};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.skip=function(a){return this.$val.skip(a);};O.ptr.prototype.skip=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=K($clone(a,D.Value));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=$subslice(b.buf,0,d);f=0;while(true){if(!(f<e.$length)){break;}g=f;(h=b.buf,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]=0));f++;}b.buf=$subslice(b.buf,d);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.skip};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.skip=function(a){return this.$val.skip(a);};P=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;b=a;if($assertType(b,$Bool,true)[1]||$assertType(b,$Int8,true)[1]||$assertType(b,$Uint8,true)[1]||$assertType(b,Z,true)[1]||$assertType(b,AA,true)[1]||$assertType(b,AB,true)[1]){c=b;return 1;}else if($assertType(b,AJ,true)[1]){d=b.$val;return d.$length;}else if($assertType(b,Y,true)[1]){e=b.$val;return e.$length;}else if($assertType(b,$Int16,true)[1]||$assertType(b,$Uint16,true)[1]||$assertType(b,AC,true)[1]||$assertType(b,AD,true)[1]){f=b;return 2;}else if($assertType(b,AK,true)[1]){g=b.$val;return $imul(2,g.$length);}else if($assertType(b,AL,true)[1]){h=b.$val;return $imul(2,h.$length);}else if($assertType(b,$Int32,true)[1]||$assertType(b,$Uint32,true)[1]||$assertType(b,AE,true)[1]||$assertType(b,AF,true)[1]){i=b;return 4;}else if($assertType(b,AM,true)[1]){j=b.$val;return $imul(4,j.$length);}else if($assertType(b,AN,true)[1]){k=b.$val;return $imul(4,k.$length);}else if($assertType(b,$Int64,true)[1]||$assertType(b,$Uint64,true)[1]||$assertType(b,AG,true)[1]||$assertType(b,AH,true)[1]){l=b;return 8;}else if($assertType(b,AO,true)[1]){m=b.$val;return $imul(8,m.$length);}else if($assertType(b,AP,true)[1]){n=b.$val;return $imul(8,n.$length);}return 0;};Q=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!((b.$high>0||(b.$high===0&&b.$low>=128)))){break;}((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=(((b.$low<<24>>>24)|128)>>>0));b=$shiftRightUint64(b,(7));c=c+(1)>>0;}((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=(b.$low<<24>>>24));return c+1>>0;};$pkg.PutUvarint=Q;R=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=new $Uint64(0,0);c=0;d=a;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(g<128){if(f>9||(f===9)&&g>1){return[new $Uint64(0,0),-((f+1>>0))];}return[(h=$shiftLeft64(new $Uint64(0,g),c),new $Uint64(b.$high|h.$high,(b.$low|h.$low)>>>0)),f+1>>0];}b=(i=$shiftLeft64(new $Uint64(0,((g&127)>>>0)),c),new $Uint64(b.$high|i.$high,(b.$low|i.$low)>>>0));c=c+(7)>>>0;e++;}return[new $Uint64(0,0),0];};$pkg.Uvarint=R;F.methods=[{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}];G.methods=[{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}];AQ.methods=[{prop:"bool",name:"bool",pkg:"encoding/binary",typ:$funcType([],[$Bool],false)},{prop:"uint8",name:"uint8",pkg:"encoding/binary",typ:$funcType([],[$Uint8],false)},{prop:"uint16",name:"uint16",pkg:"encoding/binary",typ:$funcType([],[$Uint16],false)},{prop:"uint32",name:"uint32",pkg:"encoding/binary",typ:$funcType([],[$Uint32],false)},{prop:"uint64",name:"uint64",pkg:"encoding/binary",typ:$funcType([],[$Uint64],false)},{prop:"int8",name:"int8",pkg:"encoding/binary",typ:$funcType([],[$Int8],false)},{prop:"int16",name:"int16",pkg:"encoding/binary",typ:$funcType([],[$Int16],false)},{prop:"int32",name:"int32",pkg:"encoding/binary",typ:$funcType([],[$Int32],false)},{prop:"int64",name:"int64",pkg:"encoding/binary",typ:$funcType([],[$Int64],false)},{prop:"value",name:"value",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)},{prop:"skip",name:"skip",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)}];AR.methods=[{prop:"bool",name:"bool",pkg:"encoding/binary",typ:$funcType([$Bool],[],false)},{prop:"uint8",name:"uint8",pkg:"encoding/binary",typ:$funcType([$Uint8],[],false)},{prop:"uint16",name:"uint16",pkg:"encoding/binary",typ:$funcType([$Uint16],[],false)},{prop:"uint32",name:"uint32",pkg:"encoding/binary",typ:$funcType([$Uint32],[],false)},{prop:"uint64",name:"uint64",pkg:"encoding/binary",typ:$funcType([$Uint64],[],false)},{prop:"int8",name:"int8",pkg:"encoding/binary",typ:$funcType([$Int8],[],false)},{prop:"int16",name:"int16",pkg:"encoding/binary",typ:$funcType([$Int16],[],false)},{prop:"int32",name:"int32",pkg:"encoding/binary",typ:$funcType([$Int32],[],false)},{prop:"int64",name:"int64",pkg:"encoding/binary",typ:$funcType([$Int64],[],false)},{prop:"value",name:"value",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)},{prop:"skip",name:"skip",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)}];E.init([{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)}]);F.init("",[]);G.init("",[]);N.init("encoding/binary",[{prop:"order",name:"order",exported:false,typ:E,tag:""},{prop:"buf",name:"buf",exported:false,typ:Y,tag:""}]);O.init("encoding/binary",[{prop:"order",name:"order",exported:false,typ:E,tag:""},{prop:"buf",name:"buf",exported:false,typ:Y,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.LittleEndian=new F.ptr();$pkg.BigEndian=new G.ptr();U=A.New("binary: varint overflows a 64-bit integer");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/subtle"]=(function(){var $pkg={},$init,A,C;A=$packages["crypto/subtle"];C=function(a,b){var $ptr,a,b,c,d,e,f;c=0;d=a;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);c=(c|(((f^b)<<24>>>24)))>>>0;e++;}return A.ConstantTimeByteEq(c,0);};$pkg.ConstantTimeAllEq=C;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["unicode"]=(function(){var $pkg={},$init,O,P,Q,R,T,AF,IS,IT,IU,IV,IW,IX,IY,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,DO,DP,DQ,DR,DS,DT,DU,DV,DW,DX,DY,DZ,EA,EB,EC,ED,EE,EF,EG,EH,EI,EJ,EK,EL,EM,EN,EO,EP,EQ,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM,FN,FO,FP,FQ,FR,FS,FT,FU,FV,FW,FX,FY,FZ,GA,GB,GC,GD,GE,GF,GG,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,IF,IG,IH,II,IJ,IK,IL,IM,IN,IO,IP,IQ,IR,A,C,E,G,I,U,V,W,X,AB,AC,AD,AG;O=$pkg.RangeTable=$newType(0,$kindStruct,"unicode.RangeTable",true,"unicode",true,function(R16_,R32_,LatinOffset_){this.$val=this;if(arguments.length===0){this.R16=IT.nil;this.R32=IU.nil;this.LatinOffset=0;return;}this.R16=R16_;this.R32=R32_;this.LatinOffset=LatinOffset_;});P=$pkg.Range16=$newType(0,$kindStruct,"unicode.Range16",true,"unicode",true,function(Lo_,Hi_,Stride_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Stride=0;return;}this.Lo=Lo_;this.Hi=Hi_;this.Stride=Stride_;});Q=$pkg.Range32=$newType(0,$kindStruct,"unicode.Range32",true,"unicode",true,function(Lo_,Hi_,Stride_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Stride=0;return;}this.Lo=Lo_;this.Hi=Hi_;this.Stride=Stride_;});R=$pkg.CaseRange=$newType(0,$kindStruct,"unicode.CaseRange",true,"unicode",true,function(Lo_,Hi_,Delta_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Delta=IS.zero();return;}this.Lo=Lo_;this.Hi=Hi_;this.Delta=Delta_;});T=$pkg.d=$newType(12,$kindArray,"unicode.d",true,"unicode",false,null);AF=$pkg.foldPair=$newType(0,$kindStruct,"unicode.foldPair",true,"unicode",false,function(From_,To_){this.$val=this;if(arguments.length===0){this.From=0;this.To=0;return;}this.From=From_;this.To=To_;});IS=$arrayType($Int32,3);IT=$sliceType(P);IU=$sliceType(Q);IV=$ptrType(O);IW=$sliceType(IV);IX=$sliceType(R);IY=$sliceType(AF);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<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;i=((h<0||h>=d.$length)?($throwRuntimeError("index out of range"),undefined):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"),undefined):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;};C=function(b){var $ptr,b;if(b<=255){return 48<=b&&b<=57;}return X($pkg.Digit,b);};$pkg.IsDigit=C;E=function(b){var $ptr,b,c;if((b>>>0)<=255){return!(((((c=(b<<24>>>24),((c<0||c>=IG.length)?($throwRuntimeError("index out of range"),undefined):IG[c]))&128)>>>0)===0));}return G(b,$pkg.PrintRanges);};$pkg.IsPrint=E;G=function(b,c){var $ptr,b,c,d,e,f;d=c;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(W(f,b)){return true;}e++;}return false;};$pkg.In=G;I=function(b){var $ptr,b,c;if((b>>>0)<=255){return!(((((c=(b<<24>>>24),((c<0||c>=IG.length)?($throwRuntimeError("index out of range"),undefined):IG[c]))&96)>>>0)===0));}return X($pkg.Letter,b);};$pkg.IsLetter=I;U=function(b,c){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n;if(b.$length<=18||c<=255){d=b;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);if(c<g.Lo){return false;}if(c<=g.Hi){return(h=((c-g.Lo<<16>>>16))%g.Stride,h===h?h:$throwRuntimeError("integer divide by zero"))===0;}e++;}return false;}i=0;j=b.$length;while(true){if(!(i<j)){break;}l=i+(k=((j-i>>0))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0;m=((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]);if(m.Lo<=c&&c<=m.Hi){return(n=((c-m.Lo<<16>>>16))%m.Stride,n===n?n:$throwRuntimeError("integer divide by zero"))===0;}if(c<m.Lo){j=l;}else{i=l+1>>0;}}return false;};V=function(b,c){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n;if(b.$length<=18){d=b;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);if(c<g.Lo){return false;}if(c<=g.Hi){return(h=((c-g.Lo>>>0))%g.Stride,h===h?h:$throwRuntimeError("integer divide by zero"))===0;}e++;}return false;}i=0;j=b.$length;while(true){if(!(i<j)){break;}l=i+(k=((j-i>>0))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0;m=$clone(((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]),Q);if(m.Lo<=c&&c<=m.Hi){return(n=((c-m.Lo>>>0))%m.Stride,n===n?n:$throwRuntimeError("integer divide by zero"))===0;}if(c<m.Lo){j=l;}else{i=l+1>>0;}}return false;};W=function(b,c){var $ptr,b,c,d,e,f;d=b.R16;if(d.$length>0&&c<=((e=d.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Hi>>0)){return U(d,(c<<16>>>16));}f=b.R32;if(f.$length>0&&c>=((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]).Lo>>0)){return V(f,(c>>>0));}return false;};$pkg.Is=W;X=function(b,c){var $ptr,b,c,d,e,f,g;d=b.R16;e=b.LatinOffset;if(d.$length>e&&c<=((f=d.$length-1>>0,((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f])).Hi>>0)){return U($subslice(d,e),(c<<16>>>16));}g=b.R32;if(g.$length>0&&c>=((0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]).Lo>>0)){return V(g,(c>>>0));}return false;};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;AD=function(b){var $ptr,b;if(b<=127){if(65<=b&&b<=90){b=b+(32)>>0;}return b;}return AB(1,b);};$pkg.ToLower=AD;AG=function(b){var $ptr,b,c,d,e,f,g;if(b<0||b>1114111){return b;}if((b>>0)<128){return(((b<0||b>=IH.length)?($throwRuntimeError("index out of range"),undefined):IH[b])>>0);}c=0;d=II.$length;while(true){if(!(c<d)){break;}f=c+(e=((d-c>>0))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"))>>0;if((((f<0||f>=II.$length)?($throwRuntimeError("index out of range"),undefined):II.$array[II.$offset+f]).From>>0)<b){c=f+1>>0;}else{d=f;}}if(c<II.$length&&((((c<0||c>=II.$length)?($throwRuntimeError("index out of range"),undefined):II.$array[II.$offset+c]).From>>0)===b)){return(((c<0||c>=II.$length)?($throwRuntimeError("index out of range"),undefined):II.$array[II.$offset+c]).To>>0);}g=AD(b);if(!((g===b))){return g;}return AC(b);};$pkg.SimpleFold=AG;O.init("",[{prop:"R16",name:"R16",exported:true,typ:IT,tag:""},{prop:"R32",name:"R32",exported:true,typ:IU,tag:""},{prop:"LatinOffset",name:"LatinOffset",exported:true,typ:$Int,tag:""}]);P.init("",[{prop:"Lo",name:"Lo",exported:true,typ:$Uint16,tag:""},{prop:"Hi",name:"Hi",exported:true,typ:$Uint16,tag:""},{prop:"Stride",name:"Stride",exported:true,typ:$Uint16,tag:""}]);Q.init("",[{prop:"Lo",name:"Lo",exported:true,typ:$Uint32,tag:""},{prop:"Hi",name:"Hi",exported:true,typ:$Uint32,tag:""},{prop:"Stride",name:"Stride",exported:true,typ:$Uint32,tag:""}]);R.init("",[{prop:"Lo",name:"Lo",exported:true,typ:$Uint32,tag:""},{prop:"Hi",name:"Hi",exported:true,typ:$Uint32,tag:""},{prop:"Delta",name:"Delta",exported:true,typ:T,tag:""}]);T.init($Int32,3);AF.init("",[{prop:"From",name:"From",exported:true,typ:$Uint16,tag:""},{prop:"To",name:"To",exported:true,typ:$Uint16,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:AH=new O.ptr(new IT([new P.ptr(0,31,1),new P.ptr(127,159,1),new P.ptr(173,1536,1363),new P.ptr(1537,1541,1),new P.ptr(1564,1757,193),new P.ptr(1807,2274,467),new P.ptr(6158,8203,2045),new P.ptr(8204,8207,1),new P.ptr(8234,8238,1),new P.ptr(8288,8292,1),new P.ptr(8294,8303,1),new P.ptr(55296,63743,1),new P.ptr(65279,65529,250),new P.ptr(65530,65531,1)]),new IU([new Q.ptr(69821,113824,44003),new Q.ptr(113825,113827,1),new Q.ptr(119155,119162,1),new Q.ptr(917505,917536,31),new Q.ptr(917537,917631,1),new Q.ptr(983040,1048573,1),new Q.ptr(1048576,1114109,1)]),2);AI=new O.ptr(new IT([new P.ptr(0,31,1),new P.ptr(127,159,1)]),IU.nil,2);AJ=new O.ptr(new IT([new P.ptr(173,1536,1363),new P.ptr(1537,1541,1),new P.ptr(1564,1757,193),new P.ptr(1807,2274,467),new P.ptr(6158,8203,2045),new P.ptr(8204,8207,1),new P.ptr(8234,8238,1),new P.ptr(8288,8292,1),new P.ptr(8294,8303,1),new P.ptr(65279,65529,250),new P.ptr(65530,65531,1)]),new IU([new Q.ptr(69821,113824,44003),new Q.ptr(113825,113827,1),new Q.ptr(119155,119162,1),new Q.ptr(917505,917536,31),new Q.ptr(917537,917631,1)]),0);AK=new O.ptr(new IT([new P.ptr(57344,63743,1)]),new IU([new Q.ptr(983040,1048573,1),new Q.ptr(1048576,1114109,1)]),0);AL=new O.ptr(new IT([new P.ptr(55296,57343,1)]),IU.nil,0);AM=new O.ptr(new IT([new P.ptr(65,90,1),new P.ptr(97,122,1),new P.ptr(170,181,11),new P.ptr(186,192,6),new P.ptr(193,214,1),new P.ptr(216,246,1),new P.ptr(248,705,1),new P.ptr(710,721,1),new P.ptr(736,740,1),new P.ptr(748,750,2),new P.ptr(880,884,1),new P.ptr(886,887,1),new P.ptr(890,893,1),new P.ptr(895,902,7),new P.ptr(904,906,1),new P.ptr(908,910,2),new P.ptr(911,929,1),new P.ptr(931,1013,1),new P.ptr(1015,1153,1),new P.ptr(1162,1327,1),new P.ptr(1329,1366,1),new P.ptr(1369,1377,8),new P.ptr(1378,1415,1),new P.ptr(1488,1514,1),new P.ptr(1520,1522,1),new P.ptr(1568,1610,1),new P.ptr(1646,1647,1),new P.ptr(1649,1747,1),new P.ptr(1749,1765,16),new P.ptr(1766,1774,8),new P.ptr(1775,1786,11),new P.ptr(1787,1788,1),new P.ptr(1791,1808,17),new P.ptr(1810,1839,1),new P.ptr(1869,1957,1),new P.ptr(1969,1994,25),new P.ptr(1995,2026,1),new P.ptr(2036,2037,1),new P.ptr(2042,2048,6),new P.ptr(2049,2069,1),new P.ptr(2074,2084,10),new P.ptr(2088,2112,24),new P.ptr(2113,2136,1),new P.ptr(2208,2228,1),new P.ptr(2230,2237,1),new P.ptr(2308,2361,1),new P.ptr(2365,2384,19),new P.ptr(2392,2401,1),new P.ptr(2417,2432,1),new P.ptr(2437,2444,1),new P.ptr(2447,2448,1),new P.ptr(2451,2472,1),new P.ptr(2474,2480,1),new P.ptr(2482,2486,4),new P.ptr(2487,2489,1),new P.ptr(2493,2510,17),new P.ptr(2524,2525,1),new P.ptr(2527,2529,1),new P.ptr(2544,2545,1),new P.ptr(2565,2570,1),new P.ptr(2575,2576,1),new P.ptr(2579,2600,1),new P.ptr(2602,2608,1),new P.ptr(2610,2611,1),new P.ptr(2613,2614,1),new P.ptr(2616,2617,1),new P.ptr(2649,2652,1),new P.ptr(2654,2674,20),new P.ptr(2675,2676,1),new P.ptr(2693,2701,1),new P.ptr(2703,2705,1),new P.ptr(2707,2728,1),new P.ptr(2730,2736,1),new P.ptr(2738,2739,1),new P.ptr(2741,2745,1),new P.ptr(2749,2768,19),new P.ptr(2784,2785,1),new P.ptr(2809,2821,12),new P.ptr(2822,2828,1),new P.ptr(2831,2832,1),new P.ptr(2835,2856,1),new P.ptr(2858,2864,1),new P.ptr(2866,2867,1),new P.ptr(2869,2873,1),new P.ptr(2877,2908,31),new P.ptr(2909,2911,2),new P.ptr(2912,2913,1),new P.ptr(2929,2947,18),new P.ptr(2949,2954,1),new P.ptr(2958,2960,1),new P.ptr(2962,2965,1),new P.ptr(2969,2970,1),new P.ptr(2972,2974,2),new P.ptr(2975,2979,4),new P.ptr(2980,2984,4),new P.ptr(2985,2986,1),new P.ptr(2990,3001,1),new P.ptr(3024,3077,53),new P.ptr(3078,3084,1),new P.ptr(3086,3088,1),new P.ptr(3090,3112,1),new P.ptr(3114,3129,1),new P.ptr(3133,3160,27),new P.ptr(3161,3162,1),new P.ptr(3168,3169,1),new P.ptr(3200,3205,5),new P.ptr(3206,3212,1),new P.ptr(3214,3216,1),new P.ptr(3218,3240,1),new P.ptr(3242,3251,1),new P.ptr(3253,3257,1),new P.ptr(3261,3294,33),new P.ptr(3296,3297,1),new P.ptr(3313,3314,1),new P.ptr(3333,3340,1),new P.ptr(3342,3344,1),new P.ptr(3346,3386,1),new P.ptr(3389,3406,17),new P.ptr(3412,3414,1),new P.ptr(3423,3425,1),new P.ptr(3450,3455,1),new P.ptr(3461,3478,1),new P.ptr(3482,3505,1),new P.ptr(3507,3515,1),new P.ptr(3517,3520,3),new P.ptr(3521,3526,1),new P.ptr(3585,3632,1),new P.ptr(3634,3635,1),new P.ptr(3648,3654,1),new P.ptr(3713,3714,1),new P.ptr(3716,3719,3),new P.ptr(3720,3722,2),new P.ptr(3725,3732,7),new P.ptr(3733,3735,1),new P.ptr(3737,3743,1),new P.ptr(3745,3747,1),new P.ptr(3749,3751,2),new P.ptr(3754,3755,1),new P.ptr(3757,3760,1),new P.ptr(3762,3763,1),new P.ptr(3773,3776,3),new P.ptr(3777,3780,1),new P.ptr(3782,3804,22),new P.ptr(3805,3807,1),new P.ptr(3840,3904,64),new P.ptr(3905,3911,1),new P.ptr(3913,3948,1),new P.ptr(3976,3980,1),new P.ptr(4096,4138,1),new P.ptr(4159,4176,17),new P.ptr(4177,4181,1),new P.ptr(4186,4189,1),new P.ptr(4193,4197,4),new P.ptr(4198,4206,8),new P.ptr(4207,4208,1),new P.ptr(4213,4225,1),new P.ptr(4238,4256,18),new P.ptr(4257,4293,1),new P.ptr(4295,4301,6),new P.ptr(4304,4346,1),new P.ptr(4348,4680,1),new P.ptr(4682,4685,1),new P.ptr(4688,4694,1),new P.ptr(4696,4698,2),new P.ptr(4699,4701,1),new P.ptr(4704,4744,1),new P.ptr(4746,4749,1),new P.ptr(4752,4784,1),new P.ptr(4786,4789,1),new P.ptr(4792,4798,1),new P.ptr(4800,4802,2),new P.ptr(4803,4805,1),new P.ptr(4808,4822,1),new P.ptr(4824,4880,1),new P.ptr(4882,4885,1),new P.ptr(4888,4954,1),new P.ptr(4992,5007,1),new P.ptr(5024,5109,1),new P.ptr(5112,5117,1),new P.ptr(5121,5740,1),new P.ptr(5743,5759,1),new P.ptr(5761,5786,1),new P.ptr(5792,5866,1),new P.ptr(5873,5880,1),new P.ptr(5888,5900,1),new P.ptr(5902,5905,1),new P.ptr(5920,5937,1),new P.ptr(5952,5969,1),new P.ptr(5984,5996,1),new P.ptr(5998,6000,1),new P.ptr(6016,6067,1),new P.ptr(6103,6108,5),new P.ptr(6176,6263,1),new P.ptr(6272,6276,1),new P.ptr(6279,6312,1),new P.ptr(6314,6320,6),new P.ptr(6321,6389,1),new P.ptr(6400,6430,1),new P.ptr(6480,6509,1),new P.ptr(6512,6516,1),new P.ptr(6528,6571,1),new P.ptr(6576,6601,1),new P.ptr(6656,6678,1),new P.ptr(6688,6740,1),new P.ptr(6823,6917,94),new P.ptr(6918,6963,1),new P.ptr(6981,6987,1),new P.ptr(7043,7072,1),new P.ptr(7086,7087,1),new P.ptr(7098,7141,1),new P.ptr(7168,7203,1),new P.ptr(7245,7247,1),new P.ptr(7258,7293,1),new P.ptr(7296,7304,1),new P.ptr(7401,7404,1),new P.ptr(7406,7409,1),new P.ptr(7413,7414,1),new P.ptr(7424,7615,1),new P.ptr(7680,7957,1),new P.ptr(7960,7965,1),new P.ptr(7968,8005,1),new P.ptr(8008,8013,1),new P.ptr(8016,8023,1),new P.ptr(8025,8031,2),new P.ptr(8032,8061,1),new P.ptr(8064,8116,1),new P.ptr(8118,8124,1),new P.ptr(8126,8130,4),new P.ptr(8131,8132,1),new P.ptr(8134,8140,1),new P.ptr(8144,8147,1),new P.ptr(8150,8155,1),new P.ptr(8160,8172,1),new P.ptr(8178,8180,1),new P.ptr(8182,8188,1),new P.ptr(8305,8319,14),new P.ptr(8336,8348,1),new P.ptr(8450,8455,5),new P.ptr(8458,8467,1),new P.ptr(8469,8473,4),new P.ptr(8474,8477,1),new P.ptr(8484,8490,2),new P.ptr(8491,8493,1),new P.ptr(8495,8505,1),new P.ptr(8508,8511,1),new P.ptr(8517,8521,1),new P.ptr(8526,8579,53),new P.ptr(8580,11264,2684),new P.ptr(11265,11310,1),new P.ptr(11312,11358,1),new P.ptr(11360,11492,1),new P.ptr(11499,11502,1),new P.ptr(11506,11507,1),new P.ptr(11520,11557,1),new P.ptr(11559,11565,6),new P.ptr(11568,11623,1),new P.ptr(11631,11648,17),new P.ptr(11649,11670,1),new P.ptr(11680,11686,1),new P.ptr(11688,11694,1),new P.ptr(11696,11702,1),new P.ptr(11704,11710,1),new P.ptr(11712,11718,1),new P.ptr(11720,11726,1),new P.ptr(11728,11734,1),new P.ptr(11736,11742,1),new P.ptr(11823,12293,470),new P.ptr(12294,12337,43),new P.ptr(12338,12341,1),new P.ptr(12347,12348,1),new P.ptr(12353,12438,1),new P.ptr(12445,12447,1),new P.ptr(12449,12538,1),new P.ptr(12540,12543,1),new P.ptr(12549,12589,1),new P.ptr(12593,12686,1),new P.ptr(12704,12730,1),new P.ptr(12784,12799,1),new P.ptr(13312,19893,1),new P.ptr(19968,40917,1),new P.ptr(40960,42124,1),new P.ptr(42192,42237,1),new P.ptr(42240,42508,1),new P.ptr(42512,42527,1),new P.ptr(42538,42539,1),new P.ptr(42560,42606,1),new P.ptr(42623,42653,1),new P.ptr(42656,42725,1),new P.ptr(42775,42783,1),new P.ptr(42786,42888,1),new P.ptr(42891,42926,1),new P.ptr(42928,42935,1),new P.ptr(42999,43009,1),new P.ptr(43011,43013,1),new P.ptr(43015,43018,1),new P.ptr(43020,43042,1),new P.ptr(43072,43123,1),new P.ptr(43138,43187,1),new P.ptr(43250,43255,1),new P.ptr(43259,43261,2),new P.ptr(43274,43301,1),new P.ptr(43312,43334,1),new P.ptr(43360,43388,1),new P.ptr(43396,43442,1),new P.ptr(43471,43488,17),new P.ptr(43489,43492,1),new P.ptr(43494,43503,1),new P.ptr(43514,43518,1),new P.ptr(43520,43560,1),new P.ptr(43584,43586,1),new P.ptr(43588,43595,1),new P.ptr(43616,43638,1),new P.ptr(43642,43646,4),new P.ptr(43647,43695,1),new P.ptr(43697,43701,4),new P.ptr(43702,43705,3),new P.ptr(43706,43709,1),new P.ptr(43712,43714,2),new P.ptr(43739,43741,1),new P.ptr(43744,43754,1),new P.ptr(43762,43764,1),new P.ptr(43777,43782,1),new P.ptr(43785,43790,1),new P.ptr(43793,43798,1),new P.ptr(43808,43814,1),new P.ptr(43816,43822,1),new P.ptr(43824,43866,1),new P.ptr(43868,43877,1),new P.ptr(43888,44002,1),new P.ptr(44032,55203,1),new P.ptr(55216,55238,1),new P.ptr(55243,55291,1),new P.ptr(63744,64109,1),new P.ptr(64112,64217,1),new P.ptr(64256,64262,1),new P.ptr(64275,64279,1),new P.ptr(64285,64287,2),new P.ptr(64288,64296,1),new P.ptr(64298,64310,1),new P.ptr(64312,64316,1),new P.ptr(64318,64320,2),new P.ptr(64321,64323,2),new P.ptr(64324,64326,2),new P.ptr(64327,64433,1),new P.ptr(64467,64829,1),new P.ptr(64848,64911,1),new P.ptr(64914,64967,1),new P.ptr(65008,65019,1),new P.ptr(65136,65140,1),new P.ptr(65142,65276,1),new P.ptr(65313,65338,1),new P.ptr(65345,65370,1),new P.ptr(65382,65470,1),new P.ptr(65474,65479,1),new P.ptr(65482,65487,1),new P.ptr(65490,65495,1),new P.ptr(65498,65500,1)]),new IU([new Q.ptr(65536,65547,1),new Q.ptr(65549,65574,1),new Q.ptr(65576,65594,1),new Q.ptr(65596,65597,1),new Q.ptr(65599,65613,1),new Q.ptr(65616,65629,1),new Q.ptr(65664,65786,1),new Q.ptr(66176,66204,1),new Q.ptr(66208,66256,1),new Q.ptr(66304,66335,1),new Q.ptr(66352,66368,1),new Q.ptr(66370,66377,1),new Q.ptr(66384,66421,1),new Q.ptr(66432,66461,1),new Q.ptr(66464,66499,1),new Q.ptr(66504,66511,1),new Q.ptr(66560,66717,1),new Q.ptr(66736,66771,1),new Q.ptr(66776,66811,1),new Q.ptr(66816,66855,1),new Q.ptr(66864,66915,1),new Q.ptr(67072,67382,1),new Q.ptr(67392,67413,1),new Q.ptr(67424,67431,1),new Q.ptr(67584,67589,1),new Q.ptr(67592,67594,2),new Q.ptr(67595,67637,1),new Q.ptr(67639,67640,1),new Q.ptr(67644,67647,3),new Q.ptr(67648,67669,1),new Q.ptr(67680,67702,1),new Q.ptr(67712,67742,1),new Q.ptr(67808,67826,1),new Q.ptr(67828,67829,1),new Q.ptr(67840,67861,1),new Q.ptr(67872,67897,1),new Q.ptr(67968,68023,1),new Q.ptr(68030,68031,1),new Q.ptr(68096,68112,16),new Q.ptr(68113,68115,1),new Q.ptr(68117,68119,1),new Q.ptr(68121,68147,1),new Q.ptr(68192,68220,1),new Q.ptr(68224,68252,1),new Q.ptr(68288,68295,1),new Q.ptr(68297,68324,1),new Q.ptr(68352,68405,1),new Q.ptr(68416,68437,1),new Q.ptr(68448,68466,1),new Q.ptr(68480,68497,1),new Q.ptr(68608,68680,1),new Q.ptr(68736,68786,1),new Q.ptr(68800,68850,1),new Q.ptr(69635,69687,1),new Q.ptr(69763,69807,1),new Q.ptr(69840,69864,1),new Q.ptr(69891,69926,1),new Q.ptr(69968,70002,1),new Q.ptr(70006,70019,13),new Q.ptr(70020,70066,1),new Q.ptr(70081,70084,1),new Q.ptr(70106,70108,2),new Q.ptr(70144,70161,1),new Q.ptr(70163,70187,1),new Q.ptr(70272,70278,1),new Q.ptr(70280,70282,2),new Q.ptr(70283,70285,1),new Q.ptr(70287,70301,1),new Q.ptr(70303,70312,1),new Q.ptr(70320,70366,1),new Q.ptr(70405,70412,1),new Q.ptr(70415,70416,1),new Q.ptr(70419,70440,1),new Q.ptr(70442,70448,1),new Q.ptr(70450,70451,1),new Q.ptr(70453,70457,1),new Q.ptr(70461,70480,19),new Q.ptr(70493,70497,1),new Q.ptr(70656,70708,1),new Q.ptr(70727,70730,1),new Q.ptr(70784,70831,1),new Q.ptr(70852,70853,1),new Q.ptr(70855,71040,185),new Q.ptr(71041,71086,1),new Q.ptr(71128,71131,1),new Q.ptr(71168,71215,1),new Q.ptr(71236,71296,60),new Q.ptr(71297,71338,1),new Q.ptr(71424,71449,1),new Q.ptr(71840,71903,1),new Q.ptr(71935,72384,449),new Q.ptr(72385,72440,1),new Q.ptr(72704,72712,1),new Q.ptr(72714,72750,1),new Q.ptr(72768,72818,50),new Q.ptr(72819,72847,1),new Q.ptr(73728,74649,1),new Q.ptr(74880,75075,1),new Q.ptr(77824,78894,1),new Q.ptr(82944,83526,1),new Q.ptr(92160,92728,1),new Q.ptr(92736,92766,1),new Q.ptr(92880,92909,1),new Q.ptr(92928,92975,1),new Q.ptr(92992,92995,1),new Q.ptr(93027,93047,1),new Q.ptr(93053,93071,1),new Q.ptr(93952,94020,1),new Q.ptr(94032,94099,67),new Q.ptr(94100,94111,1),new Q.ptr(94176,94208,32),new Q.ptr(94209,100332,1),new Q.ptr(100352,101106,1),new Q.ptr(110592,110593,1),new Q.ptr(113664,113770,1),new Q.ptr(113776,113788,1),new Q.ptr(113792,113800,1),new Q.ptr(113808,113817,1),new Q.ptr(119808,119892,1),new Q.ptr(119894,119964,1),new Q.ptr(119966,119967,1),new Q.ptr(119970,119973,3),new Q.ptr(119974,119977,3),new Q.ptr(119978,119980,1),new Q.ptr(119982,119993,1),new Q.ptr(119995,119997,2),new Q.ptr(119998,120003,1),new Q.ptr(120005,120069,1),new Q.ptr(120071,120074,1),new Q.ptr(120077,120084,1),new Q.ptr(120086,120092,1),new Q.ptr(120094,120121,1),new Q.ptr(120123,120126,1),new Q.ptr(120128,120132,1),new Q.ptr(120134,120138,4),new Q.ptr(120139,120144,1),new Q.ptr(120146,120485,1),new Q.ptr(120488,120512,1),new Q.ptr(120514,120538,1),new Q.ptr(120540,120570,1),new Q.ptr(120572,120596,1),new Q.ptr(120598,120628,1),new Q.ptr(120630,120654,1),new Q.ptr(120656,120686,1),new Q.ptr(120688,120712,1),new Q.ptr(120714,120744,1),new Q.ptr(120746,120770,1),new Q.ptr(120772,120779,1),new Q.ptr(124928,125124,1),new Q.ptr(125184,125251,1),new Q.ptr(126464,126467,1),new Q.ptr(126469,126495,1),new Q.ptr(126497,126498,1),new Q.ptr(126500,126503,3),new Q.ptr(126505,126514,1),new Q.ptr(126516,126519,1),new Q.ptr(126521,126523,2),new Q.ptr(126530,126535,5),new Q.ptr(126537,126541,2),new Q.ptr(126542,126543,1),new Q.ptr(126545,126546,1),new Q.ptr(126548,126551,3),new Q.ptr(126553,126561,2),new Q.ptr(126562,126564,2),new Q.ptr(126567,126570,1),new Q.ptr(126572,126578,1),new Q.ptr(126580,126583,1),new Q.ptr(126585,126588,1),new Q.ptr(126590,126592,2),new Q.ptr(126593,126601,1),new Q.ptr(126603,126619,1),new Q.ptr(126625,126627,1),new Q.ptr(126629,126633,1),new Q.ptr(126635,126651,1),new Q.ptr(131072,173782,1),new Q.ptr(173824,177972,1),new Q.ptr(177984,178205,1),new Q.ptr(178208,183969,1),new Q.ptr(194560,195101,1)]),6);AN=new O.ptr(new IT([new P.ptr(97,122,1),new P.ptr(181,223,42),new P.ptr(224,246,1),new P.ptr(248,255,1),new P.ptr(257,311,2),new P.ptr(312,328,2),new P.ptr(329,375,2),new P.ptr(378,382,2),new P.ptr(383,384,1),new P.ptr(387,389,2),new P.ptr(392,396,4),new P.ptr(397,402,5),new P.ptr(405,409,4),new P.ptr(410,411,1),new P.ptr(414,417,3),new P.ptr(419,421,2),new P.ptr(424,426,2),new P.ptr(427,429,2),new P.ptr(432,436,4),new P.ptr(438,441,3),new P.ptr(442,445,3),new P.ptr(446,447,1),new P.ptr(454,460,3),new P.ptr(462,476,2),new P.ptr(477,495,2),new P.ptr(496,499,3),new P.ptr(501,505,4),new P.ptr(507,563,2),new P.ptr(564,569,1),new P.ptr(572,575,3),new P.ptr(576,578,2),new P.ptr(583,591,2),new P.ptr(592,659,1),new P.ptr(661,687,1),new P.ptr(881,883,2),new P.ptr(887,891,4),new P.ptr(892,893,1),new P.ptr(912,940,28),new P.ptr(941,974,1),new P.ptr(976,977,1),new P.ptr(981,983,1),new P.ptr(985,1007,2),new P.ptr(1008,1011,1),new P.ptr(1013,1019,3),new P.ptr(1020,1072,52),new P.ptr(1073,1119,1),new P.ptr(1121,1153,2),new P.ptr(1163,1215,2),new P.ptr(1218,1230,2),new P.ptr(1231,1327,2),new P.ptr(1377,1415,1),new P.ptr(5112,5117,1),new P.ptr(7296,7304,1),new P.ptr(7424,7467,1),new P.ptr(7531,7543,1),new P.ptr(7545,7578,1),new P.ptr(7681,7829,2),new P.ptr(7830,7837,1),new P.ptr(7839,7935,2),new P.ptr(7936,7943,1),new P.ptr(7952,7957,1),new P.ptr(7968,7975,1),new P.ptr(7984,7991,1),new P.ptr(8000,8005,1),new P.ptr(8016,8023,1),new P.ptr(8032,8039,1),new P.ptr(8048,8061,1),new P.ptr(8064,8071,1),new P.ptr(8080,8087,1),new P.ptr(8096,8103,1),new P.ptr(8112,8116,1),new P.ptr(8118,8119,1),new P.ptr(8126,8130,4),new P.ptr(8131,8132,1),new P.ptr(8134,8135,1),new P.ptr(8144,8147,1),new P.ptr(8150,8151,1),new P.ptr(8160,8167,1),new P.ptr(8178,8180,1),new P.ptr(8182,8183,1),new P.ptr(8458,8462,4),new P.ptr(8463,8467,4),new P.ptr(8495,8505,5),new P.ptr(8508,8509,1),new P.ptr(8518,8521,1),new P.ptr(8526,8580,54),new P.ptr(11312,11358,1),new P.ptr(11361,11365,4),new P.ptr(11366,11372,2),new P.ptr(11377,11379,2),new P.ptr(11380,11382,2),new P.ptr(11383,11387,1),new P.ptr(11393,11491,2),new P.ptr(11492,11500,8),new P.ptr(11502,11507,5),new P.ptr(11520,11557,1),new P.ptr(11559,11565,6),new P.ptr(42561,42605,2),new P.ptr(42625,42651,2),new P.ptr(42787,42799,2),new P.ptr(42800,42801,1),new P.ptr(42803,42865,2),new P.ptr(42866,42872,1),new P.ptr(42874,42876,2),new P.ptr(42879,42887,2),new P.ptr(42892,42894,2),new P.ptr(42897,42899,2),new P.ptr(42900,42901,1),new P.ptr(42903,42921,2),new P.ptr(42933,42935,2),new P.ptr(43002,43824,822),new P.ptr(43825,43866,1),new P.ptr(43872,43877,1),new P.ptr(43888,43967,1),new P.ptr(64256,64262,1),new P.ptr(64275,64279,1),new P.ptr(65345,65370,1)]),new IU([new Q.ptr(66600,66639,1),new Q.ptr(66776,66811,1),new Q.ptr(68800,68850,1),new Q.ptr(71872,71903,1),new Q.ptr(119834,119859,1),new Q.ptr(119886,119892,1),new Q.ptr(119894,119911,1),new Q.ptr(119938,119963,1),new Q.ptr(119990,119993,1),new Q.ptr(119995,119997,2),new Q.ptr(119998,120003,1),new Q.ptr(120005,120015,1),new Q.ptr(120042,120067,1),new Q.ptr(120094,120119,1),new Q.ptr(120146,120171,1),new Q.ptr(120198,120223,1),new Q.ptr(120250,120275,1),new Q.ptr(120302,120327,1),new Q.ptr(120354,120379,1),new Q.ptr(120406,120431,1),new Q.ptr(120458,120485,1),new Q.ptr(120514,120538,1),new Q.ptr(120540,120545,1),new Q.ptr(120572,120596,1),new Q.ptr(120598,120603,1),new Q.ptr(120630,120654,1),new Q.ptr(120656,120661,1),new Q.ptr(120688,120712,1),new Q.ptr(120714,120719,1),new Q.ptr(120746,120770,1),new Q.ptr(120772,120777,1),new Q.ptr(120779,125218,4439),new Q.ptr(125219,125251,1)]),4);AO=new O.ptr(new IT([new P.ptr(688,705,1),new P.ptr(710,721,1),new P.ptr(736,740,1),new P.ptr(748,750,2),new P.ptr(884,890,6),new P.ptr(1369,1600,231),new P.ptr(1765,1766,1),new P.ptr(2036,2037,1),new P.ptr(2042,2074,32),new P.ptr(2084,2088,4),new P.ptr(2417,3654,1237),new P.ptr(3782,4348,566),new P.ptr(6103,6211,108),new P.ptr(6823,7288,465),new P.ptr(7289,7293,1),new P.ptr(7468,7530,1),new P.ptr(7544,7579,35),new P.ptr(7580,7615,1),new P.ptr(8305,8319,14),new P.ptr(8336,8348,1),new P.ptr(11388,11389,1),new P.ptr(11631,11823,192),new P.ptr(12293,12337,44),new P.ptr(12338,12341,1),new P.ptr(12347,12445,98),new P.ptr(12446,12540,94),new P.ptr(12541,12542,1),new P.ptr(40981,42232,1251),new P.ptr(42233,42237,1),new P.ptr(42508,42623,115),new P.ptr(42652,42653,1),new P.ptr(42775,42783,1),new P.ptr(42864,42888,24),new P.ptr(43000,43001,1),new P.ptr(43471,43494,23),new P.ptr(43632,43741,109),new P.ptr(43763,43764,1),new P.ptr(43868,43871,1),new P.ptr(65392,65438,46),new P.ptr(65439,65439,1)]),new IU([new Q.ptr(92992,92992,1),new Q.ptr(92993,92995,1),new Q.ptr(94099,94111,1),new Q.ptr(94176,94176,1)]),0);AP=new O.ptr(new IT([new P.ptr(170,186,16),new P.ptr(443,448,5),new P.ptr(449,451,1),new P.ptr(660,1488,828),new P.ptr(1489,1514,1),new P.ptr(1520,1522,1),new P.ptr(1568,1599,1),new P.ptr(1601,1610,1),new P.ptr(1646,1647,1),new P.ptr(1649,1747,1),new P.ptr(1749,1774,25),new P.ptr(1775,1786,11),new P.ptr(1787,1788,1),new P.ptr(1791,1808,17),new P.ptr(1810,1839,1),new P.ptr(1869,1957,1),new P.ptr(1969,1994,25),new P.ptr(1995,2026,1),new P.ptr(2048,2069,1),new P.ptr(2112,2136,1),new P.ptr(2208,2228,1),new P.ptr(2230,2237,1),new P.ptr(2308,2361,1),new P.ptr(2365,2384,19),new P.ptr(2392,2401,1),new P.ptr(2418,2432,1),new P.ptr(2437,2444,1),new P.ptr(2447,2448,1),new P.ptr(2451,2472,1),new P.ptr(2474,2480,1),new P.ptr(2482,2486,4),new P.ptr(2487,2489,1),new P.ptr(2493,2510,17),new P.ptr(2524,2525,1),new P.ptr(2527,2529,1),new P.ptr(2544,2545,1),new P.ptr(2565,2570,1),new P.ptr(2575,2576,1),new P.ptr(2579,2600,1),new P.ptr(2602,2608,1),new P.ptr(2610,2611,1),new P.ptr(2613,2614,1),new P.ptr(2616,2617,1),new P.ptr(2649,2652,1),new P.ptr(2654,2674,20),new P.ptr(2675,2676,1),new P.ptr(2693,2701,1),new P.ptr(2703,2705,1),new P.ptr(2707,2728,1),new P.ptr(2730,2736,1),new P.ptr(2738,2739,1),new P.ptr(2741,2745,1),new P.ptr(2749,2768,19),new P.ptr(2784,2785,1),new P.ptr(2809,2821,12),new P.ptr(2822,2828,1),new P.ptr(2831,2832,1),new P.ptr(2835,2856,1),new P.ptr(2858,2864,1),new P.ptr(2866,2867,1),new P.ptr(2869,2873,1),new P.ptr(2877,2908,31),new P.ptr(2909,2911,2),new P.ptr(2912,2913,1),new P.ptr(2929,2947,18),new P.ptr(2949,2954,1),new P.ptr(2958,2960,1),new P.ptr(2962,2965,1),new P.ptr(2969,2970,1),new P.ptr(2972,2974,2),new P.ptr(2975,2979,4),new P.ptr(2980,2984,4),new P.ptr(2985,2986,1),new P.ptr(2990,3001,1),new P.ptr(3024,3077,53),new P.ptr(3078,3084,1),new P.ptr(3086,3088,1),new P.ptr(3090,3112,1),new P.ptr(3114,3129,1),new P.ptr(3133,3160,27),new P.ptr(3161,3162,1),new P.ptr(3168,3169,1),new P.ptr(3200,3205,5),new P.ptr(3206,3212,1),new P.ptr(3214,3216,1),new P.ptr(3218,3240,1),new P.ptr(3242,3251,1),new P.ptr(3253,3257,1),new P.ptr(3261,3294,33),new P.ptr(3296,3297,1),new P.ptr(3313,3314,1),new P.ptr(3333,3340,1),new P.ptr(3342,3344,1),new P.ptr(3346,3386,1),new P.ptr(3389,3406,17),new P.ptr(3412,3414,1),new P.ptr(3423,3425,1),new P.ptr(3450,3455,1),new P.ptr(3461,3478,1),new P.ptr(3482,3505,1),new P.ptr(3507,3515,1),new P.ptr(3517,3520,3),new P.ptr(3521,3526,1),new P.ptr(3585,3632,1),new P.ptr(3634,3635,1),new P.ptr(3648,3653,1),new P.ptr(3713,3714,1),new P.ptr(3716,3719,3),new P.ptr(3720,3722,2),new P.ptr(3725,3732,7),new P.ptr(3733,3735,1),new P.ptr(3737,3743,1),new P.ptr(3745,3747,1),new P.ptr(3749,3751,2),new P.ptr(3754,3755,1),new P.ptr(3757,3760,1),new P.ptr(3762,3763,1),new P.ptr(3773,3776,3),new P.ptr(3777,3780,1),new P.ptr(3804,3807,1),new P.ptr(3840,3904,64),new P.ptr(3905,3911,1),new P.ptr(3913,3948,1),new P.ptr(3976,3980,1),new P.ptr(4096,4138,1),new P.ptr(4159,4176,17),new P.ptr(4177,4181,1),new P.ptr(4186,4189,1),new P.ptr(4193,4197,4),new P.ptr(4198,4206,8),new P.ptr(4207,4208,1),new P.ptr(4213,4225,1),new P.ptr(4238,4304,66),new P.ptr(4305,4346,1),new P.ptr(4349,4680,1),new P.ptr(4682,4685,1),new P.ptr(4688,4694,1),new P.ptr(4696,4698,2),new P.ptr(4699,4701,1),new P.ptr(4704,4744,1),new P.ptr(4746,4749,1),new P.ptr(4752,4784,1),new P.ptr(4786,4789,1),new P.ptr(4792,4798,1),new P.ptr(4800,4802,2),new P.ptr(4803,4805,1),new P.ptr(4808,4822,1),new P.ptr(4824,4880,1),new P.ptr(4882,4885,1),new P.ptr(4888,4954,1),new P.ptr(4992,5007,1),new P.ptr(5121,5740,1),new P.ptr(5743,5759,1),new P.ptr(5761,5786,1),new P.ptr(5792,5866,1),new P.ptr(5873,5880,1),new P.ptr(5888,5900,1),new P.ptr(5902,5905,1),new P.ptr(5920,5937,1),new P.ptr(5952,5969,1),new P.ptr(5984,5996,1),new P.ptr(5998,6000,1),new P.ptr(6016,6067,1),new P.ptr(6108,6176,68),new P.ptr(6177,6210,1),new P.ptr(6212,6263,1),new P.ptr(6272,6276,1),new P.ptr(6279,6312,1),new P.ptr(6314,6320,6),new P.ptr(6321,6389,1),new P.ptr(6400,6430,1),new P.ptr(6480,6509,1),new P.ptr(6512,6516,1),new P.ptr(6528,6571,1),new P.ptr(6576,6601,1),new P.ptr(6656,6678,1),new P.ptr(6688,6740,1),new P.ptr(6917,6963,1),new P.ptr(6981,6987,1),new P.ptr(7043,7072,1),new P.ptr(7086,7087,1),new P.ptr(7098,7141,1),new P.ptr(7168,7203,1),new P.ptr(7245,7247,1),new P.ptr(7258,7287,1),new P.ptr(7401,7404,1),new P.ptr(7406,7409,1),new P.ptr(7413,7414,1),new P.ptr(8501,8504,1),new P.ptr(11568,11623,1),new P.ptr(11648,11670,1),new P.ptr(11680,11686,1),new P.ptr(11688,11694,1),new P.ptr(11696,11702,1),new P.ptr(11704,11710,1),new P.ptr(11712,11718,1),new P.ptr(11720,11726,1),new P.ptr(11728,11734,1),new P.ptr(11736,11742,1),new P.ptr(12294,12348,54),new P.ptr(12353,12438,1),new P.ptr(12447,12449,2),new P.ptr(12450,12538,1),new P.ptr(12543,12549,6),new P.ptr(12550,12589,1),new P.ptr(12593,12686,1),new P.ptr(12704,12730,1),new P.ptr(12784,12799,1),new P.ptr(13312,19893,1),new P.ptr(19968,40917,1),new P.ptr(40960,40980,1),new P.ptr(40982,42124,1),new P.ptr(42192,42231,1),new P.ptr(42240,42507,1),new P.ptr(42512,42527,1),new P.ptr(42538,42539,1),new P.ptr(42606,42656,50),new P.ptr(42657,42725,1),new P.ptr(42895,42999,104),new P.ptr(43003,43009,1),new P.ptr(43011,43013,1),new P.ptr(43015,43018,1),new P.ptr(43020,43042,1),new P.ptr(43072,43123,1),new P.ptr(43138,43187,1),new P.ptr(43250,43255,1),new P.ptr(43259,43261,2),new P.ptr(43274,43301,1),new P.ptr(43312,43334,1),new P.ptr(43360,43388,1),new P.ptr(43396,43442,1),new P.ptr(43488,43492,1),new P.ptr(43495,43503,1),new P.ptr(43514,43518,1),new P.ptr(43520,43560,1),new P.ptr(43584,43586,1),new P.ptr(43588,43595,1),new P.ptr(43616,43631,1),new P.ptr(43633,43638,1),new P.ptr(43642,43646,4),new P.ptr(43647,43695,1),new P.ptr(43697,43701,4),new P.ptr(43702,43705,3),new P.ptr(43706,43709,1),new P.ptr(43712,43714,2),new P.ptr(43739,43740,1),new P.ptr(43744,43754,1),new P.ptr(43762,43777,15),new P.ptr(43778,43782,1),new P.ptr(43785,43790,1),new P.ptr(43793,43798,1),new P.ptr(43808,43814,1),new P.ptr(43816,43822,1),new P.ptr(43968,44002,1),new P.ptr(44032,55203,1),new P.ptr(55216,55238,1),new P.ptr(55243,55291,1),new P.ptr(63744,64109,1),new P.ptr(64112,64217,1),new P.ptr(64285,64287,2),new P.ptr(64288,64296,1),new P.ptr(64298,64310,1),new P.ptr(64312,64316,1),new P.ptr(64318,64320,2),new P.ptr(64321,64323,2),new P.ptr(64324,64326,2),new P.ptr(64327,64433,1),new P.ptr(64467,64829,1),new P.ptr(64848,64911,1),new P.ptr(64914,64967,1),new P.ptr(65008,65019,1),new P.ptr(65136,65140,1),new P.ptr(65142,65276,1),new P.ptr(65382,65391,1),new P.ptr(65393,65437,1),new P.ptr(65440,65470,1),new P.ptr(65474,65479,1),new P.ptr(65482,65487,1),new P.ptr(65490,65495,1),new P.ptr(65498,65500,1)]),new IU([new Q.ptr(65536,65547,1),new Q.ptr(65549,65574,1),new Q.ptr(65576,65594,1),new Q.ptr(65596,65597,1),new Q.ptr(65599,65613,1),new Q.ptr(65616,65629,1),new Q.ptr(65664,65786,1),new Q.ptr(66176,66204,1),new Q.ptr(66208,66256,1),new Q.ptr(66304,66335,1),new Q.ptr(66352,66368,1),new Q.ptr(66370,66377,1),new Q.ptr(66384,66421,1),new Q.ptr(66432,66461,1),new Q.ptr(66464,66499,1),new Q.ptr(66504,66511,1),new Q.ptr(66640,66717,1),new Q.ptr(66816,66855,1),new Q.ptr(66864,66915,1),new Q.ptr(67072,67382,1),new Q.ptr(67392,67413,1),new Q.ptr(67424,67431,1),new Q.ptr(67584,67589,1),new Q.ptr(67592,67594,2),new Q.ptr(67595,67637,1),new Q.ptr(67639,67640,1),new Q.ptr(67644,67647,3),new Q.ptr(67648,67669,1),new Q.ptr(67680,67702,1),new Q.ptr(67712,67742,1),new Q.ptr(67808,67826,1),new Q.ptr(67828,67829,1),new Q.ptr(67840,67861,1),new Q.ptr(67872,67897,1),new Q.ptr(67968,68023,1),new Q.ptr(68030,68031,1),new Q.ptr(68096,68112,16),new Q.ptr(68113,68115,1),new Q.ptr(68117,68119,1),new Q.ptr(68121,68147,1),new Q.ptr(68192,68220,1),new Q.ptr(68224,68252,1),new Q.ptr(68288,68295,1),new Q.ptr(68297,68324,1),new Q.ptr(68352,68405,1),new Q.ptr(68416,68437,1),new Q.ptr(68448,68466,1),new Q.ptr(68480,68497,1),new Q.ptr(68608,68680,1),new Q.ptr(69635,69687,1),new Q.ptr(69763,69807,1),new Q.ptr(69840,69864,1),new Q.ptr(69891,69926,1),new Q.ptr(69968,70002,1),new Q.ptr(70006,70019,13),new Q.ptr(70020,70066,1),new Q.ptr(70081,70084,1),new Q.ptr(70106,70108,2),new Q.ptr(70144,70161,1),new Q.ptr(70163,70187,1),new Q.ptr(70272,70278,1),new Q.ptr(70280,70282,2),new Q.ptr(70283,70285,1),new Q.ptr(70287,70301,1),new Q.ptr(70303,70312,1),new Q.ptr(70320,70366,1),new Q.ptr(70405,70412,1),new Q.ptr(70415,70416,1),new Q.ptr(70419,70440,1),new Q.ptr(70442,70448,1),new Q.ptr(70450,70451,1),new Q.ptr(70453,70457,1),new Q.ptr(70461,70480,19),new Q.ptr(70493,70497,1),new Q.ptr(70656,70708,1),new Q.ptr(70727,70730,1),new Q.ptr(70784,70831,1),new Q.ptr(70852,70853,1),new Q.ptr(70855,71040,185),new Q.ptr(71041,71086,1),new Q.ptr(71128,71131,1),new Q.ptr(71168,71215,1),new Q.ptr(71236,71296,60),new Q.ptr(71297,71338,1),new Q.ptr(71424,71449,1),new Q.ptr(71935,72384,449),new Q.ptr(72385,72440,1),new Q.ptr(72704,72712,1),new Q.ptr(72714,72750,1),new Q.ptr(72768,72818,50),new Q.ptr(72819,72847,1),new Q.ptr(73728,74649,1),new Q.ptr(74880,75075,1),new Q.ptr(77824,78894,1),new Q.ptr(82944,83526,1),new Q.ptr(92160,92728,1),new Q.ptr(92736,92766,1),new Q.ptr(92880,92909,1),new Q.ptr(92928,92975,1),new Q.ptr(93027,93047,1),new Q.ptr(93053,93071,1),new Q.ptr(93952,94020,1),new Q.ptr(94032,94208,176),new Q.ptr(94209,100332,1),new Q.ptr(100352,101106,1),new Q.ptr(110592,110593,1),new Q.ptr(113664,113770,1),new Q.ptr(113776,113788,1),new Q.ptr(113792,113800,1),new Q.ptr(113808,113817,1),new Q.ptr(124928,125124,1),new Q.ptr(126464,126467,1),new Q.ptr(126469,126495,1),new Q.ptr(126497,126498,1),new Q.ptr(126500,126503,3),new Q.ptr(126505,126514,1),new Q.ptr(126516,126519,1),new Q.ptr(126521,126523,2),new Q.ptr(126530,126535,5),new Q.ptr(126537,126541,2),new Q.ptr(126542,126543,1),new Q.ptr(126545,126546,1),new Q.ptr(126548,126551,3),new Q.ptr(126553,126561,2),new Q.ptr(126562,126564,2),new Q.ptr(126567,126570,1),new Q.ptr(126572,126578,1),new Q.ptr(126580,126583,1),new Q.ptr(126585,126588,1),new Q.ptr(126590,126592,2),new Q.ptr(126593,126601,1),new Q.ptr(126603,126619,1),new Q.ptr(126625,126627,1),new Q.ptr(126629,126633,1),new Q.ptr(126635,126651,1),new Q.ptr(131072,173782,1),new Q.ptr(173824,177972,1),new Q.ptr(177984,178205,1),new Q.ptr(178208,183969,1),new Q.ptr(194560,195101,1)]),1);AQ=new O.ptr(new IT([new P.ptr(453,459,3),new P.ptr(498,8072,7574),new P.ptr(8073,8079,1),new P.ptr(8088,8095,1),new P.ptr(8104,8111,1),new P.ptr(8124,8140,16),new P.ptr(8188,8188,1)]),IU.nil,0);AR=new O.ptr(new IT([new P.ptr(65,90,1),new P.ptr(192,214,1),new P.ptr(216,222,1),new P.ptr(256,310,2),new P.ptr(313,327,2),new P.ptr(330,376,2),new P.ptr(377,381,2),new P.ptr(385,386,1),new P.ptr(388,390,2),new P.ptr(391,393,2),new P.ptr(394,395,1),new P.ptr(398,401,1),new P.ptr(403,404,1),new P.ptr(406,408,1),new P.ptr(412,413,1),new P.ptr(415,416,1),new P.ptr(418,422,2),new P.ptr(423,425,2),new P.ptr(428,430,2),new P.ptr(431,433,2),new P.ptr(434,435,1),new P.ptr(437,439,2),new P.ptr(440,444,4),new P.ptr(452,461,3),new P.ptr(463,475,2),new P.ptr(478,494,2),new P.ptr(497,500,3),new P.ptr(502,504,1),new P.ptr(506,562,2),new P.ptr(570,571,1),new P.ptr(573,574,1),new P.ptr(577,579,2),new P.ptr(580,582,1),new P.ptr(584,590,2),new P.ptr(880,882,2),new P.ptr(886,895,9),new P.ptr(902,904,2),new P.ptr(905,906,1),new P.ptr(908,910,2),new P.ptr(911,913,2),new P.ptr(914,929,1),new P.ptr(931,939,1),new P.ptr(975,978,3),new P.ptr(979,980,1),new P.ptr(984,1006,2),new P.ptr(1012,1015,3),new P.ptr(1017,1018,1),new P.ptr(1021,1071,1),new P.ptr(1120,1152,2),new P.ptr(1162,1216,2),new P.ptr(1217,1229,2),new P.ptr(1232,1326,2),new P.ptr(1329,1366,1),new P.ptr(4256,4293,1),new P.ptr(4295,4301,6),new P.ptr(5024,5109,1),new P.ptr(7680,7828,2),new P.ptr(7838,7934,2),new P.ptr(7944,7951,1),new P.ptr(7960,7965,1),new P.ptr(7976,7983,1),new P.ptr(7992,7999,1),new P.ptr(8008,8013,1),new P.ptr(8025,8031,2),new P.ptr(8040,8047,1),new P.ptr(8120,8123,1),new P.ptr(8136,8139,1),new P.ptr(8152,8155,1),new P.ptr(8168,8172,1),new P.ptr(8184,8187,1),new P.ptr(8450,8455,5),new P.ptr(8459,8461,1),new P.ptr(8464,8466,1),new P.ptr(8469,8473,4),new P.ptr(8474,8477,1),new P.ptr(8484,8490,2),new P.ptr(8491,8493,1),new P.ptr(8496,8499,1),new P.ptr(8510,8511,1),new P.ptr(8517,8579,62),new P.ptr(11264,11310,1),new P.ptr(11360,11362,2),new P.ptr(11363,11364,1),new P.ptr(11367,11373,2),new P.ptr(11374,11376,1),new P.ptr(11378,11381,3),new P.ptr(11390,11392,1),new P.ptr(11394,11490,2),new P.ptr(11499,11501,2),new P.ptr(11506,42560,31054),new P.ptr(42562,42604,2),new P.ptr(42624,42650,2),new P.ptr(42786,42798,2),new P.ptr(42802,42862,2),new P.ptr(42873,42877,2),new P.ptr(42878,42886,2),new P.ptr(42891,42893,2),new P.ptr(42896,42898,2),new P.ptr(42902,42922,2),new P.ptr(42923,42926,1),new P.ptr(42928,42932,1),new P.ptr(42934,65313,22379),new P.ptr(65314,65338,1)]),new IU([new Q.ptr(66560,66599,1),new Q.ptr(66736,66771,1),new Q.ptr(68736,68786,1),new Q.ptr(71840,71871,1),new Q.ptr(119808,119833,1),new Q.ptr(119860,119885,1),new Q.ptr(119912,119937,1),new Q.ptr(119964,119966,2),new Q.ptr(119967,119973,3),new Q.ptr(119974,119977,3),new Q.ptr(119978,119980,1),new Q.ptr(119982,119989,1),new Q.ptr(120016,120041,1),new Q.ptr(120068,120069,1),new Q.ptr(120071,120074,1),new Q.ptr(120077,120084,1),new Q.ptr(120086,120092,1),new Q.ptr(120120,120121,1),new Q.ptr(120123,120126,1),new Q.ptr(120128,120132,1),new Q.ptr(120134,120138,4),new Q.ptr(120139,120144,1),new Q.ptr(120172,120197,1),new Q.ptr(120224,120249,1),new Q.ptr(120276,120301,1),new Q.ptr(120328,120353,1),new Q.ptr(120380,120405,1),new Q.ptr(120432,120457,1),new Q.ptr(120488,120512,1),new Q.ptr(120546,120570,1),new Q.ptr(120604,120628,1),new Q.ptr(120662,120686,1),new Q.ptr(120720,120744,1),new Q.ptr(120778,125184,4406),new Q.ptr(125185,125217,1)]),3);AS=new O.ptr(new IT([new P.ptr(768,879,1),new P.ptr(1155,1161,1),new P.ptr(1425,1469,1),new P.ptr(1471,1473,2),new P.ptr(1474,1476,2),new P.ptr(1477,1479,2),new P.ptr(1552,1562,1),new P.ptr(1611,1631,1),new P.ptr(1648,1750,102),new P.ptr(1751,1756,1),new P.ptr(1759,1764,1),new P.ptr(1767,1768,1),new P.ptr(1770,1773,1),new P.ptr(1809,1840,31),new P.ptr(1841,1866,1),new P.ptr(1958,1968,1),new P.ptr(2027,2035,1),new P.ptr(2070,2073,1),new P.ptr(2075,2083,1),new P.ptr(2085,2087,1),new P.ptr(2089,2093,1),new P.ptr(2137,2139,1),new P.ptr(2260,2273,1),new P.ptr(2275,2307,1),new P.ptr(2362,2364,1),new P.ptr(2366,2383,1),new P.ptr(2385,2391,1),new P.ptr(2402,2403,1),new P.ptr(2433,2435,1),new P.ptr(2492,2494,2),new P.ptr(2495,2500,1),new P.ptr(2503,2504,1),new P.ptr(2507,2509,1),new P.ptr(2519,2530,11),new P.ptr(2531,2561,30),new P.ptr(2562,2563,1),new P.ptr(2620,2622,2),new P.ptr(2623,2626,1),new P.ptr(2631,2632,1),new P.ptr(2635,2637,1),new P.ptr(2641,2672,31),new P.ptr(2673,2677,4),new P.ptr(2689,2691,1),new P.ptr(2748,2750,2),new P.ptr(2751,2757,1),new P.ptr(2759,2761,1),new P.ptr(2763,2765,1),new P.ptr(2786,2787,1),new P.ptr(2817,2819,1),new P.ptr(2876,2878,2),new P.ptr(2879,2884,1),new P.ptr(2887,2888,1),new P.ptr(2891,2893,1),new P.ptr(2902,2903,1),new P.ptr(2914,2915,1),new P.ptr(2946,3006,60),new P.ptr(3007,3010,1),new P.ptr(3014,3016,1),new P.ptr(3018,3021,1),new P.ptr(3031,3072,41),new P.ptr(3073,3075,1),new P.ptr(3134,3140,1),new P.ptr(3142,3144,1),new P.ptr(3146,3149,1),new P.ptr(3157,3158,1),new P.ptr(3170,3171,1),new P.ptr(3201,3203,1),new P.ptr(3260,3262,2),new P.ptr(3263,3268,1),new P.ptr(3270,3272,1),new P.ptr(3274,3277,1),new P.ptr(3285,3286,1),new P.ptr(3298,3299,1),new P.ptr(3329,3331,1),new P.ptr(3390,3396,1),new P.ptr(3398,3400,1),new P.ptr(3402,3405,1),new P.ptr(3415,3426,11),new P.ptr(3427,3458,31),new P.ptr(3459,3530,71),new P.ptr(3535,3540,1),new P.ptr(3542,3544,2),new P.ptr(3545,3551,1),new P.ptr(3570,3571,1),new P.ptr(3633,3636,3),new P.ptr(3637,3642,1),new P.ptr(3655,3662,1),new P.ptr(3761,3764,3),new P.ptr(3765,3769,1),new P.ptr(3771,3772,1),new P.ptr(3784,3789,1),new P.ptr(3864,3865,1),new P.ptr(3893,3897,2),new P.ptr(3902,3903,1),new P.ptr(3953,3972,1),new P.ptr(3974,3975,1),new P.ptr(3981,3991,1),new P.ptr(3993,4028,1),new P.ptr(4038,4139,101),new P.ptr(4140,4158,1),new P.ptr(4182,4185,1),new P.ptr(4190,4192,1),new P.ptr(4194,4196,1),new P.ptr(4199,4205,1),new P.ptr(4209,4212,1),new P.ptr(4226,4237,1),new P.ptr(4239,4250,11),new P.ptr(4251,4253,1),new P.ptr(4957,4959,1),new P.ptr(5906,5908,1),new P.ptr(5938,5940,1),new P.ptr(5970,5971,1),new P.ptr(6002,6003,1),new P.ptr(6068,6099,1),new P.ptr(6109,6155,46),new P.ptr(6156,6157,1),new P.ptr(6277,6278,1),new P.ptr(6313,6432,119),new P.ptr(6433,6443,1),new P.ptr(6448,6459,1),new P.ptr(6679,6683,1),new P.ptr(6741,6750,1),new P.ptr(6752,6780,1),new P.ptr(6783,6832,49),new P.ptr(6833,6846,1),new P.ptr(6912,6916,1),new P.ptr(6964,6980,1),new P.ptr(7019,7027,1),new P.ptr(7040,7042,1),new P.ptr(7073,7085,1),new P.ptr(7142,7155,1),new P.ptr(7204,7223,1),new P.ptr(7376,7378,1),new P.ptr(7380,7400,1),new P.ptr(7405,7410,5),new P.ptr(7411,7412,1),new P.ptr(7416,7417,1),new P.ptr(7616,7669,1),new P.ptr(7675,7679,1),new P.ptr(8400,8432,1),new P.ptr(11503,11505,1),new P.ptr(11647,11744,97),new P.ptr(11745,11775,1),new P.ptr(12330,12335,1),new P.ptr(12441,12442,1),new P.ptr(42607,42610,1),new P.ptr(42612,42621,1),new P.ptr(42654,42655,1),new P.ptr(42736,42737,1),new P.ptr(43010,43014,4),new P.ptr(43019,43043,24),new P.ptr(43044,43047,1),new P.ptr(43136,43137,1),new P.ptr(43188,43205,1),new P.ptr(43232,43249,1),new P.ptr(43302,43309,1),new P.ptr(43335,43347,1),new P.ptr(43392,43395,1),new P.ptr(43443,43456,1),new P.ptr(43493,43561,68),new P.ptr(43562,43574,1),new P.ptr(43587,43596,9),new P.ptr(43597,43643,46),new P.ptr(43644,43645,1),new P.ptr(43696,43698,2),new P.ptr(43699,43700,1),new P.ptr(43703,43704,1),new P.ptr(43710,43711,1),new P.ptr(43713,43755,42),new P.ptr(43756,43759,1),new P.ptr(43765,43766,1),new P.ptr(44003,44010,1),new P.ptr(44012,44013,1),new P.ptr(64286,65024,738),new P.ptr(65025,65039,1),new P.ptr(65056,65071,1)]),new IU([new Q.ptr(66045,66272,227),new Q.ptr(66422,66426,1),new Q.ptr(68097,68099,1),new Q.ptr(68101,68102,1),new Q.ptr(68108,68111,1),new Q.ptr(68152,68154,1),new Q.ptr(68159,68325,166),new Q.ptr(68326,69632,1306),new Q.ptr(69633,69634,1),new Q.ptr(69688,69702,1),new Q.ptr(69759,69762,1),new Q.ptr(69808,69818,1),new Q.ptr(69888,69890,1),new Q.ptr(69927,69940,1),new Q.ptr(70003,70016,13),new Q.ptr(70017,70018,1),new Q.ptr(70067,70080,1),new Q.ptr(70090,70092,1),new Q.ptr(70188,70199,1),new Q.ptr(70206,70367,161),new Q.ptr(70368,70378,1),new Q.ptr(70400,70403,1),new Q.ptr(70460,70462,2),new Q.ptr(70463,70468,1),new Q.ptr(70471,70472,1),new Q.ptr(70475,70477,1),new Q.ptr(70487,70498,11),new Q.ptr(70499,70502,3),new Q.ptr(70503,70508,1),new Q.ptr(70512,70516,1),new Q.ptr(70709,70726,1),new Q.ptr(70832,70851,1),new Q.ptr(71087,71093,1),new Q.ptr(71096,71104,1),new Q.ptr(71132,71133,1),new Q.ptr(71216,71232,1),new Q.ptr(71339,71351,1),new Q.ptr(71453,71467,1),new Q.ptr(72751,72758,1),new Q.ptr(72760,72767,1),new Q.ptr(72850,72871,1),new Q.ptr(72873,72886,1),new Q.ptr(92912,92916,1),new Q.ptr(92976,92982,1),new Q.ptr(94033,94078,1),new Q.ptr(94095,94098,1),new Q.ptr(113821,113822,1),new Q.ptr(119141,119145,1),new Q.ptr(119149,119154,1),new Q.ptr(119163,119170,1),new Q.ptr(119173,119179,1),new Q.ptr(119210,119213,1),new Q.ptr(119362,119364,1),new Q.ptr(121344,121398,1),new Q.ptr(121403,121452,1),new Q.ptr(121461,121476,15),new Q.ptr(121499,121503,1),new Q.ptr(121505,121519,1),new Q.ptr(122880,122886,1),new Q.ptr(122888,122904,1),new Q.ptr(122907,122913,1),new Q.ptr(122915,122916,1),new Q.ptr(122918,122922,1),new Q.ptr(125136,125142,1),new Q.ptr(125252,125258,1),new Q.ptr(917760,917999,1)]),0);AT=new O.ptr(new IT([new P.ptr(2307,2363,56),new P.ptr(2366,2368,1),new P.ptr(2377,2380,1),new P.ptr(2382,2383,1),new P.ptr(2434,2435,1),new P.ptr(2494,2496,1),new P.ptr(2503,2504,1),new P.ptr(2507,2508,1),new P.ptr(2519,2563,44),new P.ptr(2622,2624,1),new P.ptr(2691,2750,59),new P.ptr(2751,2752,1),new P.ptr(2761,2763,2),new P.ptr(2764,2818,54),new P.ptr(2819,2878,59),new P.ptr(2880,2887,7),new P.ptr(2888,2891,3),new P.ptr(2892,2903,11),new P.ptr(3006,3007,1),new P.ptr(3009,3010,1),new P.ptr(3014,3016,1),new P.ptr(3018,3020,1),new P.ptr(3031,3073,42),new P.ptr(3074,3075,1),new P.ptr(3137,3140,1),new P.ptr(3202,3203,1),new P.ptr(3262,3264,2),new P.ptr(3265,3268,1),new P.ptr(3271,3272,1),new P.ptr(3274,3275,1),new P.ptr(3285,3286,1),new P.ptr(3330,3331,1),new P.ptr(3390,3392,1),new P.ptr(3398,3400,1),new P.ptr(3402,3404,1),new P.ptr(3415,3458,43),new P.ptr(3459,3535,76),new P.ptr(3536,3537,1),new P.ptr(3544,3551,1),new P.ptr(3570,3571,1),new P.ptr(3902,3903,1),new P.ptr(3967,4139,172),new P.ptr(4140,4145,5),new P.ptr(4152,4155,3),new P.ptr(4156,4182,26),new P.ptr(4183,4194,11),new P.ptr(4195,4196,1),new P.ptr(4199,4205,1),new P.ptr(4227,4228,1),new P.ptr(4231,4236,1),new P.ptr(4239,4250,11),new P.ptr(4251,4252,1),new P.ptr(6070,6078,8),new P.ptr(6079,6085,1),new P.ptr(6087,6088,1),new P.ptr(6435,6438,1),new P.ptr(6441,6443,1),new P.ptr(6448,6449,1),new P.ptr(6451,6456,1),new P.ptr(6681,6682,1),new P.ptr(6741,6743,2),new P.ptr(6753,6755,2),new P.ptr(6756,6765,9),new P.ptr(6766,6770,1),new P.ptr(6916,6965,49),new P.ptr(6971,6973,2),new P.ptr(6974,6977,1),new P.ptr(6979,6980,1),new P.ptr(7042,7073,31),new P.ptr(7078,7079,1),new P.ptr(7082,7143,61),new P.ptr(7146,7148,1),new P.ptr(7150,7154,4),new P.ptr(7155,7204,49),new P.ptr(7205,7211,1),new P.ptr(7220,7221,1),new P.ptr(7393,7410,17),new P.ptr(7411,12334,4923),new P.ptr(12335,43043,30708),new P.ptr(43044,43047,3),new P.ptr(43136,43137,1),new P.ptr(43188,43203,1),new P.ptr(43346,43347,1),new P.ptr(43395,43444,49),new P.ptr(43445,43450,5),new P.ptr(43451,43453,2),new P.ptr(43454,43456,1),new P.ptr(43567,43568,1),new P.ptr(43571,43572,1),new P.ptr(43597,43643,46),new P.ptr(43645,43755,110),new P.ptr(43758,43759,1),new P.ptr(43765,44003,238),new P.ptr(44004,44006,2),new P.ptr(44007,44009,2),new P.ptr(44010,44012,2)]),new IU([new Q.ptr(69632,69634,2),new Q.ptr(69762,69808,46),new Q.ptr(69809,69810,1),new Q.ptr(69815,69816,1),new Q.ptr(69932,70018,86),new Q.ptr(70067,70069,1),new Q.ptr(70079,70080,1),new Q.ptr(70188,70190,1),new Q.ptr(70194,70195,1),new Q.ptr(70197,70368,171),new Q.ptr(70369,70370,1),new Q.ptr(70402,70403,1),new Q.ptr(70462,70463,1),new Q.ptr(70465,70468,1),new Q.ptr(70471,70472,1),new Q.ptr(70475,70477,1),new Q.ptr(70487,70498,11),new Q.ptr(70499,70709,210),new Q.ptr(70710,70711,1),new Q.ptr(70720,70721,1),new Q.ptr(70725,70832,107),new Q.ptr(70833,70834,1),new Q.ptr(70841,70843,2),new Q.ptr(70844,70846,1),new Q.ptr(70849,71087,238),new Q.ptr(71088,71089,1),new Q.ptr(71096,71099,1),new Q.ptr(71102,71216,114),new Q.ptr(71217,71218,1),new Q.ptr(71227,71228,1),new Q.ptr(71230,71340,110),new Q.ptr(71342,71343,1),new Q.ptr(71350,71456,106),new Q.ptr(71457,71462,5),new Q.ptr(72751,72766,15),new Q.ptr(72873,72881,8),new Q.ptr(72884,94033,21149),new Q.ptr(94034,94078,1),new Q.ptr(119141,119142,1),new Q.ptr(119149,119154,1)]),0);AU=new O.ptr(new IT([new P.ptr(1160,1161,1),new P.ptr(6846,8413,1567),new P.ptr(8414,8416,1),new P.ptr(8418,8420,1),new P.ptr(42608,42610,1)]),IU.nil,0);AV=new O.ptr(new IT([new P.ptr(768,879,1),new P.ptr(1155,1159,1),new P.ptr(1425,1469,1),new P.ptr(1471,1473,2),new P.ptr(1474,1476,2),new P.ptr(1477,1479,2),new P.ptr(1552,1562,1),new P.ptr(1611,1631,1),new P.ptr(1648,1750,102),new P.ptr(1751,1756,1),new P.ptr(1759,1764,1),new P.ptr(1767,1768,1),new P.ptr(1770,1773,1),new P.ptr(1809,1840,31),new P.ptr(1841,1866,1),new P.ptr(1958,1968,1),new P.ptr(2027,2035,1),new P.ptr(2070,2073,1),new P.ptr(2075,2083,1),new P.ptr(2085,2087,1),new P.ptr(2089,2093,1),new P.ptr(2137,2139,1),new P.ptr(2260,2273,1),new P.ptr(2275,2306,1),new P.ptr(2362,2364,2),new P.ptr(2369,2376,1),new P.ptr(2381,2385,4),new P.ptr(2386,2391,1),new P.ptr(2402,2403,1),new P.ptr(2433,2492,59),new P.ptr(2497,2500,1),new P.ptr(2509,2530,21),new P.ptr(2531,2561,30),new P.ptr(2562,2620,58),new P.ptr(2625,2626,1),new P.ptr(2631,2632,1),new P.ptr(2635,2637,1),new P.ptr(2641,2672,31),new P.ptr(2673,2677,4),new P.ptr(2689,2690,1),new P.ptr(2748,2753,5),new P.ptr(2754,2757,1),new P.ptr(2759,2760,1),new P.ptr(2765,2786,21),new P.ptr(2787,2817,30),new P.ptr(2876,2879,3),new P.ptr(2881,2884,1),new P.ptr(2893,2902,9),new P.ptr(2914,2915,1),new P.ptr(2946,3008,62),new P.ptr(3021,3072,51),new P.ptr(3134,3136,1),new P.ptr(3142,3144,1),new P.ptr(3146,3149,1),new P.ptr(3157,3158,1),new P.ptr(3170,3171,1),new P.ptr(3201,3260,59),new P.ptr(3263,3270,7),new P.ptr(3276,3277,1),new P.ptr(3298,3299,1),new P.ptr(3329,3393,64),new P.ptr(3394,3396,1),new P.ptr(3405,3426,21),new P.ptr(3427,3530,103),new P.ptr(3538,3540,1),new P.ptr(3542,3633,91),new P.ptr(3636,3642,1),new P.ptr(3655,3662,1),new P.ptr(3761,3764,3),new P.ptr(3765,3769,1),new P.ptr(3771,3772,1),new P.ptr(3784,3789,1),new P.ptr(3864,3865,1),new P.ptr(3893,3897,2),new P.ptr(3953,3966,1),new P.ptr(3968,3972,1),new P.ptr(3974,3975,1),new P.ptr(3981,3991,1),new P.ptr(3993,4028,1),new P.ptr(4038,4141,103),new P.ptr(4142,4144,1),new P.ptr(4146,4151,1),new P.ptr(4153,4154,1),new P.ptr(4157,4158,1),new P.ptr(4184,4185,1),new P.ptr(4190,4192,1),new P.ptr(4209,4212,1),new P.ptr(4226,4229,3),new P.ptr(4230,4237,7),new P.ptr(4253,4957,704),new P.ptr(4958,4959,1),new P.ptr(5906,5908,1),new P.ptr(5938,5940,1),new P.ptr(5970,5971,1),new P.ptr(6002,6003,1),new P.ptr(6068,6069,1),new P.ptr(6071,6077,1),new P.ptr(6086,6089,3),new P.ptr(6090,6099,1),new P.ptr(6109,6155,46),new P.ptr(6156,6157,1),new P.ptr(6277,6278,1),new P.ptr(6313,6432,119),new P.ptr(6433,6434,1),new P.ptr(6439,6440,1),new P.ptr(6450,6457,7),new P.ptr(6458,6459,1),new P.ptr(6679,6680,1),new P.ptr(6683,6742,59),new P.ptr(6744,6750,1),new P.ptr(6752,6754,2),new P.ptr(6757,6764,1),new P.ptr(6771,6780,1),new P.ptr(6783,6832,49),new P.ptr(6833,6845,1),new P.ptr(6912,6915,1),new P.ptr(6964,6966,2),new P.ptr(6967,6970,1),new P.ptr(6972,6978,6),new P.ptr(7019,7027,1),new P.ptr(7040,7041,1),new P.ptr(7074,7077,1),new P.ptr(7080,7081,1),new P.ptr(7083,7085,1),new P.ptr(7142,7144,2),new P.ptr(7145,7149,4),new P.ptr(7151,7153,1),new P.ptr(7212,7219,1),new P.ptr(7222,7223,1),new P.ptr(7376,7378,1),new P.ptr(7380,7392,1),new P.ptr(7394,7400,1),new P.ptr(7405,7412,7),new P.ptr(7416,7417,1),new P.ptr(7616,7669,1),new P.ptr(7675,7679,1),new P.ptr(8400,8412,1),new P.ptr(8417,8421,4),new P.ptr(8422,8432,1),new P.ptr(11503,11505,1),new P.ptr(11647,11744,97),new P.ptr(11745,11775,1),new P.ptr(12330,12333,1),new P.ptr(12441,12442,1),new P.ptr(42607,42612,5),new P.ptr(42613,42621,1),new P.ptr(42654,42655,1),new P.ptr(42736,42737,1),new P.ptr(43010,43014,4),new P.ptr(43019,43045,26),new P.ptr(43046,43204,158),new P.ptr(43205,43232,27),new P.ptr(43233,43249,1),new P.ptr(43302,43309,1),new P.ptr(43335,43345,1),new P.ptr(43392,43394,1),new P.ptr(43443,43446,3),new P.ptr(43447,43449,1),new P.ptr(43452,43493,41),new P.ptr(43561,43566,1),new P.ptr(43569,43570,1),new P.ptr(43573,43574,1),new P.ptr(43587,43596,9),new P.ptr(43644,43696,52),new P.ptr(43698,43700,1),new P.ptr(43703,43704,1),new P.ptr(43710,43711,1),new P.ptr(43713,43756,43),new P.ptr(43757,43766,9),new P.ptr(44005,44008,3),new P.ptr(44013,64286,20273),new P.ptr(65024,65039,1),new P.ptr(65056,65071,1)]),new IU([new Q.ptr(66045,66272,227),new Q.ptr(66422,66426,1),new Q.ptr(68097,68099,1),new Q.ptr(68101,68102,1),new Q.ptr(68108,68111,1),new Q.ptr(68152,68154,1),new Q.ptr(68159,68325,166),new Q.ptr(68326,69633,1307),new Q.ptr(69688,69702,1),new Q.ptr(69759,69761,1),new Q.ptr(69811,69814,1),new Q.ptr(69817,69818,1),new Q.ptr(69888,69890,1),new Q.ptr(69927,69931,1),new Q.ptr(69933,69940,1),new Q.ptr(70003,70016,13),new Q.ptr(70017,70070,53),new Q.ptr(70071,70078,1),new Q.ptr(70090,70092,1),new Q.ptr(70191,70193,1),new Q.ptr(70196,70198,2),new Q.ptr(70199,70206,7),new Q.ptr(70367,70371,4),new Q.ptr(70372,70378,1),new Q.ptr(70400,70401,1),new Q.ptr(70460,70464,4),new Q.ptr(70502,70508,1),new Q.ptr(70512,70516,1),new Q.ptr(70712,70719,1),new Q.ptr(70722,70724,1),new Q.ptr(70726,70835,109),new Q.ptr(70836,70840,1),new Q.ptr(70842,70847,5),new Q.ptr(70848,70850,2),new Q.ptr(70851,71090,239),new Q.ptr(71091,71093,1),new Q.ptr(71100,71101,1),new Q.ptr(71103,71104,1),new Q.ptr(71132,71133,1),new Q.ptr(71219,71226,1),new Q.ptr(71229,71231,2),new Q.ptr(71232,71339,107),new Q.ptr(71341,71344,3),new Q.ptr(71345,71349,1),new Q.ptr(71351,71453,102),new Q.ptr(71454,71455,1),new Q.ptr(71458,71461,1),new Q.ptr(71463,71467,1),new Q.ptr(72752,72758,1),new Q.ptr(72760,72765,1),new Q.ptr(72767,72850,83),new Q.ptr(72851,72871,1),new Q.ptr(72874,72880,1),new Q.ptr(72882,72883,1),new Q.ptr(72885,72886,1),new Q.ptr(92912,92916,1),new Q.ptr(92976,92982,1),new Q.ptr(94095,94098,1),new Q.ptr(113821,113822,1),new Q.ptr(119143,119145,1),new Q.ptr(119163,119170,1),new Q.ptr(119173,119179,1),new Q.ptr(119210,119213,1),new Q.ptr(119362,119364,1),new Q.ptr(121344,121398,1),new Q.ptr(121403,121452,1),new Q.ptr(121461,121476,15),new Q.ptr(121499,121503,1),new Q.ptr(121505,121519,1),new Q.ptr(122880,122886,1),new Q.ptr(122888,122904,1),new Q.ptr(122907,122913,1),new Q.ptr(122915,122916,1),new Q.ptr(122918,122922,1),new Q.ptr(125136,125142,1),new Q.ptr(125252,125258,1),new Q.ptr(917760,917999,1)]),0);AW=new O.ptr(new IT([new P.ptr(48,57,1),new P.ptr(178,179,1),new P.ptr(185,188,3),new P.ptr(189,190,1),new P.ptr(1632,1641,1),new P.ptr(1776,1785,1),new P.ptr(1984,1993,1),new P.ptr(2406,2415,1),new P.ptr(2534,2543,1),new P.ptr(2548,2553,1),new P.ptr(2662,2671,1),new P.ptr(2790,2799,1),new P.ptr(2918,2927,1),new P.ptr(2930,2935,1),new P.ptr(3046,3058,1),new P.ptr(3174,3183,1),new P.ptr(3192,3198,1),new P.ptr(3302,3311,1),new P.ptr(3416,3422,1),new P.ptr(3430,3448,1),new P.ptr(3558,3567,1),new P.ptr(3664,3673,1),new P.ptr(3792,3801,1),new P.ptr(3872,3891,1),new P.ptr(4160,4169,1),new P.ptr(4240,4249,1),new P.ptr(4969,4988,1),new P.ptr(5870,5872,1),new P.ptr(6112,6121,1),new P.ptr(6128,6137,1),new P.ptr(6160,6169,1),new P.ptr(6470,6479,1),new P.ptr(6608,6618,1),new P.ptr(6784,6793,1),new P.ptr(6800,6809,1),new P.ptr(6992,7001,1),new P.ptr(7088,7097,1),new P.ptr(7232,7241,1),new P.ptr(7248,7257,1),new P.ptr(8304,8308,4),new P.ptr(8309,8313,1),new P.ptr(8320,8329,1),new P.ptr(8528,8578,1),new P.ptr(8581,8585,1),new P.ptr(9312,9371,1),new P.ptr(9450,9471,1),new P.ptr(10102,10131,1),new P.ptr(11517,12295,778),new P.ptr(12321,12329,1),new P.ptr(12344,12346,1),new P.ptr(12690,12693,1),new P.ptr(12832,12841,1),new P.ptr(12872,12879,1),new P.ptr(12881,12895,1),new P.ptr(12928,12937,1),new P.ptr(12977,12991,1),new P.ptr(42528,42537,1),new P.ptr(42726,42735,1),new P.ptr(43056,43061,1),new P.ptr(43216,43225,1),new P.ptr(43264,43273,1),new P.ptr(43472,43481,1),new P.ptr(43504,43513,1),new P.ptr(43600,43609,1),new P.ptr(44016,44025,1),new P.ptr(65296,65305,1)]),new IU([new Q.ptr(65799,65843,1),new Q.ptr(65856,65912,1),new Q.ptr(65930,65931,1),new Q.ptr(66273,66299,1),new Q.ptr(66336,66339,1),new Q.ptr(66369,66378,9),new Q.ptr(66513,66517,1),new Q.ptr(66720,66729,1),new Q.ptr(67672,67679,1),new Q.ptr(67705,67711,1),new Q.ptr(67751,67759,1),new Q.ptr(67835,67839,1),new Q.ptr(67862,67867,1),new Q.ptr(68028,68029,1),new Q.ptr(68032,68047,1),new Q.ptr(68050,68095,1),new Q.ptr(68160,68167,1),new Q.ptr(68221,68222,1),new Q.ptr(68253,68255,1),new Q.ptr(68331,68335,1),new Q.ptr(68440,68447,1),new Q.ptr(68472,68479,1),new Q.ptr(68521,68527,1),new Q.ptr(68858,68863,1),new Q.ptr(69216,69246,1),new Q.ptr(69714,69743,1),new Q.ptr(69872,69881,1),new Q.ptr(69942,69951,1),new Q.ptr(70096,70105,1),new Q.ptr(70113,70132,1),new Q.ptr(70384,70393,1),new Q.ptr(70736,70745,1),new Q.ptr(70864,70873,1),new Q.ptr(71248,71257,1),new Q.ptr(71360,71369,1),new Q.ptr(71472,71483,1),new Q.ptr(71904,71922,1),new Q.ptr(72784,72812,1),new Q.ptr(74752,74862,1),new Q.ptr(92768,92777,1),new Q.ptr(93008,93017,1),new Q.ptr(93019,93025,1),new Q.ptr(119648,119665,1),new Q.ptr(120782,120831,1),new Q.ptr(125127,125135,1),new Q.ptr(125264,125273,1),new Q.ptr(127232,127244,1)]),4);AX=new O.ptr(new IT([new P.ptr(48,57,1),new P.ptr(1632,1641,1),new P.ptr(1776,1785,1),new P.ptr(1984,1993,1),new P.ptr(2406,2415,1),new P.ptr(2534,2543,1),new P.ptr(2662,2671,1),new P.ptr(2790,2799,1),new P.ptr(2918,2927,1),new P.ptr(3046,3055,1),new P.ptr(3174,3183,1),new P.ptr(3302,3311,1),new P.ptr(3430,3439,1),new P.ptr(3558,3567,1),new P.ptr(3664,3673,1),new P.ptr(3792,3801,1),new P.ptr(3872,3881,1),new P.ptr(4160,4169,1),new P.ptr(4240,4249,1),new P.ptr(6112,6121,1),new P.ptr(6160,6169,1),new P.ptr(6470,6479,1),new P.ptr(6608,6617,1),new P.ptr(6784,6793,1),new P.ptr(6800,6809,1),new P.ptr(6992,7001,1),new P.ptr(7088,7097,1),new P.ptr(7232,7241,1),new P.ptr(7248,7257,1),new P.ptr(42528,42537,1),new P.ptr(43216,43225,1),new P.ptr(43264,43273,1),new P.ptr(43472,43481,1),new P.ptr(43504,43513,1),new P.ptr(43600,43609,1),new P.ptr(44016,44025,1),new P.ptr(65296,65305,1)]),new IU([new Q.ptr(66720,66729,1),new Q.ptr(69734,69743,1),new Q.ptr(69872,69881,1),new Q.ptr(69942,69951,1),new Q.ptr(70096,70105,1),new Q.ptr(70384,70393,1),new Q.ptr(70736,70745,1),new Q.ptr(70864,70873,1),new Q.ptr(71248,71257,1),new Q.ptr(71360,71369,1),new Q.ptr(71472,71481,1),new Q.ptr(71904,71913,1),new Q.ptr(72784,72793,1),new Q.ptr(92768,92777,1),new Q.ptr(93008,93017,1),new Q.ptr(120782,120831,1),new Q.ptr(125264,125273,1)]),1);AY=new O.ptr(new IT([new P.ptr(5870,5872,1),new P.ptr(8544,8578,1),new P.ptr(8581,8584,1),new P.ptr(12295,12321,26),new P.ptr(12322,12329,1),new P.ptr(12344,12346,1),new P.ptr(42726,42735,1)]),new IU([new Q.ptr(65856,65908,1),new Q.ptr(66369,66378,9),new Q.ptr(66513,66517,1),new Q.ptr(74752,74862,1)]),0);AZ=new O.ptr(new IT([new P.ptr(178,179,1),new P.ptr(185,188,3),new P.ptr(189,190,1),new P.ptr(2548,2553,1),new P.ptr(2930,2935,1),new P.ptr(3056,3058,1),new P.ptr(3192,3198,1),new P.ptr(3416,3422,1),new P.ptr(3440,3448,1),new P.ptr(3882,3891,1),new P.ptr(4969,4988,1),new P.ptr(6128,6137,1),new P.ptr(6618,8304,1686),new P.ptr(8308,8313,1),new P.ptr(8320,8329,1),new P.ptr(8528,8543,1),new P.ptr(8585,9312,727),new P.ptr(9313,9371,1),new P.ptr(9450,9471,1),new P.ptr(10102,10131,1),new P.ptr(11517,12690,1173),new P.ptr(12691,12693,1),new P.ptr(12832,12841,1),new P.ptr(12872,12879,1),new P.ptr(12881,12895,1),new P.ptr(12928,12937,1),new P.ptr(12977,12991,1),new P.ptr(43056,43061,1)]),new IU([new Q.ptr(65799,65843,1),new Q.ptr(65909,65912,1),new Q.ptr(65930,65931,1),new Q.ptr(66273,66299,1),new Q.ptr(66336,66339,1),new Q.ptr(67672,67679,1),new Q.ptr(67705,67711,1),new Q.ptr(67751,67759,1),new Q.ptr(67835,67839,1),new Q.ptr(67862,67867,1),new Q.ptr(68028,68029,1),new Q.ptr(68032,68047,1),new Q.ptr(68050,68095,1),new Q.ptr(68160,68167,1),new Q.ptr(68221,68222,1),new Q.ptr(68253,68255,1),new Q.ptr(68331,68335,1),new Q.ptr(68440,68447,1),new Q.ptr(68472,68479,1),new Q.ptr(68521,68527,1),new Q.ptr(68858,68863,1),new Q.ptr(69216,69246,1),new Q.ptr(69714,69733,1),new Q.ptr(70113,70132,1),new Q.ptr(71482,71483,1),new Q.ptr(71914,71922,1),new Q.ptr(72794,72812,1),new Q.ptr(93019,93025,1),new Q.ptr(119648,119665,1),new Q.ptr(125127,125135,1),new Q.ptr(127232,127244,1)]),3);BA=new O.ptr(new IT([new P.ptr(33,35,1),new P.ptr(37,42,1),new P.ptr(44,47,1),new P.ptr(58,59,1),new P.ptr(63,64,1),new P.ptr(91,93,1),new P.ptr(95,123,28),new P.ptr(125,161,36),new P.ptr(167,171,4),new P.ptr(182,183,1),new P.ptr(187,191,4),new P.ptr(894,903,9),new P.ptr(1370,1375,1),new P.ptr(1417,1418,1),new P.ptr(1470,1472,2),new P.ptr(1475,1478,3),new P.ptr(1523,1524,1),new P.ptr(1545,1546,1),new P.ptr(1548,1549,1),new P.ptr(1563,1566,3),new P.ptr(1567,1642,75),new P.ptr(1643,1645,1),new P.ptr(1748,1792,44),new P.ptr(1793,1805,1),new P.ptr(2039,2041,1),new P.ptr(2096,2110,1),new P.ptr(2142,2404,262),new P.ptr(2405,2416,11),new P.ptr(2800,3572,772),new P.ptr(3663,3674,11),new P.ptr(3675,3844,169),new P.ptr(3845,3858,1),new P.ptr(3860,3898,38),new P.ptr(3899,3901,1),new P.ptr(3973,4048,75),new P.ptr(4049,4052,1),new P.ptr(4057,4058,1),new P.ptr(4170,4175,1),new P.ptr(4347,4960,613),new P.ptr(4961,4968,1),new P.ptr(5120,5741,621),new P.ptr(5742,5787,45),new P.ptr(5788,5867,79),new P.ptr(5868,5869,1),new P.ptr(5941,5942,1),new P.ptr(6100,6102,1),new P.ptr(6104,6106,1),new P.ptr(6144,6154,1),new P.ptr(6468,6469,1),new P.ptr(6686,6687,1),new P.ptr(6816,6822,1),new P.ptr(6824,6829,1),new P.ptr(7002,7008,1),new P.ptr(7164,7167,1),new P.ptr(7227,7231,1),new P.ptr(7294,7295,1),new P.ptr(7360,7367,1),new P.ptr(7379,8208,829),new P.ptr(8209,8231,1),new P.ptr(8240,8259,1),new P.ptr(8261,8273,1),new P.ptr(8275,8286,1),new P.ptr(8317,8318,1),new P.ptr(8333,8334,1),new P.ptr(8968,8971,1),new P.ptr(9001,9002,1),new P.ptr(10088,10101,1),new P.ptr(10181,10182,1),new P.ptr(10214,10223,1),new P.ptr(10627,10648,1),new P.ptr(10712,10715,1),new P.ptr(10748,10749,1),new P.ptr(11513,11516,1),new P.ptr(11518,11519,1),new P.ptr(11632,11776,144),new P.ptr(11777,11822,1),new P.ptr(11824,11844,1),new P.ptr(12289,12291,1),new P.ptr(12296,12305,1),new P.ptr(12308,12319,1),new P.ptr(12336,12349,13),new P.ptr(12448,12539,91),new P.ptr(42238,42239,1),new P.ptr(42509,42511,1),new P.ptr(42611,42622,11),new P.ptr(42738,42743,1),new P.ptr(43124,43127,1),new P.ptr(43214,43215,1),new P.ptr(43256,43258,1),new P.ptr(43260,43310,50),new P.ptr(43311,43359,48),new P.ptr(43457,43469,1),new P.ptr(43486,43487,1),new P.ptr(43612,43615,1),new P.ptr(43742,43743,1),new P.ptr(43760,43761,1),new P.ptr(44011,64830,20819),new P.ptr(64831,65040,209),new P.ptr(65041,65049,1),new P.ptr(65072,65106,1),new P.ptr(65108,65121,1),new P.ptr(65123,65128,5),new P.ptr(65130,65131,1),new P.ptr(65281,65283,1),new P.ptr(65285,65290,1),new P.ptr(65292,65295,1),new P.ptr(65306,65307,1),new P.ptr(65311,65312,1),new P.ptr(65339,65341,1),new P.ptr(65343,65371,28),new P.ptr(65373,65375,2),new P.ptr(65376,65381,1)]),new IU([new Q.ptr(65792,65794,1),new Q.ptr(66463,66512,49),new Q.ptr(66927,67671,744),new Q.ptr(67871,67903,32),new Q.ptr(68176,68184,1),new Q.ptr(68223,68336,113),new Q.ptr(68337,68342,1),new Q.ptr(68409,68415,1),new Q.ptr(68505,68508,1),new Q.ptr(69703,69709,1),new Q.ptr(69819,69820,1),new Q.ptr(69822,69825,1),new Q.ptr(69952,69955,1),new Q.ptr(70004,70005,1),new Q.ptr(70085,70089,1),new Q.ptr(70093,70107,14),new Q.ptr(70109,70111,1),new Q.ptr(70200,70205,1),new Q.ptr(70313,70731,418),new Q.ptr(70732,70735,1),new Q.ptr(70747,70749,2),new Q.ptr(70854,71105,251),new Q.ptr(71106,71127,1),new Q.ptr(71233,71235,1),new Q.ptr(71264,71276,1),new Q.ptr(71484,71486,1),new Q.ptr(72769,72773,1),new Q.ptr(72816,72817,1),new Q.ptr(74864,74868,1),new Q.ptr(92782,92783,1),new Q.ptr(92917,92983,66),new Q.ptr(92984,92987,1),new Q.ptr(92996,113823,20827),new Q.ptr(121479,121483,1),new Q.ptr(125278,125279,1)]),11);BB=new O.ptr(new IT([new P.ptr(95,8255,8160),new P.ptr(8256,8276,20),new P.ptr(65075,65076,1),new P.ptr(65101,65103,1),new P.ptr(65343,65343,1)]),IU.nil,0);BC=new O.ptr(new IT([new P.ptr(45,1418,1373),new P.ptr(1470,5120,3650),new P.ptr(6150,8208,2058),new P.ptr(8209,8213,1),new P.ptr(11799,11802,3),new P.ptr(11834,11835,1),new P.ptr(11840,12316,476),new P.ptr(12336,12448,112),new P.ptr(65073,65074,1),new P.ptr(65112,65123,11),new P.ptr(65293,65293,1)]),IU.nil,0);BD=new O.ptr(new IT([new P.ptr(41,93,52),new P.ptr(125,3899,3774),new P.ptr(3901,5788,1887),new P.ptr(8262,8318,56),new P.ptr(8334,8969,635),new P.ptr(8971,9002,31),new P.ptr(10089,10101,2),new P.ptr(10182,10215,33),new P.ptr(10217,10223,2),new P.ptr(10628,10648,2),new P.ptr(10713,10715,2),new P.ptr(10749,11811,1062),new P.ptr(11813,11817,2),new P.ptr(12297,12305,2),new P.ptr(12309,12315,2),new P.ptr(12318,12319,1),new P.ptr(64830,65048,218),new P.ptr(65078,65092,2),new P.ptr(65096,65114,18),new P.ptr(65116,65118,2),new P.ptr(65289,65341,52),new P.ptr(65373,65379,3)]),IU.nil,1);BE=new O.ptr(new IT([new P.ptr(187,8217,8030),new P.ptr(8221,8250,29),new P.ptr(11779,11781,2),new P.ptr(11786,11789,3),new P.ptr(11805,11809,4)]),IU.nil,0);BF=new O.ptr(new IT([new P.ptr(171,8216,8045),new P.ptr(8219,8220,1),new P.ptr(8223,8249,26),new P.ptr(11778,11780,2),new P.ptr(11785,11788,3),new P.ptr(11804,11808,4)]),IU.nil,0);BG=new O.ptr(new IT([new P.ptr(33,35,1),new P.ptr(37,39,1),new P.ptr(42,46,2),new P.ptr(47,58,11),new P.ptr(59,63,4),new P.ptr(64,92,28),new P.ptr(161,167,6),new P.ptr(182,183,1),new P.ptr(191,894,703),new P.ptr(903,1370,467),new P.ptr(1371,1375,1),new P.ptr(1417,1472,55),new P.ptr(1475,1478,3),new P.ptr(1523,1524,1),new P.ptr(1545,1546,1),new P.ptr(1548,1549,1),new P.ptr(1563,1566,3),new P.ptr(1567,1642,75),new P.ptr(1643,1645,1),new P.ptr(1748,1792,44),new P.ptr(1793,1805,1),new P.ptr(2039,2041,1),new P.ptr(2096,2110,1),new P.ptr(2142,2404,262),new P.ptr(2405,2416,11),new P.ptr(2800,3572,772),new P.ptr(3663,3674,11),new P.ptr(3675,3844,169),new P.ptr(3845,3858,1),new P.ptr(3860,3973,113),new P.ptr(4048,4052,1),new P.ptr(4057,4058,1),new P.ptr(4170,4175,1),new P.ptr(4347,4960,613),new P.ptr(4961,4968,1),new P.ptr(5741,5742,1),new P.ptr(5867,5869,1),new P.ptr(5941,5942,1),new P.ptr(6100,6102,1),new P.ptr(6104,6106,1),new P.ptr(6144,6149,1),new P.ptr(6151,6154,1),new P.ptr(6468,6469,1),new P.ptr(6686,6687,1),new P.ptr(6816,6822,1),new P.ptr(6824,6829,1),new P.ptr(7002,7008,1),new P.ptr(7164,7167,1),new P.ptr(7227,7231,1),new P.ptr(7294,7295,1),new P.ptr(7360,7367,1),new P.ptr(7379,8214,835),new P.ptr(8215,8224,9),new P.ptr(8225,8231,1),new P.ptr(8240,8248,1),new P.ptr(8251,8254,1),new P.ptr(8257,8259,1),new P.ptr(8263,8273,1),new P.ptr(8275,8277,2),new P.ptr(8278,8286,1),new P.ptr(11513,11516,1),new P.ptr(11518,11519,1),new P.ptr(11632,11776,144),new P.ptr(11777,11782,5),new P.ptr(11783,11784,1),new P.ptr(11787,11790,3),new P.ptr(11791,11798,1),new P.ptr(11800,11801,1),new P.ptr(11803,11806,3),new P.ptr(11807,11818,11),new P.ptr(11819,11822,1),new P.ptr(11824,11833,1),new P.ptr(11836,11839,1),new P.ptr(11841,11843,2),new P.ptr(11844,12289,445),new P.ptr(12290,12291,1),new P.ptr(12349,12539,190),new P.ptr(42238,42239,1),new P.ptr(42509,42511,1),new P.ptr(42611,42622,11),new P.ptr(42738,42743,1),new P.ptr(43124,43127,1),new P.ptr(43214,43215,1),new P.ptr(43256,43258,1),new P.ptr(43260,43310,50),new P.ptr(43311,43359,48),new P.ptr(43457,43469,1),new P.ptr(43486,43487,1),new P.ptr(43612,43615,1),new P.ptr(43742,43743,1),new P.ptr(43760,43761,1),new P.ptr(44011,65040,21029),new P.ptr(65041,65046,1),new P.ptr(65049,65072,23),new P.ptr(65093,65094,1),new P.ptr(65097,65100,1),new P.ptr(65104,65106,1),new P.ptr(65108,65111,1),new P.ptr(65119,65121,1),new P.ptr(65128,65130,2),new P.ptr(65131,65281,150),new P.ptr(65282,65283,1),new P.ptr(65285,65287,1),new P.ptr(65290,65294,2),new P.ptr(65295,65306,11),new P.ptr(65307,65311,4),new P.ptr(65312,65340,28),new P.ptr(65377,65380,3),new P.ptr(65381,65381,1)]),new IU([new Q.ptr(65792,65792,1),new Q.ptr(65793,65794,1),new Q.ptr(66463,66512,49),new Q.ptr(66927,67671,744),new Q.ptr(67871,67903,32),new Q.ptr(68176,68184,1),new Q.ptr(68223,68336,113),new Q.ptr(68337,68342,1),new Q.ptr(68409,68415,1),new Q.ptr(68505,68508,1),new Q.ptr(69703,69709,1),new Q.ptr(69819,69820,1),new Q.ptr(69822,69825,1),new Q.ptr(69952,69955,1),new Q.ptr(70004,70005,1),new Q.ptr(70085,70089,1),new Q.ptr(70093,70107,14),new Q.ptr(70109,70111,1),new Q.ptr(70200,70205,1),new Q.ptr(70313,70731,418),new Q.ptr(70732,70735,1),new Q.ptr(70747,70749,2),new Q.ptr(70854,71105,251),new Q.ptr(71106,71127,1),new Q.ptr(71233,71235,1),new Q.ptr(71264,71276,1),new Q.ptr(71484,71486,1),new Q.ptr(72769,72773,1),new Q.ptr(72816,72817,1),new Q.ptr(74864,74868,1),new Q.ptr(92782,92783,1),new Q.ptr(92917,92983,66),new Q.ptr(92984,92987,1),new Q.ptr(92996,113823,20827),new Q.ptr(121479,121483,1),new Q.ptr(125278,125279,1)]),8);BH=new O.ptr(new IT([new P.ptr(40,91,51),new P.ptr(123,3898,3775),new P.ptr(3900,5787,1887),new P.ptr(8218,8222,4),new P.ptr(8261,8317,56),new P.ptr(8333,8968,635),new P.ptr(8970,9001,31),new P.ptr(10088,10100,2),new P.ptr(10181,10214,33),new P.ptr(10216,10222,2),new P.ptr(10627,10647,2),new P.ptr(10712,10714,2),new P.ptr(10748,11810,1062),new P.ptr(11812,11816,2),new P.ptr(11842,12296,454),new P.ptr(12298,12304,2),new P.ptr(12308,12314,2),new P.ptr(12317,64831,52514),new P.ptr(65047,65077,30),new P.ptr(65079,65091,2),new P.ptr(65095,65113,18),new P.ptr(65115,65117,2),new P.ptr(65288,65339,51),new P.ptr(65371,65375,4),new P.ptr(65378,65378,1)]),IU.nil,1);BI=new O.ptr(new IT([new P.ptr(36,43,7),new P.ptr(60,62,1),new P.ptr(94,96,2),new P.ptr(124,126,2),new P.ptr(162,166,1),new P.ptr(168,169,1),new P.ptr(172,174,2),new P.ptr(175,177,1),new P.ptr(180,184,4),new P.ptr(215,247,32),new P.ptr(706,709,1),new P.ptr(722,735,1),new P.ptr(741,747,1),new P.ptr(749,751,2),new P.ptr(752,767,1),new P.ptr(885,900,15),new P.ptr(901,1014,113),new P.ptr(1154,1421,267),new P.ptr(1422,1423,1),new P.ptr(1542,1544,1),new P.ptr(1547,1550,3),new P.ptr(1551,1758,207),new P.ptr(1769,1789,20),new P.ptr(1790,2038,248),new P.ptr(2546,2547,1),new P.ptr(2554,2555,1),new P.ptr(2801,2928,127),new P.ptr(3059,3066,1),new P.ptr(3199,3407,208),new P.ptr(3449,3647,198),new P.ptr(3841,3843,1),new P.ptr(3859,3861,2),new P.ptr(3862,3863,1),new P.ptr(3866,3871,1),new P.ptr(3892,3896,2),new P.ptr(4030,4037,1),new P.ptr(4039,4044,1),new P.ptr(4046,4047,1),new P.ptr(4053,4056,1),new P.ptr(4254,4255,1),new P.ptr(5008,5017,1),new P.ptr(6107,6464,357),new P.ptr(6622,6655,1),new P.ptr(7009,7018,1),new P.ptr(7028,7036,1),new P.ptr(8125,8127,2),new P.ptr(8128,8129,1),new P.ptr(8141,8143,1),new P.ptr(8157,8159,1),new P.ptr(8173,8175,1),new P.ptr(8189,8190,1),new P.ptr(8260,8274,14),new P.ptr(8314,8316,1),new P.ptr(8330,8332,1),new P.ptr(8352,8382,1),new P.ptr(8448,8449,1),new P.ptr(8451,8454,1),new P.ptr(8456,8457,1),new P.ptr(8468,8470,2),new P.ptr(8471,8472,1),new P.ptr(8478,8483,1),new P.ptr(8485,8489,2),new P.ptr(8494,8506,12),new P.ptr(8507,8512,5),new P.ptr(8513,8516,1),new P.ptr(8522,8525,1),new P.ptr(8527,8586,59),new P.ptr(8587,8592,5),new P.ptr(8593,8967,1),new P.ptr(8972,9000,1),new P.ptr(9003,9214,1),new P.ptr(9216,9254,1),new P.ptr(9280,9290,1),new P.ptr(9372,9449,1),new P.ptr(9472,10087,1),new P.ptr(10132,10180,1),new P.ptr(10183,10213,1),new P.ptr(10224,10626,1),new P.ptr(10649,10711,1),new P.ptr(10716,10747,1),new P.ptr(10750,11123,1),new P.ptr(11126,11157,1),new P.ptr(11160,11193,1),new P.ptr(11197,11208,1),new P.ptr(11210,11217,1),new P.ptr(11244,11247,1),new P.ptr(11493,11498,1),new P.ptr(11904,11929,1),new P.ptr(11931,12019,1),new P.ptr(12032,12245,1),new P.ptr(12272,12283,1),new P.ptr(12292,12306,14),new P.ptr(12307,12320,13),new P.ptr(12342,12343,1),new P.ptr(12350,12351,1),new P.ptr(12443,12444,1),new P.ptr(12688,12689,1),new P.ptr(12694,12703,1),new P.ptr(12736,12771,1),new P.ptr(12800,12830,1),new P.ptr(12842,12871,1),new P.ptr(12880,12896,16),new P.ptr(12897,12927,1),new P.ptr(12938,12976,1),new P.ptr(12992,13054,1),new P.ptr(13056,13311,1),new P.ptr(19904,19967,1),new P.ptr(42128,42182,1),new P.ptr(42752,42774,1),new P.ptr(42784,42785,1),new P.ptr(42889,42890,1),new P.ptr(43048,43051,1),new P.ptr(43062,43065,1),new P.ptr(43639,43641,1),new P.ptr(43867,64297,20430),new P.ptr(64434,64449,1),new P.ptr(65020,65021,1),new P.ptr(65122,65124,2),new P.ptr(65125,65126,1),new P.ptr(65129,65284,155),new P.ptr(65291,65308,17),new P.ptr(65309,65310,1),new P.ptr(65342,65344,2),new P.ptr(65372,65374,2),new P.ptr(65504,65510,1),new P.ptr(65512,65518,1),new P.ptr(65532,65533,1)]),new IU([new Q.ptr(65847,65855,1),new Q.ptr(65913,65929,1),new Q.ptr(65932,65934,1),new Q.ptr(65936,65947,1),new Q.ptr(65952,66000,48),new Q.ptr(66001,66044,1),new Q.ptr(67703,67704,1),new Q.ptr(68296,71487,3191),new Q.ptr(92988,92991,1),new Q.ptr(92997,113820,20823),new Q.ptr(118784,119029,1),new Q.ptr(119040,119078,1),new Q.ptr(119081,119140,1),new Q.ptr(119146,119148,1),new Q.ptr(119171,119172,1),new Q.ptr(119180,119209,1),new Q.ptr(119214,119272,1),new Q.ptr(119296,119361,1),new Q.ptr(119365,119552,187),new Q.ptr(119553,119638,1),new Q.ptr(120513,120539,26),new Q.ptr(120571,120597,26),new Q.ptr(120629,120655,26),new Q.ptr(120687,120713,26),new Q.ptr(120745,120771,26),new Q.ptr(120832,121343,1),new Q.ptr(121399,121402,1),new Q.ptr(121453,121460,1),new Q.ptr(121462,121475,1),new Q.ptr(121477,121478,1),new Q.ptr(126704,126705,1),new Q.ptr(126976,127019,1),new Q.ptr(127024,127123,1),new Q.ptr(127136,127150,1),new Q.ptr(127153,127167,1),new Q.ptr(127169,127183,1),new Q.ptr(127185,127221,1),new Q.ptr(127248,127278,1),new Q.ptr(127280,127339,1),new Q.ptr(127344,127404,1),new Q.ptr(127462,127490,1),new Q.ptr(127504,127547,1),new Q.ptr(127552,127560,1),new Q.ptr(127568,127569,1),new Q.ptr(127744,128722,1),new Q.ptr(128736,128748,1),new Q.ptr(128752,128758,1),new Q.ptr(128768,128883,1),new Q.ptr(128896,128980,1),new Q.ptr(129024,129035,1),new Q.ptr(129040,129095,1),new Q.ptr(129104,129113,1),new Q.ptr(129120,129159,1),new Q.ptr(129168,129197,1),new Q.ptr(129296,129310,1),new Q.ptr(129312,129319,1),new Q.ptr(129328,129331,3),new Q.ptr(129332,129342,1),new Q.ptr(129344,129355,1),new Q.ptr(129360,129374,1),new Q.ptr(129408,129425,1),new Q.ptr(129472,129472,1)]),10);BJ=new O.ptr(new IT([new P.ptr(36,162,126),new P.ptr(163,165,1),new P.ptr(1423,1547,124),new P.ptr(2546,2547,1),new P.ptr(2555,2801,246),new P.ptr(3065,3647,582),new P.ptr(6107,8352,2245),new P.ptr(8353,8382,1),new P.ptr(43064,65020,21956),new P.ptr(65129,65284,155),new P.ptr(65504,65505,1),new P.ptr(65509,65510,1)]),IU.nil,2);BK=new O.ptr(new IT([new P.ptr(94,96,2),new P.ptr(168,175,7),new P.ptr(180,184,4),new P.ptr(706,709,1),new P.ptr(722,735,1),new P.ptr(741,747,1),new P.ptr(749,751,2),new P.ptr(752,767,1),new P.ptr(885,900,15),new P.ptr(901,8125,7224),new P.ptr(8127,8129,1),new P.ptr(8141,8143,1),new P.ptr(8157,8159,1),new P.ptr(8173,8175,1),new P.ptr(8189,8190,1),new P.ptr(12443,12444,1),new P.ptr(42752,42774,1),new P.ptr(42784,42785,1),new P.ptr(42889,42890,1),new P.ptr(43867,64434,20567),new P.ptr(64435,64449,1),new P.ptr(65342,65344,2),new P.ptr(65507,65507,1)]),new IU([new Q.ptr(127995,127995,1),new Q.ptr(127996,127999,1)]),3);BL=new O.ptr(new IT([new P.ptr(43,60,17),new P.ptr(61,62,1),new P.ptr(124,126,2),new P.ptr(172,177,5),new P.ptr(215,247,32),new P.ptr(1014,1542,528),new P.ptr(1543,1544,1),new P.ptr(8260,8274,14),new P.ptr(8314,8316,1),new P.ptr(8330,8332,1),new P.ptr(8472,8512,40),new P.ptr(8513,8516,1),new P.ptr(8523,8592,69),new P.ptr(8593,8596,1),new P.ptr(8602,8603,1),new P.ptr(8608,8614,3),new P.ptr(8622,8654,32),new P.ptr(8655,8658,3),new P.ptr(8660,8692,32),new P.ptr(8693,8959,1),new P.ptr(8992,8993,1),new P.ptr(9084,9115,31),new P.ptr(9116,9139,1),new P.ptr(9180,9185,1),new P.ptr(9655,9665,10),new P.ptr(9720,9727,1),new P.ptr(9839,10176,337),new P.ptr(10177,10180,1),new P.ptr(10183,10213,1),new P.ptr(10224,10239,1),new P.ptr(10496,10626,1),new P.ptr(10649,10711,1),new P.ptr(10716,10747,1),new P.ptr(10750,11007,1),new P.ptr(11056,11076,1),new P.ptr(11079,11084,1),new P.ptr(64297,65122,825),new P.ptr(65124,65126,1),new P.ptr(65291,65308,17),new P.ptr(65309,65310,1),new P.ptr(65372,65374,2),new P.ptr(65506,65513,7),new P.ptr(65514,65516,1)]),new IU([new Q.ptr(120513,120539,26),new Q.ptr(120571,120597,26),new Q.ptr(120629,120655,26),new Q.ptr(120687,120713,26),new Q.ptr(120745,120771,26),new Q.ptr(126704,126705,1)]),5);BM=new O.ptr(new IT([new P.ptr(166,169,3),new P.ptr(174,176,2),new P.ptr(1154,1421,267),new P.ptr(1422,1550,128),new P.ptr(1551,1758,207),new P.ptr(1769,1789,20),new P.ptr(1790,2038,248),new P.ptr(2554,2928,374),new P.ptr(3059,3064,1),new P.ptr(3066,3199,133),new P.ptr(3407,3449,42),new P.ptr(3841,3843,1),new P.ptr(3859,3861,2),new P.ptr(3862,3863,1),new P.ptr(3866,3871,1),new P.ptr(3892,3896,2),new P.ptr(4030,4037,1),new P.ptr(4039,4044,1),new P.ptr(4046,4047,1),new P.ptr(4053,4056,1),new P.ptr(4254,4255,1),new P.ptr(5008,5017,1),new P.ptr(6464,6622,158),new P.ptr(6623,6655,1),new P.ptr(7009,7018,1),new P.ptr(7028,7036,1),new P.ptr(8448,8449,1),new P.ptr(8451,8454,1),new P.ptr(8456,8457,1),new P.ptr(8468,8470,2),new P.ptr(8471,8478,7),new P.ptr(8479,8483,1),new P.ptr(8485,8489,2),new P.ptr(8494,8506,12),new P.ptr(8507,8522,15),new P.ptr(8524,8525,1),new P.ptr(8527,8586,59),new P.ptr(8587,8597,10),new P.ptr(8598,8601,1),new P.ptr(8604,8607,1),new P.ptr(8609,8610,1),new P.ptr(8612,8613,1),new P.ptr(8615,8621,1),new P.ptr(8623,8653,1),new P.ptr(8656,8657,1),new P.ptr(8659,8661,2),new P.ptr(8662,8691,1),new P.ptr(8960,8967,1),new P.ptr(8972,8991,1),new P.ptr(8994,9000,1),new P.ptr(9003,9083,1),new P.ptr(9085,9114,1),new P.ptr(9140,9179,1),new P.ptr(9186,9214,1),new P.ptr(9216,9254,1),new P.ptr(9280,9290,1),new P.ptr(9372,9449,1),new P.ptr(9472,9654,1),new P.ptr(9656,9664,1),new P.ptr(9666,9719,1),new P.ptr(9728,9838,1),new P.ptr(9840,10087,1),new P.ptr(10132,10175,1),new P.ptr(10240,10495,1),new P.ptr(11008,11055,1),new P.ptr(11077,11078,1),new P.ptr(11085,11123,1),new P.ptr(11126,11157,1),new P.ptr(11160,11193,1),new P.ptr(11197,11208,1),new P.ptr(11210,11217,1),new P.ptr(11244,11247,1),new P.ptr(11493,11498,1),new P.ptr(11904,11929,1),new P.ptr(11931,12019,1),new P.ptr(12032,12245,1),new P.ptr(12272,12283,1),new P.ptr(12292,12306,14),new P.ptr(12307,12320,13),new P.ptr(12342,12343,1),new P.ptr(12350,12351,1),new P.ptr(12688,12689,1),new P.ptr(12694,12703,1),new P.ptr(12736,12771,1),new P.ptr(12800,12830,1),new P.ptr(12842,12871,1),new P.ptr(12880,12896,16),new P.ptr(12897,12927,1),new P.ptr(12938,12976,1),new P.ptr(12992,13054,1),new P.ptr(13056,13311,1),new P.ptr(19904,19967,1),new P.ptr(42128,42182,1),new P.ptr(43048,43051,1),new P.ptr(43062,43063,1),new P.ptr(43065,43639,574),new P.ptr(43640,43641,1),new P.ptr(65021,65508,487),new P.ptr(65512,65517,5),new P.ptr(65518,65532,14),new P.ptr(65533,65533,1)]),new IU([new Q.ptr(65847,65847,1),new Q.ptr(65848,65855,1),new Q.ptr(65913,65929,1),new Q.ptr(65932,65934,1),new Q.ptr(65936,65947,1),new Q.ptr(65952,66000,48),new Q.ptr(66001,66044,1),new Q.ptr(67703,67704,1),new Q.ptr(68296,71487,3191),new Q.ptr(92988,92991,1),new Q.ptr(92997,113820,20823),new Q.ptr(118784,119029,1),new Q.ptr(119040,119078,1),new Q.ptr(119081,119140,1),new Q.ptr(119146,119148,1),new Q.ptr(119171,119172,1),new Q.ptr(119180,119209,1),new Q.ptr(119214,119272,1),new Q.ptr(119296,119361,1),new Q.ptr(119365,119552,187),new Q.ptr(119553,119638,1),new Q.ptr(120832,121343,1),new Q.ptr(121399,121402,1),new Q.ptr(121453,121460,1),new Q.ptr(121462,121475,1),new Q.ptr(121477,121478,1),new Q.ptr(126976,127019,1),new Q.ptr(127024,127123,1),new Q.ptr(127136,127150,1),new Q.ptr(127153,127167,1),new Q.ptr(127169,127183,1),new Q.ptr(127185,127221,1),new Q.ptr(127248,127278,1),new Q.ptr(127280,127339,1),new Q.ptr(127344,127404,1),new Q.ptr(127462,127490,1),new Q.ptr(127504,127547,1),new Q.ptr(127552,127560,1),new Q.ptr(127568,127569,1),new Q.ptr(127744,127994,1),new Q.ptr(128000,128722,1),new Q.ptr(128736,128748,1),new Q.ptr(128752,128758,1),new Q.ptr(128768,128883,1),new Q.ptr(128896,128980,1),new Q.ptr(129024,129035,1),new Q.ptr(129040,129095,1),new Q.ptr(129104,129113,1),new Q.ptr(129120,129159,1),new Q.ptr(129168,129197,1),new Q.ptr(129296,129310,1),new Q.ptr(129312,129319,1),new Q.ptr(129328,129331,3),new Q.ptr(129332,129342,1),new Q.ptr(129344,129355,1),new Q.ptr(129360,129374,1),new Q.ptr(129408,129425,1),new Q.ptr(129472,129472,1)]),2);BN=new O.ptr(new IT([new P.ptr(32,160,128),new P.ptr(5760,8192,2432),new P.ptr(8193,8202,1),new P.ptr(8232,8233,1),new P.ptr(8239,8287,48),new P.ptr(12288,12288,1)]),IU.nil,1);BO=new O.ptr(new IT([new P.ptr(8232,8232,1)]),IU.nil,0);BP=new O.ptr(new IT([new P.ptr(8233,8233,1)]),IU.nil,0);BQ=new O.ptr(new IT([new P.ptr(32,160,128),new P.ptr(5760,8192,2432),new P.ptr(8193,8202,1),new P.ptr(8239,8287,48),new P.ptr(12288,12288,1)]),IU.nil,1);$pkg.Cc=AI;$pkg.Cf=AJ;$pkg.Co=AK;$pkg.Cs=AL;$pkg.Digit=AX;$pkg.Nd=AX;$pkg.Letter=AM;$pkg.L=AM;$pkg.Lm=AO;$pkg.Lo=AP;$pkg.Ll=AN;$pkg.M=AS;$pkg.Mc=AT;$pkg.Me=AU;$pkg.Mn=AV;$pkg.Nl=AY;$pkg.No=AZ;$pkg.N=AW;$pkg.C=AH;$pkg.Pc=BB;$pkg.Pd=BC;$pkg.Pe=BD;$pkg.Pf=BE;$pkg.Pi=BF;$pkg.Po=BG;$pkg.Ps=BH;$pkg.P=BA;$pkg.Sc=BJ;$pkg.Sk=BK;$pkg.Sm=BL;$pkg.So=BM;$pkg.Z=BN;$pkg.S=BI;$pkg.PrintRanges=new IW([$pkg.L,$pkg.M,$pkg.N,$pkg.P,$pkg.S]);$pkg.Lt=AQ;$pkg.Lu=AR;$pkg.Zl=BO;$pkg.Zp=BP;$pkg.Zs=BQ;$pkg.Categories=$makeMap($String.keyFor,[{k:"C",v:$pkg.C},{k:"Cc",v:$pkg.Cc},{k:"Cf",v:$pkg.Cf},{k:"Co",v:$pkg.Co},{k:"Cs",v:$pkg.Cs},{k:"L",v:$pkg.L},{k:"Ll",v:$pkg.Ll},{k:"Lm",v:$pkg.Lm},{k:"Lo",v:$pkg.Lo},{k:"Lt",v:$pkg.Lt},{k:"Lu",v:$pkg.Lu},{k:"M",v:$pkg.M},{k:"Mc",v:$pkg.Mc},{k:"Me",v:$pkg.Me},{k:"Mn",v:$pkg.Mn},{k:"N",v:$pkg.N},{k:"Nd",v:$pkg.Nd},{k:"Nl",v:$pkg.Nl},{k:"No",v:$pkg.No},{k:"P",v:$pkg.P},{k:"Pc",v:$pkg.Pc},{k:"Pd",v:$pkg.Pd},{k:"Pe",v:$pkg.Pe},{k:"Pf",v:$pkg.Pf},{k:"Pi",v:$pkg.Pi},{k:"Po",v:$pkg.Po},{k:"Ps",v:$pkg.Ps},{k:"S",v:$pkg.S},{k:"Sc",v:$pkg.Sc},{k:"Sk",v:$pkg.Sk},{k:"Sm",v:$pkg.Sm},{k:"So",v:$pkg.So},{k:"Z",v:$pkg.Z},{k:"Zl",v:$pkg.Zl},{k:"Zp",v:$pkg.Zp},{k:"Zs",v:$pkg.Zs}]);BR=new O.ptr(new IT([]),new IU([new Q.ptr(125184,125258,1),new Q.ptr(125264,125273,1),new Q.ptr(125278,125279,1)]),0);BS=new O.ptr(new IT([]),new IU([new Q.ptr(71424,71449,1),new Q.ptr(71453,71467,1),new Q.ptr(71472,71487,1)]),0);BT=new O.ptr(new IT([]),new IU([new Q.ptr(82944,83526,1)]),0);BU=new O.ptr(new IT([new P.ptr(1536,1540,1),new P.ptr(1542,1547,1),new P.ptr(1549,1562,1),new P.ptr(1566,1566,1),new P.ptr(1568,1599,1),new P.ptr(1601,1610,1),new P.ptr(1622,1647,1),new P.ptr(1649,1756,1),new P.ptr(1758,1791,1),new P.ptr(1872,1919,1),new P.ptr(2208,2228,1),new P.ptr(2230,2237,1),new P.ptr(2260,2273,1),new P.ptr(2275,2303,1),new P.ptr(64336,64449,1),new P.ptr(64467,64829,1),new P.ptr(64848,64911,1),new P.ptr(64914,64967,1),new P.ptr(65008,65021,1),new P.ptr(65136,65140,1),new P.ptr(65142,65276,1)]),new IU([new Q.ptr(69216,69246,1),new Q.ptr(126464,126467,1),new Q.ptr(126469,126495,1),new Q.ptr(126497,126498,1),new Q.ptr(126500,126500,1),new Q.ptr(126503,126503,1),new Q.ptr(126505,126514,1),new Q.ptr(126516,126519,1),new Q.ptr(126521,126521,1),new Q.ptr(126523,126523,1),new Q.ptr(126530,126530,1),new Q.ptr(126535,126535,1),new Q.ptr(126537,126537,1),new Q.ptr(126539,126539,1),new Q.ptr(126541,126543,1),new Q.ptr(126545,126546,1),new Q.ptr(126548,126548,1),new Q.ptr(126551,126551,1),new Q.ptr(126553,126553,1),new Q.ptr(126555,126555,1),new Q.ptr(126557,126557,1),new Q.ptr(126559,126559,1),new Q.ptr(126561,126562,1),new Q.ptr(126564,126564,1),new Q.ptr(126567,126570,1),new Q.ptr(126572,126578,1),new Q.ptr(126580,126583,1),new Q.ptr(126585,126588,1),new Q.ptr(126590,126590,1),new Q.ptr(126592,126601,1),new Q.ptr(126603,126619,1),new Q.ptr(126625,126627,1),new Q.ptr(126629,126633,1),new Q.ptr(126635,126651,1),new Q.ptr(126704,126705,1)]),0);BV=new O.ptr(new IT([new P.ptr(1329,1366,1),new P.ptr(1369,1375,1),new P.ptr(1377,1415,1),new P.ptr(1418,1418,1),new P.ptr(1421,1423,1),new P.ptr(64275,64279,1)]),IU.nil,0);BW=new O.ptr(new IT([]),new IU([new Q.ptr(68352,68405,1),new Q.ptr(68409,68415,1)]),0);BX=new O.ptr(new IT([new P.ptr(6912,6987,1),new P.ptr(6992,7036,1)]),IU.nil,0);BY=new O.ptr(new IT([new P.ptr(42656,42743,1)]),new IU([new Q.ptr(92160,92728,1)]),0);BZ=new O.ptr(new IT([]),new IU([new Q.ptr(92880,92909,1),new Q.ptr(92912,92917,1)]),0);CA=new O.ptr(new IT([new P.ptr(7104,7155,1),new P.ptr(7164,7167,1)]),IU.nil,0);CB=new O.ptr(new IT([new P.ptr(2432,2435,1),new P.ptr(2437,2444,1),new P.ptr(2447,2448,1),new P.ptr(2451,2472,1),new P.ptr(2474,2480,1),new P.ptr(2482,2482,1),new P.ptr(2486,2489,1),new P.ptr(2492,2500,1),new P.ptr(2503,2504,1),new P.ptr(2507,2510,1),new P.ptr(2519,2519,1),new P.ptr(2524,2525,1),new P.ptr(2527,2531,1),new P.ptr(2534,2555,1)]),IU.nil,0);CC=new O.ptr(new IT([]),new IU([new Q.ptr(72704,72712,1),new Q.ptr(72714,72758,1),new Q.ptr(72760,72773,1),new Q.ptr(72784,72812,1)]),0);CD=new O.ptr(new IT([new P.ptr(746,747,1),new P.ptr(12549,12589,1),new P.ptr(12704,12730,1)]),IU.nil,0);CE=new O.ptr(new IT([]),new IU([new Q.ptr(69632,69709,1),new Q.ptr(69714,69743,1),new Q.ptr(69759,69759,1)]),0);CF=new O.ptr(new IT([new P.ptr(10240,10495,1)]),IU.nil,0);CG=new O.ptr(new IT([new P.ptr(6656,6683,1),new P.ptr(6686,6687,1)]),IU.nil,0);CH=new O.ptr(new IT([new P.ptr(5952,5971,1)]),IU.nil,0);CI=new O.ptr(new IT([new P.ptr(5120,5759,1),new P.ptr(6320,6389,1)]),IU.nil,0);CJ=new O.ptr(new IT([]),new IU([new Q.ptr(66208,66256,1)]),0);CK=new O.ptr(new IT([]),new IU([new Q.ptr(66864,66915,1),new Q.ptr(66927,66927,1)]),0);CL=new O.ptr(new IT([]),new IU([new Q.ptr(69888,69940,1),new Q.ptr(69942,69955,1)]),0);CM=new O.ptr(new IT([new P.ptr(43520,43574,1),new P.ptr(43584,43597,1),new P.ptr(43600,43609,1),new P.ptr(43612,43615,1)]),IU.nil,0);CN=new O.ptr(new IT([new P.ptr(5024,5109,1),new P.ptr(5112,5117,1),new P.ptr(43888,43967,1)]),IU.nil,0);CO=new O.ptr(new IT([new P.ptr(0,64,1),new P.ptr(91,96,1),new P.ptr(123,169,1),new P.ptr(171,185,1),new P.ptr(187,191,1),new P.ptr(215,215,1),new P.ptr(247,247,1),new P.ptr(697,735,1),new P.ptr(741,745,1),new P.ptr(748,767,1),new P.ptr(884,884,1),new P.ptr(894,894,1),new P.ptr(901,901,1),new P.ptr(903,903,1),new P.ptr(1417,1417,1),new P.ptr(1541,1541,1),new P.ptr(1548,1548,1),new P.ptr(1563,1564,1),new P.ptr(1567,1567,1),new P.ptr(1600,1600,1),new P.ptr(1757,1757,1),new P.ptr(2274,2274,1),new P.ptr(2404,2405,1),new P.ptr(3647,3647,1),new P.ptr(4053,4056,1),new P.ptr(4347,4347,1),new P.ptr(5867,5869,1),new P.ptr(5941,5942,1),new P.ptr(6146,6147,1),new P.ptr(6149,6149,1),new P.ptr(7379,7379,1),new P.ptr(7393,7393,1),new P.ptr(7401,7404,1),new P.ptr(7406,7411,1),new P.ptr(7413,7414,1),new P.ptr(8192,8203,1),new P.ptr(8206,8292,1),new P.ptr(8294,8304,1),new P.ptr(8308,8318,1),new P.ptr(8320,8334,1),new P.ptr(8352,8382,1),new P.ptr(8448,8485,1),new P.ptr(8487,8489,1),new P.ptr(8492,8497,1),new P.ptr(8499,8525,1),new P.ptr(8527,8543,1),new P.ptr(8585,8587,1),new P.ptr(8592,9214,1),new P.ptr(9216,9254,1),new P.ptr(9280,9290,1),new P.ptr(9312,10239,1),new P.ptr(10496,11123,1),new P.ptr(11126,11157,1),new P.ptr(11160,11193,1),new P.ptr(11197,11208,1),new P.ptr(11210,11217,1),new P.ptr(11244,11247,1),new P.ptr(11776,11844,1),new P.ptr(12272,12283,1),new P.ptr(12288,12292,1),new P.ptr(12294,12294,1),new P.ptr(12296,12320,1),new P.ptr(12336,12343,1),new P.ptr(12348,12351,1),new P.ptr(12443,12444,1),new P.ptr(12448,12448,1),new P.ptr(12539,12540,1),new P.ptr(12688,12703,1),new P.ptr(12736,12771,1),new P.ptr(12832,12895,1),new P.ptr(12927,13007,1),new P.ptr(13144,13311,1),new P.ptr(19904,19967,1),new P.ptr(42752,42785,1),new P.ptr(42888,42890,1),new P.ptr(43056,43065,1),new P.ptr(43310,43310,1),new P.ptr(43471,43471,1),new P.ptr(43867,43867,1),new P.ptr(64830,64831,1),new P.ptr(65040,65049,1),new P.ptr(65072,65106,1),new P.ptr(65108,65126,1),new P.ptr(65128,65131,1),new P.ptr(65279,65279,1),new P.ptr(65281,65312,1),new P.ptr(65339,65344,1),new P.ptr(65371,65381,1),new P.ptr(65392,65392,1),new P.ptr(65438,65439,1),new P.ptr(65504,65510,1),new P.ptr(65512,65518,1),new P.ptr(65529,65533,1)]),new IU([new Q.ptr(65792,65794,1),new Q.ptr(65799,65843,1),new Q.ptr(65847,65855,1),new Q.ptr(65936,65947,1),new Q.ptr(66000,66044,1),new Q.ptr(66273,66299,1),new Q.ptr(113824,113827,1),new Q.ptr(118784,119029,1),new Q.ptr(119040,119078,1),new Q.ptr(119081,119142,1),new Q.ptr(119146,119162,1),new Q.ptr(119171,119172,1),new Q.ptr(119180,119209,1),new Q.ptr(119214,119272,1),new Q.ptr(119552,119638,1),new Q.ptr(119648,119665,1),new Q.ptr(119808,119892,1),new Q.ptr(119894,119964,1),new Q.ptr(119966,119967,1),new Q.ptr(119970,119970,1),new Q.ptr(119973,119974,1),new Q.ptr(119977,119980,1),new Q.ptr(119982,119993,1),new Q.ptr(119995,119995,1),new Q.ptr(119997,120003,1),new Q.ptr(120005,120069,1),new Q.ptr(120071,120074,1),new Q.ptr(120077,120084,1),new Q.ptr(120086,120092,1),new Q.ptr(120094,120121,1),new Q.ptr(120123,120126,1),new Q.ptr(120128,120132,1),new Q.ptr(120134,120134,1),new Q.ptr(120138,120144,1),new Q.ptr(120146,120485,1),new Q.ptr(120488,120779,1),new Q.ptr(120782,120831,1),new Q.ptr(126976,127019,1),new Q.ptr(127024,127123,1),new Q.ptr(127136,127150,1),new Q.ptr(127153,127167,1),new Q.ptr(127169,127183,1),new Q.ptr(127185,127221,1),new Q.ptr(127232,127244,1),new Q.ptr(127248,127278,1),new Q.ptr(127280,127339,1),new Q.ptr(127344,127404,1),new Q.ptr(127462,127487,1),new Q.ptr(127489,127490,1),new Q.ptr(127504,127547,1),new Q.ptr(127552,127560,1),new Q.ptr(127568,127569,1),new Q.ptr(127744,128722,1),new Q.ptr(128736,128748,1),new Q.ptr(128752,128758,1),new Q.ptr(128768,128883,1),new Q.ptr(128896,128980,1),new Q.ptr(129024,129035,1),new Q.ptr(129040,129095,1),new Q.ptr(129104,129113,1),new Q.ptr(129120,129159,1),new Q.ptr(129168,129197,1),new Q.ptr(129296,129310,1),new Q.ptr(129312,129319,1),new Q.ptr(129328,129328,1),new Q.ptr(129331,129342,1),new Q.ptr(129344,129355,1),new Q.ptr(129360,129374,1),new Q.ptr(129408,129425,1),new Q.ptr(129472,129472,1),new Q.ptr(917505,917505,1),new Q.ptr(917536,917631,1)]),7);CP=new O.ptr(new IT([new P.ptr(994,1007,1),new P.ptr(11392,11507,1),new P.ptr(11513,11519,1)]),IU.nil,0);CQ=new O.ptr(new IT([]),new IU([new Q.ptr(73728,74649,1),new Q.ptr(74752,74862,1),new Q.ptr(74864,74868,1),new Q.ptr(74880,75075,1)]),0);CR=new O.ptr(new IT([]),new IU([new Q.ptr(67584,67589,1),new Q.ptr(67592,67592,1),new Q.ptr(67594,67637,1),new Q.ptr(67639,67640,1),new Q.ptr(67644,67644,1),new Q.ptr(67647,67647,1)]),0);CS=new O.ptr(new IT([new P.ptr(1024,1156,1),new P.ptr(1159,1327,1),new P.ptr(7296,7304,1),new P.ptr(7467,7467,1),new P.ptr(7544,7544,1),new P.ptr(11744,11775,1),new P.ptr(42560,42655,1),new P.ptr(65070,65071,1)]),IU.nil,0);CT=new O.ptr(new IT([]),new IU([new Q.ptr(66560,66639,1)]),0);CU=new O.ptr(new IT([new P.ptr(2304,2384,1),new P.ptr(2387,2403,1),new P.ptr(2406,2431,1),new P.ptr(43232,43261,1)]),IU.nil,0);CV=new O.ptr(new IT([]),new IU([new Q.ptr(113664,113770,1),new Q.ptr(113776,113788,1),new Q.ptr(113792,113800,1),new Q.ptr(113808,113817,1),new Q.ptr(113820,113823,1)]),0);CW=new O.ptr(new IT([]),new IU([new Q.ptr(77824,78894,1)]),0);CX=new O.ptr(new IT([]),new IU([new Q.ptr(66816,66855,1)]),0);CY=new O.ptr(new IT([new P.ptr(4608,4680,1),new P.ptr(4682,4685,1),new P.ptr(4688,4694,1),new P.ptr(4696,4696,1),new P.ptr(4698,4701,1),new P.ptr(4704,4744,1),new P.ptr(4746,4749,1),new P.ptr(4752,4784,1),new P.ptr(4786,4789,1),new P.ptr(4792,4798,1),new P.ptr(4800,4800,1),new P.ptr(4802,4805,1),new P.ptr(4808,4822,1),new P.ptr(4824,4880,1),new P.ptr(4882,4885,1),new P.ptr(4888,4954,1),new P.ptr(4957,4988,1),new P.ptr(4992,5017,1),new P.ptr(11648,11670,1),new P.ptr(11680,11686,1),new P.ptr(11688,11694,1),new P.ptr(11696,11702,1),new P.ptr(11704,11710,1),new P.ptr(11712,11718,1),new P.ptr(11720,11726,1),new P.ptr(11728,11734,1),new P.ptr(11736,11742,1),new P.ptr(43777,43782,1),new P.ptr(43785,43790,1),new P.ptr(43793,43798,1),new P.ptr(43808,43814,1),new P.ptr(43816,43822,1)]),IU.nil,0);CZ=new O.ptr(new IT([new P.ptr(4256,4293,1),new P.ptr(4295,4295,1),new P.ptr(4301,4301,1),new P.ptr(4304,4346,1),new P.ptr(4348,4351,1),new P.ptr(11520,11557,1),new P.ptr(11559,11559,1),new P.ptr(11565,11565,1)]),IU.nil,0);DA=new O.ptr(new IT([new P.ptr(11264,11310,1),new P.ptr(11312,11358,1)]),new IU([new Q.ptr(122880,122886,1),new Q.ptr(122888,122904,1),new Q.ptr(122907,122913,1),new Q.ptr(122915,122916,1),new Q.ptr(122918,122922,1)]),0);DB=new O.ptr(new IT([]),new IU([new Q.ptr(66352,66378,1)]),0);DC=new O.ptr(new IT([]),new IU([new Q.ptr(70400,70403,1),new Q.ptr(70405,70412,1),new Q.ptr(70415,70416,1),new Q.ptr(70419,70440,1),new Q.ptr(70442,70448,1),new Q.ptr(70450,70451,1),new Q.ptr(70453,70457,1),new Q.ptr(70460,70468,1),new Q.ptr(70471,70472,1),new Q.ptr(70475,70477,1),new Q.ptr(70480,70480,1),new Q.ptr(70487,70487,1),new Q.ptr(70493,70499,1),new Q.ptr(70502,70508,1),new Q.ptr(70512,70516,1)]),0);DD=new O.ptr(new IT([new P.ptr(880,883,1),new P.ptr(885,887,1),new P.ptr(890,893,1),new P.ptr(895,895,1),new P.ptr(900,900,1),new P.ptr(902,902,1),new P.ptr(904,906,1),new P.ptr(908,908,1),new P.ptr(910,929,1),new P.ptr(931,993,1),new P.ptr(1008,1023,1),new P.ptr(7462,7466,1),new P.ptr(7517,7521,1),new P.ptr(7526,7530,1),new P.ptr(7615,7615,1),new P.ptr(7936,7957,1),new P.ptr(7960,7965,1),new P.ptr(7968,8005,1),new P.ptr(8008,8013,1),new P.ptr(8016,8023,1),new P.ptr(8025,8025,1),new P.ptr(8027,8027,1),new P.ptr(8029,8029,1),new P.ptr(8031,8061,1),new P.ptr(8064,8116,1),new P.ptr(8118,8132,1),new P.ptr(8134,8147,1),new P.ptr(8150,8155,1),new P.ptr(8157,8175,1),new P.ptr(8178,8180,1),new P.ptr(8182,8190,1),new P.ptr(8486,8486,1),new P.ptr(43877,43877,1)]),new IU([new Q.ptr(65856,65934,1),new Q.ptr(65952,65952,1),new Q.ptr(119296,119365,1)]),0);DE=new O.ptr(new IT([new P.ptr(2689,2691,1),new P.ptr(2693,2701,1),new P.ptr(2703,2705,1),new P.ptr(2707,2728,1),new P.ptr(2730,2736,1),new P.ptr(2738,2739,1),new P.ptr(2741,2745,1),new P.ptr(2748,2757,1),new P.ptr(2759,2761,1),new P.ptr(2763,2765,1),new P.ptr(2768,2768,1),new P.ptr(2784,2787,1),new P.ptr(2790,2801,1),new P.ptr(2809,2809,1)]),IU.nil,0);DF=new O.ptr(new IT([new P.ptr(2561,2563,1),new P.ptr(2565,2570,1),new P.ptr(2575,2576,1),new P.ptr(2579,2600,1),new P.ptr(2602,2608,1),new P.ptr(2610,2611,1),new P.ptr(2613,2614,1),new P.ptr(2616,2617,1),new P.ptr(2620,2620,1),new P.ptr(2622,2626,1),new P.ptr(2631,2632,1),new P.ptr(2635,2637,1),new P.ptr(2641,2641,1),new P.ptr(2649,2652,1),new P.ptr(2654,2654,1),new P.ptr(2662,2677,1)]),IU.nil,0);DG=new O.ptr(new IT([new P.ptr(11904,11929,1),new P.ptr(11931,12019,1),new P.ptr(12032,12245,1),new P.ptr(12293,12293,1),new P.ptr(12295,12295,1),new P.ptr(12321,12329,1),new P.ptr(12344,12347,1),new P.ptr(13312,19893,1),new P.ptr(19968,40917,1),new P.ptr(63744,64109,1),new P.ptr(64112,64217,1)]),new IU([new Q.ptr(131072,173782,1),new Q.ptr(173824,177972,1),new Q.ptr(177984,178205,1),new Q.ptr(178208,183969,1),new Q.ptr(194560,195101,1)]),0);DH=new O.ptr(new IT([new P.ptr(4352,4607,1),new P.ptr(12334,12335,1),new P.ptr(12593,12686,1),new P.ptr(12800,12830,1),new P.ptr(12896,12926,1),new P.ptr(43360,43388,1),new P.ptr(44032,55203,1),new P.ptr(55216,55238,1),new P.ptr(55243,55291,1),new P.ptr(65440,65470,1),new P.ptr(65474,65479,1),new P.ptr(65482,65487,1),new P.ptr(65490,65495,1),new P.ptr(65498,65500,1)]),IU.nil,0);DI=new O.ptr(new IT([new P.ptr(5920,5940,1)]),IU.nil,0);DJ=new O.ptr(new IT([]),new IU([new Q.ptr(67808,67826,1),new Q.ptr(67828,67829,1),new Q.ptr(67835,67839,1)]),0);DK=new O.ptr(new IT([new P.ptr(1425,1479,1),new P.ptr(1488,1514,1),new P.ptr(1520,1524,1),new P.ptr(64285,64310,1),new P.ptr(64312,64316,1),new P.ptr(64318,64318,1),new P.ptr(64320,64321,1),new P.ptr(64323,64324,1),new P.ptr(64326,64335,1)]),IU.nil,0);DL=new O.ptr(new IT([new P.ptr(12353,12438,1),new P.ptr(12445,12447,1)]),new IU([new Q.ptr(110593,110593,1),new Q.ptr(127488,127488,1)]),0);DM=new O.ptr(new IT([]),new IU([new Q.ptr(67648,67669,1),new Q.ptr(67671,67679,1)]),0);DN=new O.ptr(new IT([new P.ptr(768,879,1),new P.ptr(1157,1158,1),new P.ptr(1611,1621,1),new P.ptr(1648,1648,1),new P.ptr(2385,2386,1),new P.ptr(6832,6846,1),new P.ptr(7376,7378,1),new P.ptr(7380,7392,1),new P.ptr(7394,7400,1),new P.ptr(7405,7405,1),new P.ptr(7412,7412,1),new P.ptr(7416,7417,1),new P.ptr(7616,7669,1),new P.ptr(7675,7679,1),new P.ptr(8204,8205,1),new P.ptr(8400,8432,1),new P.ptr(12330,12333,1),new P.ptr(12441,12442,1),new P.ptr(65024,65039,1),new P.ptr(65056,65069,1)]),new IU([new Q.ptr(66045,66045,1),new Q.ptr(66272,66272,1),new Q.ptr(119143,119145,1),new Q.ptr(119163,119170,1),new Q.ptr(119173,119179,1),new Q.ptr(119210,119213,1),new Q.ptr(917760,917999,1)]),0);DO=new O.ptr(new IT([]),new IU([new Q.ptr(68448,68466,1),new Q.ptr(68472,68479,1)]),0);DP=new O.ptr(new IT([]),new IU([new Q.ptr(68416,68437,1),new Q.ptr(68440,68447,1)]),0);DQ=new O.ptr(new IT([new P.ptr(43392,43469,1),new P.ptr(43472,43481,1),new P.ptr(43486,43487,1)]),IU.nil,0);DR=new O.ptr(new IT([]),new IU([new Q.ptr(69760,69825,1)]),0);DS=new O.ptr(new IT([new P.ptr(3200,3203,1),new P.ptr(3205,3212,1),new P.ptr(3214,3216,1),new P.ptr(3218,3240,1),new P.ptr(3242,3251,1),new P.ptr(3253,3257,1),new P.ptr(3260,3268,1),new P.ptr(3270,3272,1),new P.ptr(3274,3277,1),new P.ptr(3285,3286,1),new P.ptr(3294,3294,1),new P.ptr(3296,3299,1),new P.ptr(3302,3311,1),new P.ptr(3313,3314,1)]),IU.nil,0);DT=new O.ptr(new IT([new P.ptr(12449,12538,1),new P.ptr(12541,12543,1),new P.ptr(12784,12799,1),new P.ptr(13008,13054,1),new P.ptr(13056,13143,1),new P.ptr(65382,65391,1),new P.ptr(65393,65437,1)]),new IU([new Q.ptr(110592,110592,1)]),0);DU=new O.ptr(new IT([new P.ptr(43264,43309,1),new P.ptr(43311,43311,1)]),IU.nil,0);DV=new O.ptr(new IT([]),new IU([new Q.ptr(68096,68099,1),new Q.ptr(68101,68102,1),new Q.ptr(68108,68115,1),new Q.ptr(68117,68119,1),new Q.ptr(68121,68147,1),new Q.ptr(68152,68154,1),new Q.ptr(68159,68167,1),new Q.ptr(68176,68184,1)]),0);DW=new O.ptr(new IT([new P.ptr(6016,6109,1),new P.ptr(6112,6121,1),new P.ptr(6128,6137,1),new P.ptr(6624,6655,1)]),IU.nil,0);DX=new O.ptr(new IT([]),new IU([new Q.ptr(70144,70161,1),new Q.ptr(70163,70206,1)]),0);DY=new O.ptr(new IT([]),new IU([new Q.ptr(70320,70378,1),new Q.ptr(70384,70393,1)]),0);DZ=new O.ptr(new IT([new P.ptr(3713,3714,1),new P.ptr(3716,3716,1),new P.ptr(3719,3720,1),new P.ptr(3722,3722,1),new P.ptr(3725,3725,1),new P.ptr(3732,3735,1),new P.ptr(3737,3743,1),new P.ptr(3745,3747,1),new P.ptr(3749,3749,1),new P.ptr(3751,3751,1),new P.ptr(3754,3755,1),new P.ptr(3757,3769,1),new P.ptr(3771,3773,1),new P.ptr(3776,3780,1),new P.ptr(3782,3782,1),new P.ptr(3784,3789,1),new P.ptr(3792,3801,1),new P.ptr(3804,3807,1)]),IU.nil,0);EA=new O.ptr(new IT([new P.ptr(65,90,1),new P.ptr(97,122,1),new P.ptr(170,170,1),new P.ptr(186,186,1),new P.ptr(192,214,1),new P.ptr(216,246,1),new P.ptr(248,696,1),new P.ptr(736,740,1),new P.ptr(7424,7461,1),new P.ptr(7468,7516,1),new P.ptr(7522,7525,1),new P.ptr(7531,7543,1),new P.ptr(7545,7614,1),new P.ptr(7680,7935,1),new P.ptr(8305,8305,1),new P.ptr(8319,8319,1),new P.ptr(8336,8348,1),new P.ptr(8490,8491,1),new P.ptr(8498,8498,1),new P.ptr(8526,8526,1),new P.ptr(8544,8584,1),new P.ptr(11360,11391,1),new P.ptr(42786,42887,1),new P.ptr(42891,42926,1),new P.ptr(42928,42935,1),new P.ptr(42999,43007,1),new P.ptr(43824,43866,1),new P.ptr(43868,43876,1),new P.ptr(64256,64262,1),new P.ptr(65313,65338,1),new P.ptr(65345,65370,1)]),IU.nil,6);EB=new O.ptr(new IT([new P.ptr(7168,7223,1),new P.ptr(7227,7241,1),new P.ptr(7245,7247,1)]),IU.nil,0);EC=new O.ptr(new IT([new P.ptr(6400,6430,1),new P.ptr(6432,6443,1),new P.ptr(6448,6459,1),new P.ptr(6464,6464,1),new P.ptr(6468,6479,1)]),IU.nil,0);ED=new O.ptr(new IT([]),new IU([new Q.ptr(67072,67382,1),new Q.ptr(67392,67413,1),new Q.ptr(67424,67431,1)]),0);EE=new O.ptr(new IT([]),new IU([new Q.ptr(65536,65547,1),new Q.ptr(65549,65574,1),new Q.ptr(65576,65594,1),new Q.ptr(65596,65597,1),new Q.ptr(65599,65613,1),new Q.ptr(65616,65629,1),new Q.ptr(65664,65786,1)]),0);EF=new O.ptr(new IT([new P.ptr(42192,42239,1)]),IU.nil,0);EG=new O.ptr(new IT([]),new IU([new Q.ptr(66176,66204,1)]),0);EH=new O.ptr(new IT([]),new IU([new Q.ptr(67872,67897,1),new Q.ptr(67903,67903,1)]),0);EI=new O.ptr(new IT([]),new IU([new Q.ptr(69968,70006,1)]),0);EJ=new O.ptr(new IT([new P.ptr(3329,3331,1),new P.ptr(3333,3340,1),new P.ptr(3342,3344,1),new P.ptr(3346,3386,1),new P.ptr(3389,3396,1),new P.ptr(3398,3400,1),new P.ptr(3402,3407,1),new P.ptr(3412,3427,1),new P.ptr(3430,3455,1)]),IU.nil,0);EK=new O.ptr(new IT([new P.ptr(2112,2139,1),new P.ptr(2142,2142,1)]),IU.nil,0);EL=new O.ptr(new IT([]),new IU([new Q.ptr(68288,68326,1),new Q.ptr(68331,68342,1)]),0);EM=new O.ptr(new IT([]),new IU([new Q.ptr(72816,72847,1),new Q.ptr(72850,72871,1),new Q.ptr(72873,72886,1)]),0);EN=new O.ptr(new IT([new P.ptr(43744,43766,1),new P.ptr(43968,44013,1),new P.ptr(44016,44025,1)]),IU.nil,0);EO=new O.ptr(new IT([]),new IU([new Q.ptr(124928,125124,1),new Q.ptr(125127,125142,1)]),0);EP=new O.ptr(new IT([]),new IU([new Q.ptr(68000,68023,1),new Q.ptr(68028,68047,1),new Q.ptr(68050,68095,1)]),0);EQ=new O.ptr(new IT([]),new IU([new Q.ptr(67968,67999,1)]),0);ER=new O.ptr(new IT([]),new IU([new Q.ptr(93952,94020,1),new Q.ptr(94032,94078,1),new Q.ptr(94095,94111,1)]),0);ES=new O.ptr(new IT([]),new IU([new Q.ptr(71168,71236,1),new Q.ptr(71248,71257,1)]),0);ET=new O.ptr(new IT([new P.ptr(6144,6145,1),new P.ptr(6148,6148,1),new P.ptr(6150,6158,1),new P.ptr(6160,6169,1),new P.ptr(6176,6263,1),new P.ptr(6272,6314,1)]),new IU([new Q.ptr(71264,71276,1)]),0);EU=new O.ptr(new IT([]),new IU([new Q.ptr(92736,92766,1),new Q.ptr(92768,92777,1),new Q.ptr(92782,92783,1)]),0);EV=new O.ptr(new IT([]),new IU([new Q.ptr(70272,70278,1),new Q.ptr(70280,70280,1),new Q.ptr(70282,70285,1),new Q.ptr(70287,70301,1),new Q.ptr(70303,70313,1)]),0);EW=new O.ptr(new IT([new P.ptr(4096,4255,1),new P.ptr(43488,43518,1),new P.ptr(43616,43647,1)]),IU.nil,0);EX=new O.ptr(new IT([]),new IU([new Q.ptr(67712,67742,1),new Q.ptr(67751,67759,1)]),0);EY=new O.ptr(new IT([new P.ptr(6528,6571,1),new P.ptr(6576,6601,1),new P.ptr(6608,6618,1),new P.ptr(6622,6623,1)]),IU.nil,0);EZ=new O.ptr(new IT([]),new IU([new Q.ptr(70656,70745,1),new Q.ptr(70747,70747,1),new Q.ptr(70749,70749,1)]),0);FA=new O.ptr(new IT([new P.ptr(1984,2042,1)]),IU.nil,0);FB=new O.ptr(new IT([new P.ptr(5760,5788,1)]),IU.nil,0);FC=new O.ptr(new IT([new P.ptr(7248,7295,1)]),IU.nil,0);FD=new O.ptr(new IT([]),new IU([new Q.ptr(68736,68786,1),new Q.ptr(68800,68850,1),new Q.ptr(68858,68863,1)]),0);FE=new O.ptr(new IT([]),new IU([new Q.ptr(66304,66339,1)]),0);FF=new O.ptr(new IT([]),new IU([new Q.ptr(68224,68255,1)]),0);FG=new O.ptr(new IT([]),new IU([new Q.ptr(66384,66426,1)]),0);FH=new O.ptr(new IT([]),new IU([new Q.ptr(66464,66499,1),new Q.ptr(66504,66517,1)]),0);FI=new O.ptr(new IT([]),new IU([new Q.ptr(68192,68223,1)]),0);FJ=new O.ptr(new IT([]),new IU([new Q.ptr(68608,68680,1)]),0);FK=new O.ptr(new IT([new P.ptr(2817,2819,1),new P.ptr(2821,2828,1),new P.ptr(2831,2832,1),new P.ptr(2835,2856,1),new P.ptr(2858,2864,1),new P.ptr(2866,2867,1),new P.ptr(2869,2873,1),new P.ptr(2876,2884,1),new P.ptr(2887,2888,1),new P.ptr(2891,2893,1),new P.ptr(2902,2903,1),new P.ptr(2908,2909,1),new P.ptr(2911,2915,1),new P.ptr(2918,2935,1)]),IU.nil,0);FL=new O.ptr(new IT([]),new IU([new Q.ptr(66736,66771,1),new Q.ptr(66776,66811,1)]),0);FM=new O.ptr(new IT([]),new IU([new Q.ptr(66688,66717,1),new Q.ptr(66720,66729,1)]),0);FN=new O.ptr(new IT([]),new IU([new Q.ptr(92928,92997,1),new Q.ptr(93008,93017,1),new Q.ptr(93019,93025,1),new Q.ptr(93027,93047,1),new Q.ptr(93053,93071,1)]),0);FO=new O.ptr(new IT([]),new IU([new Q.ptr(67680,67711,1)]),0);FP=new O.ptr(new IT([]),new IU([new Q.ptr(72384,72440,1)]),0);FQ=new O.ptr(new IT([new P.ptr(43072,43127,1)]),IU.nil,0);FR=new O.ptr(new IT([]),new IU([new Q.ptr(67840,67867,1),new Q.ptr(67871,67871,1)]),0);FS=new O.ptr(new IT([]),new IU([new Q.ptr(68480,68497,1),new Q.ptr(68505,68508,1),new Q.ptr(68521,68527,1)]),0);FT=new O.ptr(new IT([new P.ptr(43312,43347,1),new P.ptr(43359,43359,1)]),IU.nil,0);FU=new O.ptr(new IT([new P.ptr(5792,5866,1),new P.ptr(5870,5880,1)]),IU.nil,0);FV=new O.ptr(new IT([new P.ptr(2048,2093,1),new P.ptr(2096,2110,1)]),IU.nil,0);FW=new O.ptr(new IT([new P.ptr(43136,43205,1),new P.ptr(43214,43225,1)]),IU.nil,0);FX=new O.ptr(new IT([]),new IU([new Q.ptr(70016,70093,1),new Q.ptr(70096,70111,1)]),0);FY=new O.ptr(new IT([]),new IU([new Q.ptr(66640,66687,1)]),0);FZ=new O.ptr(new IT([]),new IU([new Q.ptr(71040,71093,1),new Q.ptr(71096,71133,1)]),0);GA=new O.ptr(new IT([]),new IU([new Q.ptr(120832,121483,1),new Q.ptr(121499,121503,1),new Q.ptr(121505,121519,1)]),0);GB=new O.ptr(new IT([new P.ptr(3458,3459,1),new P.ptr(3461,3478,1),new P.ptr(3482,3505,1),new P.ptr(3507,3515,1),new P.ptr(3517,3517,1),new P.ptr(3520,3526,1),new P.ptr(3530,3530,1),new P.ptr(3535,3540,1),new P.ptr(3542,3542,1),new P.ptr(3544,3551,1),new P.ptr(3558,3567,1),new P.ptr(3570,3572,1)]),new IU([new Q.ptr(70113,70132,1)]),0);GC=new O.ptr(new IT([]),new IU([new Q.ptr(69840,69864,1),new Q.ptr(69872,69881,1)]),0);GD=new O.ptr(new IT([new P.ptr(7040,7103,1),new P.ptr(7360,7367,1)]),IU.nil,0);GE=new O.ptr(new IT([new P.ptr(43008,43051,1)]),IU.nil,0);GF=new O.ptr(new IT([new P.ptr(1792,1805,1),new P.ptr(1807,1866,1),new P.ptr(1869,1871,1)]),IU.nil,0);GG=new O.ptr(new IT([new P.ptr(5888,5900,1),new P.ptr(5902,5908,1)]),IU.nil,0);GH=new O.ptr(new IT([new P.ptr(5984,5996,1),new P.ptr(5998,6000,1),new P.ptr(6002,6003,1)]),IU.nil,0);GI=new O.ptr(new IT([new P.ptr(6480,6509,1),new P.ptr(6512,6516,1)]),IU.nil,0);GJ=new O.ptr(new IT([new P.ptr(6688,6750,1),new P.ptr(6752,6780,1),new P.ptr(6783,6793,1),new P.ptr(6800,6809,1),new P.ptr(6816,6829,1)]),IU.nil,0);GK=new O.ptr(new IT([new P.ptr(43648,43714,1),new P.ptr(43739,43743,1)]),IU.nil,0);GL=new O.ptr(new IT([]),new IU([new Q.ptr(71296,71351,1),new Q.ptr(71360,71369,1)]),0);GM=new O.ptr(new IT([new P.ptr(2946,2947,1),new P.ptr(2949,2954,1),new P.ptr(2958,2960,1),new P.ptr(2962,2965,1),new P.ptr(2969,2970,1),new P.ptr(2972,2972,1),new P.ptr(2974,2975,1),new P.ptr(2979,2980,1),new P.ptr(2984,2986,1),new P.ptr(2990,3001,1),new P.ptr(3006,3010,1),new P.ptr(3014,3016,1),new P.ptr(3018,3021,1),new P.ptr(3024,3024,1),new P.ptr(3031,3031,1),new P.ptr(3046,3066,1)]),IU.nil,0);GN=new O.ptr(new IT([]),new IU([new Q.ptr(94176,94176,1),new Q.ptr(94208,100332,1),new Q.ptr(100352,101106,1)]),0);GO=new O.ptr(new IT([new P.ptr(3072,3075,1),new P.ptr(3077,3084,1),new P.ptr(3086,3088,1),new P.ptr(3090,3112,1),new P.ptr(3114,3129,1),new P.ptr(3133,3140,1),new P.ptr(3142,3144,1),new P.ptr(3146,3149,1),new P.ptr(3157,3158,1),new P.ptr(3160,3162,1),new P.ptr(3168,3171,1),new P.ptr(3174,3183,1),new P.ptr(3192,3199,1)]),IU.nil,0);GP=new O.ptr(new IT([new P.ptr(1920,1969,1)]),IU.nil,0);GQ=new O.ptr(new IT([new P.ptr(3585,3642,1),new P.ptr(3648,3675,1)]),IU.nil,0);GR=new O.ptr(new IT([new P.ptr(3840,3911,1),new P.ptr(3913,3948,1),new P.ptr(3953,3991,1),new P.ptr(3993,4028,1),new P.ptr(4030,4044,1),new P.ptr(4046,4052,1),new P.ptr(4057,4058,1)]),IU.nil,0);GS=new O.ptr(new IT([new P.ptr(11568,11623,1),new P.ptr(11631,11632,1),new P.ptr(11647,11647,1)]),IU.nil,0);GT=new O.ptr(new IT([]),new IU([new Q.ptr(70784,70855,1),new Q.ptr(70864,70873,1)]),0);GU=new O.ptr(new IT([]),new IU([new Q.ptr(66432,66461,1),new Q.ptr(66463,66463,1)]),0);GV=new O.ptr(new IT([new P.ptr(42240,42539,1)]),IU.nil,0);GW=new O.ptr(new IT([]),new IU([new Q.ptr(71840,71922,1),new Q.ptr(71935,71935,1)]),0);GX=new O.ptr(new IT([new P.ptr(40960,42124,1),new P.ptr(42128,42182,1)]),IU.nil,0);$pkg.Adlam=BR;$pkg.Ahom=BS;$pkg.Anatolian_Hieroglyphs=BT;$pkg.Arabic=BU;$pkg.Armenian=BV;$pkg.Avestan=BW;$pkg.Balinese=BX;$pkg.Bamum=BY;$pkg.Bassa_Vah=BZ;$pkg.Batak=CA;$pkg.Bengali=CB;$pkg.Bhaiksuki=CC;$pkg.Bopomofo=CD;$pkg.Brahmi=CE;$pkg.Braille=CF;$pkg.Buginese=CG;$pkg.Buhid=CH;$pkg.Canadian_Aboriginal=CI;$pkg.Carian=CJ;$pkg.Caucasian_Albanian=CK;$pkg.Chakma=CL;$pkg.Cham=CM;$pkg.Cherokee=CN;$pkg.Common=CO;$pkg.Coptic=CP;$pkg.Cuneiform=CQ;$pkg.Cypriot=CR;$pkg.Cyrillic=CS;$pkg.Deseret=CT;$pkg.Devanagari=CU;$pkg.Duployan=CV;$pkg.Egyptian_Hieroglyphs=CW;$pkg.Elbasan=CX;$pkg.Ethiopic=CY;$pkg.Georgian=CZ;$pkg.Glagolitic=DA;$pkg.Gothic=DB;$pkg.Grantha=DC;$pkg.Greek=DD;$pkg.Gujarati=DE;$pkg.Gurmukhi=DF;$pkg.Han=DG;$pkg.Hangul=DH;$pkg.Hanunoo=DI;$pkg.Hatran=DJ;$pkg.Hebrew=DK;$pkg.Hiragana=DL;$pkg.Imperial_Aramaic=DM;$pkg.Inherited=DN;$pkg.Inscriptional_Pahlavi=DO;$pkg.Inscriptional_Parthian=DP;$pkg.Javanese=DQ;$pkg.Kaithi=DR;$pkg.Kannada=DS;$pkg.Katakana=DT;$pkg.Kayah_Li=DU;$pkg.Kharoshthi=DV;$pkg.Khmer=DW;$pkg.Khojki=DX;$pkg.Khudawadi=DY;$pkg.Lao=DZ;$pkg.Latin=EA;$pkg.Lepcha=EB;$pkg.Limbu=EC;$pkg.Linear_A=ED;$pkg.Linear_B=EE;$pkg.Lisu=EF;$pkg.Lycian=EG;$pkg.Lydian=EH;$pkg.Mahajani=EI;$pkg.Malayalam=EJ;$pkg.Mandaic=EK;$pkg.Manichaean=EL;$pkg.Marchen=EM;$pkg.Meetei_Mayek=EN;$pkg.Mende_Kikakui=EO;$pkg.Meroitic_Cursive=EP;$pkg.Meroitic_Hieroglyphs=EQ;$pkg.Miao=ER;$pkg.Modi=ES;$pkg.Mongolian=ET;$pkg.Mro=EU;$pkg.Multani=EV;$pkg.Myanmar=EW;$pkg.Nabataean=EX;$pkg.New_Tai_Lue=EY;$pkg.Newa=EZ;$pkg.Nko=FA;$pkg.Ogham=FB;$pkg.Ol_Chiki=FC;$pkg.Old_Hungarian=FD;$pkg.Old_Italic=FE;$pkg.Old_North_Arabian=FF;$pkg.Old_Permic=FG;$pkg.Old_Persian=FH;$pkg.Old_South_Arabian=FI;$pkg.Old_Turkic=FJ;$pkg.Oriya=FK;$pkg.Osage=FL;$pkg.Osmanya=FM;$pkg.Pahawh_Hmong=FN;$pkg.Palmyrene=FO;$pkg.Pau_Cin_Hau=FP;$pkg.Phags_Pa=FQ;$pkg.Phoenician=FR;$pkg.Psalter_Pahlavi=FS;$pkg.Rejang=FT;$pkg.Runic=FU;$pkg.Samaritan=FV;$pkg.Saurashtra=FW;$pkg.Sharada=FX;$pkg.Shavian=FY;$pkg.Siddham=FZ;$pkg.SignWriting=GA;$pkg.Sinhala=GB;$pkg.Sora_Sompeng=GC;$pkg.Sundanese=GD;$pkg.Syloti_Nagri=GE;$pkg.Syriac=GF;$pkg.Tagalog=GG;$pkg.Tagbanwa=GH;$pkg.Tai_Le=GI;$pkg.Tai_Tham=GJ;$pkg.Tai_Viet=GK;$pkg.Takri=GL;$pkg.Tamil=GM;$pkg.Tangut=GN;$pkg.Telugu=GO;$pkg.Thaana=GP;$pkg.Thai=GQ;$pkg.Tibetan=GR;$pkg.Tifinagh=GS;$pkg.Tirhuta=GT;$pkg.Ugaritic=GU;$pkg.Vai=GV;$pkg.Warang_Citi=GW;$pkg.Yi=GX;$pkg.Scripts=$makeMap($String.keyFor,[{k:"Adlam",v:$pkg.Adlam},{k:"Ahom",v:$pkg.Ahom},{k:"Anatolian_Hieroglyphs",v:$pkg.Anatolian_Hieroglyphs},{k:"Arabic",v:$pkg.Arabic},{k:"Armenian",v:$pkg.Armenian},{k:"Avestan",v:$pkg.Avestan},{k:"Balinese",v:$pkg.Balinese},{k:"Bamum",v:$pkg.Bamum},{k:"Bassa_Vah",v:$pkg.Bassa_Vah},{k:"Batak",v:$pkg.Batak},{k:"Bengali",v:$pkg.Bengali},{k:"Bhaiksuki",v:$pkg.Bhaiksuki},{k:"Bopomofo",v:$pkg.Bopomofo},{k:"Brahmi",v:$pkg.Brahmi},{k:"Braille",v:$pkg.Braille},{k:"Buginese",v:$pkg.Buginese},{k:"Buhid",v:$pkg.Buhid},{k:"Canadian_Aboriginal",v:$pkg.Canadian_Aboriginal},{k:"Carian",v:$pkg.Carian},{k:"Caucasian_Albanian",v:$pkg.Caucasian_Albanian},{k:"Chakma",v:$pkg.Chakma},{k:"Cham",v:$pkg.Cham},{k:"Cherokee",v:$pkg.Cherokee},{k:"Common",v:$pkg.Common},{k:"Coptic",v:$pkg.Coptic},{k:"Cuneiform",v:$pkg.Cuneiform},{k:"Cypriot",v:$pkg.Cypriot},{k:"Cyrillic",v:$pkg.Cyrillic},{k:"Deseret",v:$pkg.Deseret},{k:"Devanagari",v:$pkg.Devanagari},{k:"Duployan",v:$pkg.Duployan},{k:"Egyptian_Hieroglyphs",v:$pkg.Egyptian_Hieroglyphs},{k:"Elbasan",v:$pkg.Elbasan},{k:"Ethiopic",v:$pkg.Ethiopic},{k:"Georgian",v:$pkg.Georgian},{k:"Glagolitic",v:$pkg.Glagolitic},{k:"Gothic",v:$pkg.Gothic},{k:"Grantha",v:$pkg.Grantha},{k:"Greek",v:$pkg.Greek},{k:"Gujarati",v:$pkg.Gujarati},{k:"Gurmukhi",v:$pkg.Gurmukhi},{k:"Han",v:$pkg.Han},{k:"Hangul",v:$pkg.Hangul},{k:"Hanunoo",v:$pkg.Hanunoo},{k:"Hatran",v:$pkg.Hatran},{k:"Hebrew",v:$pkg.Hebrew},{k:"Hiragana",v:$pkg.Hiragana},{k:"Imperial_Aramaic",v:$pkg.Imperial_Aramaic},{k:"Inherited",v:$pkg.Inherited},{k:"Inscriptional_Pahlavi",v:$pkg.Inscriptional_Pahlavi},{k:"Inscriptional_Parthian",v:$pkg.Inscriptional_Parthian},{k:"Javanese",v:$pkg.Javanese},{k:"Kaithi",v:$pkg.Kaithi},{k:"Kannada",v:$pkg.Kannada},{k:"Katakana",v:$pkg.Katakana},{k:"Kayah_Li",v:$pkg.Kayah_Li},{k:"Kharoshthi",v:$pkg.Kharoshthi},{k:"Khmer",v:$pkg.Khmer},{k:"Khojki",v:$pkg.Khojki},{k:"Khudawadi",v:$pkg.Khudawadi},{k:"Lao",v:$pkg.Lao},{k:"Latin",v:$pkg.Latin},{k:"Lepcha",v:$pkg.Lepcha},{k:"Limbu",v:$pkg.Limbu},{k:"Linear_A",v:$pkg.Linear_A},{k:"Linear_B",v:$pkg.Linear_B},{k:"Lisu",v:$pkg.Lisu},{k:"Lycian",v:$pkg.Lycian},{k:"Lydian",v:$pkg.Lydian},{k:"Mahajani",v:$pkg.Mahajani},{k:"Malayalam",v:$pkg.Malayalam},{k:"Mandaic",v:$pkg.Mandaic},{k:"Manichaean",v:$pkg.Manichaean},{k:"Marchen",v:$pkg.Marchen},{k:"Meetei_Mayek",v:$pkg.Meetei_Mayek},{k:"Mende_Kikakui",v:$pkg.Mende_Kikakui},{k:"Meroitic_Cursive",v:$pkg.Meroitic_Cursive},{k:"Meroitic_Hieroglyphs",v:$pkg.Meroitic_Hieroglyphs},{k:"Miao",v:$pkg.Miao},{k:"Modi",v:$pkg.Modi},{k:"Mongolian",v:$pkg.Mongolian},{k:"Mro",v:$pkg.Mro},{k:"Multani",v:$pkg.Multani},{k:"Myanmar",v:$pkg.Myanmar},{k:"Nabataean",v:$pkg.Nabataean},{k:"New_Tai_Lue",v:$pkg.New_Tai_Lue},{k:"Newa",v:$pkg.Newa},{k:"Nko",v:$pkg.Nko},{k:"Ogham",v:$pkg.Ogham},{k:"Ol_Chiki",v:$pkg.Ol_Chiki},{k:"Old_Hungarian",v:$pkg.Old_Hungarian},{k:"Old_Italic",v:$pkg.Old_Italic},{k:"Old_North_Arabian",v:$pkg.Old_North_Arabian},{k:"Old_Permic",v:$pkg.Old_Permic},{k:"Old_Persian",v:$pkg.Old_Persian},{k:"Old_South_Arabian",v:$pkg.Old_South_Arabian},{k:"Old_Turkic",v:$pkg.Old_Turkic},{k:"Oriya",v:$pkg.Oriya},{k:"Osage",v:$pkg.Osage},{k:"Osmanya",v:$pkg.Osmanya},{k:"Pahawh_Hmong",v:$pkg.Pahawh_Hmong},{k:"Palmyrene",v:$pkg.Palmyrene},{k:"Pau_Cin_Hau",v:$pkg.Pau_Cin_Hau},{k:"Phags_Pa",v:$pkg.Phags_Pa},{k:"Phoenician",v:$pkg.Phoenician},{k:"Psalter_Pahlavi",v:$pkg.Psalter_Pahlavi},{k:"Rejang",v:$pkg.Rejang},{k:"Runic",v:$pkg.Runic},{k:"Samaritan",v:$pkg.Samaritan},{k:"Saurashtra",v:$pkg.Saurashtra},{k:"Sharada",v:$pkg.Sharada},{k:"Shavian",v:$pkg.Shavian},{k:"Siddham",v:$pkg.Siddham},{k:"SignWriting",v:$pkg.SignWriting},{k:"Sinhala",v:$pkg.Sinhala},{k:"Sora_Sompeng",v:$pkg.Sora_Sompeng},{k:"Sundanese",v:$pkg.Sundanese},{k:"Syloti_Nagri",v:$pkg.Syloti_Nagri},{k:"Syriac",v:$pkg.Syriac},{k:"Tagalog",v:$pkg.Tagalog},{k:"Tagbanwa",v:$pkg.Tagbanwa},{k:"Tai_Le",v:$pkg.Tai_Le},{k:"Tai_Tham",v:$pkg.Tai_Tham},{k:"Tai_Viet",v:$pkg.Tai_Viet},{k:"Takri",v:$pkg.Takri},{k:"Tamil",v:$pkg.Tamil},{k:"Tangut",v:$pkg.Tangut},{k:"Telugu",v:$pkg.Telugu},{k:"Thaana",v:$pkg.Thaana},{k:"Thai",v:$pkg.Thai},{k:"Tibetan",v:$pkg.Tibetan},{k:"Tifinagh",v:$pkg.Tifinagh},{k:"Tirhuta",v:$pkg.Tirhuta},{k:"Ugaritic",v:$pkg.Ugaritic},{k:"Vai",v:$pkg.Vai},{k:"Warang_Citi",v:$pkg.Warang_Citi},{k:"Yi",v:$pkg.Yi}]);IF=new IX([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(618,618,$toNativeArray($kindInt32,[42308,0,42308])),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(7296,7296,$toNativeArray($kindInt32,[-6254,0,-6254])),new R.ptr(7297,7297,$toNativeArray($kindInt32,[-6253,0,-6253])),new R.ptr(7298,7298,$toNativeArray($kindInt32,[-6244,0,-6244])),new R.ptr(7299,7300,$toNativeArray($kindInt32,[-6242,0,-6242])),new R.ptr(7301,7301,$toNativeArray($kindInt32,[-6243,0,-6243])),new R.ptr(7302,7302,$toNativeArray($kindInt32,[-6236,0,-6236])),new R.ptr(7303,7303,$toNativeArray($kindInt32,[-6181,0,-6181])),new R.ptr(7304,7304,$toNativeArray($kindInt32,[35266,0,35266])),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(42926,42926,$toNativeArray($kindInt32,[0,-42308,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(66736,66771,$toNativeArray($kindInt32,[0,40,0])),new R.ptr(66776,66811,$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])),new R.ptr(125184,125217,$toNativeArray($kindInt32,[0,34,0])),new R.ptr(125218,125251,$toNativeArray($kindInt32,[-34,0,-34]))]);$pkg.CaseRanges=IF;IG=$toNativeArray($kindUint8,[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,144,130,130,130,136,130,130,130,130,130,130,136,130,130,130,130,132,132,132,132,132,132,132,132,132,132,130,130,136,136,136,130,130,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,130,130,130,136,130,136,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,130,136,130,136,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,16,130,136,136,136,136,136,130,136,136,224,130,136,0,136,136,136,136,132,132,136,192,130,130,136,132,224,130,132,132,132,130,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,136,160,160,160,160,160,160,160,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,136,192,192,192,192,192,192,192,192]);IH=$toNativeArray($kindUint16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,65,66,67,68,69,70,71,72,73,74,8490,76,77,78,79,80,81,82,383,84,85,86,87,88,89,90,123,124,125,126,127]);II=new IY([new AF.ptr(75,107),new AF.ptr(83,115),new AF.ptr(107,8490),new AF.ptr(115,383),new AF.ptr(181,924),new AF.ptr(197,229),new AF.ptr(223,7838),new AF.ptr(229,8491),new AF.ptr(304,304),new AF.ptr(305,305),new AF.ptr(383,83),new AF.ptr(452,453),new AF.ptr(453,454),new AF.ptr(454,452),new AF.ptr(455,456),new AF.ptr(456,457),new AF.ptr(457,455),new AF.ptr(458,459),new AF.ptr(459,460),new AF.ptr(460,458),new AF.ptr(497,498),new AF.ptr(498,499),new AF.ptr(499,497),new AF.ptr(837,921),new AF.ptr(914,946),new AF.ptr(917,949),new AF.ptr(920,952),new AF.ptr(921,953),new AF.ptr(922,954),new AF.ptr(924,956),new AF.ptr(928,960),new AF.ptr(929,961),new AF.ptr(931,962),new AF.ptr(934,966),new AF.ptr(937,969),new AF.ptr(946,976),new AF.ptr(949,1013),new AF.ptr(952,977),new AF.ptr(953,8126),new AF.ptr(954,1008),new AF.ptr(956,181),new AF.ptr(960,982),new AF.ptr(961,1009),new AF.ptr(962,963),new AF.ptr(963,931),new AF.ptr(966,981),new AF.ptr(969,8486),new AF.ptr(976,914),new AF.ptr(977,1012),new AF.ptr(981,934),new AF.ptr(982,928),new AF.ptr(1008,922),new AF.ptr(1009,929),new AF.ptr(1012,920),new AF.ptr(1013,917),new AF.ptr(1042,1074),new AF.ptr(1044,1076),new AF.ptr(1054,1086),new AF.ptr(1057,1089),new AF.ptr(1058,1090),new AF.ptr(1066,1098),new AF.ptr(1074,7296),new AF.ptr(1076,7297),new AF.ptr(1086,7298),new AF.ptr(1089,7299),new AF.ptr(1090,7300),new AF.ptr(1098,7302),new AF.ptr(1122,1123),new AF.ptr(1123,7303),new AF.ptr(7296,1042),new AF.ptr(7297,1044),new AF.ptr(7298,1054),new AF.ptr(7299,1057),new AF.ptr(7300,7301),new AF.ptr(7301,1058),new AF.ptr(7302,1066),new AF.ptr(7303,1122),new AF.ptr(7304,42570),new AF.ptr(7776,7777),new AF.ptr(7777,7835),new AF.ptr(7835,7776),new AF.ptr(7838,223),new AF.ptr(8126,837),new AF.ptr(8486,937),new AF.ptr(8490,75),new AF.ptr(8491,197),new AF.ptr(42570,42571),new AF.ptr(42571,7304)]);IJ=new O.ptr(new IT([new P.ptr(924,956,32)]),IU.nil,0);IK=new O.ptr(new IT([new P.ptr(181,837,656)]),IU.nil,0);IL=new O.ptr(new IT([new P.ptr(921,953,32),new P.ptr(8126,8126,1)]),IU.nil,0);IM=new O.ptr(new IT([new P.ptr(837,837,1)]),IU.nil,0);IN=new O.ptr(new IT([new P.ptr(65,90,1),new P.ptr(192,214,1),new P.ptr(216,222,1),new P.ptr(256,302,2),new P.ptr(306,310,2),new P.ptr(313,327,2),new P.ptr(330,376,2),new P.ptr(377,381,2),new P.ptr(385,386,1),new P.ptr(388,390,2),new P.ptr(391,393,2),new P.ptr(394,395,1),new P.ptr(398,401,1),new P.ptr(403,404,1),new P.ptr(406,408,1),new P.ptr(412,413,1),new P.ptr(415,416,1),new P.ptr(418,422,2),new P.ptr(423,425,2),new P.ptr(428,430,2),new P.ptr(431,433,2),new P.ptr(434,435,1),new P.ptr(437,439,2),new P.ptr(440,444,4),new P.ptr(452,453,1),new P.ptr(455,456,1),new P.ptr(458,459,1),new P.ptr(461,475,2),new P.ptr(478,494,2),new P.ptr(497,498,1),new P.ptr(500,502,2),new P.ptr(503,504,1),new P.ptr(506,562,2),new P.ptr(570,571,1),new P.ptr(573,574,1),new P.ptr(577,579,2),new P.ptr(580,582,1),new P.ptr(584,590,2),new P.ptr(837,880,43),new P.ptr(882,886,4),new P.ptr(895,902,7),new P.ptr(904,906,1),new P.ptr(908,910,2),new P.ptr(911,913,2),new P.ptr(914,929,1),new P.ptr(931,939,1),new P.ptr(975,984,9),new P.ptr(986,1006,2),new P.ptr(1012,1015,3),new P.ptr(1017,1018,1),new P.ptr(1021,1071,1),new P.ptr(1120,1152,2),new P.ptr(1162,1216,2),new P.ptr(1217,1229,2),new P.ptr(1232,1326,2),new P.ptr(1329,1366,1),new P.ptr(4256,4293,1),new P.ptr(4295,4301,6),new P.ptr(5024,5109,1),new P.ptr(7680,7828,2),new P.ptr(7838,7934,2),new P.ptr(7944,7951,1),new P.ptr(7960,7965,1),new P.ptr(7976,7983,1),new P.ptr(7992,7999,1),new P.ptr(8008,8013,1),new P.ptr(8025,8031,2),new P.ptr(8040,8047,1),new P.ptr(8072,8079,1),new P.ptr(8088,8095,1),new P.ptr(8104,8111,1),new P.ptr(8120,8124,1),new P.ptr(8136,8140,1),new P.ptr(8152,8155,1),new P.ptr(8168,8172,1),new P.ptr(8184,8188,1),new P.ptr(8486,8490,4),new P.ptr(8491,8498,7),new P.ptr(8579,11264,2685),new P.ptr(11265,11310,1),new P.ptr(11360,11362,2),new P.ptr(11363,11364,1),new P.ptr(11367,11373,2),new P.ptr(11374,11376,1),new P.ptr(11378,11381,3),new P.ptr(11390,11392,1),new P.ptr(11394,11490,2),new P.ptr(11499,11501,2),new P.ptr(11506,42560,31054),new P.ptr(42562,42604,2),new P.ptr(42624,42650,2),new P.ptr(42786,42798,2),new P.ptr(42802,42862,2),new P.ptr(42873,42877,2),new P.ptr(42878,42886,2),new P.ptr(42891,42893,2),new P.ptr(42896,42898,2),new P.ptr(42902,42922,2),new P.ptr(42923,42926,1),new P.ptr(42928,42932,1),new P.ptr(42934,65313,22379),new P.ptr(65314,65338,1)]),new IU([new Q.ptr(66560,66599,1),new Q.ptr(66736,66771,1),new Q.ptr(68736,68786,1),new Q.ptr(71840,71871,1),new Q.ptr(125184,125217,1)]),3);IO=new O.ptr(new IT([new P.ptr(452,454,2),new P.ptr(455,457,2),new P.ptr(458,460,2),new P.ptr(497,499,2),new P.ptr(8064,8071,1),new P.ptr(8080,8087,1),new P.ptr(8096,8103,1),new P.ptr(8115,8131,16),new P.ptr(8179,8179,1)]),IU.nil,0);IP=new O.ptr(new IT([new P.ptr(97,122,1),new P.ptr(181,223,42),new P.ptr(224,246,1),new P.ptr(248,255,1),new P.ptr(257,303,2),new P.ptr(307,311,2),new P.ptr(314,328,2),new P.ptr(331,375,2),new P.ptr(378,382,2),new P.ptr(383,384,1),new P.ptr(387,389,2),new P.ptr(392,396,4),new P.ptr(402,405,3),new P.ptr(409,410,1),new P.ptr(414,417,3),new P.ptr(419,421,2),new P.ptr(424,429,5),new P.ptr(432,436,4),new P.ptr(438,441,3),new P.ptr(445,447,2),new P.ptr(453,454,1),new P.ptr(456,457,1),new P.ptr(459,460,1),new P.ptr(462,476,2),new P.ptr(477,495,2),new P.ptr(498,499,1),new P.ptr(501,505,4),new P.ptr(507,543,2),new P.ptr(547,563,2),new P.ptr(572,575,3),new P.ptr(576,578,2),new P.ptr(583,591,2),new P.ptr(592,596,1),new P.ptr(598,599,1),new P.ptr(601,603,2),new P.ptr(604,608,4),new P.ptr(609,613,2),new P.ptr(614,616,2),new P.ptr(617,620,1),new P.ptr(623,625,2),new P.ptr(626,629,3),new P.ptr(637,643,3),new P.ptr(647,652,1),new P.ptr(658,669,11),new P.ptr(670,837,167),new P.ptr(881,883,2),new P.ptr(887,891,4),new P.ptr(892,893,1),new P.ptr(940,943,1),new P.ptr(945,974,1),new P.ptr(976,977,1),new P.ptr(981,983,1),new P.ptr(985,1007,2),new P.ptr(1008,1011,1),new P.ptr(1013,1019,3),new P.ptr(1072,1119,1),new P.ptr(1121,1153,2),new P.ptr(1163,1215,2),new P.ptr(1218,1230,2),new P.ptr(1231,1327,2),new P.ptr(1377,1414,1),new P.ptr(5112,5117,1),new P.ptr(7296,7304,1),new P.ptr(7545,7549,4),new P.ptr(7681,7829,2),new P.ptr(7835,7841,6),new P.ptr(7843,7935,2),new P.ptr(7936,7943,1),new P.ptr(7952,7957,1),new P.ptr(7968,7975,1),new P.ptr(7984,7991,1),new P.ptr(8000,8005,1),new P.ptr(8017,8023,2),new P.ptr(8032,8039,1),new P.ptr(8048,8061,1),new P.ptr(8112,8113,1),new P.ptr(8126,8144,18),new P.ptr(8145,8160,15),new P.ptr(8161,8165,4),new P.ptr(8526,8580,54),new P.ptr(11312,11358,1),new P.ptr(11361,11365,4),new P.ptr(11366,11372,2),new P.ptr(11379,11382,3),new P.ptr(11393,11491,2),new P.ptr(11500,11502,2),new P.ptr(11507,11520,13),new P.ptr(11521,11557,1),new P.ptr(11559,11565,6),new P.ptr(42561,42605,2),new P.ptr(42625,42651,2),new P.ptr(42787,42799,2),new P.ptr(42803,42863,2),new P.ptr(42874,42876,2),new P.ptr(42879,42887,2),new P.ptr(42892,42897,5),new P.ptr(42899,42903,4),new P.ptr(42905,42921,2),new P.ptr(42933,42935,2),new P.ptr(43859,43888,29),new P.ptr(43889,43967,1),new P.ptr(65345,65370,1)]),new IU([new Q.ptr(66600,66639,1),new Q.ptr(66776,66811,1),new Q.ptr(68800,68850,1),new Q.ptr(71872,71903,1),new Q.ptr(125218,125251,1)]),4);IQ=new O.ptr(new IT([new P.ptr(921,953,32),new P.ptr(8126,8126,1)]),IU.nil,0);IR=new O.ptr(new IT([new P.ptr(921,953,32),new P.ptr(8126,8126,1)]),IU.nil,0);$pkg.FoldCategory=$makeMap($String.keyFor,[{k:"Common",v:IJ},{k:"Greek",v:IK},{k:"Inherited",v:IL},{k:"L",v:IM},{k:"Ll",v:IN},{k:"Lt",v:IO},{k:"Lu",v:IP},{k:"M",v:IQ},{k:"Mn",v:IR}]);$pkg.FoldScript=$makeMap($String.keyFor,[]);}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,BO,BP,BQ,E,F,G,J,K,AG,BL;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer",true,"bytes",true,function(buf_,off_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BP.nil;this.off=0;this.bootstrap=BQ.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp",true,"bytes",false,null);BO=$ptrType(H);BP=$sliceType($Uint8);BQ=$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)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;F=function(d,e){var $ptr,d,e,f,g,h,i;if(!((d.$length===e.$length))){return false;}f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(!((i===((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h])))){return false;}g++;}return true;};$pkg.Equal=F;G=function(d,e){var $ptr,d,e,f,g,h,i,j;f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(h>=e.$length){return 1;}j=((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h]);if(i<j){return-1;}if(i>j){return 1;}g++;}if(d.$length<e.$length){return-1;}return 0;};$pkg.Compare=G;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===BO.nil){return"<nil>";}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=BP.nil;if(e.buf===BP.nil&&d<=64){g=$subslice(new BP(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;$s=-1;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;$s=-1;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(BP,d);}catch(err){$err=err;return BP.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.off<g.buf.$length){$s=1;continue;}$s=2;continue;case 1:h=g.Len();j=d.Write($subslice(g.buf,g.off));$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(k>h){$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;$s=-1;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;$s=-1;return[e,f];}case 2:g.Truncate(0);$s=-1;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"),undefined):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,l;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];}g.lastRead=0;j=g.grow(4);e=C.EncodeRune($subslice(g.buf,j,(j+4>>0)),d);g.buf=$subslice(g.buf,0,(j+e>>0));k=e;l=$ifaceNil;e=k;f=l;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=-1;}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=-1;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g;d=this;d.lastRead=0;if(d.off>=d.buf.$length){d.Truncate(0);return[0,B.EOF];}g=(e=d.buf,f=d.off,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));d.off=d.off+(1)>>0;d.lastRead=-1;return[g,$ifaceNil];};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];}m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;g.lastRead=1;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;g.lastRead=(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;d=this;if(d.lastRead<=0){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}if(d.off>=(d.lastRead>>0)){d.off=d.off-((d.lastRead>>0))>>0;}d.lastRead=0;return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(d.lastRead===0){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=BP.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=BP.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=-1;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,BQ.zero(),0);};$pkg.NewBuffer=K;AG=function(d,e){var $ptr,d,e;return d.$length>=e.$length&&F($subslice(d,0,e.$length),e);};$pkg.HasPrefix=AG;BL=function(d,e){var $ptr,d,e,f,g,h,i,j;f=e.$length;if(f===0){return 0;}if(f>d.$length){return-1;}g=(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]);if(f===1){return E(d,g);}h=0;i=$subslice(d,0,((d.$length-f>>0)+1>>0));while(true){if(!(h<i.$length)){break;}if(!((((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h])===g))){j=E($subslice(i,h),g);if(j<0){break;}h=h+(j)>>0;}if(F($subslice(d,h,(h+f>>0)),e)){return h;}h=h+(1)>>0;}return-1;};$pkg.Index=BL;BO.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BP],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([BP],[$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([BP],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BP],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],[BP,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BP,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];H.init("bytes",[{prop:"buf",name:"buf",exported:false,typ:BP,tag:""},{prop:"off",name:"off",exported:false,typ:$Int,tag:""},{prop:"bootstrap",name:"bootstrap",exported:false,typ:BQ,tag:""},{prop:"lastRead",name:"lastRead",exported:false,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["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,K,BP,CC,CL,CM,CN,CO,F,G,I,L,AE,AH,AI,AJ,AK,AL,AO,AR,AW,BL,BN,BQ;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];K=$pkg.Reader=$newType(0,$kindStruct,"strings.Reader",true,"strings",true,function(s_,i_,prevRune_){this.$val=this;if(arguments.length===0){this.s="";this.i=new $Int64(0,0);this.prevRune=0;return;}this.s=s_;this.i=i_;this.prevRune=prevRune_;});BP=$pkg.asciiSet=$newType(32,$kindArray,"strings.asciiSet",true,"strings",false,null);CC=$sliceType($Uint8);CL=$sliceType($String);CM=$ptrType(BP);CN=$arrayType($Uint32,8);CO=$ptrType(K);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=$substring(e,(h+f.length>>0));}return g;};$pkg.Count=I;K.ptr.prototype.Len=function(){var $ptr,e,f,g,h,i,j;e=this;if((f=e.i,g=new $Int64(0,e.s.length),(f.$high>g.$high||(f.$high===g.$high&&f.$low>=g.$low)))){return 0;}return((h=(i=new $Int64(0,e.s.length),j=e.i,new $Int64(i.$high-j.$high,i.$low-j.$low)),h.$low+((h.$high>>31)*4294967296))>>0);};K.prototype.Len=function(){return this.$val.Len();};K.ptr.prototype.Size=function(){var $ptr,e;e=this;return new $Int64(0,e.s.length);};K.prototype.Size=function(){return this.$val.Size();};K.ptr.prototype.Read=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n;f=0;g=$ifaceNil;h=this;if((i=h.i,j=new $Int64(0,h.s.length),(i.$high>j.$high||(i.$high===j.$high&&i.$low>=j.$low)))){k=0;l=D.EOF;f=k;g=l;return[f,g];}h.prevRune=-1;f=$copyString(e,$substring(h.s,$flatten64(h.i)));h.i=(m=h.i,n=new $Int64(0,f),new $Int64(m.$high+n.$high,m.$low+n.$low));return[f,g];};K.prototype.Read=function(e){return this.$val.Read(e);};K.ptr.prototype.ReadAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n;g=0;h=$ifaceNil;i=this;if((f.$high<0||(f.$high===0&&f.$low<0))){j=0;k=C.New("strings.Reader.ReadAt: negative offset");g=j;h=k;return[g,h];}if((l=new $Int64(0,i.s.length),(f.$high>l.$high||(f.$high===l.$high&&f.$low>=l.$low)))){m=0;n=D.EOF;g=m;h=n;return[g,h];}g=$copyString(e,$substring(i.s,$flatten64(f)));if(g<e.$length){h=D.EOF;}return[g,h];};K.prototype.ReadAt=function(e,f){return this.$val.ReadAt(e,f);};K.ptr.prototype.ReadByte=function(){var $ptr,e,f,g,h,i,j;e=this;e.prevRune=-1;if((f=e.i,g=new $Int64(0,e.s.length),(f.$high>g.$high||(f.$high===g.$high&&f.$low>=g.$low)))){return[0,D.EOF];}h=e.s.charCodeAt($flatten64(e.i));e.i=(i=e.i,j=new $Int64(0,1),new $Int64(i.$high+j.$high,i.$low+j.$low));return[h,$ifaceNil];};K.prototype.ReadByte=function(){return this.$val.ReadByte();};K.ptr.prototype.UnreadByte=function(){var $ptr,e,f,g,h;e=this;e.prevRune=-1;if((f=e.i,(f.$high<0||(f.$high===0&&f.$low<=0)))){return C.New("strings.Reader.UnreadByte: at beginning of string");}e.i=(g=e.i,h=new $Int64(0,1),new $Int64(g.$high-h.$high,g.$low-h.$low));return $ifaceNil;};K.prototype.UnreadByte=function(){return this.$val.UnreadByte();};K.ptr.prototype.ReadRune=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;e=0;f=0;g=$ifaceNil;h=this;if((i=h.i,j=new $Int64(0,h.s.length),(i.$high>j.$high||(i.$high===j.$high&&i.$low>=j.$low)))){h.prevRune=-1;k=0;l=0;m=D.EOF;e=k;f=l;g=m;return[e,f,g];}h.prevRune=((n=h.i,n.$low+((n.$high>>31)*4294967296))>>0);o=h.s.charCodeAt($flatten64(h.i));if(o<128){h.i=(p=h.i,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));r=(o>>0);s=1;t=$ifaceNil;e=r;f=s;g=t;return[e,f,g];}u=A.DecodeRuneInString($substring(h.s,$flatten64(h.i)));e=u[0];f=u[1];h.i=(v=h.i,w=new $Int64(0,f),new $Int64(v.$high+w.$high,v.$low+w.$low));return[e,f,g];};K.prototype.ReadRune=function(){return this.$val.ReadRune();};K.ptr.prototype.UnreadRune=function(){var $ptr,e;e=this;if(e.prevRune<0){return C.New("strings.Reader.UnreadRune: previous operation was not ReadRune");}e.i=new $Int64(0,e.prevRune);e.prevRune=-1;return $ifaceNil;};K.prototype.UnreadRune=function(){return this.$val.UnreadRune();};K.ptr.prototype.Seek=function(e,f){var $ptr,e,f,g,h,i,j,k;g=this;g.prevRune=-1;h=new $Int64(0,0);i=f;if(i===(0)){h=e;}else if(i===(1)){h=(j=g.i,new $Int64(j.$high+e.$high,j.$low+e.$low));}else if(i===(2)){h=(k=new $Int64(0,g.s.length),new $Int64(k.$high+e.$high,k.$low+e.$low));}else{return[new $Int64(0,0),C.New("strings.Reader.Seek: invalid whence")];}if((h.$high<0||(h.$high===0&&h.$low<0))){return[new $Int64(0,0),C.New("strings.Reader.Seek: negative position")];}g.i=h;return[h,$ifaceNil];};K.prototype.Seek=function(e,f){return this.$val.Seek(e,f);};K.ptr.prototype.WriteTo=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=new $Int64(0,0);g=$ifaceNil;h=this;h.prevRune=-1;if((i=h.i,j=new $Int64(0,h.s.length),(i.$high>j.$high||(i.$high===j.$high&&i.$low>=j.$low)))){k=new $Int64(0,0);l=$ifaceNil;f=k;g=l;$s=-1;return[f,g];}m=$substring(h.s,$flatten64(h.i));o=D.WriteString(e,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];g=n[1];if(p>m.length){$panic(new $String("strings.Reader.WriteTo: invalid WriteString count"));}h.i=(q=h.i,r=new $Int64(0,p),new $Int64(q.$high+r.$high,q.$low+r.$low));f=new $Int64(0,p);if(!((p===m.length))&&$interfaceIsEqual(g,$ifaceNil)){g=D.ErrShortWrite;}$s=-1;return[f,g];}return;}if($f===undefined){$f={$blk:K.ptr.prototype.WriteTo};}$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;};K.prototype.WriteTo=function(e){return this.$val.WriteTo(e);};K.ptr.prototype.Reset=function(e){var $ptr,e,f;f=this;K.copy(f,new K.ptr(e,new $Int64(0,0),-1));};K.prototype.Reset=function(e){return this.$val.Reset(e);};L=function(e){var $ptr,e;return new K.ptr(e,new $Int64(0,0),-1);};$pkg.NewReader=L;AE=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m;g=A.RuneCountInString(e);if(f<0||f>g){f=g;}h=$makeSlice(CL,f);i=0;while(true){if(!(i<(f-1>>0))){break;}j=A.DecodeRuneInString(e);k=j[0];l=j[1];((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]=$substring(e,0,l));e=$substring(e,l);if(k===65533){((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]="\xEF\xBF\xBD");}i=i+(1)>>0;}if(f>0){(m=f-1>>0,((m<0||m>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+m]=e));}return h;};AH=function(e,f){var $ptr,e,f;return G(e,f)>=0;};$pkg.Contains=AH;AI=function(e,f){var $ptr,e,f;return AL(e,f)>=0;};$pkg.ContainsAny=AI;AJ=function(e,f){var $ptr,e,f;return AK(e,f)>=0;};$pkg.ContainsRune=AJ;AK=function(e,f){var $ptr,e,f,g,h,i,j,k;if(0<=f&&f<128){return F(e,(f<<24>>>24));}else if((f===65533)){g=e;h=0;while(true){if(!(h<g.length)){break;}i=$decodeRune(g,h);j=h;k=i[0];if(k===65533){return j;}h+=i[1];}return-1;}else if(!A.ValidRune(f)){return-1;}else{return G(e,$encodeRune(f));}};$pkg.IndexRune=AK;AL=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;if(f.length>0){if(e.length>8){g=BQ(f);h=$clone(g[0],BP);i=g[1];if(i){j=0;while(true){if(!(j<e.length)){break;}if(new CM(h).contains(e.charCodeAt(j))){return j;}j=j+(1)>>0;}return-1;}}k=e;l=0;while(true){if(!(l<k.length)){break;}m=$decodeRune(k,l);n=l;o=m[0];p=f;q=0;while(true){if(!(q<p.length)){break;}r=$decodeRune(p,q);s=r[0];if(o===s){return n;}q+=r[1];}l+=m[1];}}return-1;};$pkg.IndexAny=AL;AO=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m;if(h===0){return CL.nil;}if(f===""){return AE(e,h);}if(h<0){h=I(e,f)+1>>0;}i=f.charCodeAt(0);j=0;k=$makeSlice(CL,h);l=0;m=0;while(true){if(!((m+f.length>>0)<=e.length&&(l+1>>0)<h)){break;}if((e.charCodeAt(m)===i)&&((f.length===1)||$substring(e,m,(m+f.length>>0))===f)){((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]=$substring(e,j,(m+g>>0)));l=l+(1)>>0;j=m+f.length>>0;m=m+((f.length-1>>0))>>0;}m=m+(1)>>0;}((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]=$substring(e,j));return $subslice(k,0,(l+1>>0));};AR=function(e,f){var $ptr,e,f;return AO(e,f,0,-1);};$pkg.Split=AR;AW=function(e,f){var $ptr,e,f;return e.length>=f.length&&$substring(e,0,f.length)===f;};$pkg.HasPrefix=AW;BL=function(e,f){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=BN(e,f,true);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:BL};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.IndexFunc=BL;BN=function(e,f,g){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:h=0;case 1:if(!(h<e.length)){$s=2;continue;}i=1;j=(e.charCodeAt(h)>>0);if(j>=128){k=A.DecodeRuneInString($substring(e,h));j=k[0];i=k[1];}l=f(j);$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===g){$s=3;continue;}$s=4;continue;case 3:$s=-1;return h;case 4:h=h+(i)>>0;$s=1;continue;case 2:$s=-1;return-1;}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BQ=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o;f=CN.zero();g=false;h=0;while(true){if(!(h<e.length)){break;}i=e.charCodeAt(h);if(i>=128){j=$clone(f,BP);k=false;BP.copy(f,j);g=k;return[f,g];}l=i>>>5<<24>>>24;((l<0||l>=f.length)?($throwRuntimeError("index out of range"),undefined):f[l]=((((l<0||l>=f.length)?($throwRuntimeError("index out of range"),undefined):f[l])|(((m=(((i&31)>>>0)>>>0),m<32?(1<<m):0)>>>0)))>>>0));h=h+(1)>>0;}n=$clone(f,BP);o=true;BP.copy(f,n);g=o;return[f,g];};BP.prototype.contains=function(e){var $ptr,e,f,g,h;f=this.$val;return!((((((g=e>>>5<<24>>>24,(f.nilCheck,((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g])))&(((h=(((e&31)>>>0)>>>0),h<32?(1<<h):0)>>>0)))>>>0))===0));};$ptrType(BP).prototype.contains=function(e){return(new BP(this.$get())).contains(e);};CO.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([CC],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([CC,$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([D.Writer],[$Int64,$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([$String],[],false)}];CM.methods=[{prop:"contains",name:"contains",pkg:"strings",typ:$funcType([$Uint8],[$Bool],false)}];K.init("strings",[{prop:"s",name:"s",exported:false,typ:$String,tag:""},{prop:"i",name:"i",exported:false,typ:$Int64,tag:""},{prop:"prevRune",name:"prevRune",exported:false,typ:$Int,tag:""}]);BP.init($Uint32,8);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;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["path/filepath"]=(function(){var $pkg={},$init,A,B,C,D,E,F;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=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;}$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,X,Y,Z,Q;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"];X=$sliceType($emptyInterface);Y=$sliceType($Uint8);Z=$ptrType(Y);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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;}Q=new E.Pool.ptr(0,0,X.nil,(function(){var $ptr,a,b;a=$makeSlice(Y,8192);return(b||(b=new Z(function(){return a;},function($v){a=$subslice(new Y($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["gopkg.in/dedis/crypto.v0/util"]=(function(){var $pkg={},$init,A,B,C,D,J,G,E,I;A=$packages["errors"];B=$packages["io/ioutil"];C=$packages["os"];D=$packages["path/filepath"];J=$sliceType($Uint8);E=function(a,b){var $ptr,a,b,c,d,e;c=a.$length;d=c+b>>0;if(d>a.$capacity){e=$makeSlice(J,d,($imul(((d+1>>0)),2)));$copySlice(e,a);a=e;}return[$subslice(a,0,d),$subslice(a,c,d)];};$pkg.Grow=E;I=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;if(a===J.nil){a=$makeSlice(J,b.$length);}else if(!((b.$length===a.$length))){$panic(new $String("Reverse requires equal-length slices"));}c=a.$length;d=0;e=c-1>>0;f=d;g=e;while(true){if(!(f<(h=((c+1>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")))){break;}i=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);j=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]=i);((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=j);f=f+(1)>>0;g=g-(1)>>0;}return a;};$pkg.Reverse=I;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=A.New("File was concurrently modified");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["hash"]=(function(){var $pkg={},$init,A,B,E;A=$packages["io"];B=$pkg.Hash=$newType(8,$kindInterface,"hash.Hash",true,"hash",true,null);E=$sliceType($Uint8);B.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:"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["gopkg.in/dedis/crypto.v0/abstract"]=(function(){var $pkg={},$init,D,E,F,A,G,B,C,K,H,I,J,L,N,O,V,W,Y,AA,AE,AF,AH,AL,AM,AN,AO,AP,AQ,AR,AT,AU,R,AJ,S,AK,T,U,Z,a,b,AB,AC,AD;D=$packages["crypto/cipher"];E=$packages["encoding"];F=$packages["encoding/binary"];A=$packages["errors"];G=$packages["fmt"];B=$packages["gopkg.in/dedis/crypto.v0/subtle"];C=$packages["gopkg.in/dedis/crypto.v0/util"];K=$packages["hash"];H=$packages["io"];I=$packages["reflect"];J=$packages["strings"];L=$pkg.CipherState=$newType(8,$kindInterface,"abstract.CipherState",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);N=$pkg.Cipher=$newType(0,$kindStruct,"abstract.Cipher",true,"gopkg.in/dedis/crypto.v0/abstract",true,function(CipherState_){this.$val=this;if(arguments.length===0){this.CipherState=$ifaceNil;return;}this.CipherState=CipherState_;});O=$pkg.Marshaling=$newType(8,$kindInterface,"abstract.Marshaling",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);V=$pkg.Constructor=$newType(8,$kindInterface,"abstract.Constructor",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);W=$pkg.BinaryEncoding=$newType(0,$kindStruct,"abstract.BinaryEncoding",true,"gopkg.in/dedis/crypto.v0/abstract",true,function(Constructor_,hidden_){this.$val=this;if(arguments.length===0){this.Constructor=$ifaceNil;this.hidden=new AR.ptr();return;}this.Constructor=Constructor_;this.hidden=hidden_;});Y=$pkg.decoder=$newType(0,$kindStruct,"abstract.decoder",true,"gopkg.in/dedis/crypto.v0/abstract",false,function(c_,r_){this.$val=this;if(arguments.length===0){this.c=$ifaceNil;this.r=$ifaceNil;return;}this.c=c_;this.r=r_;});AA=$pkg.encoder=$newType(0,$kindStruct,"abstract.encoder",true,"gopkg.in/dedis/crypto.v0/abstract",false,function(w_){this.$val=this;if(arguments.length===0){this.w=$ifaceNil;return;}this.w=w_;});AE=$pkg.Scalar=$newType(8,$kindInterface,"abstract.Scalar",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);AF=$pkg.Point=$newType(8,$kindInterface,"abstract.Point",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);AH=$pkg.Suite=$newType(8,$kindInterface,"abstract.Suite",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);AL=$sliceType($Uint8);AM=$ptrType(AE);AN=$ptrType(AF);AO=$ptrType($Uint8);AP=$sliceType($emptyInterface);AQ=$ptrType($Int32);AR=$structType("",[]);AT=$ptrType(Y);AU=$ptrType(AA);N.ptr.prototype.Message=function(c,d,e){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:f=this;$r=f.CipherState.Message(c,d,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Message};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Message=function(c,d,e){return this.$val.Message(c,d,e);};N.ptr.prototype.Partial=function(c,d,e){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:f=this;$r=f.CipherState.Partial(c,d,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Partial};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Partial=function(c,d,e){return this.$val.Partial(c,d,e);};N.ptr.prototype.Read=function(c){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:d=0;e=$ifaceNil;f=this;$r=f.CipherState.Partial(c,AL.nil,AL.nil);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=c.$length;h=$ifaceNil;d=g;e=h;$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Read};}$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;};N.prototype.Read=function(c){return this.$val.Read(c);};N.ptr.prototype.Write=function(c){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:d=0;e=$ifaceNil;f=this;$r=f.CipherState.Partial(AL.nil,AL.nil,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=c.$length;h=$ifaceNil;d=g;e=h;$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Write};}$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;};N.prototype.Write=function(c){return this.$val.Write(c);};N.ptr.prototype.EndMessage=function(){var $ptr,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;$r=c.CipherState.Message(AL.nil,AL.nil,AL.nil);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.EndMessage};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.EndMessage=function(){return this.$val.EndMessage();};N.ptr.prototype.XORKeyStream=function(c,d){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;$r=e.CipherState.Partial($subslice(c,0,d.$length),d,AL.nil);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.XORKeyStream};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.XORKeyStream=function(c,d){return this.$val.XORKeyStream(c,d);};N.ptr.prototype.Sum=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;$r=$clone(d,N).EndMessage();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=d.CipherState.HashSize();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=C.Grow(c,f);c=g[0];h=g[1];i=$clone(d,N).Message(h,AL.nil,AL.nil);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Sum};}$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;};N.prototype.Sum=function(c){return this.$val.Sum(c);};N.ptr.prototype.Seal=function(c,d){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:e=this;f=d.$length;g=e.CipherState.KeySize();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=C.Grow(c,f+h>>0);c=i[0];j=i[1];k=$subslice(j,0,f);l=$subslice(j,f);m=$clone(e,N).Message(k,d,k);$s=2;case 2:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;n=$clone(e,N).Message(l,AL.nil,AL.nil);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Seal};}$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;};N.prototype.Seal=function(c,d){return this.$val.Seal(c,d);};N.ptr.prototype.Open=function(c,d){var $ptr,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;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=e.CipherState.KeySize();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=d.$length-g>>0;if(h<0){$s=-1;return[AL.nil,A.New("sealed ciphertext too short")];}i=$subslice(d,0,h);j=$subslice(d,h);k=C.Grow(c,h);c=k[0];l=k[1];if(!($indexPtr(l.$array,l.$offset+0,AO)===$indexPtr(i.$array,i.$offset+0,AO))){$s=2;continue;}$s=3;continue;case 2:m=$clone(e,N).Message(l,i,i);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;$s=4;continue;case 3:n=$makeSlice(AL,h);o=$clone(e,N).Message(n,i,i);$s=6;case 6:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$copySlice(l,n);case 4:p=$clone(e,N).Message(j,j,AL.nil);$s=7;case 7:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(B.ConstantTimeAllEq(j,0)===0){$s=-1;return[AL.nil,A.New("ciphertext authentication failed")];}$s=-1;return[c,$ifaceNil];}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Open};}$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.$s=$s;$f.$r=$r;return $f;};N.prototype.Open=function(c,d){return this.$val.Open(c,d);};N.ptr.prototype.Clone=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.CipherState.Clone();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return new N.ptr(d);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Clone};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Clone=function(){return this.$val.Clone();};W.ptr.prototype.Read=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;f=new Y.ptr(e.Constructor,c);g=0;case 1:if(!(g<d.$length)){$s=2;continue;}h=I.ValueOf(((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=f.value($clone(h,I.Value),0);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}g=g+(1)>>0;$s=1;continue;case 2:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Read};}$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;};W.prototype.Read=function(c,d){return this.$val.Read(c,d);};Y.ptr.prototype.value=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,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,$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;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$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=[e];f=[f];g=this;h=$clone(c,I.Value).Interface();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=$assertType(i,O,true);k=j[0];l=j[1];if(l){$s=2;continue;}$s=3;continue;case 2:n=k.UnmarshalFrom(g.r);$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[1];$s=-1;return o;case 3:p=$ifaceNil;q=$clone(c,I.Value).Kind();if(q===(20)){$s=6;continue;}if(q===(22)){$s=7;continue;}if(q===(25)){$s=8;continue;}if(q===(23)){$s=9;continue;}if(q===(17)){$s=10;continue;}if(q===(2)){$s=11;continue;}if(q===(1)){$s=12;continue;}$s=13;continue;case 6:if($clone(c,I.Value).IsNil()){$s=15;continue;}$s=16;continue;case 15:r=$clone(c,I.Value).Type();s=g.c.New(r);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;if($interfaceIsEqual(t,$ifaceNil)){$s=18;continue;}$s=19;continue;case 18:u=r.String();$s=20;case 20:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$panic(new $String("unsupported null pointer type: "+u));case 19:v=I.ValueOf(t);$s=21;case 21:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=$clone(c,I.Value).Set($clone(v,I.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:if($clone(c,I.Value).IsNil()){$s=23;continue;}$s=24;continue;case 23:w=$clone(c,I.Value).Type().Elem();$s=25;case 25:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=I.New(w);$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(c,I.Value).Set($clone(x,I.Value));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:y=$clone(c,I.Value).Elem();$s=28;case 28:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=g.value($clone(y,I.Value),d+1>>0);$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$s=-1;return z;case 7:if($clone(c,I.Value).IsNil()){$s=30;continue;}$s=31;continue;case 30:aa=$clone(c,I.Value).Type().Elem();$s=32;case 32:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}ab=I.New(aa);$s=33;case 33:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}$r=$clone(c,I.Value).Set($clone(ab,I.Value));$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 31:ac=$clone(c,I.Value).Elem();$s=35;case 35:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=g.value($clone(ac,I.Value),d+1>>0);$s=36;case 36:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$s=-1;return ad;case 8:ae=$clone(c,I.Value).NumField();af=0;case 37:if(!(af<ae)){$s=38;continue;}ag=$clone(c,I.Value).Field(af);$s=39;case 39:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.value($clone(ag,I.Value),d+1>>0);$s=40;case 40:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}p=ah;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return p;}af=af+(1)>>0;$s=37;continue;case 38:$s=14;continue;case 9:if($clone(c,I.Value).IsNil()){$panic(new $String("slices must be initialized to correct length before decoding"));}ai=$clone(c,I.Value).Len();aj=0;case 41:if(!(aj<ai)){$s=42;continue;}ak=$clone(c,I.Value).Index(aj);$s=43;case 43:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=g.value($clone(ak,I.Value),d+1>>0);$s=44;case 44:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}p=al;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return p;}aj=aj+(1)>>0;$s=41;continue;case 42:$s=14;continue;case 10:ai=$clone(c,I.Value).Len();aj=0;case 45:if(!(aj<ai)){$s=46;continue;}am=$clone(c,I.Value).Index(aj);$s=47;case 47:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=g.value($clone(am,I.Value),d+1>>0);$s=48;case 48:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}p=an;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return p;}aj=aj+(1)>>0;$s=45;continue;case 46:$s=14;continue;case 11:f[0]=0;ap=F.Read(g.r,(ao=F.BigEndian,new ao.constructor.elem(ao)),(f.$ptr||(f.$ptr=new AQ(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))));$s=49;case 49:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;if(!($interfaceIsEqual(aq,$ifaceNil))){$s=50;continue;}$s=51;continue;case 50:ar=G.Sprintf("Error converting int to int32 ( %v )",new AP([aq]));$s=52;case 52:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=A.New(ar);$s=53;case 53:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 51:$clone(c,I.Value).SetInt(new $Int64(0,f[0]));$s=-1;return aq;case 12:e[0]=0;au=F.Read(g.r,(at=F.BigEndian,new at.constructor.elem(at)),(e.$ptr||(e.$ptr=new AO(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))));$s=54;case 54:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$clone(c,I.Value).SetBool(!((e[0]===0)));$s=-1;return av;case 13:aw=g.r;ay=(ax=F.BigEndian,new ax.constructor.elem(ax));az=$clone($clone(c,I.Value).Addr(),I.Value).Interface();$s=55;case 55:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;bb=F.Read(aw,ay,ba);$s=56;case 56:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;case 14:case 5:$s=-1;return p;}return;}if($f===undefined){$f={$blk:Y.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Y.prototype.value=function(c,d){return this.$val.value(c,d);};W.ptr.prototype.Write=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=new AA.ptr(c);g=0;case 1:if(!(g<d.$length)){$s=2;continue;}h=f.value(((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]),0);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return i;}g=g+(1)>>0;$s=1;continue;case 2:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Write};}$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;};W.prototype.Write=function(c,d){return this.$val.Write(c,d);};AA.ptr.prototype.value=function(c,d){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:e=this;f=$assertType(c,O,true);g=f[0];h=f[1];if(h){$s=1;continue;}$s=2;continue;case 1:j=g.MarshalTo(e.w);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];$s=-1;return k;case 2:l=I.ValueOf(c);$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=$clone(m,I.Value).Kind();if(n===(20)){$s=6;continue;}if(n===(22)){$s=7;continue;}if(n===(25)){$s=8;continue;}if((n===(23))||(n===(17))){$s=9;continue;}if(n===(2)){$s=10;continue;}if(n===(1)){$s=11;continue;}$s=12;continue;case 6:$s=13;continue;case 7:o=$clone(m,I.Value).Elem();$s=14;case 14:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=$clone(o,I.Value).Interface();$s=15;case 15:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=e.value(p,d+1>>0);$s=16;case 16:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return q;case 8:r=$clone(m,I.Value).NumField();s=0;case 17:if(!(s<r)){$s=18;continue;}t=$clone(m,I.Value).Field(s);$s=19;case 19:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=$clone(t,I.Value).Interface();$s=20;case 20:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=e.value(u,d+1>>0);$s=21;case 21:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(!($interfaceIsEqual(w,$ifaceNil))){$s=-1;return w;}s=s+(1)>>0;$s=17;continue;case 18:$s=13;continue;case 9:x=$clone(m,I.Value).Len();y=0;case 22:if(!(y<x)){$s=23;continue;}z=$clone(m,I.Value).Index(y);$s=24;case 24:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=$clone(z,I.Value).Interface();$s=25;case 25:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}ab=e.value(aa,d+1>>0);$s=26;case 26:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;if(!($interfaceIsEqual(ac,$ifaceNil))){$s=-1;return ac;}y=y+(1)>>0;$s=22;continue;case 23:$s=13;continue;case 10:ad=($assertType(c,$Int)>>0);if(!(((ad>>0)===$assertType(c,$Int)))){$panic(new $String("Int does not fit into int32"));}af=F.Write(e.w,(ae=F.BigEndian,new ae.constructor.elem(ae)),new $Int32(ad));$s=27;case 27:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}$s=-1;return af;case 11:ag=0;if($clone(m,I.Value).Bool()){ag=1;}ai=F.Write(e.w,(ah=F.BigEndian,new ah.constructor.elem(ah)),new $Uint8(ag));$s=28;case 28:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=-1;return ai;case 12:ak=F.Write(e.w,(aj=F.BigEndian,new aj.constructor.elem(aj)),c);$s=29;case 29:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=-1;return ak;case 13:case 5:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.value=function(c,d){return this.$val.value(c,d);};AB=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=d;if($interfaceIsEqual(e,(T))){$s=2;continue;}if($interfaceIsEqual(e,(U))){$s=3;continue;}$s=4;continue;case 2:f=c.Scalar();$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;case 3:g=c.Point();$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;case 4:case 1:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AB};}$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.SuiteNew=AB;AC=function(c,d,e){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:f=new W.ptr(c,new AR.ptr()).Read(d,new AP([e]));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SuiteRead=AC;AD=function(c,d,e){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:f=new W.ptr(c,new AR.ptr()).Write(d,new AP([e]));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SuiteWrite=AD;N.methods=[{prop:"Message",name:"Message",pkg:"",typ:$funcType([AL,AL,AL],[N],false)},{prop:"Partial",name:"Partial",pkg:"",typ:$funcType([AL,AL,AL],[N],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AL],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([AL],[$Int,$error],false)},{prop:"EndMessage",name:"EndMessage",pkg:"",typ:$funcType([],[],false)},{prop:"XORKeyStream",name:"XORKeyStream",pkg:"",typ:$funcType([AL,AL],[],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([AL],[AL],false)},{prop:"Seal",name:"Seal",pkg:"",typ:$funcType([AL,AL],[AL],false)},{prop:"Open",name:"Open",pkg:"",typ:$funcType([AL,AL],[AL,$error],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[N],false)}];W.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([H.Reader,AP],[$error],true)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([H.Writer,AP],[$error],true)}];AT.methods=[{prop:"value",name:"value",pkg:"gopkg.in/dedis/crypto.v0/abstract",typ:$funcType([I.Value,$Int],[$error],false)}];AU.methods=[{prop:"value",name:"value",pkg:"gopkg.in/dedis/crypto.v0/abstract",typ:$funcType([$emptyInterface,$Int],[$error],false)}];L.init([{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[L],false)},{prop:"HashSize",name:"HashSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"KeySize",name:"KeySize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Message",name:"Message",pkg:"",typ:$funcType([AL,AL,AL],[],false)},{prop:"Partial",name:"Partial",pkg:"",typ:$funcType([AL,AL,AL],[],false)}]);N.init("",[{prop:"CipherState",name:"",exported:true,typ:L,tag:""}]);O.init([{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AL,$error],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([H.Writer],[$Int,$error],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AL],[$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([H.Reader],[$Int,$error],false)}]);V.init([{prop:"New",name:"New",pkg:"",typ:$funcType([I.Type],[$emptyInterface],false)}]);W.init("gopkg.in/dedis/crypto.v0/abstract",[{prop:"Constructor",name:"",exported:true,typ:V,tag:""},{prop:"hidden",name:"hidden",exported:false,typ:AR,tag:""}]);Y.init("gopkg.in/dedis/crypto.v0/abstract",[{prop:"c",name:"c",exported:false,typ:V,tag:""},{prop:"r",name:"r",exported:false,typ:H.Reader,tag:""}]);AA.init("gopkg.in/dedis/crypto.v0/abstract",[{prop:"w",name:"w",exported:false,typ:H.Writer,tag:""}]);AE.init([{prop:"Add",name:"Add",pkg:"",typ:$funcType([AE,AE],[AE],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[AL],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[AE],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([AE,AE],[AE],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([AE],[$Bool],false)},{prop:"Inv",name:"Inv",pkg:"",typ:$funcType([AE],[AE],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AL,$error],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([H.Writer],[$Int,$error],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([AE,AE],[AE],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([AE],[AE],false)},{prop:"One",name:"One",pkg:"",typ:$funcType([],[AE],false)},{prop:"Pick",name:"Pick",pkg:"",typ:$funcType([D.Stream],[AE],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([AE],[AE],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([AL],[AE],false)},{prop:"SetInt64",name:"SetInt64",pkg:"",typ:$funcType([$Int64],[AE],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([AE,AE],[AE],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AL],[$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([H.Reader],[$Int,$error],false)},{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[AE],false)}]);AF.init([{prop:"Add",name:"Add",pkg:"",typ:$funcType([AF,AF],[AF],false)},{prop:"Base",name:"Base",pkg:"",typ:$funcType([],[AF],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[AF],false)},{prop:"Data",name:"Data",pkg:"",typ:$funcType([],[AL,$error],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([AF],[$Bool],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AL,$error],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([H.Writer],[$Int,$error],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([AF,AE],[AF],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([AF],[AF],false)},{prop:"Null",name:"Null",pkg:"",typ:$funcType([],[AF],false)},{prop:"Pick",name:"Pick",pkg:"",typ:$funcType([AL,D.Stream],[AF,AL],false)},{prop:"PickLen",name:"PickLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([AF],[AF],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([AF,AF],[AF],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AL],[$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([H.Reader],[$Int,$error],false)}]);AH.init([{prop:"Cipher",name:"Cipher",pkg:"",typ:$funcType([AL,AP],[N],true)},{prop:"Hash",name:"Hash",pkg:"",typ:$funcType([],[K.Hash],false)},{prop:"New",name:"New",pkg:"",typ:$funcType([I.Type],[$emptyInterface],false)},{prop:"NewKey",name:"NewKey",pkg:"",typ:$funcType([D.Stream],[AE],false)},{prop:"Point",name:"Point",pkg:"",typ:$funcType([],[AF],false)},{prop:"PointLen",name:"PointLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"PrimeOrder",name:"PrimeOrder",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([H.Reader,AP],[$error],true)},{prop:"Scalar",name:"Scalar",pkg:"",typ:$funcType([],[AE],false)},{prop:"ScalarLen",name:"ScalarLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([H.Writer,AP],[$error],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=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=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=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=C.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$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=I.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=$ifaceNil;S=$ifaceNil;$pkg.NoKey=new AL([]);a=I.TypeOf((AJ||(AJ=new AM(function(){return R;},function($v){R=$v;})))).Elem();$s=12;case 12:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}T=a;b=I.TypeOf((AK||(AK=new AN(function(){return S;},function($v){S=$v;})))).Elem();$s=13;case 13:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}U=b;Z=I.TypeOf(new $Int32(0));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/hmac"]=(function(){var $pkg={},$init,A,B;A=$packages["crypto/subtle"];B=$packages["hash"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["gopkg.in/dedis/crypto.v0/ints"]=(function(){var $pkg={},$init,A,B;A=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e>a){a=e;}d++;}return a;};$pkg.Max=A;B=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e<a){a=e;}d++;}return a;};$pkg.Min=B;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["math/big"]=(function(){var $pkg={},$init,F,E,I,A,J,C,B,H,G,D,X,BO,BW,BX,CU,DI,DJ,DK,DM,DO,DP,DR,DS,DT,DU,DW,BP,BY,BZ,CE,CM,CN,CO,CT,CV,K,L,M,N,O,P,Q,R,S,T,U,V,Y,Z,AA,AB,AC,AE,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,BQ,BS,BT,BU,BV,CB,CC,CD,CF,CG,CH,CI,CJ,CK,CL,CP,CQ,CR,CS,CW;F=$packages["bytes"];E=$packages["encoding/binary"];I=$packages["errors"];A=$packages["fmt"];J=$packages["github.com/gopherjs/gopherjs/nosync"];C=$packages["io"];B=$packages["math"];H=$packages["math/rand"];G=$packages["strconv"];D=$packages["strings"];X=$pkg.Word=$newType(4,$kindUintptr,"big.Word",true,"math/big",true,null);BO=$pkg.Int=$newType(0,$kindStruct,"big.Int",true,"math/big",true,function(neg_,abs_){this.$val=this;if(arguments.length===0){this.neg=false;this.abs=BX.nil;return;}this.neg=neg_;this.abs=abs_;});BW=$pkg.byteReader=$newType(0,$kindStruct,"big.byteReader",true,"math/big",false,function(ScanState_){this.$val=this;if(arguments.length===0){this.ScanState=$ifaceNil;return;}this.ScanState=ScanState_;});BX=$pkg.nat=$newType(12,$kindSlice,"big.nat",true,"math/big",false,null);CU=$pkg.divisor=$newType(0,$kindStruct,"big.divisor",true,"math/big",false,function(bbb_,nbits_,ndigits_){this.$val=this;if(arguments.length===0){this.bbb=BX.nil;this.nbits=0;this.ndigits=0;return;}this.bbb=bbb_;this.nbits=nbits_;this.ndigits=ndigits_;});DI=$sliceType($emptyInterface);DJ=$arrayType(CU,64);DK=$structType("math/big",[{prop:"Mutex",name:"",exported:true,typ:J.Mutex,tag:""},{prop:"table",name:"table",exported:false,typ:DJ,tag:""}]);DM=$sliceType($Uint8);DO=$sliceType(X);DP=$ptrType(BO);DR=$ptrType(X);DS=$ptrType(BX);DT=$arrayType(BX,16);DU=$sliceType(CU);DW=$ptrType(H.Rand);K=function(m,n){var $ptr,m,n,o,p,q;o=0;p=0;q=AA(m,n);o=q[0];p=q[1];return[o,p];};L=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=AG(m,n,o);p=r[0];q=r[1];return[p,q];};M=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AH(m,n,o);return p;};N=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AI(m,n,o);return p;};O=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AJ(m,n,o);return p;};P=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AK(m,n,o);return p;};Q=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AL(m,n,o);return p;};R=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AM(m,n,o);return p;};S=function(m,n,o,p){var $ptr,m,n,o,p,q;q=0;q=AN(m,n,o,p);return q;};T=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AO(m,n,o);return p;};U=function(m,n,o,p){var $ptr,m,n,o,p,q;q=0;q=AP(m,n,o,p);return q;};V=function(m){var $ptr,m,n;n=0;n=AC(m);return n;};Y=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=n+o>>>0;q=m+r>>>0;if(q<m||r<n){p=1;}return[p,q];};Z=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=n+o>>>0;q=m-r>>>0;if(q>m||r<n){p=1;}return[p,q];};AA=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x;o=0;p=0;q=(m&65535)>>>0;r=m>>>16>>>0;s=(n&65535)>>>0;t=n>>>16>>>0;u=$imul(q,s)>>>0;v=($imul(r,s)>>>0)+(u>>>16>>>0)>>>0;w=(v&65535)>>>0;x=v>>>16>>>0;w=w+(($imul(q,t)>>>0))>>>0;o=(($imul(r,t)>>>0)+x>>>0)+(w>>>16>>>0)>>>0;p=$imul(m,n)>>>0;return[o,p];};AB=function(m,n,o){var $ptr,m,n,o,p,q,r,s;p=0;q=0;r=AA(m,n);p=r[0];s=r[1];q=s+o>>>0;if(q<s){p=p+(1)>>>0;}return[p,q];};AC=function(m){var $ptr,m,n,o,p,q,r;n=0;while(true){if(!(m>=32768)){break;}n=n+(16)>>0;m=(o=(16),o<32?(m>>>o):0)>>>0;}if(m>=128){m=(p=(8),p<32?(m>>>p):0)>>>0;n=n+(8)>>0;}if(m>=8){m=(q=(4),q<32?(m>>>q):0)>>>0;n=n+(4)>>0;}if(m>=2){m=(r=(2),r<32?(m>>>r):0)>>>0;n=n+(2)>>0;}if(m>=1){n=n+(1)>>0;}return n;};AE=function(m){var $ptr,m;return((32-V(m)>>0)>>>0);};AG=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=0;if(m>=o){r=4294967295;s=4294967295;p=r;q=s;return[p,q];}t=AE(o);o=(u=(t),u<32?(o<<u):0)>>>0;v=o>>>16>>>0;w=(o&65535)>>>0;z=(((x=t,x<32?(m<<x):0)>>>0)|((y=((32-t>>>0)),y<32?(n>>>y):0)>>>0))>>>0;ab=(aa=t,aa<32?(n<<aa):0)>>>0;ac=ab>>>16>>>0;ad=(ab&65535)>>>0;af=(ae=z/v,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"));ag=z-($imul(af,v)>>>0)>>>0;while(true){if(!(af>=65536||($imul(af,w)>>>0)>(($imul(65536,ag)>>>0)+ac>>>0))){break;}af=af-(1)>>>0;ag=ag+(v)>>>0;if(ag>=65536){break;}}ah=(($imul(z,65536)>>>0)+ac>>>0)-($imul(af,o)>>>0)>>>0;aj=(ai=ah/v,(ai===ai&&ai!==1/0&&ai!==-1/0)?ai>>>0:$throwRuntimeError("integer divide by zero"));ag=ah-($imul(aj,v)>>>0)>>>0;while(true){if(!(aj>=65536||($imul(aj,w)>>>0)>(($imul(65536,ag)>>>0)+ad>>>0))){break;}aj=aj-(1)>>>0;ag=ag+(v)>>>0;if(ag>=65536){break;}}ak=($imul(af,65536)>>>0)+aj>>>0;al=(am=t,am<32?((((($imul(ah,65536)>>>0)+ad>>>0)-($imul(aj,o)>>>0)>>>0))>>>am):0)>>>0;p=ak;q=al;return[p,q];};AH=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;if(false){q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Y(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),((s<0||s>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+s]),p);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=((w<0||w>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+w]);z=(x+y>>>0)+p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=z);p=(((((x&y)>>>0)|(((((x|y)>>>0))&~z)>>>0))>>>0))>>>31>>>0;v++;}return p;};AI=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;if(false){q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Z(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),((s<0||s>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+s]),p);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=((w<0||w>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+w]);z=(x-y>>>0)-p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=z);p=(((((y&~x)>>>0)|(((((y|(~x>>>0))>>>0))&z)>>>0))>>>0))>>>31>>>0;v++;}return p;};AJ=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y;p=0;if(false){p=o;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Y(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),p,0);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}p=o;u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=x+p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=y);p=((x&~y)>>>0)>>>31>>>0;v++;}return p;};AK=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y;p=0;if(false){p=o;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Z(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),p,0);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}p=o;u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=x-p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=y);p=(((y&~x)>>>0))>>>31>>>0;v++;}return p;};AL=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=m.$length;if(q>0){r=32-o>>>0;t=(s=q-1>>0,((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]));p=(u=r,u<32?(t>>>u):0)>>>0;v=q-1>>0;while(true){if(!(v>0)){break;}w=t;t=(x=v-1>>0,((x<0||x>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+x]));((v<0||v>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+v]=((((y=o,y<32?(w<<y):0)>>>0)|((z=r,z<32?(t>>>z):0)>>>0))>>>0));v=v-(1)>>0;}(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]=((aa=o,aa<32?(t<<aa):0)>>>0));}return p;};AM=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=m.$length;if(q>0){r=32-o>>>0;s=(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]);p=(t=r,t<32?(s<<t):0)>>>0;u=0;while(true){if(!(u<(q-1>>0))){break;}v=s;s=(w=u+1>>0,((w<0||w>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+w]));((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]=((((x=o,x<32?(v>>>x):0)>>>0)|((y=r,y<32?(s<<y):0)>>>0))>>>0));u=u+(1)>>0;}(aa=q-1>>0,((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=((z=o,z<32?(s>>>z):0)>>>0)));}return p;};AN=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s,t,u;q=0;q=p;r=m;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=AB(((t<0||t>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+t]),o,q);q=u[0];((t<0||t>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+t]=u[1]);s++;}return q;};AO=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=AB(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),o,((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]));u=t[0];v=t[1];w=Y(v,p,0);p=w[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=w[1]);p=p+(u)>>>0;r++;}return p;};AP=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s;q=0;q=n;r=m.$length-1>>0;while(true){if(!(r>=0)){break;}s=AG(q,((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]),p);((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=s[0]);q=s[1];r=r-(1)>>0;}return q;};BO.ptr.prototype.Sign=function(){var $ptr,m;m=this;if(m.abs.$length===0){return 0;}if(m.neg){return-1;}return 1;};BO.prototype.Sign=function(){return this.$val.Sign();};BO.ptr.prototype.SetInt64=function(m){var $ptr,m,n,o;n=this;o=false;if((m.$high<0||(m.$high===0&&m.$low<0))){o=true;m=new $Int64(-m.$high,-m.$low);}n.abs=n.abs.setUint64(new $Uint64(m.$high,m.$low));n.neg=o;return n;};BO.prototype.SetInt64=function(m){return this.$val.SetInt64(m);};BO.ptr.prototype.SetUint64=function(m){var $ptr,m,n;n=this;n.abs=n.abs.setUint64(m);n.neg=false;return n;};BO.prototype.SetUint64=function(m){return this.$val.SetUint64(m);};BQ=function(m){var $ptr,m;return new BO.ptr(false,BX.nil).SetInt64(m);};$pkg.NewInt=BQ;BO.ptr.prototype.Set=function(m){var $ptr,m,n;n=this;if(!(n===m)){n.abs=n.abs.set(m.abs);n.neg=m.neg;}return n;};BO.prototype.Set=function(m){return this.$val.Set(m);};BO.ptr.prototype.Bits=function(){var $ptr,m,n;m=this;return(n=m.abs,$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.SetBits=function(m){var $ptr,m,n;n=this;n.abs=$subslice(new BX(m.$array),m.$offset,m.$offset+m.$length).norm();n.neg=false;return n;};BO.prototype.SetBits=function(m){return this.$val.SetBits(m);};BO.ptr.prototype.Abs=function(m){var $ptr,m,n;n=this;n.Set(m);n.neg=false;return n;};BO.prototype.Abs=function(m){return this.$val.Abs(m);};BO.ptr.prototype.Neg=function(m){var $ptr,m,n;n=this;n.Set(m);n.neg=n.abs.$length>0&&!n.neg;return n;};BO.prototype.Neg=function(m){return this.$val.Neg(m);};BO.ptr.prototype.Add=function(m,n){var $ptr,m,n,o,p;o=this;p=m.neg;if(m.neg===n.neg){o.abs=o.abs.add(m.abs,n.abs);}else{if(m.abs.cmp(n.abs)>=0){o.abs=o.abs.sub(m.abs,n.abs);}else{p=!p;o.abs=o.abs.sub(n.abs,m.abs);}}o.neg=o.abs.$length>0&&p;return o;};BO.prototype.Add=function(m,n){return this.$val.Add(m,n);};BO.ptr.prototype.Sub=function(m,n){var $ptr,m,n,o,p;o=this;p=m.neg;if(!(m.neg===n.neg)){o.abs=o.abs.add(m.abs,n.abs);}else{if(m.abs.cmp(n.abs)>=0){o.abs=o.abs.sub(m.abs,n.abs);}else{p=!p;o.abs=o.abs.sub(n.abs,m.abs);}}o.neg=o.abs.$length>0&&p;return o;};BO.prototype.Sub=function(m,n){return this.$val.Sub(m,n);};BO.ptr.prototype.Mul=function(m,n){var $ptr,m,n,o;o=this;o.abs=o.abs.mul(m.abs,n.abs);o.neg=o.abs.$length>0&&!(m.neg===n.neg);return o;};BO.prototype.Mul=function(m,n){return this.$val.Mul(m,n);};BO.ptr.prototype.MulRange=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if((m.$high>n.$high||(m.$high===n.$high&&m.$low>n.$low))){return o.SetInt64(new $Int64(0,1));}else if((m.$high<0||(m.$high===0&&m.$low<=0))&&(n.$high>0||(n.$high===0&&n.$low>=0))){return o.SetInt64(new $Int64(0,0));}p=false;if((m.$high<0||(m.$high===0&&m.$low<0))){p=(q=(r=new $Int64(n.$high-m.$high,n.$low-m.$low),new $Int64(r.$high&0,(r.$low&1)>>>0)),(q.$high===0&&q.$low===0));s=new $Int64(-n.$high,-n.$low);t=new $Int64(-m.$high,-m.$low);m=s;n=t;}o.abs=o.abs.mulRange(new $Uint64(m.$high,m.$low),new $Uint64(n.$high,n.$low));o.neg=p;return o;};BO.prototype.MulRange=function(m,n){return this.$val.MulRange(m,n);};BO.ptr.prototype.Binomial=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=this;if((r=$div64(m,new $Int64(0,2),false),(r.$high<n.$high||(r.$high===n.$high&&r.$low<n.$low)))&&(n.$high<m.$high||(n.$high===m.$high&&n.$low<=m.$low))){n=new $Int64(m.$high-n.$high,m.$low-n.$low);}s=new BO.ptr(false,BX.nil);t=new BO.ptr(false,BX.nil);o[0]=$clone(s,BO);p[0]=$clone(t,BO);o[0].MulRange((u=new $Int64(m.$high-n.$high,m.$low-n.$low),new $Int64(u.$high+0,u.$low+1)),m);p[0].MulRange(new $Int64(0,1),n);v=q.Quo(o[0],p[0]);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Binomial};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Binomial=function(m,n){return this.$val.Binomial(m,n);};BO.ptr.prototype.Quo=function(m,n){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=o.abs.div(BX.nil,m.abs,n.abs);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;o.abs=p[0];o.neg=o.abs.$length>0&&!(m.neg===n.neg);$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Quo};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Quo=function(m,n){return this.$val.Quo(m,n);};BO.ptr.prototype.Rem=function(m,n){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=BX.nil.div(o.abs,m.abs,n.abs);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;o.abs=p[1];o.neg=o.abs.$length>0&&m.neg;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Rem};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Rem=function(m,n){return this.$val.Rem(m,n);};BO.ptr.prototype.QuoRem=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;r=p.abs.div(o.abs,m.abs,n.abs);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p.abs=q[0];o.abs=q[1];s=p.abs.$length>0&&!(m.neg===n.neg);t=o.abs.$length>0&&m.neg;p.neg=s;o.neg=t;$s=-1;return[p,o];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.QuoRem};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.QuoRem=function(m,n,o){return this.$val.QuoRem(m,n,o);};BO.ptr.prototype.Div=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=this;q=n.neg;o[0]=new BO.ptr(false,BX.nil);r=p.QuoRem(m,n,o[0]);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o[0].neg){if(q){p.Add(p,BP);}else{p.Sub(p,BP);}}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Div};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Div=function(m,n){return this.$val.Div(m,n);};BO.ptr.prototype.Mod=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=n;if(o===n||CG(o.abs,n.abs)){p=new BO.ptr(false,BX.nil).Set(n);}q=new BO.ptr(false,BX.nil);r=q.QuoRem(m,n,o);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o.neg){if(p.neg){o.Sub(o,p);}else{o.Add(o,p);}}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Mod};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Mod=function(m,n){return this.$val.Mod(m,n);};BO.ptr.prototype.DivMod=function(m,n,o){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=n;if(p===n||CG(p.abs,n.abs)){q=new BO.ptr(false,BX.nil).Set(n);}r=p.QuoRem(m,n,o);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o.neg){if(q.neg){p.Add(p,BP);o.Sub(o,q);}else{p.Sub(p,BP);o.Add(o,q);}}$s=-1;return[p,o];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.DivMod};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.DivMod=function(m,n,o){return this.$val.DivMod(m,n,o);};BO.ptr.prototype.Cmp=function(m){var $ptr,m,n,o;n=0;o=this;if(o.neg===m.neg){n=o.abs.cmp(m.abs);if(o.neg){n=-n;}}else if(o.neg){n=-1;}else{n=1;}return n;};BO.prototype.Cmp=function(m){return this.$val.Cmp(m);};BS=function(m){var $ptr,m,n,o,p,q;if(m.$length===0){return new $Uint64(0,0);}o=(n=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]),new $Uint64(0,n.constructor===Number?n:1));if(true&&m.$length>1){o=(p=$shiftLeft64((q=(1>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+1]),new $Uint64(0,q.constructor===Number?q:1)),32),new $Uint64(o.$high|p.$high,(o.$low|p.$low)>>>0));}return o;};BO.ptr.prototype.Int64=function(){var $ptr,m,n,o;m=this;o=(n=BS(m.abs),new $Int64(n.$high,n.$low));if(m.neg){o=new $Int64(-o.$high,-o.$low);}return o;};BO.prototype.Int64=function(){return this.$val.Int64();};BO.ptr.prototype.Uint64=function(){var $ptr,m;m=this;return BS(m.abs);};BO.prototype.Uint64=function(){return this.$val.Uint64();};BO.ptr.prototype.SetString=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=D.NewReader(m);r=o.scan(p,n);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[2];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,false];}t=p.ReadByte();u=t[1];if(!($interfaceIsEqual(u,C.EOF))){$s=-1;return[DP.nil,false];}$s=-1;return[o,true];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.SetString};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.SetString=function(m,n){return this.$val.SetString(m,n);};BO.ptr.prototype.SetBytes=function(m){var $ptr,m,n;n=this;n.abs=n.abs.setBytes(m);n.neg=false;return n;};BO.prototype.SetBytes=function(m){return this.$val.SetBytes(m);};BO.ptr.prototype.Bytes=function(){var $ptr,m,n;m=this;n=$makeSlice(DM,($imul(m.abs.$length,4)));return $subslice(n,m.abs.bytes(n));};BO.prototype.Bytes=function(){return this.$val.Bytes();};BO.ptr.prototype.BitLen=function(){var $ptr,m;m=this;return m.abs.bitLen();};BO.prototype.BitLen=function(){return this.$val.BitLen();};BO.ptr.prototype.Exp=function(m,n,o){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=BX.nil;if(!n.neg){q=n.abs;}r=BX.nil;if(!(o===DP.nil)){r=o.abs;}s=p.abs.expNN(m.abs,q,r);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}p.abs=s;p.neg=p.abs.$length>0&&m.neg&&q.$length>0&&((((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])&1)>>>0)===1);if(p.neg&&r.$length>0){p.abs=p.abs.sub(r,p.abs);p.neg=false;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Exp};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Exp=function(m,n,o){return this.$val.Exp(m,n,o);};BO.ptr.prototype.GCD=function(m,n,o,p){var $ptr,aa,ab,ac,ad,ae,af,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;if(o.Sign()<=0||p.Sign()<=0){q.SetInt64(new $Int64(0,0));if(!(m===DP.nil)){m.SetInt64(new $Int64(0,0));}if(!(n===DP.nil)){n.SetInt64(new $Int64(0,0));}$s=-1;return q;}if(m===DP.nil&&n===DP.nil){$s=1;continue;}$s=2;continue;case 1:r=q.binaryGCD(o,p);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return r;case 2:s=new BO.ptr(false,BX.nil).Set(o);t=new BO.ptr(false,BX.nil).Set(p);u=new BO.ptr(false,BX.nil);v=new BO.ptr(false,BX.nil).SetInt64(new $Int64(0,1));w=new BO.ptr(false,BX.nil).SetInt64(new $Int64(0,1));x=new BO.ptr(false,BX.nil);y=new BO.ptr(false,BX.nil);z=new BO.ptr(false,BX.nil);aa=new BO.ptr(false,BX.nil);case 4:if(!(t.abs.$length>0)){$s=5;continue;}ac=y.QuoRem(s,t,aa);$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;y=ab[0];aa=ab[1];ad=t;ae=aa;af=s;s=ad;t=ae;aa=af;z.Set(u);u.Mul(u,y);u.neg=!u.neg;u.Add(u,w);w.Set(z);z.Set(v);v.Mul(v,y);v.neg=!v.neg;v.Add(v,x);x.Set(z);$s=4;continue;case 5:if(!(m===DP.nil)){BO.copy(m,w);}if(!(n===DP.nil)){BO.copy(n,x);}BO.copy(q,s);$s=-1;return q;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.GCD};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.GCD=function(m,n,o,p){return this.$val.GCD(m,n,o,p);};BO.ptr.prototype.binaryGCD=function(m,n){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=o;q=new BO.ptr(false,BX.nil);if(m.abs.$length>n.abs.$length){$s=2;continue;}if(m.abs.$length<n.abs.$length){$s=3;continue;}$s=4;continue;case 2:r=q.Rem(m,n);$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;p.Set(n);$s=5;continue;case 3:s=q.Rem(n,m);$s=7;case 7:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;p.Set(m);$s=5;continue;case 4:q.Set(n);p.Set(m);case 5:case 1:if(q.abs.$length===0){$s=-1;return p;}t=p.abs.trailingZeroBits();u=q.abs.trailingZeroBits();if(u<t){t=u;}p.Rsh(p,t);q.Rsh(q,t);v=new BO.ptr(false,BX.nil);if(!(((((w=p.abs,(0>=w.$length?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+0]))&1)>>>0)===0))){v.Neg(q);}else{v.Set(p);}while(true){if(!(v.abs.$length>0)){break;}v.Rsh(v,v.abs.trailingZeroBits());if(v.neg){x=v;y=q;q=x;v=y;q.neg=q.abs.$length>0&&!q.neg;}else{z=v;aa=p;p=z;v=aa;}v.Sub(p,q);}$s=-1;return o.Lsh(p,t);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.binaryGCD};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.binaryGCD=function(m,n){return this.$val.binaryGCD(m,n);};BO.ptr.prototype.Rand=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;o.neg=false;if(n.neg||(n.abs.$length===0)){o.abs=BX.nil;$s=-1;return o;}p=o.abs.random(m,n.abs,n.abs.bitLen());$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o.abs=p;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Rand};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Rand=function(m,n){return this.$val.Rand(m,n);};BO.ptr.prototype.ModInverse=function(m,n){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(m.neg){$s=1;continue;}$s=2;continue;case 1:p=new BO.ptr(false,BX.nil);q=p.Mod(m,n);$s=3;case 3:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}m=q;case 2:r=new BO.ptr(false,BX.nil);s=r.GCD(o,DP.nil,m,n);$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;if(o.neg){o.Add(o,n);}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ModInverse};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ModInverse=function(m,n){return this.$val.ModInverse(m,n);};BT=function(m,n){var $ptr,aa,ab,ac,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=[q];if((n.abs.$length===0)||((((r=n.abs,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))&1)>>>0)===0)){$s=1;continue;}$s=2;continue;case 1:s=A.Sprintf("big: invalid 2nd argument to Int.Jacobi: need odd integer but got %s",new DI([n]));$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$panic(new $String(s));case 2:t=new BO.ptr(false,BX.nil);u=new BO.ptr(false,BX.nil);v=new BO.ptr(false,BX.nil);o[0]=$clone(t,BO);p[0]=$clone(u,BO);q[0]=$clone(v,BO);o[0].Set(m);p[0].Set(n);w=1;if(p[0].neg){if(o[0].neg){w=-1;}p[0].neg=false;}case 4:if(p[0].Cmp(BP)===0){$s=-1;return w;}if(o[0].abs.$length===0){$s=-1;return 0;}x=o[0].Mod(o[0],p[0]);$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;if(o[0].abs.$length===0){$s=-1;return 0;}y=o[0].abs.trailingZeroBits();if(!((((y&1)>>>0)===0))){aa=((z=p[0].abs,(0>=z.$length?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+0]))&7)>>>0;if((aa===3)||(aa===5)){w=-w;}}q[0].Rsh(o[0],y);if(((((ab=p[0].abs,(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0]))&3)>>>0)===3)&&((((ac=q[0].abs,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))&3)>>>0)===3)){w=-w;}o[0].Set(p[0]);p[0].Set(q[0]);$s=4;continue;case 5:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Jacobi=BT;BO.ptr.prototype.modSqrt3Mod4Prime=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;o.Set(n);o.Add(o,BP);o.Rsh(o,2);p=o.Exp(m,o,n);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.modSqrt3Mod4Prime};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.modSqrt3Mod4Prime=function(m,n){return this.$val.modSqrt3Mod4Prime(m,n);};BO.ptr.prototype.modSqrtTonelliShanks=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=[q];r=[r];s=[s];t=[t];u=this;r[0]=new BO.ptr(false,BX.nil);r[0].Sub(n,BP);v=r[0].abs.trailingZeroBits();r[0].Rsh(r[0],v);q[0]=new BO.ptr(false,BX.nil);q[0].SetInt64(new $Int64(0,2));case 1:w=BT(q[0],n);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}if(!(!((w===-1)))){$s=2;continue;}q[0].Add(q[0],BP);$s=1;continue;case 2:x=new BO.ptr(false,BX.nil);y=new BO.ptr(false,BX.nil);z=new BO.ptr(false,BX.nil);aa=new BO.ptr(false,BX.nil);t[0]=$clone(x,BO);o[0]=$clone(y,BO);p[0]=$clone(z,BO);s[0]=$clone(aa,BO);t[0].Add(r[0],BP);t[0].Rsh(t[0],1);ab=t[0].Exp(m,t[0],n);$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;ac=o[0].Exp(m,r[0],n);$s=5;case 5:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;ad=p[0].Exp(q[0],r[0],n);$s=6;case 6:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ad;ae=v;case 7:af=0;s[0].Set(o[0]);case 9:if(!(!((s[0].Cmp(BP)===0)))){$s=10;continue;}ag=s[0].Mul(s[0],s[0]).Mod(s[0],n);$s=11;case 11:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ag;af=af+(1)>>>0;$s=9;continue;case 10:if(af===0){$s=-1;return u.Set(t[0]);}ah=s[0].SetInt64(new $Int64(0,0)).SetBit(s[0],(((ae-af>>>0)-1>>>0)>>0),1).Exp(p[0],s[0],n);$s=12;case 12:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ai=p[0].Mul(s[0],s[0]).Mod(p[0],n);$s=13;case 13:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;aj=t[0].Mul(t[0],s[0]).Mod(t[0],n);$s=14;case 14:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}aj;ak=o[0].Mul(o[0],p[0]).Mod(o[0],n);$s=15;case 15:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ak;ae=af;$s=7;continue;case 8:$s=-1;return DP.nil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.modSqrtTonelliShanks};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.modSqrtTonelliShanks=function(m,n){return this.$val.modSqrtTonelliShanks(m,n);};BO.ptr.prototype.ModSqrt=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=BT(m,n);$s=2;case 2:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(q===(-1)){$s=-1;return DP.nil;}else if(q===(0)){$s=-1;return o.SetInt64(new $Int64(0,0));}else if(q===(1)){$s=1;continue;}case 1:if(m.neg||m.Cmp(n)>=0){$s=3;continue;}$s=4;continue;case 3:r=new BO.ptr(false,BX.nil).Mod(m,n);$s=5;case 5:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}m=r;case 4:if(n.abs.$length>0&&((s=(t=n.abs,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]))%4,s===s?s:$throwRuntimeError("integer divide by zero"))===3)){$s=6;continue;}$s=7;continue;case 6:u=o.modSqrt3Mod4Prime(m,n);$s=8;case 8:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$s=-1;return u;case 7:v=o.modSqrtTonelliShanks(m,n);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ModSqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ModSqrt=function(m,n){return this.$val.ModSqrt(m,n);};BO.ptr.prototype.Lsh=function(m,n){var $ptr,m,n,o;o=this;o.abs=o.abs.shl(m.abs,n);o.neg=m.neg;return o;};BO.prototype.Lsh=function(m,n){return this.$val.Lsh(m,n);};BO.ptr.prototype.Rsh=function(m,n){var $ptr,m,n,o,p;o=this;if(m.neg){p=o.abs.sub(m.abs,BY);p=p.shr(p,n);o.abs=p.add(p,BY);o.neg=true;return o;}o.abs=o.abs.shr(m.abs,n);o.neg=false;return o;};BO.prototype.Rsh=function(m,n){return this.$val.Rsh(m,n);};BO.ptr.prototype.Bit=function(m){var $ptr,m,n,o,p;n=this;if(m===0){if(n.abs.$length>0){return((((o=n.abs,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))&1)>>>0)>>>0);}return 0;}if(m<0){$panic(new $String("negative bit index"));}if(n.neg){p=BX.nil.sub(n.abs,BY);return(p.bit((m>>>0))^1)>>>0;}return n.abs.bit((m>>>0));};BO.prototype.Bit=function(m){return this.$val.Bit(m);};BO.ptr.prototype.SetBit=function(m,n,o){var $ptr,m,n,o,p,q;p=this;if(n<0){$panic(new $String("negative bit index"));}if(m.neg){q=p.abs.sub(m.abs,BY);q=q.setBit(q,(n>>>0),(o^1)>>>0);p.abs=q.add(q,BY);p.neg=p.abs.$length>0;return p;}p.abs=p.abs.setBit(m.abs,(n>>>0),o);p.neg=false;return p;};BO.prototype.SetBit=function(m,n,o){return this.$val.SetBit(m,n,o);};BO.ptr.prototype.And=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.or(p,q),BY);o.neg=true;return o;}o.abs=o.abs.and(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.andNot(m.abs,t);o.neg=false;return o;};BO.prototype.And=function(m,n){return this.$val.And(m,n);};BO.ptr.prototype.AndNot=function(m,n){var $ptr,m,n,o,p,q,r,s;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.andNot(q,p);o.neg=false;return o;}o.abs=o.abs.andNot(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=BX.nil.sub(m.abs,BY);o.abs=o.abs.add(o.abs.or(r,n.abs),BY);o.neg=true;return o;}s=BX.nil.sub(n.abs,BY);o.abs=o.abs.and(m.abs,s);o.neg=false;return o;};BO.prototype.AndNot=function(m,n){return this.$val.AndNot(m,n);};BO.ptr.prototype.Or=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.and(p,q),BY);o.neg=true;return o;}o.abs=o.abs.or(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.andNot(t,m.abs),BY);o.neg=true;return o;};BO.prototype.Or=function(m,n){return this.$val.Or(m,n);};BO.ptr.prototype.Xor=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.xor(p,q);o.neg=false;return o;}o.abs=o.abs.xor(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.xor(m.abs,t),BY);o.neg=true;return o;};BO.prototype.Xor=function(m,n){return this.$val.Xor(m,n);};BO.ptr.prototype.Not=function(m){var $ptr,m,n;n=this;if(m.neg){n.abs=n.abs.sub(m.abs,BY);n.neg=false;return n;}n.abs=n.abs.add(m.abs,BY);n.neg=true;return n;};BO.prototype.Not=function(m){return this.$val.Not(m);};BO.ptr.prototype.Sqrt=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.neg){$panic(new $String("square root of negative number"));}n.neg=false;o=n.abs.sqrt(m.abs);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n.abs=o;$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Sqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Sqrt=function(m){return this.$val.Sqrt(m);};BO.ptr.prototype.Text=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(n===DP.nil){$s=-1;return"<nil>";}o=n.abs.itoa(n.neg,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return $bytesToString(o);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Text};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Text=function(m){return this.$val.Text(m);};BO.ptr.prototype.Append=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(o===DP.nil){$s=-1;return $appendSlice(m,"<nil>");}p=m;q=o.abs.itoa(o.neg,n);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;$s=-1;return $appendSlice(p,r);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Append};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Append=function(m,n){return this.$val.Append(m,n);};BO.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.Text(10);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.String=function(){return this.$val.String();};BU=function(m,n,o){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(n.length>0){$s=1;continue;}$s=2;continue;case 1:p=new DM($stringToBytes(n));case 3:if(!(o>0)){$s=4;continue;}q=m.Write(p);$s=5;case 5:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;o=o-(1)>>0;$s=3;continue;case 4:case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:BU};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.Format=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=0;q=n;if(q===(98)){$s=2;continue;}if(q===(111)){$s=3;continue;}if((q===(100))||(q===(115))||(q===(118))){$s=4;continue;}if((q===(120))||(q===(88))){$s=5;continue;}$s=6;continue;case 2:p=2;$s=7;continue;case 3:p=8;$s=7;continue;case 4:p=10;$s=7;continue;case 5:p=16;$s=7;continue;case 6:r=m;s=new $Int32(n);t=o.String();$s=8;case 8:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=new $String(t);v=A.Fprintf(r,"%%!%c(big.Int=%s)",new DI([s,u]));$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;$s=-1;return;case 7:case 1:if(o===DP.nil){$s=10;continue;}$s=11;continue;case 10:w=A.Fprint(m,new DI([new $String("<nil>")]));$s=12;case 12:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=-1;return;case 11:x="";if(o.neg){$s=14;continue;}y=m.Flag(43);$s=18;case 18:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(y){$s=15;continue;}z=m.Flag(32);$s=19;case 19:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}if(z){$s=16;continue;}$s=17;continue;case 14:x="-";$s=17;continue;case 15:x="+";$s=17;continue;case 16:x=" ";case 17:case 13:aa="";ab=m.Flag(35);$s=22;case 22:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab){$s=20;continue;}$s=21;continue;case 20:ac=n;if(ac===(111)){aa="0";}else if(ac===(120)){aa="0x";}else if(ac===(88)){aa="0X";}case 21:ad=o.abs.utoa(p);$s=23;case 23:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;if(n===88){af=ae;ag=0;while(true){if(!(ag<af.$length)){break;}ah=ag;ai=((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag]);if(97<=ai&&ai<=122){((ah<0||ah>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+ah]=(65+((ai-97<<24>>>24))<<24>>>24));}ag++;}}aj=0;ak=0;al=0;an=m.Precision();$s=24;case 24:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(ap){if(ae.$length<ao){ak=ao-ae.$length>>0;}else if((ae.$length===1)&&((0>=ae.$length?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+0])===48)&&(ao===0)){$s=-1;return;}}aq=((x.length+aa.length>>0)+ak>>0)+ae.$length>>0;as=m.Width();$s=25;case 25:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;at=ar[0];au=ar[1];if(au&&aq<at){$s=26;continue;}$s=27;continue;case 26:av=at-aq>>0;aw=m.Flag(45);$s=33;case 33:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw){$s=29;continue;}ax=m.Flag(48);$s=34;case 34:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(ax&&!ap){$s=30;continue;}$s=31;continue;case 29:al=av;$s=32;continue;case 30:ak=av;$s=32;continue;case 31:aj=av;case 32:case 28:case 27:$r=BU(m," ",aj);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,x,1);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,aa,1);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,"0",ak);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ay=m.Write(ae);$s=39;case 39:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ay;$r=BU(m," ",al);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Format};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Format=function(m,n){return this.$val.Format(m,n);};BO.ptr.prototype.scan=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=BV(m);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,0,s];}u=o.abs.scan(m,n,false);$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;o.abs=t[0];n=t[1];s=t[3];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,n,s];}o.neg=o.abs.$length>0&&r;$s=-1;return[o,n,$ifaceNil];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.scan};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.scan=function(m,n){return this.$val.scan(m,n);};BV=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=false;o=$ifaceNil;p=0;r=m.ReadByte();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p=q[0];o=q[1];if(!($interfaceIsEqual(o,$ifaceNil))){s=false;t=o;n=s;o=t;$s=-1;return[n,o];}u=p;if(u===(45)){$s=3;continue;}if(u===(43)){$s=4;continue;}$s=5;continue;case 3:n=true;$s=6;continue;case 4:$s=6;continue;case 5:v=m.UnreadByte();$s=7;case 7:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;case 6:case 2:$s=-1;return[n,o];}return;}if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BW.ptr.prototype.ReadByte=function(){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=m.ScanState.ReadRune();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];r=n[2];if(!((q===1))&&$interfaceIsEqual(r,$ifaceNil)){$s=2;continue;}$s=3;continue;case 2:s=A.Errorf("invalid rune %#U",new DI([new $Int32(p)]));$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;case 3:$s=-1;return[(p<<24>>>24),r];}return;}if($f===undefined){$f={$blk:BW.ptr.prototype.ReadByte};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BW.prototype.ReadByte=function(){return this.$val.ReadByte();};BW.ptr.prototype.UnreadByte=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.ScanState.UnreadRune();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BW.ptr.prototype.UnreadByte};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BW.prototype.UnreadByte=function(){return this.$val.UnreadByte();};BO.ptr.prototype.Scan=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;$r=m.SkipSpace();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=0;q=n;if(q===(98)){p=2;}else if(q===(111)){p=8;}else if(q===(100)){p=10;}else if((q===(120))||(q===(88))){p=16;}else if((q===(115))||(q===(118))){}else{$s=-1;return I.New("Int.Scan: invalid verb");}t=o.scan((s=new BW.ptr(m),new s.constructor.elem(s)),p);$s=2;case 2:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;u=r[2];$s=-1;return u;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Scan};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Scan=function(m,n){return this.$val.Scan(m,n);};BO.ptr.prototype.GobEncode=function(){var $ptr,m,n,o,p;m=this;if(m===DP.nil){return[DM.nil,$ifaceNil];}n=$makeSlice(DM,(1+($imul(m.abs.$length,4))>>0));o=m.abs.bytes(n)-1>>0;p=2;if(m.neg){p=(p|(1))>>>0;}((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]=p);return[$subslice(n,o),$ifaceNil];};BO.prototype.GobEncode=function(){return this.$val.GobEncode();};BO.ptr.prototype.GobDecode=function(m){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.$length===0){BO.copy(n,new BO.ptr(false,BX.nil));$s=-1;return $ifaceNil;}o=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]);if(!(((o>>>1<<24>>>24)===1))){$s=1;continue;}$s=2;continue;case 1:p=A.Errorf("Int.GobDecode: encoding version %d not supported",new DI([new $Uint8((o>>>1<<24>>>24))]));$s=3;case 3:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;case 2:n.neg=!((((o&1)>>>0)===0));n.abs=n.abs.setBytes($subslice(m,1));$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.GobDecode=function(m){return this.$val.GobDecode(m);};BO.ptr.prototype.MarshalText=function(){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=DM.nil;n=$ifaceNil;o=this;if(o===DP.nil){p=new DM($stringToBytes("<nil>"));q=$ifaceNil;m=p;n=q;$s=-1;return[m,n];}s=o.abs.itoa(o.neg,10);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=$ifaceNil;m=r;n=t;$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.MarshalText=function(){return this.$val.MarshalText();};BO.ptr.prototype.UnmarshalText=function(m){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;p=n.SetString($bytesToString(m),0);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[1];if(!q){$s=2;continue;}$s=3;continue;case 2:r=A.Errorf("math/big: cannot unmarshal %q into a *big.Int",new DI([m]));$s=4;case 4:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return r;case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.UnmarshalText=function(m){return this.$val.UnmarshalText(m);};BO.ptr.prototype.MarshalJSON=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.MarshalText();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BO.ptr.prototype.UnmarshalJSON=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if($bytesToString(m)==="null"){$s=-1;return $ifaceNil;}o=n.UnmarshalText(m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.UnmarshalJSON=function(m){return this.$val.UnmarshalJSON(m);};BX.prototype.clear=function(){var $ptr,m,n,o,p;m=this;n=m;o=0;while(true){if(!(o<n.$length)){break;}p=o;((p<0||p>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+p]=0);o++;}};$ptrType(BX).prototype.clear=function(){return this.$get().clear();};BX.prototype.norm=function(){var $ptr,m,n,o;m=this;n=m.$length;while(true){if(!(n>0&&((o=n-1>>0,((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]))===0))){break;}n=n-(1)>>0;}return $subslice(m,0,n);};$ptrType(BX).prototype.norm=function(){return this.$get().norm();};BX.prototype.make=function(m){var $ptr,m,n;n=this;if(m<=n.$capacity){return $subslice(n,0,m);}return $makeSlice(BX,m,(m+4>>0));};$ptrType(BX).prototype.make=function(m){return this.$get().make(m);};BX.prototype.setWord=function(m){var $ptr,m,n;n=this;if(m===0){return $subslice(n,0,0);}n=n.make(1);(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]=m);return n;};$ptrType(BX).prototype.setWord=function(m){return this.$get().setWord(m);};BX.prototype.setUint64=function(m){var $ptr,m,n,o,p,q,r,s,t,u;n=this;o=(m.$low>>>0);if((p=new $Uint64(0,o.constructor===Number?o:1),(p.$high===m.$high&&p.$low===m.$low))){return n.setWord(o);}q=0;r=m;while(true){if(!((r.$high>0||(r.$high===0&&r.$low>0)))){break;}q=q+(1)>>0;r=$shiftRightUint64(r,(32));}n=n.make(q);s=n;t=0;while(true){if(!(t<s.$length)){break;}u=t;((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]=(new $Uint64(m.$high&0,(m.$low&4294967295)>>>0).$low>>>0));m=$shiftRightUint64(m,(32));t++;}return n;};$ptrType(BX).prototype.setUint64=function(m){return this.$get().setUint64(m);};BX.prototype.set=function(m){var $ptr,m,n;n=this;n=n.make(m.$length);$copySlice(n,m);return n;};$ptrType(BX).prototype.set=function(m){return this.$get().set(m);};BX.prototype.add=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;if(p<q){return o.add(n,m);}else if((p===0)){return $subslice(o,0,0);}else if((q===0)){return o.set(m);}o=o.make(p+1>>0);s=M((r=$subslice(o,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(p>q){s=O((t=$subslice(o,q,p),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),(u=$subslice(m,q),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),s);}((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=s);return o.norm();};$ptrType(BX).prototype.add=function(m,n){return this.$get().add(m,n);};BX.prototype.sub=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;if(p<q){$panic(new $String("underflow"));}else if((p===0)){return $subslice(o,0,0);}else if((q===0)){return o.set(m);}o=o.make(p);s=N((r=$subslice(o,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(p>q){s=P((t=$subslice(o,q),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),(u=$subslice(m,q),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),s);}if(!((s===0))){$panic(new $String("underflow"));}return o.norm();};$ptrType(BX).prototype.sub=function(m,n){return this.$get().sub(m,n);};BX.prototype.cmp=function(m){var $ptr,m,n,o,p,q,r;n=0;o=this;p=o.$length;q=m.$length;if(!((p===q))||(p===0)){if(p<q){n=-1;}else if(p>q){n=1;}return n;}r=p-1>>0;while(true){if(!(r>0&&(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])===((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])))){break;}r=r-(1)>>0;}if(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])<((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])){n=-1;}else if(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])>((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])){n=1;}return n;};$ptrType(BX).prototype.cmp=function(m){return this.$get().cmp(m);};BX.prototype.mulAddWW=function(m,n,o){var $ptr,m,n,o,p,q,r;p=this;q=m.$length;if((q===0)||(n===0)){return p.setWord(o);}p=p.make(q+1>>0);((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]=S((r=$subslice(p,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),n,o));return p.norm();};$ptrType(BX).prototype.mulAddWW=function(m,n,o){return this.$get().mulAddWW(m,n,o);};CB=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u;$subslice(m,0,(n.$length+o.$length>>0)).clear();p=o;q=0;while(true){if(!(q<p.$length)){break;}r=q;s=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);if(!((s===0))){(u=n.$length+r>>0,((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]=T((t=$subslice(m,r,(r+n.$length>>0)),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length),s)));}q++;}};BX.prototype.montgomery=function(m,n,o,p,q){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;r=this;if(!((m.$length===q))||!((n.$length===q))||!((o.$length===q))){$panic(new $String("math/big: mismatched montgomery number lengths"));}r=r.make(q);r.clear();s=0;t=0;while(true){if(!(t<q)){break;}u=((t<0||t>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+t]);v=T($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),u);w=$imul((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]),p)>>>0;x=T($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),w);$copySlice(r,$subslice(r,1));y=s+v>>>0;z=y+x>>>0;(aa=q-1>>0,((aa<0||aa>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+aa]=z));if(y<v||z<x){s=1;}else{s=0;}t=t+(1)>>0;}if(!((s===0))){N($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length));}return r;};$ptrType(BX).prototype.montgomery=function(m,n,o,p,q){return this.$get().montgomery(m,n,o,p,q);};CC=function(m,n,o){var $ptr,m,n,o,p,q,r,s;q=M((p=$subslice(m,0,o),$subslice(new DO(p.$array),p.$offset,p.$offset+p.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((q===0))){O((r=$subslice(m,o,(o+(o>>1>>0)>>0)),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),(s=$subslice(m,o),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),q);}};CD=function(m,n,o){var $ptr,m,n,o,p,q,r,s;q=N((p=$subslice(m,0,o),$subslice(new DO(p.$array),p.$offset,p.$offset+p.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((q===0))){P((r=$subslice(m,o,(o+(o>>1>>0)>>0)),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),(s=$subslice(m,o),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),q);}};CF=function(m,n,o){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=o.$length;if(!(((p&1)===0))||p<CE||p<2){CB(m,n,o);return;}q=p>>1>>0;r=$subslice(n,q);s=$subslice(n,0,q);t=r;u=s;v=$subslice(o,q);w=$subslice(o,0,q);x=v;y=w;CF(m,u,y);CF($subslice(m,p),t,x);z=1;aa=$subslice(m,($imul(2,p)),(($imul(2,p))+q>>0));if(!((N($subslice(new DO(aa.$array),aa.$offset,aa.$offset+aa.$length),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length))===0))){z=-z;N($subslice(new DO(aa.$array),aa.$offset,aa.$offset+aa.$length),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length));}ab=$subslice(m,(($imul(2,p))+q>>0),($imul(3,p)));if(!((N($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(y.$array),y.$offset,y.$offset+y.$length),$subslice(new DO(x.$array),x.$offset,x.$offset+x.$length))===0))){z=-z;N($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(x.$array),x.$offset,x.$offset+x.$length),$subslice(new DO(y.$array),y.$offset,y.$offset+y.$length));}ac=$subslice(m,($imul(p,3)));CF(ac,aa,ab);ad=$subslice(m,($imul(p,4)));$copySlice(ad,$subslice(m,0,($imul(p,2))));CC($subslice(m,q),ad,p);CC($subslice(m,q),$subslice(ad,p),p);if(z>0){CC($subslice(m,q),ac,p);}else{CD($subslice(m,q),ac,p);}};CG=function(m,n){var $ptr,m,n,o,p;return m.$capacity>0&&n.$capacity>0&&(o=$subslice(m,0,m.$capacity),$indexPtr(o.$array,o.$offset+(m.$capacity-1>>0),DR))===(p=$subslice(n,0,n.$capacity),$indexPtr(p.$array,p.$offset+(n.$capacity-1>>0),DR));};CH=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v;p=n.$length;if(p>0){s=M((q=$subslice(m,o,(o+p>>0)),$subslice(new DO(q.$array),q.$offset,q.$offset+q.$length)),(r=$subslice(m,o),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((s===0))){t=o+p>>0;if(t<m.$length){O((u=$subslice(m,t),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),(v=$subslice(m,t),$subslice(new DO(v.$array),v.$offset,v.$offset+v.$length)),s);}}}};CI=function(m,n){var $ptr,m,n;if(m>n){return m;}return n;};CJ=function(m){var $ptr,m,n,o;n=0;while(true){if(!(m>CE)){break;}m=(m>>$min((1),31))>>0;n=n+(1)>>>0;}return(o=n,o<32?(m<<o):0)>>0;};BX.prototype.mul=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=this;p=m.$length;q=n.$length;if(p<q){return o.mul(n,m);}else if((p===0)||(q===0)){return $subslice(o,0,0);}else if((q===1)){return o.mulAddWW(m,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]),0);}if(CG(o,m)||CG(o,n)){o=BX.nil;}if(q<CE){o=o.make(p+q>>0);CB(o,m,n);return o.norm();}r=CJ(q);s=$subslice(m,0,r);t=$subslice(n,0,r);o=o.make(CI($imul(6,r),p+q>>0));CF(o,s,t);o=$subslice(o,0,(p+q>>0));$subslice(o,($imul(2,r))).clear();if(r<q||!((p===q))){u=BX.nil;v=s.norm();w=$subslice(n,r);u=u.mul(v,w);CH(o,u,r);x=t.norm();y=r;while(true){if(!(y<m.$length)){break;}z=$subslice(m,y);if(z.$length>r){z=$subslice(z,0,r);}z=z.norm();u=u.mul(z,x);CH(o,u,y);u=u.mul(z,w);CH(o,u,y+r>>0);y=y+(r)>>0;}}return o.norm();};$ptrType(BX).prototype.mul=function(m,n){return this.$get().mul(m,n);};BX.prototype.mulRange=function(m,n){var $ptr,m,n,o,p,q;o=this;if((m.$high===0&&m.$low===0)){return o.setUint64(new $Uint64(0,0));}else if((m.$high>n.$high||(m.$high===n.$high&&m.$low>n.$low))){return o.setUint64(new $Uint64(0,1));}else if((m.$high===n.$high&&m.$low===n.$low)){return o.setUint64(m);}else if((p=new $Uint64(m.$high+0,m.$low+1),(p.$high===n.$high&&p.$low===n.$low))){return o.mul(BX.nil.setUint64(m),BX.nil.setUint64(n));}q=$div64((new $Uint64(m.$high+n.$high,m.$low+n.$low)),new $Uint64(0,2),false);return o.mul(BX.nil.mulRange(m,q),BX.nil.mulRange(new $Uint64(q.$high+0,q.$low+1),n));};$ptrType(BX).prototype.mulRange=function(m,n){return this.$get().mulRange(m,n);};BX.prototype.divW=function(m,n){var $ptr,m,n,o,p,q,r;o=BX.nil;p=0;q=this;r=m.$length;if((n===0)){$panic(new $String("division by zero"));}else if((n===1)){o=q.set(m);return[o,p];}else if((r===0)){o=$subslice(q,0,0);return[o,p];}q=q.make(r);p=U($subslice(new DO(q.$array),q.$offset,q.$offset+q.$length),0,$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),n);o=q.norm();return[o,p];};$ptrType(BX).prototype.divW=function(m,n){return this.$get().divW(m,n);};BX.prototype.div=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=BX.nil;r=this;if(o.$length===0){$panic(new $String("division by zero"));}if(n.cmp(o)<0){p=$subslice(r,0,0);q=m.set(n);$s=-1;return[p,q];}if(o.$length===1){s=0;t=r.divW(n,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));p=t[0];s=t[1];q=m.setWord(s);$s=-1;return[p,q];}v=r.divLarge(m,n,o);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;p=u[0];q=u[1];$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:BX.prototype.div};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.div=function(m,n,o){return this.$get().div(m,n,o);};CK=function(m){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=DS.nil;o=CM.Get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){n=$assertType(p,DS);}if(n===DS.nil){n=$newDataPointer(BX.nil,DS);}n.$set(n.make(m));$s=-1;return n;}return;}if($f===undefined){$f={$blk:CK};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};CL=function(m){var $ptr,m;CM.Put(m);};BX.prototype.divLarge=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=BX.nil;r=this;s=o.$length;t=n.$length-s>>0;if(CG(r,n)||CG(r,o)){r=BX.nil;}p=r.make(t+1>>0);u=CK(s+1>>0);$s=1;case 1:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=u;w=v.$get();if(CG(m,n)||CG(m,o)){m=BX.nil;}m=m.make(n.$length+1>>0);m.clear();x=DS.nil;z=AE((y=s-1>>0,((y<0||y>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+y])));if(z>0){$s=2;continue;}$s=3;continue;case 2:aa=CK(s);$s=4;case 4:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}x=aa;ab=x.$get();Q($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),z);o=ab;case 3:(ad=n.$length,((ad<0||ad>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ad]=Q((ac=$subslice(m,0,n.$length),$subslice(new DO(ac.$array),ac.$offset,ac.$offset+ac.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length),z)));af=(ae=s-1>>0,((ae<0||ae>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+ae]));ag=t;while(true){if(!(ag>=0)){break;}ah=4294967295;aj=(ai=ag+s>>0,((ai<0||ai>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ai]));if(!((aj===af))){ak=0;al=L(aj,(am=(ag+s>>0)-1>>0,((am<0||am>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+am])),af);ah=al[0];ak=al[1];ao=(an=s-2>>0,((an<0||an>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+an]));ap=K(ah,ao);aq=ap[0];ar=ap[1];at=(as=(ag+s>>0)-2>>0,((as<0||as>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+as]));while(true){if(!(CQ(aq,ar,ak,at))){break;}ah=ah-(1)>>>0;au=ak;ak=ak+(af)>>>0;if(ak<au){break;}av=K(ah,ao);aq=av[0];ar=av[1];}}((s<0||s>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+s]=S((aw=$subslice(w,0,s),$subslice(new DO(aw.$array),aw.$offset,aw.$offset+aw.$length)),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),ah,0));az=N((ax=$subslice(m,ag,(ag+w.$length>>0)),$subslice(new DO(ax.$array),ax.$offset,ax.$offset+ax.$length)),(ay=$subslice(m,ag),$subslice(new DO(ay.$array),ay.$offset,ay.$offset+ay.$length)),$subslice(new DO(w.$array),w.$offset,w.$offset+w.$length));if(!((az===0))){bc=M((ba=$subslice(m,ag,(ag+s>>0)),$subslice(new DO(ba.$array),ba.$offset,ba.$offset+ba.$length)),(bb=$subslice(m,ag),$subslice(new DO(bb.$array),bb.$offset,bb.$offset+bb.$length)),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length));bd=ag+s>>0;((bd<0||bd>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+bd]=(((bd<0||bd>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+bd])+(bc)>>>0));ah=ah-(1)>>>0;}((ag<0||ag>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ag]=ah);ag=ag-(1)>>0;}if(!(x===DS.nil)){CL(x);}CL(v);p=p.norm();R($subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),z);q=m.norm();be=p;bf=q;p=be;q=bf;$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:BX.prototype.divLarge};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.divLarge=function(m,n,o){return this.$get().divLarge(m,n,o);};BX.prototype.bitLen=function(){var $ptr,m,n;m=this;n=m.$length-1>>0;if(n>=0){return($imul(n,32))+V(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]))>>0;}return 0;};$ptrType(BX).prototype.bitLen=function(){return this.$get().bitLen();};CP=function(m){var $ptr,m,n,o,p;n=32;if(n===(32)){return((o=(($imul((((m&(-m>>>0))>>>0)),125613361)>>>0))>>>27>>>0,((o<0||o>=CN.length)?($throwRuntimeError("index out of range"),undefined):CN[o]))>>>0);}else if(n===(64)){return((p=0,((p<0||p>=CO.length)?($throwRuntimeError("index out of range"),undefined):CO[p]))>>>0);}else{$panic(new $String("unknown word size"));}};BX.prototype.trailingZeroBits=function(){var $ptr,m,n;m=this;if(m.$length===0){return 0;}n=0;while(true){if(!(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])===0)){break;}n=n+(1)>>>0;}return(n*32>>>0)+CP(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]))>>>0;};$ptrType(BX).prototype.trailingZeroBits=function(){return this.$get().trailingZeroBits();};BX.prototype.shl=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;p=m.$length;if(p===0){return $subslice(o,0,0);}r=p+((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0)>>0;o=o.make(r+1>>0);((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=Q((s=$subslice(o,(r-p>>0),r),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),(t=n%32,t===t?t:$throwRuntimeError("integer divide by zero"))));$subslice(o,0,(r-p>>0)).clear();return o.norm();};$ptrType(BX).prototype.shl=function(m,n){return this.$get().shl(m,n);};BX.prototype.shr=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;p=m.$length;r=p-((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0)>>0;if(r<=0){return $subslice(o,0,0);}o=o.make(r);R($subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),(s=$subslice(m,(p-r>>0)),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),(t=n%32,t===t?t:$throwRuntimeError("integer divide by zero")));return o.norm();};$ptrType(BX).prototype.shr=function(m,n){return this.$get().shr(m,n);};BX.prototype.setBit=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=this;r=((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0);u=(s=((t=n%32,t===t?t:$throwRuntimeError("integer divide by zero"))),s<32?(1<<s):0)>>>0;v=m.$length;w=o;if(w===(0)){p=p.make(v);$copySlice(p,m);if(r>=v){return p;}((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r]=((((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r])&~(u))>>>0));return p.norm();}else if(w===(1)){if(r>=v){p=p.make(r+1>>0);$subslice(p,v).clear();}else{p=p.make(v);}$copySlice(p,m);((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r]=((((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r])|(u))>>>0));return p;}$panic(new $String("set bit is not 0 or 1"));};$ptrType(BX).prototype.setBit=function(m,n,o){return this.$get().setBit(m,n,o);};BX.prototype.bit=function(m){var $ptr,m,n,o,p,q,r;n=this;p=(o=m/32,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));if(p>=(n.$length>>>0)){return 0;}return(((((q=((r=m%32,r===r?r:$throwRuntimeError("integer divide by zero"))),q<32?(((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p])>>>q):0)>>>0)&1)>>>0)>>>0);};$ptrType(BX).prototype.bit=function(m){return this.$get().bit(m);};BX.prototype.and=function(m,n){var $ptr,m,n,o,p,q,r;o=this;p=m.$length;q=n.$length;if(p>q){p=q;}o=o.make(p);r=0;while(true){if(!(r<p)){break;}((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=((((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])&((r<0||r>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+r]))>>>0));r=r+(1)>>0;}return o.norm();};$ptrType(BX).prototype.and=function(m,n){return this.$get().and(m,n);};BX.prototype.andNot=function(m,n){var $ptr,m,n,o,p,q,r;o=this;p=m.$length;q=n.$length;if(q>p){q=p;}o=o.make(p);r=0;while(true){if(!(r<q)){break;}((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=((((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])&~((r<0||r>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+r]))>>>0));r=r+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(m,q,p));return o.norm();};$ptrType(BX).prototype.andNot=function(m,n){return this.$get().andNot(m,n);};BX.prototype.or=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;r=m;if(p<q){s=p;t=q;q=s;p=t;r=n;}o=o.make(p);u=0;while(true){if(!(u<q)){break;}((u<0||u>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+u]=((((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u])|((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]))>>>0));u=u+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(r,q,p));return o.norm();};$ptrType(BX).prototype.or=function(m,n){return this.$get().or(m,n);};BX.prototype.xor=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;r=m;if(p<q){s=p;t=q;q=s;p=t;r=n;}o=o.make(p);u=0;while(true){if(!(u<q)){break;}((u<0||u>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+u]=((((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u])^((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]))>>>0));u=u+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(r,q,p));return o.norm();};$ptrType(BX).prototype.xor=function(m,n){return this.$get().xor(m,n);};CQ=function(m,n,o,p){var $ptr,m,n,o,p;return m>o||(m===o)&&n>p;};BX.prototype.modW=function(m){var $ptr,m,n,o,p;n=0;o=this;p=BX.nil;p=p.make(o.$length);n=U($subslice(new DO(p.$array),p.$offset,p.$offset+p.$length),0,$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),m);return n;};$ptrType(BX).prototype.modW=function(m){return this.$get().modW(m);};BX.prototype.random=function(m,n,o){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(CG(p,n)){p=BX.nil;}p=p.make(n.$length);r=((q=o%32,q===q?q:$throwRuntimeError("integer divide by zero"))>>>0);if(r===0){r=32;}t=((((s=r,s<32?(1<<s):0)>>>0))-1>>>0);case 1:u=32;if(u===(32)){$s=4;continue;}if(u===(64)){$s=5;continue;}$s=6;continue;case 4:v=p;w=0;case 8:if(!(w<v.$length)){$s=9;continue;}x=w;y=m.Uint32();$s=10;case 10:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}((x<0||x>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+x]=(y>>>0));w++;$s=8;continue;case 9:$s=7;continue;case 5:z=p;aa=0;case 11:if(!(aa<z.$length)){$s=12;continue;}ab=aa;ac=m.Uint32();$s=13;case 13:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}((ab<0||ab>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ab]=(((ac>>>0)|0)>>>0));aa++;$s=11;continue;case 12:$s=7;continue;case 6:$panic(new $String("unknown word size"));case 7:case 3:ad=n.$length-1>>0;((ad<0||ad>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ad]=((((ad<0||ad>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ad])&(t))>>>0));if(p.cmp(n)<0){$s=2;continue;}$s=1;continue;case 2:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.random};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.random=function(m,n,o){return this.$get().random(m,n,o);};BX.prototype.expNN=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(CG(p,m)||CG(p,n)){p=BX.nil;}if((o.$length===1)&&((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])===1)){$s=-1;return p.setWord(0);}if(n.$length===0){$s=-1;return p.setWord(1);}if((n.$length===1)&&((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])===1)&&!((o.$length===0))){$s=1;continue;}$s=2;continue;case 1:r=p.div(p,m,o);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p=q[1];$s=-1;return p;case 2:if(!((o.$length===0))){p=p.make(o.$length);}p=p.set(m);if(m.cmp(BY)>0&&n.$length>1&&o.$length>0){$s=4;continue;}$s=5;continue;case 4:if((((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])&1)>>>0)===1){$s=6;continue;}$s=7;continue;case 6:s=p.expNNMontgomery(m,n,o);$s=8;case 8:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$s=-1;return s;case 7:t=p.expNNWindowed(m,n,o);$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=-1;return t;case 5:v=(u=n.$length-1>>0,((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]));w=AE(v)+1>>>0;v=(x=(w),x<32?(v<<x):0)>>>0;y=BX.nil;z=32-(w>>0)>>0;aa=BX.nil;ab=BX.nil;ac=aa;ad=ab;ae=0;case 10:if(!(ae<z)){$s=11;continue;}ac=ac.mul(p,p);af=p;ag=ac;ac=af;p=ag;if(!((((v&2147483648)>>>0)===0))){ac=ac.mul(p,m);ah=p;ai=ac;ac=ah;p=ai;}if(!((o.$length===0))){$s=12;continue;}$s=13;continue;case 12:ak=ac.div(ad,p,o);$s=14;case 14:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ac=aj[0];ad=aj[1];al=y;am=p;an=ac;ao=ad;ac=al;ad=am;y=an;p=ao;case 13:v=(ap=(1),ap<32?(v<<ap):0)>>>0;ae=ae+(1)>>0;$s=10;continue;case 11:aq=n.$length-2>>0;case 15:if(!(aq>=0)){$s=16;continue;}v=((aq<0||aq>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+aq]);ar=0;case 17:if(!(ar<32)){$s=18;continue;}ac=ac.mul(p,p);as=p;at=ac;ac=as;p=at;if(!((((v&2147483648)>>>0)===0))){ac=ac.mul(p,m);au=p;av=ac;ac=au;p=av;}if(!((o.$length===0))){$s=19;continue;}$s=20;continue;case 19:ax=ac.div(ad,p,o);$s=21;case 21:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ac=aw[0];ad=aw[1];ay=y;az=p;ba=ac;bb=ad;ac=ay;ad=az;y=ba;p=bb;case 20:v=(bc=(1),bc<32?(v<<bc):0)>>>0;ar=ar+(1)>>0;$s=17;continue;case 18:aq=aq-(1)>>0;$s=15;continue;case 16:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNN};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNN=function(m,n,o){return this.$get().expNN(m,n,o);};BX.prototype.expNNWindowed=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=BX.nil;r=BX.nil;s=q;t=r;u=DT.zero();u[0]=BY;u[1]=m;v=2;case 1:if(!(v<16)){$s=2;continue;}w=$indexPtr(u,(x=v/2,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero")),DS);y=$indexPtr(u,v,DS);z=$indexPtr(u,(v+1>>0),DS);aa=w;ab=y;ac=z;ab.$set(ab.mul(aa.$get(),aa.$get()));ae=s.div(t,ab.$get(),o);$s=3;case 3:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;s=ad[0];t=ad[1];af=t;ag=ab.$get();ab.$set(af);t=ag;ac.$set(ac.mul(ab.$get(),m));ai=s.div(t,ac.$get(),o);$s=4;case 4:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;s=ah[0];t=ah[1];aj=t;ak=ac.$get();ac.$set(aj);t=ak;v=v+(2)>>0;$s=1;continue;case 2:p=p.setWord(1);al=n.$length-1>>0;case 5:if(!(al>=0)){$s=6;continue;}am=((al<0||al>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+al]);an=0;case 7:if(!(an<32)){$s=8;continue;}if(!((al===(n.$length-1>>0)))||!((an===0))){$s=9;continue;}$s=10;continue;case 9:s=s.mul(p,p);ao=p;ap=s;s=ao;p=ap;ar=s.div(t,p,o);$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=ar;s=aq[0];t=aq[1];as=t;at=p;p=as;t=at;s=s.mul(p,p);au=p;av=s;s=au;p=av;ax=s.div(t,p,o);$s=12;case 12:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;s=aw[0];t=aw[1];ay=t;az=p;p=ay;t=az;s=s.mul(p,p);ba=p;bb=s;s=ba;p=bb;bd=s.div(t,p,o);$s=13;case 13:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;s=bc[0];t=bc[1];be=t;bf=p;p=be;t=bf;s=s.mul(p,p);bg=p;bh=s;s=bg;p=bh;bj=s.div(t,p,o);$s=14;case 14:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bi=bj;s=bi[0];t=bi[1];bk=t;bl=p;p=bk;t=bl;case 10:s=s.mul(p,(bm=am>>>28>>>0,((bm<0||bm>=u.length)?($throwRuntimeError("index out of range"),undefined):u[bm])));bn=p;bo=s;s=bn;p=bo;bq=s.div(t,p,o);$s=15;case 15:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}bp=bq;s=bp[0];t=bp[1];br=t;bs=p;p=br;t=bs;am=(bt=(4),bt<32?(am<<bt):0)>>>0;an=an+(4)>>0;$s=7;continue;case 8:al=al-(1)>>0;$s=5;continue;case 6:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNNWindowed};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNNWindowed=function(m,n,o){return this.$get().expNNWindowed(m,n,o);};BX.prototype.expNNMontgomery=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=o.$length;if(m.$length>q){$s=1;continue;}$s=2;continue;case 1:s=BX.nil.div(BX.nil,m,o);$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;m=r[1];case 2:if(m.$length<q){t=$makeSlice(BX,q);$copySlice(t,m);m=t;}u=2-(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])>>>0;v=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])-1>>>0;w=1;while(true){if(!(w<32)){break;}v=$imul(v,(v))>>>0;u=$imul(u,(((v+1>>>0))))>>>0;w=(x=(1),x<32?(w<<x):0)>>0;}u=-u>>>0;y=BX.nil.setWord(1);z=BX.nil.shl(y,(($imul(($imul(2,q)),32))>>>0));ab=y.div(y,z,o);$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;y=aa[1];if(y.$length<q){z=z.make(q);$copySlice(z,y);y=z;}ac=$makeSlice(BX,q);(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]=1);ad=DT.zero();ad[0]=ad[0].montgomery(ac,y,o,u,q);ad[1]=ad[1].montgomery(m,y,o,u,q);ae=2;while(true){if(!(ae<16)){break;}((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]=((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]).montgomery((af=ae-1>>0,((af<0||af>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[af])),ad[1],o,u,q));ae=ae+(1)>>0;}p=p.make(q);$copySlice(p,ad[0]);z=z.make(q);ag=n.$length-1>>0;while(true){if(!(ag>=0)){break;}ah=((ag<0||ag>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+ag]);ai=0;while(true){if(!(ai<32)){break;}if(!((ag===(n.$length-1>>0)))||!((ai===0))){z=z.montgomery(p,p,o,u,q);p=p.montgomery(z,z,o,u,q);z=z.montgomery(p,p,o,u,q);p=p.montgomery(z,z,o,u,q);}z=z.montgomery(p,(aj=ah>>>28>>>0,((aj<0||aj>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[aj])),o,u,q);ak=z;al=p;p=ak;z=al;ah=(am=(4),am<32?(ah<<am):0)>>>0;ai=ai+(4)>>0;}ag=ag-(1)>>0;}z=z.montgomery(p,ac,o,u,q);if(z.cmp(o)>=0){$s=5;continue;}$s=6;continue;case 5:z=z.sub(z,o);if(z.cmp(o)>=0){$s=7;continue;}$s=8;continue;case 7:ao=BX.nil.div(BX.nil,z,o);$s=9;case 9:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;z=an[1];case 8:case 6:$s=-1;return z.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNNMontgomery};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNNMontgomery=function(m,n,o){return this.$get().expNNMontgomery(m,n,o);};BX.prototype.bytes=function(m){var $ptr,m,n,o,p,q,r,s,t;n=0;o=this;n=m.$length;p=o;q=0;while(true){if(!(q<p.$length)){break;}r=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);s=0;while(true){if(!(s<4)){break;}n=n-(1)>>0;((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]=(r<<24>>>24));r=(t=(8),t<32?(r>>>t):0)>>>0;s=s+(1)>>0;}q++;}while(true){if(!(n<m.$length&&(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])===0))){break;}n=n+(1)>>0;}return n;};$ptrType(BX).prototype.bytes=function(m){return this.$get().bytes(m);};BX.prototype.setBytes=function(m){var $ptr,m,n,o,p,q,r,s,t,u;n=this;n=n.make((o=(((m.$length+4>>0)-1>>0))/4,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero")));p=0;q=0;r=0;s=m.$length;while(true){if(!(s>0)){break;}r=(r|(((t=q,t<32?(((u=s-1>>0,((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]))>>>0)<<t):0)>>>0)))>>>0;q=q+(8)>>>0;if(q===32){((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p]=r);p=p+(1)>>0;q=0;r=0;}s=s-(1)>>0;}if(p<n.$length){((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p]=r);}return n.norm();};$ptrType(BX).prototype.setBytes=function(m){return this.$get().setBytes(m);};BX.prototype.sqrt=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.cmp(BY)<=0){$s=-1;return n.set(m);}if(CG(n,m)){n=BX.nil;}o=BX.nil;p=BX.nil;q=o;r=p;q=n;q=q.setUint64(new $Uint64(0,1));q=q.shl(q,(((s=m.bitLen()/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))+1>>0)>>>0));t=0;case 1:v=r.div(BX.nil,m,q);$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;r=u[0];r=r.add(r,q);r=r.shr(r,1);if(r.cmp(q)>=0){if((t&1)===0){$s=-1;return q;}$s=-1;return n.set(q);}w=r;x=q;q=w;r=x;t=t+(1)>>0;$s=1;continue;case 2:$s=-1;return BX.nil;}return;}if($f===undefined){$f={$blk:BX.prototype.sqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.sqrt=function(m){return this.$get().sqrt(m);};CR=function(m){var $ptr,m,n,o,p,q,r,s;n=0;o=0;p=m;q=1;n=p;o=q;s=(r=4294967295/m,(r===r&&r!==1/0&&r!==-1/0)?r>>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(n<=s)){break;}n=$imul(n,(m))>>>0;o=o+(1)>>0;}return[n,o];};CS=function(m,n){var $ptr,m,n,o;o=0;o=1;while(true){if(!(n>0)){break;}if(!(((n&1)===0))){o=$imul(o,(m))>>>0;}m=$imul(m,(m))>>>0;n=(n>>$min((1),31))>>0;}return o;};BX.prototype.scan=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=0;r=0;s=$ifaceNil;t=this;u=(n===0)||!o&&2<=n&&n<=36||o&&((n===2)||(n===10)||(n===16));if(!u){$s=1;continue;}$s=2;continue;case 1:v=A.Sprintf("illegal number base %d",new DI([new $Int(n)]));$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$panic(new $String(v));case 2:x=m.ReadByte();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];s=w[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[p,q,r,s];}q=n;if(n===0){$s=5;continue;}$s=6;continue;case 5:q=10;if(y===48){$s=7;continue;}$s=8;continue;case 7:r=1;aa=m.ReadByte();$s=10;case 10:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;y=z[0];s=z[1];ab=s;if($interfaceIsEqual(ab,$ifaceNil)){$s=11;continue;}if($interfaceIsEqual(ab,(C.EOF))){$s=12;continue;}$s=13;continue;case 11:if(!o){q=8;}ac=y;if((ac===(120))||(ac===(88))){q=16;}else if((ac===(98))||(ac===(66))){q=2;}ad=q;if((ad===(16))||(ad===(2))){$s=16;continue;}if(ad===(8)){$s=17;continue;}$s=18;continue;case 16:r=0;af=m.ReadByte();$s=19;case 19:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;y=ae[0];s=ae[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[p,q,r,s];}$s=18;continue;case 17:r=0;case 18:case 15:$s=14;continue;case 12:p=$subslice(t,0,0);s=$ifaceNil;$s=-1;return[p,q,r,s];case 13:$s=-1;return[p,q,r,s];case 14:case 9:case 8:case 6:t=$subslice(t,0,0);ag=(q>>>0);ah=CR(ag);ai=ah[0];aj=ah[1];ak=0;al=0;am=-1;case 20:if(o&&(y===46)){$s=22;continue;}$s=23;continue;case 22:o=false;am=r;ao=m.ReadByte();$s=24;case 24:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;y=an[0];s=an[1];if(!($interfaceIsEqual(s,$ifaceNil))){if($interfaceIsEqual(s,C.EOF)){s=$ifaceNil;$s=21;continue;}$s=-1;return[p,q,r,s];}case 23:ap=0;if(48<=y&&y<=57){ap=((y-48<<24>>>24)>>>0);}else if(97<=y&&y<=122){ap=(((y-97<<24>>>24)+10<<24>>>24)>>>0);}else if(65<=y&&y<=90){ap=(((y-65<<24>>>24)+10<<24>>>24)>>>0);}else{ap=37;}if(ap>=ag){$s=25;continue;}$s=26;continue;case 25:aq=m.UnreadByte();$s=27;case 27:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}aq;$s=21;continue;case 26:r=r+(1)>>0;ak=($imul(ak,ag)>>>0)+ap>>>0;al=al+(1)>>0;if(al===aj){t=t.mulAddWW(t,ai,ak);ak=0;al=0;}as=m.ReadByte();$s=28;case 28:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;y=ar[0];s=ar[1];if(!($interfaceIsEqual(s,$ifaceNil))){if($interfaceIsEqual(s,C.EOF)){s=$ifaceNil;$s=21;continue;}$s=-1;return[p,q,r,s];}$s=20;continue;case 21:if(r===0){if((n===0)&&(q===8)){r=1;q=10;}else if(!((n===0))||!((q===8))){s=I.New("syntax error scanning number");}$s=-1;return[p,q,r,s];}if(al>0){t=t.mulAddWW(t,CS(ag,al),ak);}p=t.norm();if(am>=0){r=am-r>>0;}$s=-1;return[p,q,r,s];}return;}if($f===undefined){$f={$blk:BX.prototype.scan};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.scan=function(m,n,o){return this.$get().scan(m,n,o);};BX.prototype.utoa=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=n.itoa(false,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BX.prototype.utoa};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.utoa=function(m){return this.$get().utoa(m);};BX.prototype.itoa=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(n<2||n>36){$panic(new $String("invalid base"));}if(o.$length===0){$s=-1;return new DM($stringToBytes("0"));}p=(o.bitLen()/B.Log2(n)>>0)+1>>0;if(m){p=p+(1)>>0;}q=$makeSlice(DM,p);r=(n>>>0);if(r===((r&(-r>>>0))>>>0)){$s=1;continue;}$s=2;continue;case 1:s=CP(r);u=(((t=s,t<32?(1<<t):0)>>>0)-1>>>0);v=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]);w=32;x=1;while(true){if(!(x<o.$length)){break;}while(true){if(!(w>=s)){break;}p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(y=(s),y<32?(v>>>y):0)>>>0;w=w-(s)>>>0;}if(w===0){v=((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x]);w=32;}else{v=(v|(((z=w,z<32?(((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x])<<z):0)>>>0)))>>>0;p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(aa=((s-w>>>0)),aa<32?(((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x])>>>aa):0)>>>0;w=32-((s-w>>>0))>>>0;}x=x+(1)>>0;}while(true){if(!(!((v===0)))){break;}p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(ab=(s),ab<32?(v>>>ab):0)>>>0;}$s=3;continue;case 2:ac=CR(r);ad=ac[0];ae=ac[1];af=CW(o.$length,r,ae,ad);$s=4;case 4:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;ah=BX.nil.set(o);$r=ah.convertWords(q,r,ae,ad,ag);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=0;while(true){if(!(((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p])===48)){break;}p=p+(1)>>0;}case 3:if(m){p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]=45);}$s=-1;return $subslice(q,p);}return;}if($f===undefined){$f={$blk:BX.prototype.itoa};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.itoa=function(m,n){return this.$get().itoa(m,n);};BX.prototype.convertWords=function(m,n,o,p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:r=this;if(!(q===DU.nil)){$s=1;continue;}$s=2;continue;case 1:s=BX.nil;t=q.$length-1>>0;case 3:if(!(r.$length>CT)){$s=4;continue;}u=r.bitLen();v=u>>1>>0;while(true){if(!(t>0&&(w=t-1>>0,((w<0||w>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+w])).nbits>v)){break;}t=t-(1)>>0;}if(((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).nbits>=u&&((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).bbb.cmp(r)>=0){t=t-(1)>>0;if(t<0){$panic(new $String("internal inconsistency"));}}y=r.div(s,r,((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).bbb);$s=5;case 5:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y;r=x[0];s=x[1];z=m.$length-((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).ndigits>>0;$r=s.convertWords($subslice(m,z),n,o,p,$subslice(q,0,t));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}m=$subslice(m,0,z);$s=3;continue;case 4:case 2:aa=m.$length;ab=0;if(n===10){while(true){if(!(r.$length>0)){break;}ac=r.divW(r,p);r=ac[0];ab=ac[1];ad=0;while(true){if(!(ad<o&&aa>0)){break;}aa=aa-(1)>>0;af=(ae=ab/10,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"));((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=(48+((ab-($imul(af,10)>>>0)>>>0)<<24>>>24)<<24>>>24));ab=af;ad=ad+(1)>>0;}}}else{while(true){if(!(r.$length>0)){break;}ag=r.divW(r,p);r=ag[0];ab=ag[1];ah=0;while(true){if(!(ah<o&&aa>0)){break;}aa=aa-(1)>>0;((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((ai=ab%n,ai===ai?ai:$throwRuntimeError("integer divide by zero"))));ab=(aj=ab/(n),(aj===aj&&aj!==1/0&&aj!==-1/0)?aj>>>0:$throwRuntimeError("integer divide by zero"));ah=ah+(1)>>0;}}}while(true){if(!(aa>0)){break;}aa=aa-(1)>>0;((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=48);}$s=-1;return;}return;}if($f===undefined){$f={$blk:BX.prototype.convertWords};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.convertWords=function(m,n,o,p,q){return this.$get().convertWords(m,n,o,p,q);};BX.prototype.expWW=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=o.expNN(BX.nil.setWord(m),BX.nil.setWord(n),BX.nil);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BX.prototype.expWW};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expWW=function(m,n){return this.$get().expWW(m,n);};CW=function(m,n,o,p){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if((CT===0)||m<=CT){$s=-1;return DU.nil;}q=1;r=CT;while(true){if(!(r<(m>>1>>0)&&q<64)){break;}q=q+(1)>>0;r=(s=(1),s<32?(r<<s):0)>>0;}t=DU.nil;if(n===10){CV.Mutex.Lock();t=$subslice(new DU(CV.table),0,q);}else{t=$makeSlice(DU,q);}if((u=q-1>>0,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u])).ndigits===0){$s=1;continue;}$s=2;continue;case 1:v=BX.nil;w=0;case 3:if(!(w<q)){$s=4;continue;}if(((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits===0){$s=5;continue;}$s=6;continue;case 5:if(w===0){$s=7;continue;}$s=8;continue;case 7:x=BX.nil.expWW(p,(CT>>>0));$s=10;case 10:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]).bbb=x;(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]).ndigits=$imul(o,CT);$s=9;continue;case 8:((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb=BX.nil.mul((y=w-1>>0,((y<0||y>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+y])).bbb,(z=w-1>>0,((z<0||z>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+z])).bbb);((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits=$imul(2,(aa=w-1>>0,((aa<0||aa>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+aa])).ndigits);case 9:v=BX.nil.set(((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb);while(true){if(!(S($subslice(new DO(v.$array),v.$offset,v.$offset+v.$length),$subslice(new DO(v.$array),v.$offset,v.$offset+v.$length),n,0)===0)){break;}((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb.set(v);((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits+(1)>>0;}((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).nbits=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb.bitLen();case 6:w=w+(1)>>0;$s=3;continue;case 4:case 2:if(n===10){CV.Mutex.Unlock();}$s=-1;return t;}return;}if($f===undefined){$f={$blk:CW};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.ProbablyPrime=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m<0){$panic(new $String("negative n for ProbablyPrime"));}if(n.neg||(n.abs.$length===0)){$s=-1;return false;}p=(o=n.abs,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));if((n.abs.$length===1)&&p<64){$s=-1;return!((q=(r=$shiftLeft64(new $Uint64(0,1),p),new $Uint64(673221152&r.$high,(2693408940&r.$low)>>>0)),(q.$high===0&&q.$low===0)));}if(((p&1)>>>0)===0){$s=-1;return false;}s=0;t=0;u=s;v=t;w=32;if(w===(32)){u=(n.abs.modW(4127218095)>>>0);v=(n.abs.modW(3948078067)>>>0);}else if(w===(64)){x=n.abs.modW(820596253);u=((y=x%4127218095,y===y?y:$throwRuntimeError("integer divide by zero"))>>>0);v=((z=x%3948078067,z===z?z:$throwRuntimeError("integer divide by zero"))>>>0);}else{$panic(new $String("math/big: invalid word size"));}if(((aa=u%3,aa===aa?aa:$throwRuntimeError("integer divide by zero"))===0)||((ab=u%5,ab===ab?ab:$throwRuntimeError("integer divide by zero"))===0)||((ac=u%7,ac===ac?ac:$throwRuntimeError("integer divide by zero"))===0)||((ad=u%11,ad===ad?ad:$throwRuntimeError("integer divide by zero"))===0)||((ae=u%13,ae===ae?ae:$throwRuntimeError("integer divide by zero"))===0)||((af=u%17,af===af?af:$throwRuntimeError("integer divide by zero"))===0)||((ag=u%19,ag===ag?ag:$throwRuntimeError("integer divide by zero"))===0)||((ah=u%23,ah===ah?ah:$throwRuntimeError("integer divide by zero"))===0)||((ai=u%37,ai===ai?ai:$throwRuntimeError("integer divide by zero"))===0)||((aj=v%29,aj===aj?aj:$throwRuntimeError("integer divide by zero"))===0)||((ak=v%31,ak===ak?ak:$throwRuntimeError("integer divide by zero"))===0)||((al=v%41,al===al?al:$throwRuntimeError("integer divide by zero"))===0)||((am=v%43,am===am?am:$throwRuntimeError("integer divide by zero"))===0)||((an=v%47,an===an?an:$throwRuntimeError("integer divide by zero"))===0)||((ao=v%53,ao===ao?ao:$throwRuntimeError("integer divide by zero"))===0)){$s=-1;return false;}aq=n.abs.probablyPrimeMillerRabin(m+1>>0,true);$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq)){ap=false;$s=1;continue s;}ar=n.abs.probablyPrimeLucas();$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;case 1:$s=-1;return ap;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ProbablyPrime};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ProbablyPrime=function(m){return this.$val.ProbablyPrime(m);};BX.prototype.probablyPrimeMillerRabin=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=BX.nil.sub(o,BY);q=p.trailingZeroBits();r=BX.nil.shr(p,q);s=BX.nil.sub(p,BZ);u=H.New(H.NewSource((t=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]),new $Int64(0,t.constructor===Number?t:1))));v=BX.nil;w=BX.nil;x=BX.nil;y=v;z=w;aa=x;ab=s.bitLen();ac=0;case 1:if(!(ac<m)){$s=2;continue;}if((ac===(m-1>>0))&&n){$s=3;continue;}$s=4;continue;case 3:y=y.set(BZ);$s=5;continue;case 4:ad=y.random(u,s,ab);$s=6;case 6:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}y=ad;y=y.add(y,BZ);case 5:ae=z.expNN(y,r,o);$s=7;case 7:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}z=ae;if((z.cmp(BY)===0)||(z.cmp(p)===0)){$s=8;continue;}$s=9;continue;case 8:ac=ac+(1)>>0;$s=1;continue;case 9:af=1;case 10:if(!(af<q)){$s=11;continue;}z=z.mul(z,z);ah=aa.div(z,z,o);$s=12;case 12:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;aa=ag[0];z=ag[1];if(z.cmp(p)===0){ac=ac+(1)>>0;$s=1;continue s;}if(z.cmp(BY)===0){$s=-1;return false;}af=af+(1)>>>0;$s=10;continue;case 11:$s=-1;return false;$s=1;continue;case 2:$s=-1;return true;}return;}if($f===undefined){$f={$blk:BX.prototype.probablyPrimeMillerRabin};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.probablyPrimeMillerRabin=function(m,n){return this.$get().probablyPrimeMillerRabin(m,n);};BX.prototype.probablyPrimeLucas=function(){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;if((m.$length===0)||(m.cmp(BY)===0)){$s=-1;return false;}if((((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])&1)>>>0)===0){$s=-1;return m.cmp(BZ)===0;}n=3;o=new BX([1]);p=BX.nil;q=new BO.ptr(false,o);r=new BO.ptr(false,m);case 1:if(n>10000){$s=3;continue;}$s=4;continue;case 3:s=r.String();$s=5;case 5:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$panic(new $String("math/big: internal error: cannot find (D/n) = -1 for "+s));case 4:(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]=(($imul(n,n)>>>0)-4>>>0));t=BT(q,r);$s=6;case 6:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=t;if(u===-1){$s=2;continue;}if(u===0){$s=-1;return(m.$length===1)&&((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===(n+2>>>0));}if(n===40){$s=7;continue;}$s=8;continue;case 7:v=p.sqrt(m);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}p=v;p=p.mul(p,p);if(p.cmp(m)===0){$s=-1;return false;}case 8:n=n+(1)>>>0;$s=1;continue;case 2:w=BX.nil.add(m,BY);x=(w.trailingZeroBits()>>0);w=w.shr(w,(x>>>0));y=BX.nil.sub(m,BZ);z=BX.nil.setWord(n);aa=BX.nil.setWord(2);ab=BX.nil.setWord(n);ac=BX.nil;ad=w.bitLen();case 10:if(!(ad>=0)){$s=11;continue;}if(!((w.bit((ad>>>0))===0))){$s=12;continue;}$s=13;continue;case 12:p=p.mul(aa,ab);p=p.add(p,m);p=p.sub(p,z);af=ac.div(aa,p,m);$s=15;case 15:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;ac=ae[0];aa=ae[1];p=p.mul(ab,ab);p=p.add(p,y);ah=ac.div(ab,p,m);$s=16;case 16:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;ac=ag[0];ab=ag[1];$s=14;continue;case 13:p=p.mul(aa,ab);p=p.add(p,m);p=p.sub(p,z);aj=ac.div(ab,p,m);$s=17;case 17:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ac=ai[0];ab=ai[1];p=p.mul(aa,aa);p=p.add(p,y);al=ac.div(aa,p,m);$s=18;case 18:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=al;ac=ak[0];aa=ak[1];case 14:ad=ad-(1)>>0;$s=10;continue;case 11:if((aa.cmp(BZ)===0)||(aa.cmp(y)===0)){$s=19;continue;}$s=20;continue;case 19:am=p.mul(aa,z);an=ac.shl(ab,1);if(am.cmp(an)<0){ao=an;ap=am;am=ao;an=ap;}am=am.sub(am,an);aq=ab;ab=BX.nil;$unused(ab);as=an.div(aq,am,m);$s=21;case 21:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;an=ar[0];aq=ar[1];if(aq.$length===0){$s=-1;return true;}case 20:at=0;case 22:if(!(at<(x-1>>0))){$s=23;continue;}if(aa.$length===0){$s=-1;return true;}if((aa.$length===1)&&((0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])===2)){$s=-1;return false;}p=p.mul(aa,aa);p=p.sub(p,BZ);av=ac.div(aa,p,m);$s=24;case 24:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}au=av;ac=au[0];aa=au[1];at=at+(1)>>0;$s=22;continue;case 23:$s=-1;return false;}return;}if($f===undefined){$f={$blk:BX.prototype.probablyPrimeLucas};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.probablyPrimeLucas=function(){return this.$get().probablyPrimeLucas();};DP.methods=[{prop:"Sign",name:"Sign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetInt64",name:"SetInt64",pkg:"",typ:$funcType([$Int64],[DP],false)},{prop:"SetUint64",name:"SetUint64",pkg:"",typ:$funcType([$Uint64],[DP],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[DO],false)},{prop:"SetBits",name:"SetBits",pkg:"",typ:$funcType([DO],[DP],false)},{prop:"Abs",name:"Abs",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"MulRange",name:"MulRange",pkg:"",typ:$funcType([$Int64,$Int64],[DP],false)},{prop:"Binomial",name:"Binomial",pkg:"",typ:$funcType([$Int64,$Int64],[DP],false)},{prop:"Quo",name:"Quo",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Rem",name:"Rem",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"QuoRem",name:"QuoRem",pkg:"",typ:$funcType([DP,DP,DP],[DP,DP],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"DivMod",name:"DivMod",pkg:"",typ:$funcType([DP,DP,DP],[DP,DP],false)},{prop:"Cmp",name:"Cmp",pkg:"",typ:$funcType([DP],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String,$Int],[DP,$Bool],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([DM],[DP],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[DM],false)},{prop:"BitLen",name:"BitLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Exp",name:"Exp",pkg:"",typ:$funcType([DP,DP,DP],[DP],false)},{prop:"GCD",name:"GCD",pkg:"",typ:$funcType([DP,DP,DP,DP],[DP],false)},{prop:"binaryGCD",name:"binaryGCD",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"Rand",name:"Rand",pkg:"",typ:$funcType([DW,DP],[DP],false)},{prop:"ModInverse",name:"ModInverse",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"modSqrt3Mod4Prime",name:"modSqrt3Mod4Prime",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"modSqrtTonelliShanks",name:"modSqrtTonelliShanks",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"ModSqrt",name:"ModSqrt",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Lsh",name:"Lsh",pkg:"",typ:$funcType([DP,$Uint],[DP],false)},{prop:"Rsh",name:"Rsh",pkg:"",typ:$funcType([DP,$Uint],[DP],false)},{prop:"Bit",name:"Bit",pkg:"",typ:$funcType([$Int],[$Uint],false)},{prop:"SetBit",name:"SetBit",pkg:"",typ:$funcType([DP,$Int,$Uint],[DP],false)},{prop:"And",name:"And",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"AndNot",name:"AndNot",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Or",name:"Or",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Xor",name:"Xor",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Not",name:"Not",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Sqrt",name:"Sqrt",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Text",name:"Text",pkg:"",typ:$funcType([$Int],[$String],false)},{prop:"Append",name:"Append",pkg:"",typ:$funcType([DM,$Int],[DM],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([A.State,$Int32],[],false)},{prop:"scan",name:"scan",pkg:"math/big",typ:$funcType([C.ByteScanner,$Int],[DP,$Int,$error],false)},{prop:"Scan",name:"Scan",pkg:"",typ:$funcType([A.ScanState,$Int32],[$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"ProbablyPrime",name:"ProbablyPrime",pkg:"",typ:$funcType([$Int],[$Bool],false)}];BW.methods=[{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)}];BX.methods=[{prop:"clear",name:"clear",pkg:"math/big",typ:$funcType([],[],false)},{prop:"norm",name:"norm",pkg:"math/big",typ:$funcType([],[BX],false)},{prop:"make",name:"make",pkg:"math/big",typ:$funcType([$Int],[BX],false)},{prop:"setWord",name:"setWord",pkg:"math/big",typ:$funcType([X],[BX],false)},{prop:"setUint64",name:"setUint64",pkg:"math/big",typ:$funcType([$Uint64],[BX],false)},{prop:"set",name:"set",pkg:"math/big",typ:$funcType([BX],[BX],false)},{prop:"add",name:"add",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"sub",name:"sub",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"cmp",name:"cmp",pkg:"math/big",typ:$funcType([BX],[$Int],false)},{prop:"mulAddWW",name:"mulAddWW",pkg:"math/big",typ:$funcType([BX,X,X],[BX],false)},{prop:"montgomery",name:"montgomery",pkg:"math/big",typ:$funcType([BX,BX,BX,X,$Int],[BX],false)},{prop:"mul",name:"mul",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"mulRange",name:"mulRange",pkg:"math/big",typ:$funcType([$Uint64,$Uint64],[BX],false)},{prop:"divW",name:"divW",pkg:"math/big",typ:$funcType([BX,X],[BX,X],false)},{prop:"div",name:"div",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX,BX],false)},{prop:"divLarge",name:"divLarge",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX,BX],false)},{prop:"bitLen",name:"bitLen",pkg:"math/big",typ:$funcType([],[$Int],false)},{prop:"trailingZeroBits",name:"trailingZeroBits",pkg:"math/big",typ:$funcType([],[$Uint],false)},{prop:"shl",name:"shl",pkg:"math/big",typ:$funcType([BX,$Uint],[BX],false)},{prop:"shr",name:"shr",pkg:"math/big",typ:$funcType([BX,$Uint],[BX],false)},{prop:"setBit",name:"setBit",pkg:"math/big",typ:$funcType([BX,$Uint,$Uint],[BX],false)},{prop:"bit",name:"bit",pkg:"math/big",typ:$funcType([$Uint],[$Uint],false)},{prop:"sticky",name:"sticky",pkg:"math/big",typ:$funcType([$Uint],[$Uint],false)},{prop:"and",name:"and",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"andNot",name:"andNot",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"or",name:"or",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"xor",name:"xor",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"modW",name:"modW",pkg:"math/big",typ:$funcType([X],[X],false)},{prop:"random",name:"random",pkg:"math/big",typ:$funcType([DW,BX,$Int],[BX],false)},{prop:"expNN",name:"expNN",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"expNNWindowed",name:"expNNWindowed",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"expNNMontgomery",name:"expNNMontgomery",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"bytes",name:"bytes",pkg:"math/big",typ:$funcType([DM],[$Int],false)},{prop:"setBytes",name:"setBytes",pkg:"math/big",typ:$funcType([DM],[BX],false)},{prop:"sqrt",name:"sqrt",pkg:"math/big",typ:$funcType([BX],[BX],false)},{prop:"scan",name:"scan",pkg:"math/big",typ:$funcType([C.ByteScanner,$Int,$Bool],[BX,$Int,$Int,$error],false)},{prop:"utoa",name:"utoa",pkg:"math/big",typ:$funcType([$Int],[DM],false)},{prop:"itoa",name:"itoa",pkg:"math/big",typ:$funcType([$Bool,$Int],[DM],false)},{prop:"convertWords",name:"convertWords",pkg:"math/big",typ:$funcType([DM,X,$Int,X,DU],[],false)},{prop:"expWW",name:"expWW",pkg:"math/big",typ:$funcType([X,X],[BX],false)},{prop:"probablyPrimeMillerRabin",name:"probablyPrimeMillerRabin",pkg:"math/big",typ:$funcType([$Int,$Bool],[$Bool],false)},{prop:"probablyPrimeLucas",name:"probablyPrimeLucas",pkg:"math/big",typ:$funcType([],[$Bool],false)}];BO.init("math/big",[{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""},{prop:"abs",name:"abs",exported:false,typ:BX,tag:""}]);BW.init("",[{prop:"ScanState",name:"",exported:true,typ:A.ScanState,tag:""}]);BX.init(X);CU.init("math/big",[{prop:"bbb",name:"bbb",exported:false,typ:BX,tag:""},{prop:"nbits",name:"nbits",exported:false,typ:$Int,tag:""},{prop:"ndigits",name:"ndigits",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=F.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CM=new J.Pool.ptr(DI.nil,$throwNilPointerError);CV=new DK.ptr(new J.Mutex.ptr(false),DJ.zero());BY=new BX([1]);BP=new BO.ptr(false,BY);BZ=new BX([2]);CE=40;CN=$toNativeArray($kindUint8,[0,1,28,2,29,14,24,3,30,22,20,15,25,17,4,8,31,27,13,23,21,19,16,7,26,12,18,6,11,5,10,9]);CO=$toNativeArray($kindUint8,[0,1,56,2,57,49,28,3,61,58,42,50,38,29,17,4,62,47,59,36,45,43,51,22,53,39,33,30,24,18,12,5,63,55,48,27,60,41,37,16,46,35,44,21,52,32,23,11,54,26,40,15,34,20,31,10,25,14,19,9,13,8,7,6]);CT=8;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/rand"]=(function(){var $pkg={},$init,A,B,C,D,F,L,N,I,E,G;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["io"];D=$packages["math/big"];F=$pkg.rngReader=$newType(0,$kindStruct,"rand.rngReader",true,"crypto/rand",false,function(){this.$val=this;if(arguments.length===0){return;}});L=$sliceType($Uint8);N=$ptrType(F);E=function(){var $ptr;$pkg.Reader=new F.ptr();};F.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=$ifaceNil;d=this;e=a.$array;f=$parseInt(a.$offset)>>0;g=$global.crypto;if(g===undefined){g=$global.msCrypto;}if(!(g===undefined)){if(!(g.getRandomValues===undefined)){b=a.$length;if(b>65536){b=65536;}g.getRandomValues(e.subarray(f,f+b>>0));h=b;i=$ifaceNil;b=h;c=i;return[b,c];}}j=$global.require;if(!(j===undefined)){k=j($externalize("crypto",$String)).randomBytes;if(!(k===undefined)){e.set(k(a.$length),f);l=a.$length;m=$ifaceNil;b=l;c=m;return[b,c];}}n=0;o=A.New("crypto/rand not available in this environment");b=n;c=o;return[b,c];};F.prototype.Read=function(a){return this.$val.Read(a);};G=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;e=C.ReadFull($pkg.Reader,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;b=d[0];c=d[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:G};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Read=G;N.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([L],[$Int,$error],false)}];F.init("",[]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Reader=$ifaceNil;I=new D.Int.ptr(false,D.nat.nil).SetUint64(new $Uint64(3793877372,820596253));E();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/random"]=(function(){var $pkg={},$init,A,B,C,D,O,P,Q,R,E,L,M,N;A=$packages["crypto/cipher"];B=$packages["crypto/rand"];C=$packages["encoding/binary"];D=$packages["math/big"];O=$pkg.randstream=$newType(0,$kindStruct,"random.randstream",true,"gopkg.in/dedis/crypto.v0/random",false,function(){this.$val=this;if(arguments.length===0){return;}});P=$sliceType($Uint8);Q=$ptrType(D.Int);R=$ptrType(O);E=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=$makeSlice(P,(d=((a+7>>>0))/8,(d===d&&d!==1/0&&d!==-1/0)?d>>>0:$throwRuntimeError("integer divide by zero")));$r=c.XORKeyStream(e,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(a&7)>>>0;if(!((f===0))){(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])&((~(((g=f,g<32?(255<<g):0)<<24>>>24))<<24>>>24)))>>>0));}if(b){if(!((f===0))){(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])|(((h=((f-1>>>0)),h<32?(1<<h):0)<<24>>>24)))>>>0));}else{(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])|(128))>>>0));}}$s=-1;return e;}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bits=E;L=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=(a.BitLen()>>>0);d=new D.Int.ptr(false,D.nat.nil);case 1:e=E(c,false,b);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=d.SetBytes(e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;if(d.Sign()>0&&d.Cmp(a)<0){$s=-1;return d;}$s=1;continue;case 2:$s=-1;return Q.nil;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Int=L;M=function(a,b){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=$makeSlice(P,a);$r=b.XORKeyStream(c,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:M};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bytes=M;N=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=P.nil;case 1:d=M(a,b);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!((g===0))){$s=-1;return c;}f++;}$s=1;continue;case 2:$s=-1;return c;}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NonZeroBytes=N;O.ptr.prototype.XORKeyStream=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=a.$length;if(!((b.$length===d))){$panic(new $String("XORKeyStream: mismatched buffer lengths"));}e=$makeSlice(P,d);g=B.Read(e);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual(i,$ifaceNil))){$panic(i);}if(h<e.$length){$panic(new $String("short read on infinite random stream!?"));}j=0;while(true){if(!(j<d)){break;}((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=((((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j])^((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))<<24>>>24));j=j+(1)>>0;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.XORKeyStream};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.XORKeyStream=function(a,b){return this.$val.XORKeyStream(a,b);};R.methods=[{prop:"XORKeyStream",name:"XORKeyStream",pkg:"",typ:$funcType([P,P],[],false)}];O.init("",[]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Stream=new O.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,W;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",true,"log",true,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"),undefined):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"),undefined):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:e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,$clone(b,F.Time).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=$clone(b,F.Time).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=$clone(b,F.Time).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=$clone(b,F.Time).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=$substring(c,(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;return;}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))),$clone(d,F.Time),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];$s=-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;return;}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;return;}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;return;}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;return;}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;return;}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;return;}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;return;}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;return;}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;return;}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);};W=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=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=I.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;return;}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.$s=$s;$f.$r=$r;return $f;};$pkg.Panicf=W;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("log",[{prop:"mu",name:"mu",exported:false,typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",exported:false,typ:$String,tag:""},{prop:"flag",name:"flag",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:B.Writer,tag:""},{prop:"buf",name:"buf",exported:false,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["gopkg.in/dedis/crypto.v0/cipher"]=(function(){var $pkg={},$init,A,L,I,B,G,C,J,K,D,E,F,H,R,S,U,V,W,AB,AC,AD,AF,AG,AH,Z,T,X;A=$packages["crypto/cipher"];L=$packages["crypto/hmac"];I=$packages["encoding/binary"];B=$packages["errors"];G=$packages["fmt"];C=$packages["gopkg.in/dedis/crypto.v0/abstract"];J=$packages["gopkg.in/dedis/crypto.v0/ints"];K=$packages["gopkg.in/dedis/crypto.v0/random"];D=$packages["gopkg.in/dedis/crypto.v0/subtle"];E=$packages["gopkg.in/dedis/crypto.v0/util"];F=$packages["hash"];H=$packages["log"];R=$pkg.cipherHash=$newType(0,$kindStruct,"cipher.cipherHash",true,"gopkg.in/dedis/crypto.v0/cipher",false,function(cipher_,cur_,size_){this.$val=this;if(arguments.length===0){this.cipher=$throwNilPointerError;this.cur=new C.Cipher.ptr($ifaceNil);this.size=0;return;}this.cipher=cipher_;this.cur=cur_;this.size=size_;});S=$pkg.cipherBlockSize=$newType(8,$kindInterface,"cipher.cipherBlockSize",true,"gopkg.in/dedis/crypto.v0/cipher",false,null);U=$pkg.Sponge=$newType(8,$kindInterface,"cipher.Sponge",true,"gopkg.in/dedis/crypto.v0/cipher",true,null);V=$pkg.Padding=$newType(1,$kindUint8,"cipher.Padding",true,"gopkg.in/dedis/crypto.v0/cipher",true,null);W=$pkg.spongeCipher=$newType(0,$kindStruct,"cipher.spongeCipher",true,"gopkg.in/dedis/crypto.v0/cipher",false,function(sponge_,rate_,cap_,pad_,buf_,pos_){this.$val=this;if(arguments.length===0){this.sponge=$ifaceNil;this.rate=0;this.cap=0;this.pad=0;this.buf=AB.nil;this.pos=0;return;}this.sponge=sponge_;this.rate=rate_;this.cap=cap_;this.pad=pad_;this.buf=buf_;this.pos=pos_;});AB=$sliceType($Uint8);AC=$sliceType($emptyInterface);AD=$sliceType($Int);AF=$ptrType(R);AG=$funcType([AB,AC],[C.Cipher],true);AH=$ptrType(W);T=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 R.ptr($throwNilPointerError,new C.Cipher.ptr($ifaceNil),0);c.cipher=a;d=a(C.NoKey,new AC([]));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}C.Cipher.copy(c.cur,d);c.size=b;$s=-1;return c;}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewHash=T;R.ptr.prototype.Write=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=$clone(b.cur,C.Cipher).Partial(AB.nil,AB.nil,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return[a.$length,$ifaceNil];}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};R.prototype.Write=function(a){return this.$val.Write(a);};R.ptr.prototype.Sum=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=$clone(b.cur,C.Cipher).Clone();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$clone(c,C.Cipher);e=$clone(d,C.Cipher).Message(AB.nil,AB.nil,AB.nil);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;f=E.Grow(a,b.size);a=f[0];g=f[1];h=$clone(d,C.Cipher).Partial(g,AB.nil,AB.nil);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=-1;return a;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};R.prototype.Sum=function(a){return this.$val.Sum(a);};R.ptr.prototype.Reset=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.cipher(C.NoKey,new AC([]));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}C.Cipher.copy(a.cur,b);$s=-1;return;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Reset};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};R.prototype.Reset=function(){return this.$val.Reset();};R.ptr.prototype.Size=function(){var $ptr,a;a=this;return a.size;};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.BlockSize=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;b=$assertType(a.cur.CipherState,S,true);c=b[0];d=b[1];if(!d){$s=-1;return 1;}e=c.BlockSize();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.BlockSize};}$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;};R.prototype.BlockSize=function(){return this.$val.BlockSize();};V.prototype.String=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;b=G.Sprintf("Padding: %x",new AC([new $Uint8((a<<24>>>24))]));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:V.prototype.String};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(V).prototype.String=function(){return new V(this.$get()).String();};X=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=[d];d[0]=new W.ptr($ifaceNil,0,0,0,AB.nil,0);d[0].sponge=a;e=a.Rate();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d[0].rate=e;f=a.Capacity();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d[0].cap=f;d[0].pad=127;d[0].buf=$makeSlice(AB,(d[0].rate+d[0].cap>>0));d[0].pos=0;g=d[0].parseOptions(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;if(b===AB.nil){$s=4;continue;}$s=5;continue;case 4:h=a.Capacity();$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=K.Bytes(h,K.Stream);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}b=i;case 5:if(b.$length>0){$s=8;continue;}$s=9;continue;case 8:$r=d[0].Message(AB.nil,AB.nil,b);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:d[0].setDomain(2,0);$s=-1;return new C.Cipher.ptr(d[0]);}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.$s=$s;$f.$r=$r;return $f;};$pkg.FromSponge=X;W.ptr.prototype.parseOptions=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;c=false;d=a;e=0;case 1:if(!(e<d.$length)){$s=2;continue;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);g=f;if($assertType(g,V,true)[1]){$s=3;continue;}$s=4;continue;case 3:h=g.$val;b.pad=(h<<24>>>24);$s=5;continue;case 4:i=g;$r=H.Panicf("Unsupported option %v",new AC([f]));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:e++;$s=1;continue;case 2:$s=-1;return c;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.parseOptions};}$f.$ptr=$ptr;$f.a=a;$f.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;};W.prototype.parseOptions=function(a){return this.$val.parseOptions(a);};W.ptr.prototype.setDomain=function(a,b){var $ptr,a,b,c,d,e;c=this;(d=c.buf,e=(c.rate+c.cap>>0)-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]=2));$clone(I.LittleEndian,I.littleEndian).PutUint64($subslice(c.buf,c.rate),new $Uint64(0,b));};W.prototype.setDomain=function(a,b){return this.$val.setDomain(a,b);};W.ptr.prototype.padMessage=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;b=a.rate;c=a.pos;d=a.buf;if(c===b){$s=1;continue;}$s=2;continue;case 1:$r=a.sponge.Transform(d,$subslice(d,0,b));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=0;case 2:((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]=a.pad);c=c+(1)>>0;while(true){if(!(c<b)){break;}((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]=0);c=c+(1)>>0;}e=b-1>>0;((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]=((((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])^(128))<<24>>>24));$r=a.sponge.Transform(d,$subslice(d,0,b));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a.pos=0;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.padMessage};}$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;};W.prototype.padMessage=function(){return this.$val.padMessage();};W.ptr.prototype.Partial=function(a,b,c){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:d=this;e=d.sponge;f=d.rate;g=d.buf;h=d.pos;i=J.Max(a.$length,new AD([b.$length,c.$length]));case 1:if(!(i>0)){$s=2;continue;}if(h===f){$s=3;continue;}$s=4;continue;case 3:$r=e.Transform(g,$subslice(g,0,f));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=0;case 4:j=J.Min(i,new AD([f-h>>0]));k=J.Min(j,new AD([a.$length]));l=J.Min(k,new AD([b.$length]));m=0;while(true){if(!(m<l)){break;}((m<0||m>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+m]=((((m<0||m>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+m])^(n=h+m>>0,((n<0||n>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+n])))<<24>>>24));m=m+(1)>>0;}$copySlice($subslice(a,l,k),$subslice(g,(h+l>>0)));a=$subslice(a,k);b=$subslice(b,l);o=J.Min(j,new AD([c.$length]));$copySlice($subslice(g,h),$subslice(c,0,o));p=o;while(true){if(!(p<j)){break;}(q=h+p>>0,((q<0||q>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+q]=0));p=p+(1)>>0;}c=$subslice(c,o);h=h+(j)>>0;i=i-(j)>>0;$s=1;continue;case 2:d.pos=h;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Partial};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.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;};W.prototype.Partial=function(a,b,c){return this.$val.Partial(a,b,c);};W.ptr.prototype.Message=function(a,b,c){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:d=this;$r=d.Partial(a,b,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.padMessage();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Message};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.Message=function(a,b,c){return this.$val.Message(a,b,c);};W.ptr.prototype.clone=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=[a];b=this;a[0]=$clone(b,W);c=b.sponge.Clone();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a[0].sponge=c;a[0].buf=$makeSlice(AB,(b.rate+b.cap>>0));$copySlice(a[0].buf,b.buf);$s=-1;return a[0];}return;}if($f===undefined){$f={$blk:W.ptr.prototype.clone};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.clone=function(){return this.$val.clone();};W.ptr.prototype.Clone=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.clone();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Clone};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.Clone=function(){return this.$val.Clone();};W.ptr.prototype.KeySize=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.sponge.Capacity();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b>>1>>0;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.KeySize};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.KeySize=function(){return this.$val.KeySize();};W.ptr.prototype.HashSize=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.sponge.Capacity();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.HashSize};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.HashSize=function(){return this.$val.HashSize();};W.ptr.prototype.BlockSize=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.sponge.Rate();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.BlockSize};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.BlockSize=function(){return this.$val.BlockSize();};AF.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([AB],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([AB],[AB],false)},{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)}];V.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];AH.methods=[{prop:"parseOptions",name:"parseOptions",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([AC],[$Bool],false)},{prop:"setDomain",name:"setDomain",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([$Uint8,$Int],[],false)},{prop:"padMessage",name:"padMessage",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([],[],false)},{prop:"Partial",name:"Partial",pkg:"",typ:$funcType([AB,AB,AB],[],false)},{prop:"Message",name:"Message",pkg:"",typ:$funcType([AB,AB,AB],[],false)},{prop:"special",name:"special",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([$Uint8,$Int],[],false)},{prop:"clone",name:"clone",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([],[AH],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[C.CipherState],false)},{prop:"KeySize",name:"KeySize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"HashSize",name:"HashSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)}];R.init("gopkg.in/dedis/crypto.v0/cipher",[{prop:"cipher",name:"cipher",exported:false,typ:AG,tag:""},{prop:"cur",name:"cur",exported:false,typ:C.Cipher,tag:""},{prop:"size",name:"size",exported:false,typ:$Int,tag:""}]);S.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)}]);U.init([{prop:"Capacity",name:"Capacity",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[U],false)},{prop:"Rate",name:"Rate",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Transform",name:"Transform",pkg:"",typ:$funcType([AB,AB],[],false)}]);W.init("gopkg.in/dedis/crypto.v0/cipher",[{prop:"sponge",name:"sponge",exported:false,typ:U,tag:""},{prop:"rate",name:"rate",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:$Int,tag:""},{prop:"pad",name:"pad",exported:false,typ:$Uint8,tag:""},{prop:"buf",name:"buf",exported:false,typ:AB,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$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=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Z=$makeSlice(AB,1024);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/clique"]=(function(){var $pkg={},$init,A;A=$packages["gopkg.in/dedis/crypto.v0/abstract"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/proof"]=(function(){var $pkg={},$init,A,B,C,D;A=$packages["bytes"];B=$packages["errors"];C=$packages["gopkg.in/dedis/crypto.v0/abstract"];D=$packages["gopkg.in/dedis/crypto.v0/clique"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/shuffle"]=(function(){var $pkg={},$init,D,E,A,B,C;D=$packages["crypto/cipher"];E=$packages["errors"];A=$packages["gopkg.in/dedis/crypto.v0/abstract"];B=$packages["gopkg.in/dedis/crypto.v0/proof"];C=$packages["gopkg.in/dedis/crypto.v0/random"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;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=B.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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["flag"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,K,L,N,P,R,T,V,X,Z,AB,AC,AD,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,a,J,M,O,Q,S,U,W,Y,AE,AJ,AK,AL,AR,AT,AX,BB,BF,BJ,BK,BL;A=$packages["errors"];B=$packages["fmt"];C=$packages["io"];D=$packages["os"];E=$packages["reflect"];F=$packages["sort"];G=$packages["strconv"];H=$packages["time"];I=$pkg.boolValue=$newType(1,$kindBool,"flag.boolValue",true,"flag",false,null);K=$pkg.boolFlag=$newType(8,$kindInterface,"flag.boolFlag",true,"flag",false,null);L=$pkg.intValue=$newType(4,$kindInt,"flag.intValue",true,"flag",false,null);N=$pkg.int64Value=$newType(8,$kindInt64,"flag.int64Value",true,"flag",false,null);P=$pkg.uintValue=$newType(4,$kindUint,"flag.uintValue",true,"flag",false,null);R=$pkg.uint64Value=$newType(8,$kindUint64,"flag.uint64Value",true,"flag",false,null);T=$pkg.stringValue=$newType(8,$kindString,"flag.stringValue",true,"flag",false,null);V=$pkg.float64Value=$newType(8,$kindFloat64,"flag.float64Value",true,"flag",false,null);X=$pkg.durationValue=$newType(8,$kindInt64,"flag.durationValue",true,"flag",false,null);Z=$pkg.Value=$newType(8,$kindInterface,"flag.Value",true,"flag",true,null);AB=$pkg.ErrorHandling=$newType(4,$kindInt,"flag.ErrorHandling",true,"flag",true,null);AC=$pkg.FlagSet=$newType(0,$kindStruct,"flag.FlagSet",true,"flag",true,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=CG.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_;});AD=$pkg.Flag=$newType(0,$kindStruct,"flag.Flag",true,"flag",true,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_;});BM=$sliceType($emptyInterface);BN=$ptrType(I);BO=$ptrType(L);BP=$ptrType(N);BQ=$ptrType(P);BR=$ptrType(R);BS=$ptrType(T);BT=$ptrType(V);BU=$ptrType(X);BV=$ptrType(H.Duration);BW=$ptrType(AD);BX=$sliceType(BW);BY=$ptrType(E.rtype);BZ=$ptrType($Bool);CA=$ptrType($Int);CB=$ptrType($Int64);CC=$ptrType($Uint);CD=$ptrType($Uint64);CE=$ptrType($String);CF=$ptrType($Float64);CG=$sliceType($String);CH=$funcType([BW],[],false);CI=$ptrType(AC);CJ=$funcType([],[],false);CK=$mapType($String,BW);J=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BN(function(){return d.$get();},function($v){d.$set($v);},d.$target));};$ptrType(I).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseBool(b);e=d[0];f=d[1];c.$set(e);return f;};$ptrType(I).prototype.Get=function(){var $ptr,b;b=this;return new $Bool(b.$get());};$ptrType(I).prototype.String=function(){var $ptr,b;b=this;return G.FormatBool(b.$get());};$ptrType(I).prototype.IsBoolFlag=function(){var $ptr,b;b=this;return true;};M=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(L).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseInt(b,0,64);e=d[0];f=d[1];c.$set(((e.$low+((e.$high>>31)*4294967296))>>0));return f;};$ptrType(L).prototype.Get=function(){var $ptr,b;b=this;return new $Int((b.$get()>>0));};$ptrType(L).prototype.String=function(){var $ptr,b;b=this;return G.Itoa((b.$get()>>0));};O=function(b,c){var $ptr,b,c,d,e;c.$set(b);return(d=c,new BP(function(){return(e=d.$get(),new N(e.$high,e.$low));},function($v){d.$set(new $Int64($v.$high,$v.$low));},d.$target));};$ptrType(N).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseInt(b,0,64);e=d[0];f=d[1];c.$set(new N(e.$high,e.$low));return f;};$ptrType(N).prototype.Get=function(){var $ptr,b,c;b=this;return(c=b.$get(),new $Int64(c.$high,c.$low));};$ptrType(N).prototype.String=function(){var $ptr,b,c;b=this;return G.FormatInt((c=b.$get(),new $Int64(c.$high,c.$low)),10);};Q=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BQ(function(){return(d.$get()>>>0);},function($v){d.$set(($v>>>0));},d.$target));};$ptrType(P).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseUint(b,0,64);e=d[0];f=d[1];c.$set((e.$low>>>0));return f;};$ptrType(P).prototype.Get=function(){var $ptr,b;b=this;return new $Uint((b.$get()>>>0));};$ptrType(P).prototype.String=function(){var $ptr,b;b=this;return G.FormatUint(new $Uint64(0,b.$get()),10);};S=function(b,c){var $ptr,b,c,d,e;c.$set(b);return(d=c,new BR(function(){return(e=d.$get(),new R(e.$high,e.$low));},function($v){d.$set(new $Uint64($v.$high,$v.$low));},d.$target));};$ptrType(R).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseUint(b,0,64);e=d[0];f=d[1];c.$set(new R(e.$high,e.$low));return f;};$ptrType(R).prototype.Get=function(){var $ptr,b,c;b=this;return(c=b.$get(),new $Uint64(c.$high,c.$low));};$ptrType(R).prototype.String=function(){var $ptr,b,c;b=this;return G.FormatUint((c=b.$get(),new $Uint64(c.$high,c.$low)),10);};U=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BS(function(){return d.$get();},function($v){d.$set($v);},d.$target));};$ptrType(T).prototype.Set=function(b){var $ptr,b,c;c=this;c.$set(b);return $ifaceNil;};$ptrType(T).prototype.Get=function(){var $ptr,b;b=this;return new $String(b.$get());};$ptrType(T).prototype.String=function(){var $ptr,b;b=this;return b.$get();};W=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BT(function(){return d.$get();},function($v){d.$set($v);},d.$target));};$ptrType(V).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseFloat(b,64);e=d[0];f=d[1];c.$set(e);return f;};$ptrType(V).prototype.Get=function(){var $ptr,b;b=this;return new $Float64(b.$get());};$ptrType(V).prototype.String=function(){var $ptr,b;b=this;return G.FormatFloat(b.$get(),103,-1,64);};Y=function(b,c){var $ptr,b,c,d,e;c.$set(b);return(d=c,new BU(function(){return(e=d.$get(),new X(e.$high,e.$low));},function($v){d.$set(new H.Duration($v.$high,$v.$low));},d.$target));};$ptrType(X).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=H.ParseDuration(b);e=d[0];f=d[1];c.$set(new X(e.$high,e.$low));return f;};$ptrType(X).prototype.Get=function(){var $ptr,b,c;b=this;return(c=b.$get(),new H.Duration(c.$high,c.$low));};$ptrType(X).prototype.String=function(){var $ptr,b,c,d;b=this;return(c=b,new BV(function(){return(d=c.$get(),new H.Duration(d.$high,d.$low));},function($v){c.$set(new X($v.$high,$v.$low));},c.$target)).String();};AE=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(F.StringSlice,$keys(b).length);d=0;e=b;f=0;g=$keys(e);while(true){if(!(f<g.length)){break;}h=e[g[f]];if(h===undefined){f++;continue;}i=h.v;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):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(BX,c.$length);k=c;l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);((m<0||m>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+m]=(o=b[$String.keyFor(n)],o!==undefined?o.v:BW.nil));l++;}$s=-1;return j;}return;}if($f===undefined){$f={$blk:AE};}$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;};AC.ptr.prototype.out=function(){var $ptr,b;b=this;if($interfaceIsEqual(b.output,$ifaceNil)){return D.Stderr;}return b.output;};AC.prototype.out=function(){return this.$val.out();};AC.ptr.prototype.SetOutput=function(b){var $ptr,b,c;c=this;c.output=b;};AC.prototype.SetOutput=function(b){return this.$val.SetOutput(b);};AC.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=AE(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)){$s=3;continue;}g=((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):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;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.VisitAll=function(b){return this.$val.VisitAll(b);};AC.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=AE(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)){$s=3;continue;}g=((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):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;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Visit=function(b){return this.$val.Visit(b);};AC.ptr.prototype.Lookup=function(b){var $ptr,b,c,d;c=this;return(d=c.formal[$String.keyFor(b)],d!==undefined?d.v:BW.nil);};AC.prototype.Lookup=function(b){return this.$val.Lookup(b);};AC.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]:[BW.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 BM([new $String(b)]));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;case 2:j=g.Value.Set(c);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;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};$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Set=function(b,c){return this.$val.Set(b,c);};AJ=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=E.TypeOf(b.Value);e=new E.Value.ptr(BY.nil,0,0);f=d.Kind();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f===22){$s=1;continue;}$s=2;continue;case 1:g=d.Elem();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=E.New(g);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}e=h;$s=3;continue;case 2:i=E.Zero(d);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}e=i;case 3:j=$clone(e,E.Value).Interface();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$assertType(j,Z).String();$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(c===k){$s=8;continue;}$s=9;continue;case 8:$s=-1;return true;case 9:l=c;if(l===("false")){$s=-1;return true;}else if(l===("")){$s=-1;return true;}else if(l===("0")){$s=-1;return true;}$s=-1;return false;}return;}if($f===undefined){$f={$blk:AJ};}$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;};AK=function(b){var $ptr,b,c,d,e,f,g,h,i;c="";d="";d=b.Usage;e=0;while(true){if(!(e<d.length)){break;}if(d.charCodeAt(e)===96){f=e+1>>0;while(true){if(!(f<d.length)){break;}if(d.charCodeAt(f)===96){c=$substring(d,(e+1>>0),f);d=$substring(d,0,e)+c+$substring(d,(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,K,true)[1]){c="";}else if($assertType(i,BU,true)[1]){c="duration";}else if($assertType(i,BT,true)[1]){c="float";}else if($assertType(i,BO,true)[1]||$assertType(i,BP,true)[1]){c="int";}else if($assertType(i,BS,true)[1]){c="string";}else if($assertType(i,BQ,true)[1]||$assertType(i,BR,true)[1]){c="uint";}return[c,d];};$pkg.UnquoteUsage=AK;AC.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,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:d=B.Sprintf(" -%s",new BM([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=AK(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);i=AJ(c,c.DefValue);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=2;continue;}$s=3;continue;case 2:j=$assertType(c.Value,BS,true);k=j[1];if(k){$s=5;continue;}$s=6;continue;case 5:l=B.Sprintf(" (default %q)",new BM([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);$s=7;continue;case 6:m=B.Sprintf(" (default %v)",new BM([new $String(c.DefValue)]));$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}e=e+(m);case 7:case 3:n=B.Fprint(b[0].out(),new BM([new $String(e),new $String("\n")]));$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=-1;return;}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.n=n;$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;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.PrintDefaults};}$f.$ptr=$ptr;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.PrintDefaults=function(){return this.$val.PrintDefaults();};AL=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;return;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};$pkg.PrintDefaults=AL;AC.ptr.prototype.defaultUsage=function(){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:b=this;if(b.name===""){$s=1;continue;}$s=2;continue;case 1:c=B.Fprintf(b.out(),"Usage:\n",new BM([]));$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 BM([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;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.defaultUsage};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.defaultUsage=function(){return this.$val.defaultUsage();};AC.ptr.prototype.NFlag=function(){var $ptr,b;b=this;return $keys(b.actual).length;};AC.prototype.NFlag=function(){return this.$val.NFlag();};AC.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"),undefined):d.$array[d.$offset+b]));};AC.prototype.Arg=function(b){return this.$val.Arg(b);};AC.ptr.prototype.NArg=function(){var $ptr,b;b=this;return b.args.$length;};AC.prototype.NArg=function(){return this.$val.NArg();};AC.ptr.prototype.Args=function(){var $ptr,b;b=this;return b.args;};AC.prototype.Args=function(){return this.$val.Args();};AC.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(J(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.BoolVar=function(b,c,d,e){return this.$val.BoolVar(b,c,d,e);};AC.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,BZ);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Bool=function(b,c,d){return this.$val.Bool(b,c,d);};AR=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.Bool(b,c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bool=AR;AC.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(M(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.IntVar=function(b,c,d,e){return this.$val.IntVar(b,c,d,e);};AC.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,CA);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Int=function(b,c,d){return this.$val.Int(b,c,d);};AT=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.Int(b,c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Int=AT;AC.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(O(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Int64Var=function(b,c,d,e){return this.$val.Int64Var(b,c,d,e);};AC.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),CB);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Int64=function(b,c,d){return this.$val.Int64(b,c,d);};AC.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(Q(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.UintVar=function(b,c,d,e){return this.$val.UintVar(b,c,d,e);};AC.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,CC);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Uint=function(b,c,d){return this.$val.Uint(b,c,d);};AX=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.Uint(b,c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Uint=AX;AC.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(S(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Uint64Var=function(b,c,d,e){return this.$val.Uint64Var(b,c,d,e);};AC.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),CD);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Uint64=function(b,c,d){return this.$val.Uint64(b,c,d);};AC.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(U(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.StringVar=function(b,c,d,e){return this.$val.StringVar(b,c,d,e);};AC.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("",CE);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.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=-1;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;AC.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(W(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Float64Var=function(b,c,d,e){return this.$val.Float64Var(b,c,d,e);};AC.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,CF);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Float64=function(b,c,d){return this.$val.Float64(b,c,d);};AC.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(Y(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.DurationVar=function(b,c,d,e){return this.$val.DurationVar(b,c,d,e);};AC.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 H.Duration(0,0),BV);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Duration=function(b,c,d){return this.$val.Duration(b,c,d);};BF=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.Duration(b,c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:BF};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Duration=BF;AC.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 AD.ptr(c,d,b,f);h=(i=e.formal[$String.keyFor(c)],i!==undefined?[i.v,true]:[BW.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 BM([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 BM([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 BM([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;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Var=function(b,c,d){return this.$val.Var(b,c,d);};AC.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 BM([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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.failf=function(b,c){return this.$val.failf(b,c);};AC.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:$r=b.defaultUsage();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=b.Usage();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.usage};}$f.$ptr=$ptr;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.usage=function(){return this.$val.usage();};AC.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){$s=-1;return[false,$ifaceNil];}d=(c=b.args,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));if((d.length===0)||!((d.charCodeAt(0)===45))||(d.length===1)){$s=-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);$s=-1;return[false,$ifaceNil];}}f=$substring(d,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 BM([new $String(d)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return[false,g];case 2:b.args=$subslice(b.args,1);h=false;i="";j=1;while(true){if(!(j<f.length)){break;}if(f.charCodeAt(j)===61){i=$substring(f,(j+1>>0));h=true;f=$substring(f,0,j);break;}j=j+(1)>>0;}k=b.formal;l=(m=k[$String.keyFor(f)],m!==undefined?[m.v,true]:[BW.nil,false]);n=l[0];o=l[1];if(!o){$s=4;continue;}$s=5;continue;case 4:if(f==="help"||f==="h"){$s=6;continue;}$s=7;continue;case 6:$r=b.usage();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return[false,$pkg.ErrHelp];case 7:p=b.failf("flag provided but not defined: -%s",new BM([new $String(f)]));$s=9;case 9:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[false,p];case 5:q=$assertType(n.Value,K,true);r=q[0];s=q[1];if(!(s)){t=false;$s=13;continue s;}u=r.IsBoolFlag();$s=14;case 14:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;case 13:if(t){$s=10;continue;}$s=11;continue;case 10:if(h){$s=15;continue;}$s=16;continue;case 15:v=r.Set(i);$s=18;case 18:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(!($interfaceIsEqual(w,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:x=b.failf("invalid boolean value %q for -%s: %v",new BM([new $String(i),new $String(f),w]));$s=21;case 21:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[false,x];case 20:$s=17;continue;case 16:y=r.Set("true");$s=22;case 22:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(!($interfaceIsEqual(z,$ifaceNil))){$s=23;continue;}$s=24;continue;case 23:aa=b.failf("invalid boolean flag %s: %v",new BM([new $String(f),z]));$s=25;case 25:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return[false,aa];case 24:case 17:$s=12;continue;case 11:if(!h&&b.args.$length>0){h=true;ab=(ac=b.args,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]));ad=$subslice(b.args,1);i=ab;b.args=ad;}if(!h){$s=26;continue;}$s=27;continue;case 26:ae=b.failf("flag needs an argument: -%s",new BM([new $String(f)]));$s=28;case 28:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return[false,ae];case 27:af=n.Value.Set(i);$s=29;case 29:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;if(!($interfaceIsEqual(ag,$ifaceNil))){$s=30;continue;}$s=31;continue;case 30:ah=b.failf("invalid value %q for flag -%s: %v",new BM([new $String(i),new $String(f),ag]));$s=32;case 32:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=-1;return[false,ah];case 31:case 12:if(b.actual===false){b.actual={};}ai=f;(b.actual||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ai)]={k:ai,v:n};$s=-1;return[true,$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.parseOne=function(){return this.$val.parseOne();};AC.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)){$s=-1;return g;}else if(h===(1)){D.Exit(2);}else if(h===(2)){$panic(g);}$s=1;continue;case 2:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Parse=function(b){return this.$val.Parse(b);};AC.ptr.prototype.Parsed=function(){var $ptr,b;b=this;return b.parsed;};AC.prototype.Parsed=function(){return this.$val.Parsed();};BJ=function(){var $ptr;$pkg.CommandLine.Usage=BK;};BK=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.Usage();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:BK};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};BL=function(b,c){var $ptr,b,c,d;d=new AC.ptr($throwNilPointerError,b,false,false,false,CG.nil,c,$ifaceNil);d.Usage=$methodVal(d,"defaultUsage");return d;};$pkg.NewFlagSet=BL;AC.ptr.prototype.Init=function(b,c){var $ptr,b,c,d;d=this;d.name=b;d.errorHandling=c;};AC.prototype.Init=function(b,c){return this.$val.Init(b,c);};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)},{prop:"IsBoolFlag",name:"IsBoolFlag",pkg:"",typ:$funcType([],[$Bool],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)}];BT.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)}];BU.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)}];CI.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([CH],[],false)},{prop:"Visit",name:"Visit",pkg:"",typ:$funcType([CH],[],false)},{prop:"Lookup",name:"Lookup",pkg:"",typ:$funcType([$String],[BW],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$String],[$error],false)},{prop:"PrintDefaults",name:"PrintDefaults",pkg:"",typ:$funcType([],[],false)},{prop:"defaultUsage",name:"defaultUsage",pkg:"flag",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([],[CG],false)},{prop:"BoolVar",name:"BoolVar",pkg:"",typ:$funcType([BZ,$String,$Bool,$String],[],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([$String,$Bool,$String],[BZ],false)},{prop:"IntVar",name:"IntVar",pkg:"",typ:$funcType([CA,$String,$Int,$String],[],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([$String,$Int,$String],[CA],false)},{prop:"Int64Var",name:"Int64Var",pkg:"",typ:$funcType([CB,$String,$Int64,$String],[],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([$String,$Int64,$String],[CB],false)},{prop:"UintVar",name:"UintVar",pkg:"",typ:$funcType([CC,$String,$Uint,$String],[],false)},{prop:"Uint",name:"Uint",pkg:"",typ:$funcType([$String,$Uint,$String],[CC],false)},{prop:"Uint64Var",name:"Uint64Var",pkg:"",typ:$funcType([CD,$String,$Uint64,$String],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([$String,$Uint64,$String],[CD],false)},{prop:"StringVar",name:"StringVar",pkg:"",typ:$funcType([CE,$String,$String,$String],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([$String,$String,$String],[CE],false)},{prop:"Float64Var",name:"Float64Var",pkg:"",typ:$funcType([CF,$String,$Float64,$String],[],false)},{prop:"Float64",name:"Float64",pkg:"",typ:$funcType([$String,$Float64,$String],[CF],false)},{prop:"DurationVar",name:"DurationVar",pkg:"",typ:$funcType([BV,$String,H.Duration,$String],[],false)},{prop:"Duration",name:"Duration",pkg:"",typ:$funcType([$String,H.Duration,$String],[BV],false)},{prop:"Var",name:"Var",pkg:"",typ:$funcType([Z,$String,$String],[],false)},{prop:"failf",name:"failf",pkg:"flag",typ:$funcType([$String,BM],[$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([CG],[$error],false)},{prop:"Parsed",name:"Parsed",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Init",name:"Init",pkg:"",typ:$funcType([$String,AB],[],false)}];K.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)}]);Z.init([{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AC.init("flag",[{prop:"Usage",name:"Usage",exported:true,typ:CJ,tag:""},{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"parsed",name:"parsed",exported:false,typ:$Bool,tag:""},{prop:"actual",name:"actual",exported:false,typ:CK,tag:""},{prop:"formal",name:"formal",exported:false,typ:CK,tag:""},{prop:"args",name:"args",exported:false,typ:CG,tag:""},{prop:"errorHandling",name:"errorHandling",exported:false,typ:AB,tag:""},{prop:"output",name:"output",exported:false,typ:C.Writer,tag:""}]);AD.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Usage",name:"Usage",exported:true,typ:$String,tag:""},{prop:"Value",name:"Value",exported:true,typ:Z,tag:""},{prop:"DefValue",name:"DefValue",exported:true,typ:$String,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrHelp=A.New("flag: help requested");$pkg.CommandLine=BL((a=D.Args,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):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 BM([new $String((b=D.Args,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):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=AL();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;});BJ();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/daviddengcn/go-colortext"]=(function(){var $pkg={},$init,A,B,C,D,M,N,E,F,G,I,J,K,L;A=$packages["fmt"];B=$packages["os"];C=$packages["strconv"];D=$pkg.Color=$newType(4,$kindInt,"ct.Color",true,"github.com/daviddengcn/go-colortext",true,null);M=$sliceType($emptyInterface);N=$sliceType($Uint8);E=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=J();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ResetColor=E;F=function(a,b,c,d){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:$r=L(a,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:F};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ChangeColor=F;G=function(a,b){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:$r=F(a,b,0,false);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:G};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Foreground=G;I=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=B.Getenv("TERM");$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a==="dumb";}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};J=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=I();$s=3;case 3:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}if(a){$s=1;continue;}$s=2;continue;case 1:$s=-1;return;case 2:b=A.Print(new M([new $String("\x1B[0m")]));$s=4;case 4:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;$s=-1;return;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};K=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;if((a===0)&&(c===0)){return"";}e=new N($stringToBytes("\x1B[0"));if(!((a===0))){e=C.AppendUint($appendSlice(e,";"),(f=new $Uint64(0,(a-1>>0)),new $Uint64(0+f.$high,30+f.$low)),10);if(b){e=$appendSlice(e,";1");}}if(!((c===0))){e=C.AppendUint($appendSlice(e,";"),(g=new $Uint64(0,(c-1>>0)),new $Uint64(0+g.$high,40+g.$low)),10);if(d){e=$appendSlice(e,";1");}}e=$appendSlice(e,"m");return $bytesToString(e);};L=function(a,b,c,d){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:e=I();$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:$s=-1;return;case 2:if((a===0)&&(c===0)){$s=-1;return;}f=A.Print(new M([new $String(K(a,b,c,d))]));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["regexp/syntax"]=(function(){var $pkg={},$init,E,B,F,C,A,D,G,H,I,M,N,O,P,Z,AM,BK,BL,BN,BQ,BW,BX,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,CS,K,L,AA,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BM,J,Q,R,S,T,U,V,W,X,Y,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,BO,BP,BR,BS,BT,BU,BV,BY,BZ,CA;E=$packages["bytes"];B=$packages["sort"];F=$packages["strconv"];C=$packages["strings"];A=$packages["unicode"];D=$packages["unicode/utf8"];G=$pkg.patchList=$newType(4,$kindUint32,"syntax.patchList",true,"regexp/syntax",false,null);H=$pkg.frag=$newType(0,$kindStruct,"syntax.frag",true,"regexp/syntax",false,function(i_,out_){this.$val=this;if(arguments.length===0){this.i=0;this.out=0;return;}this.i=i_;this.out=out_;});I=$pkg.compiler=$newType(0,$kindStruct,"syntax.compiler",true,"regexp/syntax",false,function(p_){this.$val=this;if(arguments.length===0){this.p=CF.nil;return;}this.p=p_;});M=$pkg.Error=$newType(0,$kindStruct,"syntax.Error",true,"regexp/syntax",true,function(Code_,Expr_){this.$val=this;if(arguments.length===0){this.Code="";this.Expr="";return;}this.Code=Code_;this.Expr=Expr_;});N=$pkg.ErrorCode=$newType(8,$kindString,"syntax.ErrorCode",true,"regexp/syntax",true,null);O=$pkg.Flags=$newType(2,$kindUint16,"syntax.Flags",true,"regexp/syntax",true,null);P=$pkg.parser=$newType(0,$kindStruct,"syntax.parser",true,"regexp/syntax",false,function(flags_,stack_,free_,numCap_,wholeRegexp_,tmpClass_){this.$val=this;if(arguments.length===0){this.flags=0;this.stack=CI.nil;this.free=CH.nil;this.numCap=0;this.wholeRegexp="";this.tmpClass=CB.nil;return;}this.flags=flags_;this.stack=stack_;this.free=free_;this.numCap=numCap_;this.wholeRegexp=wholeRegexp_;this.tmpClass=tmpClass_;});Z=$pkg.charGroup=$newType(0,$kindStruct,"syntax.charGroup",true,"regexp/syntax",false,function(sign_,class$1_){this.$val=this;if(arguments.length===0){this.sign=0;this.class$1=CB.nil;return;}this.sign=sign_;this.class$1=class$1_;});AM=$pkg.ranges=$newType(0,$kindStruct,"syntax.ranges",true,"regexp/syntax",false,function(p_){this.$val=this;if(arguments.length===0){this.p=CL.nil;return;}this.p=p_;});BK=$pkg.Prog=$newType(0,$kindStruct,"syntax.Prog",true,"regexp/syntax",true,function(Inst_,Start_,NumCap_){this.$val=this;if(arguments.length===0){this.Inst=CG.nil;this.Start=0;this.NumCap=0;return;}this.Inst=Inst_;this.Start=Start_;this.NumCap=NumCap_;});BL=$pkg.InstOp=$newType(1,$kindUint8,"syntax.InstOp",true,"regexp/syntax",true,null);BN=$pkg.EmptyOp=$newType(1,$kindUint8,"syntax.EmptyOp",true,"regexp/syntax",true,null);BQ=$pkg.Inst=$newType(0,$kindStruct,"syntax.Inst",true,"regexp/syntax",true,function(Op_,Out_,Arg_,Rune_){this.$val=this;if(arguments.length===0){this.Op=0;this.Out=0;this.Arg=0;this.Rune=CB.nil;return;}this.Op=Op_;this.Out=Out_;this.Arg=Arg_;this.Rune=Rune_;});BW=$pkg.Regexp=$newType(0,$kindStruct,"syntax.Regexp",true,"regexp/syntax",true,function(Op_,Flags_,Sub_,Sub0_,Rune_,Rune0_,Min_,Max_,Cap_,Name_){this.$val=this;if(arguments.length===0){this.Op=0;this.Flags=0;this.Sub=CI.nil;this.Sub0=CJ.zero();this.Rune=CB.nil;this.Rune0=CK.zero();this.Min=0;this.Max=0;this.Cap=0;this.Name="";return;}this.Op=Op_;this.Flags=Flags_;this.Sub=Sub_;this.Sub0=Sub0_;this.Rune=Rune_;this.Rune0=Rune0_;this.Min=Min_;this.Max=Max_;this.Cap=Cap_;this.Name=Name_;});BX=$pkg.Op=$newType(1,$kindUint8,"syntax.Op",true,"regexp/syntax",true,null);CB=$sliceType($Int32);CC=$sliceType(A.Range16);CD=$sliceType(A.Range32);CE=$sliceType($String);CF=$ptrType(BK);CG=$sliceType(BQ);CH=$ptrType(BW);CI=$sliceType(CH);CJ=$arrayType(CH,1);CK=$arrayType($Int32,2);CL=$ptrType(CB);CM=$ptrType(A.RangeTable);CN=$sliceType($Uint8);CO=$arrayType($Uint8,64);CP=$ptrType(I);CQ=$ptrType(M);CR=$ptrType(P);CS=$ptrType(BQ);G.prototype.next=function(a){var $ptr,a,b,c,d,e;b=this.$val;e=(c=a.Inst,d=b>>>1>>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));if(((b&1)>>>0)===0){return(e.Out>>>0);}return(e.Arg>>>0);};$ptrType(G).prototype.next=function(a){return new G(this.$get()).next(a);};G.prototype.patch=function(a,b){var $ptr,a,b,c,d,e,f;c=this.$val;while(true){if(!(!((c===0)))){break;}f=(d=a.Inst,e=c>>>1>>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));if(((c&1)>>>0)===0){c=(f.Out>>>0);f.Out=b;}else{c=(f.Arg>>>0);f.Arg=b;}}};$ptrType(G).prototype.patch=function(a,b){return new G(this.$get()).patch(a,b);};G.prototype.append=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this.$val;if(c===0){return b;}if(b===0){return c;}d=c;while(true){e=new G(d).next(a);if(e===0){break;}d=e;}h=(f=a.Inst,g=d>>>1>>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));if(((d&1)>>>0)===0){h.Out=(b>>>0);}else{h.Arg=(b>>>0);}return c;};$ptrType(G).prototype.append=function(a,b){return new G(this.$get()).append(a,b);};J=function(a){var $ptr,a,b,c;b=new I.ptr(CF.nil);b.init();c=$clone(b.compile(a),H);new G(c.out).patch(b.p,b.inst(4).i);b.p.Start=(c.i>>0);return[b.p,$ifaceNil];};$pkg.Compile=J;I.ptr.prototype.init=function(){var $ptr,a;a=this;a.p=new BK.ptr(CG.nil,0,0);a.p.NumCap=2;a.inst(5);};I.prototype.init=function(){return this.$val.init();};I.ptr.prototype.compile=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;b=this;c=a.Op;if(c===(1)){return b.fail();}else if(c===(2)){return b.nop();}else if(c===(3)){if(a.Rune.$length===0){return b.nop();}d=new H.ptr(0,0);e=a.Rune;f=0;while(true){if(!(f<e.$length)){break;}g=f;h=$clone(b.rune($subslice(a.Rune,g,(g+1>>0)),a.Flags),H);if(g===0){H.copy(d,h);}else{H.copy(d,b.cat($clone(d,H),$clone(h,H)));}f++;}return d;}else if(c===(4)){return b.rune(a.Rune,a.Flags);}else if(c===(5)){return b.rune(K,0);}else if(c===(6)){return b.rune(L,0);}else if(c===(7)){return b.empty(1);}else if(c===(8)){return b.empty(2);}else if(c===(9)){return b.empty(4);}else if(c===(10)){return b.empty(8);}else if(c===(11)){return b.empty(16);}else if(c===(12)){return b.empty(32);}else if(c===(13)){i=$clone(b.cap(((a.Cap<<1>>0)>>>0)),H);k=$clone(b.compile((j=a.Sub,(0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0]))),H);l=$clone(b.cap((((a.Cap<<1>>0)|1)>>>0)),H);return b.cat($clone(b.cat($clone(i,H),$clone(k,H)),H),$clone(l,H));}else if(c===(14)){return b.star($clone(b.compile((m=a.Sub,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(15)){return b.plus($clone(b.compile((n=a.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(16)){return b.quest($clone(b.compile((o=a.Sub,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(18)){if(a.Sub.$length===0){return b.nop();}p=new H.ptr(0,0);q=a.Sub;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]);if(s===0){H.copy(p,b.compile(t));}else{H.copy(p,b.cat($clone(p,H),$clone(b.compile(t),H)));}r++;}return p;}else if(c===(19)){u=new H.ptr(0,0);v=a.Sub;w=0;while(true){if(!(w<v.$length)){break;}x=((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]);H.copy(u,b.alt($clone(u,H),$clone(b.compile(x),H)));w++;}return u;}$panic(new $String("regexp: unhandled case in compile"));};I.prototype.compile=function(a){return this.$val.compile(a);};I.ptr.prototype.inst=function(a){var $ptr,a,b,c;b=this;c=new H.ptr((b.p.Inst.$length>>>0),0);b.p.Inst=$append(b.p.Inst,new BQ.ptr(a,0,0,CB.nil));return c;};I.prototype.inst=function(a){return this.$val.inst(a);};I.ptr.prototype.nop=function(){var $ptr,a,b;a=this;b=$clone(a.inst(6),H);b.out=((b.i<<1>>>0)>>>0);return b;};I.prototype.nop=function(){return this.$val.nop();};I.ptr.prototype.fail=function(){var $ptr,a;a=this;return new H.ptr(0,0);};I.prototype.fail=function(){return this.$val.fail();};I.ptr.prototype.cap=function(a){var $ptr,a,b,c,d,e;b=this;c=$clone(b.inst(2),H);c.out=((c.i<<1>>>0)>>>0);(d=b.p.Inst,e=c.i,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Arg=a;if(b.p.NumCap<((a>>0)+1>>0)){b.p.NumCap=(a>>0)+1>>0;}return c;};I.prototype.cap=function(a){return this.$val.cap(a);};I.ptr.prototype.cat=function(a,b){var $ptr,a,b,c;c=this;if((a.i===0)||(b.i===0)){return new H.ptr(0,0);}new G(a.out).patch(c.p,b.i);return new H.ptr(a.i,b.out);};I.prototype.cat=function(a,b){return this.$val.cat(a,b);};I.ptr.prototype.alt=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;if(a.i===0){return b;}if(b.i===0){return a;}d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));g.Out=a.i;g.Arg=b.i;d.out=new G(a.out).append(c.p,b.out);return d;};I.prototype.alt=function(a,b){return this.$val.alt(a,b);};I.ptr.prototype.quest=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(b){g.Arg=a.i;d.out=((d.i<<1>>>0)>>>0);}else{g.Out=a.i;d.out=((((d.i<<1>>>0)|1)>>>0)>>>0);}d.out=new G(d.out).append(c.p,a.out);return d;};I.prototype.quest=function(a,b){return this.$val.quest(a,b);};I.ptr.prototype.star=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(b){g.Arg=a.i;d.out=((d.i<<1>>>0)>>>0);}else{g.Out=a.i;d.out=((((d.i<<1>>>0)|1)>>>0)>>>0);}new G(a.out).patch(c.p,d.i);return d;};I.prototype.star=function(a,b){return this.$val.star(a,b);};I.ptr.prototype.plus=function(a,b){var $ptr,a,b,c;c=this;return new H.ptr(a.i,c.star($clone(a,H),b).out);};I.prototype.plus=function(a,b){return this.$val.plus(a,b);};I.ptr.prototype.empty=function(a){var $ptr,a,b,c,d,e;b=this;c=$clone(b.inst(3),H);(d=b.p.Inst,e=c.i,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Arg=(a>>>0);c.out=((c.i<<1>>>0)>>>0);return c;};I.prototype.empty=function(a){return this.$val.empty(a);};I.ptr.prototype.rune=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(7),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));g.Rune=a;b=(b&(1))>>>0;if(!((a.$length===1))||(A.SimpleFold((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]))===(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]))){b=(b&~(1))<<16>>>16;}g.Arg=(b>>>0);d.out=((d.i<<1>>>0)>>>0);if((((b&1)>>>0)===0)&&((a.$length===1)||(a.$length===2)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])))){g.Op=8;}else if((a.$length===2)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===0)&&((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])===1114111)){g.Op=9;}else if((a.$length===4)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===0)&&((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])===9)&&((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])===11)&&((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])===1114111)){g.Op=10;}return d;};I.prototype.rune=function(a,b){return this.$val.rune(a,b);};M.ptr.prototype.Error=function(){var $ptr,a;a=this;return"error parsing regexp: "+new N(a.Code).String()+": `"+a.Expr+"`";};M.prototype.Error=function(){return this.$val.Error();};N.prototype.String=function(){var $ptr,a;a=this.$val;return a;};$ptrType(N).prototype.String=function(){return new N(this.$get()).String();};P.ptr.prototype.newRegexp=function(a){var $ptr,a,b,c;b=this;c=b.free;if(!(c===CH.nil)){b.free=c.Sub0[0];BW.copy(c,new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,""));}else{c=new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}c.Op=a;return c;};P.prototype.newRegexp=function(a){return this.$val.newRegexp(a);};P.ptr.prototype.reuse=function(a){var $ptr,a,b;b=this;a.Sub0[0]=b.free;b.free=a;};P.prototype.reuse=function(a){return this.$val.reuse(a);};P.ptr.prototype.push=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;b=this;if((a.Op===4)&&(a.Rune.$length===2)&&((c=a.Rune,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]))===(d=a.Rune,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])))){if(b.maybeConcat((s=a.Rune,(0>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+0])),(b.flags&~1)<<16>>>16)){return CH.nil;}a.Op=3;a.Rune=$subslice(a.Rune,0,1);a.Flags=(b.flags&~1)<<16>>>16;}else if((a.Op===4)&&(a.Rune.$length===4)&&((e=a.Rune,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))===(f=a.Rune,(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])))&&((g=a.Rune,(2>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+2]))===(h=a.Rune,(3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3])))&&(A.SimpleFold((i=a.Rune,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])))===(j=a.Rune,(2>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+2])))&&(A.SimpleFold((k=a.Rune,(2>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+2])))===(l=a.Rune,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])))||(a.Op===4)&&(a.Rune.$length===2)&&(((m=a.Rune,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))+1>>0)===(n=a.Rune,(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])))&&(A.SimpleFold((o=a.Rune,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])))===(p=a.Rune,(1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])))&&(A.SimpleFold((q=a.Rune,(1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])))===(r=a.Rune,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])))){if(b.maybeConcat((t=a.Rune,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0])),(b.flags|1)>>>0)){return CH.nil;}a.Op=3;a.Rune=$subslice(a.Rune,0,1);a.Flags=(b.flags|1)>>>0;}else{b.maybeConcat(-1,0);}b.stack=$append(b.stack,a);return a;};P.prototype.push=function(a){return this.$val.push(a);};P.ptr.prototype.maybeConcat=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=this;d=c.stack.$length;if(d<2){return false;}g=(e=c.stack,f=d-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));j=(h=c.stack,i=d-2>>0,((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]));if(!((g.Op===3))||!((j.Op===3))||!((((g.Flags&1)>>>0)===((j.Flags&1)>>>0)))){return false;}j.Rune=$appendSlice(j.Rune,g.Rune);if(a>=0){g.Rune=$subslice(new CB(g.Rune0),0,1);(k=g.Rune,(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]=a));g.Flags=b;return true;}c.stack=$subslice(c.stack,0,(d-1>>0));c.reuse(g);return false;};P.prototype.maybeConcat=function(a,b){return this.$val.maybeConcat(a,b);};P.ptr.prototype.newLiteral=function(a,b){var $ptr,a,b,c,d;c=this;d=c.newRegexp(3);d.Flags=b;if(!((((b&1)>>>0)===0))){a=Q(a);}d.Rune0[0]=a;d.Rune=$subslice(new CB(d.Rune0),0,1);return d;};P.prototype.newLiteral=function(a,b){return this.$val.newLiteral(a,b);};Q=function(a){var $ptr,a,b,c;if(a<65||a>125251){return a;}b=a;c=a;a=A.SimpleFold(a);while(true){if(!(!((a===c)))){break;}if(b>a){b=a;}a=A.SimpleFold(a);}return b;};P.ptr.prototype.literal=function(a){var $ptr,a,b;b=this;b.push(b.newLiteral(a,b.flags));};P.prototype.literal=function(a){return this.$val.literal(a);};P.ptr.prototype.op=function(a){var $ptr,a,b,c;b=this;c=b.newRegexp(a);c.Flags=b.flags;return b.push(c);};P.prototype.op=function(a){return this.$val.op(a);};P.ptr.prototype.repeat=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;g=this;h=g.flags;if(!((((g.flags&64)>>>0)===0))){if(e.length>0&&(e.charCodeAt(0)===63)){e=$substring(e,1);h=(h^(32))<<16>>>16;}if(!(f==="")){return["",new M.ptr("invalid nested repetition operator",$substring(f,0,(f.length-e.length>>0)))];}}i=g.stack.$length;if(i===0){return["",new M.ptr("missing argument to repetition operator",$substring(d,0,(d.length-e.length>>0)))];}l=(j=g.stack,k=i-1>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]));if(l.Op>=128){return["",new M.ptr("missing argument to repetition operator",$substring(d,0,(d.length-e.length>>0)))];}m=g.newRegexp(a);m.Min=b;m.Max=c;m.Flags=h;m.Sub=$subslice(new CI(m.Sub0),0,1);(n=m.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]=l));(o=g.stack,p=i-1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=m));if((a===17)&&(b>=2||c>=2)&&!R(m,1000)){return["",new M.ptr("invalid repeat count",$substring(d,0,(d.length-e.length>>0)))];}return[e,$ifaceNil];};P.prototype.repeat=function(a,b,c,d,e,f){return this.$val.repeat(a,b,c,d,e,f);};R=function(a,b){var $ptr,a,b,c,d,e,f,g;if(a.Op===17){c=a.Max;if(c===0){return true;}if(c<0){c=a.Min;}if(c>b){return false;}if(c>0){b=(d=b/(c),(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));}}e=a.Sub;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!R(g,b)){return false;}f++;}return true;};P.ptr.prototype.concat=function(){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;a.maybeConcat(-1,0);b=a.stack.$length;while(true){if(!(b>0&&(c=a.stack,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op<128)){break;}b=b-(1)>>0;}e=$subslice(a.stack,b);a.stack=$subslice(a.stack,0,b);if(e.$length===0){$s=-1;return a.push(a.newRegexp(2));}f=a.collapse(e,18);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=a.push(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.concat=function(){return this.$val.concat();};P.ptr.prototype.alternate=function(){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.stack.$length;while(true){if(!(b>0&&(c=a.stack,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op<128)){break;}b=b-(1)>>0;}e=$subslice(a.stack,b);a.stack=$subslice(a.stack,0,b);if(e.$length>0){$s=1;continue;}$s=2;continue;case 1:$r=S((f=e.$length-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(e.$length===0){$s=-1;return a.push(a.newRegexp(1));}g=a.collapse(e,19);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=a.push(g);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.alternate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.alternate=function(){return this.$val.alternate();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=a.Op;if(b===(4)){$s=2;continue;}$s=3;continue;case 2:c=AC((a.$ptr_Rune||(a.$ptr_Rune=new CL(function(){return this.$target.Rune;},function($v){this.$target.Rune=$v;},a))));$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a.Rune=c;if((a.Rune.$length===2)&&((d=a.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))===0)&&((e=a.Rune,(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]))===1114111)){a.Rune=CB.nil;a.Op=6;$s=-1;return;}if((a.Rune.$length===4)&&((f=a.Rune,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))===0)&&((g=a.Rune,(1>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+1]))===9)&&((h=a.Rune,(2>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+2]))===11)&&((i=a.Rune,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]))===1114111)){a.Rune=CB.nil;a.Op=5;$s=-1;return;}if((a.Rune.$capacity-a.Rune.$length>>0)>100){a.Rune=$appendSlice($subslice(new CB(a.Rune0),0,0),a.Rune);}case 3:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};P.ptr.prototype.collapse=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(a.$length===1){$s=-1;return(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]);}d=c.newRegexp(b);d.Sub=$subslice(new CI(d.Sub0),0,0);e=a;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(g.Op===b){d.Sub=$appendSlice(d.Sub,g.Sub);c.reuse(g);}else{d.Sub=$append(d.Sub,g);}f++;}if(b===19){$s=1;continue;}$s=2;continue;case 1:h=c.factor(d.Sub,d.Flags);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d.Sub=h;if(d.Sub.$length===1){i=d;d=(j=d.Sub,(0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0]));c.reuse(i);}case 2:$s=-1;return d;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.collapse};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.collapse=function(a,b){return this.$val.collapse(a,b);};P.ptr.prototype.factor=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(a.$length<2){$s=-1;return a;}d=CB.nil;e=0;f=0;g=$subslice(a,0,0);h=0;case 1:if(!(h<=a.$length)){$s=2;continue;}i=CB.nil;j=0;if(h<a.$length){$s=3;continue;}$s=4;continue;case 3:k=c.leadingString(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]));i=k[0];j=k[1];if(j===e){l=0;while(true){if(!(l<d.$length&&l<i.$length&&(((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l])===((l<0||l>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+l])))){break;}l=l+(1)>>0;}if(l>0){d=$subslice(d,0,l);h=h+(1)>>0;$s=1;continue;}}case 4:if(h===f){$s=5;continue;}if(h===(f+1>>0)){$s=6;continue;}$s=7;continue;case 5:$s=8;continue;case 6:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=8;continue;case 7:m=c.newRegexp(3);m.Flags=e;m.Rune=$appendSlice($subslice(m.Rune,0,0),d);n=f;while(true){if(!(n<h)){break;}((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]=c.removeLeadingString(((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]),d.$length));n=n+(1)>>0;}o=c.collapse($subslice(a,f,h),19);$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=c.newRegexp(18);q.Sub=$append($subslice(q.Sub,0,0),m,p);g=$append(g,q);case 8:f=h;d=i;e=j;h=h+(1)>>0;$s=1;continue;case 2:a=g;f=0;g=$subslice(a,0,0);r=CH.nil;s=0;case 10:if(!(s<=a.$length)){$s=11;continue;}t=CH.nil;if(s<a.$length){$s=12;continue;}$s=13;continue;case 12:t=c.leadingRegexp(((s<0||s>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+s]));if(!(r===CH.nil)&&r.Equal(t)&&(W(r)||((r.Op===17)&&(r.Min===r.Max)&&W((u=r.Sub,(0>=u.$length?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+0])))))){s=s+(1)>>0;$s=10;continue;}case 13:if(s===f){$s=14;continue;}if(s===(f+1>>0)){$s=15;continue;}$s=16;continue;case 14:$s=17;continue;case 15:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=17;continue;case 16:v=r;w=f;while(true){if(!(w<s)){break;}x=!((w===f));((w<0||w>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+w]=c.removeLeadingRegexp(((w<0||w>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+w]),x));w=w+(1)>>0;}y=c.collapse($subslice(a,f,s),19);$s=18;case 18:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;aa=c.newRegexp(18);aa.Sub=$append($subslice(aa.Sub,0,0),v,z);g=$append(g,aa);case 17:f=s;r=t;s=s+(1)>>0;$s=10;continue;case 11:a=g;f=0;g=$subslice(a,0,0);ab=0;case 19:if(!(ab<=a.$length)){$s=20;continue;}if(ab<a.$length&&W(((ab<0||ab>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ab]))){$s=21;continue;}$s=22;continue;case 21:ab=ab+(1)>>0;$s=19;continue;case 22:if(ab===f){$s=23;continue;}if(ab===(f+1>>0)){$s=24;continue;}$s=25;continue;case 23:$s=26;continue;case 24:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=26;continue;case 25:ac=f;ad=f+1>>0;while(true){if(!(ad<ab)){break;}if(((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Op<((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Op||(((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Op===((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Op)&&((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Rune.$length<((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Rune.$length){ac=ad;}ad=ad+(1)>>0;}ae=((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]);af=((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]);((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]=ae);((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]=af);ag=f+1>>0;while(true){if(!(ag<ab)){break;}Y(((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]),((ag<0||ag>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ag]));c.reuse(((ag<0||ag>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ag]));ag=ag+(1)>>0;}$r=S(((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));case 26:if(ab<a.$length){g=$append(g,((ab<0||ab>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ab]));}f=ab+1>>0;ab=ab+(1)>>0;$s=19;continue;case 20:a=g;f=0;g=$subslice(a,0,0);ah=a;ai=0;while(true){if(!(ai<ah.$length)){break;}aj=ai;if((aj+1>>0)<a.$length&&(((aj<0||aj>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+aj]).Op===2)&&((ak=aj+1>>0,((ak<0||ak>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ak])).Op===2)){ai++;continue;}g=$append(g,((aj<0||aj>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+aj]));ai++;}a=g;$s=-1;return a;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.factor};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.factor=function(a,b){return this.$val.factor(a,b);};P.ptr.prototype.leadingString=function(a){var $ptr,a,b,c;b=this;if((a.Op===18)&&a.Sub.$length>0){a=(c=a.Sub,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));}if(!((a.Op===3))){return[CB.nil,0];}return[a.Rune,(a.Flags&1)>>>0];};P.prototype.leadingString=function(a){return this.$val.leadingString(a);};P.ptr.prototype.removeLeadingString=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i;c=this;if((a.Op===18)&&a.Sub.$length>0){e=(d=a.Sub,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]));e=c.removeLeadingString(e,b);(f=a.Sub,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=e));if(e.Op===2){c.reuse(e);g=a.Sub.$length;if((g===(0))||(g===(1))){a.Op=2;a.Sub=CI.nil;}else if(g===(2)){h=a;a=(i=a.Sub,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));c.reuse(h);}else{$copySlice(a.Sub,$subslice(a.Sub,1));a.Sub=$subslice(a.Sub,0,(a.Sub.$length-1>>0));}}return a;}if(a.Op===3){a.Rune=$subslice(a.Rune,0,$copySlice(a.Rune,$subslice(a.Rune,b)));if(a.Rune.$length===0){a.Op=2;}}return a;};P.prototype.removeLeadingString=function(a,b){return this.$val.removeLeadingString(a,b);};P.ptr.prototype.leadingRegexp=function(a){var $ptr,a,b,c,d;b=this;if(a.Op===2){return CH.nil;}if((a.Op===18)&&a.Sub.$length>0){d=(c=a.Sub,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));if(d.Op===2){return CH.nil;}return d;}return a;};P.prototype.leadingRegexp=function(a){return this.$val.leadingRegexp(a);};P.ptr.prototype.removeLeadingRegexp=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;if((a.Op===18)&&a.Sub.$length>0){if(b){c.reuse((d=a.Sub,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])));}a.Sub=$subslice(a.Sub,0,$copySlice(a.Sub,$subslice(a.Sub,1)));e=a.Sub.$length;if(e===(0)){a.Op=2;a.Sub=CI.nil;}else if(e===(1)){f=a;a=(g=a.Sub,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]));c.reuse(f);}return a;}if(b){c.reuse(a);}return c.newRegexp(2);};P.prototype.removeLeadingRegexp=function(a,b){return this.$val.removeLeadingRegexp(a,b);};T=function(a,b){var $ptr,a,b,c,d,e,f,g;c=new BW.ptr(3,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");c.Flags=b;c.Rune=$subslice(new CB(c.Rune0),0,0);d=a;e=0;while(true){if(!(e<d.length)){break;}f=$decodeRune(d,e);g=f[0];if(c.Rune.$length>=c.Rune.$capacity){c.Rune=new CB($stringToRunes(a));break;}c.Rune=$append(c.Rune,g);e+=f[1];}return c;};U=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!((((b&2)>>>0)===0))){c=AN(a);if(!($interfaceIsEqual(c,$ifaceNil))){$s=-1;return[CH.nil,c];}$s=-1;return[T(a,b),$ifaceNil];}d=new P.ptr(0,CI.nil,CH.nil,0,"",CB.nil);e=$ifaceNil;f=0;g=0;h="";d.flags=b;d.wholeRegexp=a;i=a;case 1:if(!(!(i===""))){$s=2;continue;}j="";k=i.charCodeAt(0);if(k===(40)){$s=4;continue;}if(k===(124)){$s=5;continue;}if(k===(41)){$s=6;continue;}if(k===(94)){$s=7;continue;}if(k===(36)){$s=8;continue;}if(k===(46)){$s=9;continue;}if(k===(91)){$s=10;continue;}if((k===(42))||(k===(43))||(k===(63))){$s=11;continue;}if(k===(123)){$s=12;continue;}if(k===(92)){$s=13;continue;}$s=14;continue;case 4:if(!((((d.flags&64)>>>0)===0))&&i.length>=2&&(i.charCodeAt(1)===63)){l=d.parsePerlFlags(i);i=l[0];e=l[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}$s=3;continue;}d.numCap=d.numCap+(1)>>0;d.op(128).Cap=d.numCap;i=$substring(i,1);$s=15;continue;case 5:m=d.parseVerticalBar();$s=16;case 16:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}e=m;if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}i=$substring(i,1);$s=15;continue;case 6:n=d.parseRightParen();$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}e=n;if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}i=$substring(i,1);$s=15;continue;case 7:if(!((((d.flags&16)>>>0)===0))){d.op(9);}else{d.op(7);}i=$substring(i,1);$s=15;continue;case 8:if(!((((d.flags&16)>>>0)===0))){o=d.op(10);o.Flags=(o.Flags|(256))>>>0;}else{d.op(8);}i=$substring(i,1);$s=15;continue;case 9:if(!((((d.flags&8)>>>0)===0))){d.op(6);}else{d.op(5);}i=$substring(i,1);$s=15;continue;case 10:q=d.parseClass(i);$s=18;case 18:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;i=p[0];e=p[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}$s=15;continue;case 11:r=i;s=i.charCodeAt(0);if(s===(42)){g=14;}else if(s===(43)){g=15;}else if(s===(63)){g=16;}t=$substring(i,1);u=d.repeat(g,0,0,r,t,h);t=u[0];e=u[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}j=r;i=t;$s=15;continue;case 12:g=17;v=i;w=d.parseRepeat(i);x=w[0];y=w[1];z=w[2];aa=w[3];if(!aa){d.literal(123);i=$substring(i,1);$s=3;continue;}if(x<0||x>1000||y>1000||y>=0&&x>y){$s=-1;return[CH.nil,new M.ptr("invalid repeat count",$substring(v,0,(v.length-z.length>>0)))];}ab=d.repeat(g,x,y,v,z,h);z=ab[0];e=ab[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}j=v;i=z;$s=15;continue;case 13:if(!((((d.flags&64)>>>0)===0))&&i.length>=2){ac=i.charCodeAt(1);if(ac===(65)){d.op(9);i=$substring(i,2);$s=3;continue s;}else if(ac===(98)){d.op(11);i=$substring(i,2);$s=3;continue s;}else if(ac===(66)){d.op(12);i=$substring(i,2);$s=3;continue s;}else if(ac===(67)){$s=-1;return[CH.nil,new M.ptr("invalid escape sequence",$substring(i,0,2))];}else if(ac===(81)){ad="";ae=C.Index(i,"\\E");if(ae<0){ad=$substring(i,2);i="";}else{ad=$substring(i,2,ae);i=$substring(i,(ae+2>>0));}while(true){if(!(!(ad===""))){break;}af=AO(ad);ag=af[0];ah=af[1];ai=af[2];if(!($interfaceIsEqual(ai,$ifaceNil))){$s=-1;return[CH.nil,ai];}d.literal(ag);ad=ah;}$s=3;continue s;}else if(ac===(122)){d.op(10);i=$substring(i,2);$s=3;continue s;}}aj=d.newRegexp(4);aj.Flags=d.flags;if(i.length>=2&&((i.charCodeAt(1)===112)||(i.charCodeAt(1)===80))){$s=19;continue;}$s=20;continue;case 19:al=d.parseUnicodeClass(i,$subslice(new CB(aj.Rune0),0,0));$s=21;case 21:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=al;am=ak[0];an=ak[1];ao=ak[2];if(!($interfaceIsEqual(ao,$ifaceNil))){$s=-1;return[CH.nil,ao];}if(!(am===CB.nil)){aj.Rune=am;i=an;d.push(aj);$s=3;continue s;}case 20:aq=d.parsePerlClassEscape(i,$subslice(new CB(aj.Rune0),0,0));$s=22;case 22:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[0];as=ap[1];if(!(ar===CB.nil)){aj.Rune=ar;i=as;d.push(aj);$s=3;continue s;}d.reuse(aj);at=d.parseEscape(i);f=at[0];i=at[1];e=at[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}d.literal(f);$s=15;continue;case 14:au=AO(i);f=au[0];i=au[1];e=au[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}d.literal(f);case 15:case 3:h=j;$s=1;continue;case 2:av=d.concat();$s=23;case 23:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}av;aw=d.swapVerticalBar();$s=26;case 26:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw){$s=24;continue;}$s=25;continue;case 24:d.stack=$subslice(d.stack,0,(d.stack.$length-1>>0));case 25:ax=d.alternate();$s=27;case 27:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ax;ay=d.stack.$length;if(!((ay===1))){$s=-1;return[CH.nil,new M.ptr("missing closing )",a)];}$s=-1;return[(az=d.stack,(0>=az.$length?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:U};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=U;P.ptr.prototype.parseRepeat=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=0;c=0;d="";e=false;f=this;if(a===""||!((a.charCodeAt(0)===123))){return[b,c,d,e];}a=$substring(a,1);g=false;h=f.parseInt(a);b=h[0];a=h[1];g=h[2];if(!g){return[b,c,d,e];}if(a===""){return[b,c,d,e];}if(!((a.charCodeAt(0)===44))){c=b;}else{a=$substring(a,1);if(a===""){return[b,c,d,e];}if(a.charCodeAt(0)===125){c=-1;}else{i=f.parseInt(a);c=i[0];a=i[1];g=i[2];if(!g){return[b,c,d,e];}else if(c<0){b=-1;}}}if(a===""||!((a.charCodeAt(0)===125))){return[b,c,d,e];}d=$substring(a,1);e=true;return[b,c,d,e];};P.prototype.parseRepeat=function(a){return this.$val.parseRepeat(a);};P.ptr.prototype.parsePerlFlags=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b="";c=$ifaceNil;d=this;e=a;if(e.length>4&&(e.charCodeAt(2)===80)&&(e.charCodeAt(3)===60)){f=C.IndexRune(e,62);if(f<0){c=AN(e);if(!($interfaceIsEqual(c,$ifaceNil))){g="";h=c;b=g;c=h;return[b,c];}i="";j=new M.ptr("invalid named capture",a);b=i;c=j;return[b,c];}k=$substring(e,0,(f+1>>0));l=$substring(e,4,f);c=AN(l);if(!($interfaceIsEqual(c,$ifaceNil))){m="";n=c;b=m;c=n;return[b,c];}if(!V(l)){o="";p=new M.ptr("invalid named capture",k);b=o;c=p;return[b,c];}d.numCap=d.numCap+(1)>>0;q=d.op(128);q.Cap=d.numCap;q.Name=l;r=$substring(e,(f+1>>0));s=$ifaceNil;b=r;c=s;return[b,c];}t=0;e=$substring(e,2);u=d.flags;v=1;w=false;Loop:while(true){if(!(!(e===""))){break;}x=AO(e);t=x[0];e=x[1];c=x[2];if(!($interfaceIsEqual(c,$ifaceNil))){y="";z=c;b=y;c=z;return[b,c];}aa=t;if(aa===(105)){u=(u|(1))>>>0;w=true;}else if(aa===(109)){u=(u&~(16))<<16>>>16;w=true;}else if(aa===(115)){u=(u|(8))>>>0;w=true;}else if(aa===(85)){u=(u|(32))>>>0;w=true;}else if(aa===(45)){if(v<0){break Loop;}v=-1;u=~u<<16>>>16;w=false;}else if((aa===(58))||(aa===(41))){if(v<0){if(!w){break Loop;}u=~u<<16>>>16;}if(t===58){d.op(128);}d.flags=u;ab=e;ac=$ifaceNil;b=ab;c=ac;return[b,c];}else{break Loop;}}ad="";ae=new M.ptr("invalid or unsupported Perl syntax",$substring(a,0,(a.length-e.length>>0)));b=ad;c=ae;return[b,c];};P.prototype.parsePerlFlags=function(a){return this.$val.parsePerlFlags(a);};V=function(a){var $ptr,a,b,c,d,e;if(a===""){return false;}b=a;c=0;while(true){if(!(c<b.length)){break;}d=$decodeRune(b,c);e=d[0];if(!((e===95))&&!AP(e)){return false;}c+=d[1];}return true;};P.ptr.prototype.parseInt=function(a){var $ptr,a,b,c,d,e,f,g;b=0;c="";d=false;e=this;if(a===""||a.charCodeAt(0)<48||57<a.charCodeAt(0)){return[b,c,d];}if(a.length>=2&&(a.charCodeAt(0)===48)&&48<=a.charCodeAt(1)&&a.charCodeAt(1)<=57){return[b,c,d];}f=a;while(true){if(!(!(a==="")&&48<=a.charCodeAt(0)&&a.charCodeAt(0)<=57)){break;}a=$substring(a,1);}c=a;d=true;f=$substring(f,0,(f.length-a.length>>0));g=0;while(true){if(!(g<f.length)){break;}if(b>=100000000){b=-1;break;}b=(($imul(b,10))+(f.charCodeAt(g)>>0)>>0)-48>>0;g=g+(1)>>0;}return[b,c,d];};P.prototype.parseInt=function(a){return this.$val.parseInt(a);};W=function(a){var $ptr,a;return(a.Op===3)&&(a.Rune.$length===1)||(a.Op===4)||(a.Op===5)||(a.Op===6);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=a.Op;if(c===(3)){return(a.Rune.$length===1)&&((d=a.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))===b);}else if(c===(4)){e=0;while(true){if(!(e<a.Rune.$length)){break;}if((f=a.Rune,((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]))<=b&&b<=(g=a.Rune,h=e+1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]))){return true;}e=e+(2)>>0;}return false;}else if(c===(5)){return!((b===10));}else if(c===(6)){return true;}return false;};P.ptr.prototype.parseVerticalBar=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.concat();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;c=a.swapVerticalBar();$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}if(!c){$s=2;continue;}$s=3;continue;case 2:a.op(129);case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseVerticalBar};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseVerticalBar=function(){return this.$val.parseVerticalBar();};Y=function(a,b){var $ptr,a,b,c,d,e,f,g,h;switch(0){default:c=a.Op;if(c===(6)){}else if(c===(5)){if(X(b,10)){a.Op=6;}}else if(c===(4)){if(b.Op===3){a.Rune=AD(a.Rune,(d=b.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),b.Flags);}else{a.Rune=AG(a.Rune,b.Rune);}}else if(c===(3)){if(((e=b.Rune,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))===(f=a.Rune,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])))&&(b.Flags===a.Flags)){break;}a.Op=4;a.Rune=AD($subslice(a.Rune,0,0),(g=a.Rune,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])),a.Flags);a.Rune=AD(a.Rune,(h=b.Rune,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0])),b.Flags);}}};P.ptr.prototype.swapVerticalBar=function(){var $ptr,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.stack.$length;if(b>=3&&((c=a.stack,d=b-2>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op===129)&&W((e=a.stack,f=b-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])))&&W((g=a.stack,h=b-3>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])))){k=(i=a.stack,j=b-1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));n=(l=a.stack,m=b-3>>0,((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]));if(k.Op>n.Op){o=n;p=k;k=o;n=p;(q=a.stack,r=b-3>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]=n));}Y(n,k);a.reuse(k);a.stack=$subslice(a.stack,0,(b-1>>0));$s=-1;return true;}if(b>=2){$s=1;continue;}$s=2;continue;case 1:u=(s=a.stack,t=b-1>>0,((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]));x=(v=a.stack,w=b-2>>0,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]));if(x.Op===129){$s=3;continue;}$s=4;continue;case 3:if(b>=3){$s=5;continue;}$s=6;continue;case 5:$r=S((y=a.stack,z=b-3>>0,((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z])));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:(aa=a.stack,ab=b-2>>0,((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]=u));(ac=a.stack,ad=b-1>>0,((ad<0||ad>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ad]=x));$s=-1;return true;case 4:case 2:$s=-1;return false;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.swapVerticalBar};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.swapVerticalBar=function(){return this.$val.swapVerticalBar();};P.ptr.prototype.parseRightParen=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.concat();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;c=a.swapVerticalBar();$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}if(c){$s=2;continue;}$s=3;continue;case 2:a.stack=$subslice(a.stack,0,(a.stack.$length-1>>0));case 3:d=a.alternate();$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=a.stack.$length;if(e<2){$s=-1;return new M.ptr("unexpected )",a.wholeRegexp);}h=(f=a.stack,g=e-1>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));k=(i=a.stack,j=e-2>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));a.stack=$subslice(a.stack,0,(e-2>>0));if(!((k.Op===128))){$s=-1;return new M.ptr("unexpected )",a.wholeRegexp);}a.flags=k.Flags;if(k.Cap===0){a.push(h);}else{k.Op=13;k.Sub=$subslice(new CI(k.Sub0),0,1);(l=k.Sub,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]=h));a.push(k);}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseRightParen};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseRightParen=function(){return this.$val.parseRightParen();};P.ptr.prototype.parseEscape=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c="";d=$ifaceNil;e=this;f=$substring(a,1);if(f===""){g=0;h="";i=new M.ptr("trailing backslash at end of expression","");b=g;c=h;d=i;return[b,c,d];}j=AO(f);k=j[0];f=j[1];d=j[2];if(!($interfaceIsEqual(d,$ifaceNil))){l=0;m="";n=d;b=l;c=m;d=n;return[b,c,d];}Switch:switch(0){default:o=k;if((o===(49))||(o===(50))||(o===(51))||(o===(52))||(o===(53))||(o===(54))||(o===(55))){if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=k-48>>0;p=1;while(true){if(!(p<3)){break;}if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=(($imul(b,8))+(f.charCodeAt(0)>>0)>>0)-48>>0;f=$substring(f,1);p=p+(1)>>0;}q=b;r=f;s=$ifaceNil;b=q;c=r;d=s;return[b,c,d];}else if(o===(48)){b=k-48>>0;p=1;while(true){if(!(p<3)){break;}if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=(($imul(b,8))+(f.charCodeAt(0)>>0)>>0)-48>>0;f=$substring(f,1);p=p+(1)>>0;}t=b;u=f;v=$ifaceNil;b=t;c=u;d=v;return[b,c,d];}else if(o===(120)){if(f===""){break;}w=AO(f);k=w[0];f=w[1];d=w[2];if(!($interfaceIsEqual(d,$ifaceNil))){x=0;y="";z=d;b=x;c=y;d=z;return[b,c,d];}if(k===123){aa=0;b=0;while(true){if(f===""){break Switch;}ab=AO(f);k=ab[0];f=ab[1];d=ab[2];if(!($interfaceIsEqual(d,$ifaceNil))){ac=0;ad="";ae=d;b=ac;c=ad;d=ae;return[b,c,d];}if(k===125){break;}af=AQ(k);if(af<0){break Switch;}b=($imul(b,16))+af>>0;if(b>1114111){break Switch;}aa=aa+(1)>>0;}if(aa===0){break Switch;}ag=b;ah=f;ai=$ifaceNil;b=ag;c=ah;d=ai;return[b,c,d];}aj=AQ(k);ak=AO(f);k=ak[0];f=ak[1];d=ak[2];if(!($interfaceIsEqual(d,$ifaceNil))){al=0;am="";an=d;b=al;c=am;d=an;return[b,c,d];}ao=AQ(k);if(aj<0||ao<0){break;}ap=($imul(aj,16))+ao>>0;aq=f;ar=$ifaceNil;b=ap;c=aq;d=ar;return[b,c,d];}else if(o===(97)){as=7;at=f;au=d;b=as;c=at;d=au;return[b,c,d];}else if(o===(102)){av=12;aw=f;ax=d;b=av;c=aw;d=ax;return[b,c,d];}else if(o===(110)){ay=10;az=f;ba=d;b=ay;c=az;d=ba;return[b,c,d];}else if(o===(114)){bb=13;bc=f;bd=d;b=bb;c=bc;d=bd;return[b,c,d];}else if(o===(116)){be=9;bf=f;bg=d;b=be;c=bf;d=bg;return[b,c,d];}else if(o===(118)){bh=11;bi=f;bj=d;b=bh;c=bi;d=bj;return[b,c,d];}else if(k<128&&!AP(k)){bk=k;bl=f;bm=$ifaceNil;b=bk;c=bl;d=bm;return[b,c,d];}}bn=0;bo="";bp=new M.ptr("invalid escape sequence",$substring(a,0,(a.length-f.length>>0)));b=bn;c=bo;d=bp;return[b,c,d];};P.prototype.parseEscape=function(a){return this.$val.parseEscape(a);};P.ptr.prototype.parseClassChar=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=0;d="";e=$ifaceNil;f=this;if(a===""){g=0;h="";i=new M.ptr("missing closing ]",b);c=g;d=h;e=i;return[c,d,e];}if(a.charCodeAt(0)===92){j=f.parseEscape(a);c=j[0];d=j[1];e=j[2];return[c,d,e];}k=AO(a);c=k[0];d=k[1];e=k[2];return[c,d,e];};P.prototype.parseClassChar=function(a,b){return this.$val.parseClassChar(a,b);};P.ptr.prototype.parsePerlClassEscape=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=this;if((((e.flags&64)>>>0)===0)||a.length<2||!((a.charCodeAt(0)===92))){$s=-1;return[c,d];}g=$clone((f=AU[$String.keyFor($substring(a,0,2))],f!==undefined?f.v:new Z.ptr(0,CB.nil)),Z);if(g.sign===0){$s=-1;return[c,d];}i=e.appendGroup(b,$clone(g,Z));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=$substring(a,2);c=h;d=j;$s=-1;return[c,d];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parsePerlClassEscape};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parsePerlClassEscape=function(a,b){return this.$val.parsePerlClassEscape(a,b);};P.ptr.prototype.parseNamedClass=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=$ifaceNil;f=this;if(a.length<2||!((a.charCodeAt(0)===91))||!((a.charCodeAt(1)===58))){$s=-1;return[c,d,e];}g=C.Index($substring(a,2),":]");if(g<0){$s=-1;return[c,d,e];}g=g+(2)>>0;h=$substring(a,0,(g+2>>0));i=$substring(a,(g+2>>0));j=h;a=i;l=$clone((k=BJ[$String.keyFor(j)],k!==undefined?k.v:new Z.ptr(0,CB.nil)),Z);if(l.sign===0){m=CB.nil;n="";o=new M.ptr("invalid character class range",j);c=m;d=n;e=o;$s=-1;return[c,d,e];}q=f.appendGroup(b,$clone(l,Z));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=a;s=$ifaceNil;c=p;d=r;e=s;$s=-1;return[c,d,e];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseNamedClass};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseNamedClass=function(a,b){return this.$val.parseNamedClass(a,b);};P.ptr.prototype.appendGroup=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(((c.flags&1)>>>0)===0){$s=1;continue;}$s=2;continue;case 1:if(b.sign<0){a=AI(a,b.class$1);}else{a=AG(a,b.class$1);}$s=3;continue;case 2:d=$subslice(c.tmpClass,0,0);d=AH(d,b.class$1);c.tmpClass=d;e=AC((c.$ptr_tmpClass||(c.$ptr_tmpClass=new CL(function(){return this.$target.tmpClass;},function($v){this.$target.tmpClass=$v;},c))));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;if(b.sign<0){a=AI(a,d);}else{a=AG(a,d);}case 3:$s=-1;return a;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.appendGroup};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.appendGroup=function(a,b){return this.$val.appendGroup(a,b);};AB=function(a){var $ptr,a,b,c,d,e,f,g;if(a==="Any"){return[AA,AA];}c=(b=A.Categories[$String.keyFor(a)],b!==undefined?b.v:CM.nil);if(!(c===CM.nil)){return[c,(d=A.FoldCategory[$String.keyFor(a)],d!==undefined?d.v:CM.nil)];}f=(e=A.Scripts[$String.keyFor(a)],e!==undefined?e.v:CM.nil);if(!(f===CM.nil)){return[f,(g=A.FoldScript[$String.keyFor(a)],g!==undefined?g.v:CM.nil)];}return[CM.nil,CM.nil];};P.ptr.prototype.parseUnicodeClass=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=$ifaceNil;f=this;if((((f.flags&128)>>>0)===0)||a.length<2||!((a.charCodeAt(0)===92))||!((a.charCodeAt(1)===112))&&!((a.charCodeAt(1)===80))){$s=-1;return[c,d,e];}g=1;if(a.charCodeAt(1)===80){g=-1;}h=$substring(a,2);i=AO(h);j=i[0];h=i[1];e=i[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}k="";l="";m=k;n=l;if(!((j===123))){m=$substring(a,0,(a.length-h.length>>0));n=$substring(m,2);}else{o=C.IndexRune(a,125);if(o<0){e=AN(a);if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}p=CB.nil;q="";r=new M.ptr("invalid character class range",a);c=p;d=q;e=r;$s=-1;return[c,d,e];}s=$substring(a,0,(o+1>>0));t=$substring(a,(o+1>>0));m=s;h=t;n=$substring(a,3,o);e=AN(n);if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}}if(!(n==="")&&(n.charCodeAt(0)===94)){g=-g;n=$substring(n,1);}u=AB(n);v=u[0];w=u[1];if(v===CM.nil){x=CB.nil;y="";z=new M.ptr("invalid character class range",m);c=x;d=y;e=z;$s=-1;return[c,d,e];}if((((f.flags&1)>>>0)===0)||w===CM.nil){$s=1;continue;}$s=2;continue;case 1:if(g>0){b=AJ(b,v);}else{b=AK(b,v);}$s=3;continue;case 2:aa=$subslice(f.tmpClass,0,0);aa=AJ(aa,v);aa=AJ(aa,w);f.tmpClass=aa;ab=AC((f.$ptr_tmpClass||(f.$ptr_tmpClass=new CL(function(){return this.$target.tmpClass;},function($v){this.$target.tmpClass=$v;},f))));$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;if(g>0){b=AG(b,aa);}else{b=AI(b,aa);}case 3:ac=b;ad=h;ae=$ifaceNil;c=ac;d=ad;e=ae;$s=-1;return[c,d,e];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseUnicodeClass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseUnicodeClass=function(a,b){return this.$val.parseUnicodeClass(a,b);};P.ptr.prototype.parseClass=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b="";c=$ifaceNil;d=this;e=$substring(a,1);f=d.newRegexp(4);f.Flags=d.flags;f.Rune=$subslice(new CB(f.Rune0),0,0);g=1;if(!(e==="")&&(e.charCodeAt(0)===94)){g=-1;e=$substring(e,1);if(((d.flags&4)>>>0)===0){f.Rune=$append(f.Rune,10,10);}}h=f.Rune;i=true;case 1:if(!(e===""||!((e.charCodeAt(0)===93))||i)){$s=2;continue;}if(!(e==="")&&(e.charCodeAt(0)===45)&&(((d.flags&64)>>>0)===0)&&!i&&((e.length===1)||!((e.charCodeAt(1)===93)))){j=D.DecodeRuneInString($substring(e,1));k=j[1];l="";m=new M.ptr("invalid character class range",$substring(e,0,(1+k>>0)));b=l;c=m;$s=-1;return[b,c];}i=false;if(e.length>2&&(e.charCodeAt(0)===91)&&(e.charCodeAt(1)===58)){$s=3;continue;}$s=4;continue;case 3:o=d.parseNamedClass(e,h);$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];r=n[2];if(!($interfaceIsEqual(r,$ifaceNil))){s="";t=r;b=s;c=t;$s=-1;return[b,c];}if(!(p===CB.nil)){u=p;v=q;h=u;e=v;$s=1;continue;}case 4:x=d.parseUnicodeClass(e,h);$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];z=w[1];aa=w[2];if(!($interfaceIsEqual(aa,$ifaceNil))){ab="";ac=aa;b=ab;c=ac;$s=-1;return[b,c];}if(!(y===CB.nil)){$s=7;continue;}$s=8;continue;case 7:ad=y;ae=z;h=ad;e=ae;$s=1;continue;case 8:ag=d.parsePerlClassEscape(e,h);$s=9;case 9:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[0];ai=af[1];if(!(ah===CB.nil)){aj=ah;ak=ai;h=aj;e=ak;$s=1;continue;}al=e;am=0;an=0;ao=am;ap=an;aq=d.parseClassChar(e,a);ao=aq[0];e=aq[1];aa=aq[2];if(!($interfaceIsEqual(aa,$ifaceNil))){ar="";as=aa;b=ar;c=as;$s=-1;return[b,c];}ap=ao;if(e.length>=2&&(e.charCodeAt(0)===45)&&!((e.charCodeAt(1)===93))){e=$substring(e,1);at=d.parseClassChar(e,a);ap=at[0];e=at[1];aa=at[2];if(!($interfaceIsEqual(aa,$ifaceNil))){au="";av=aa;b=au;c=av;$s=-1;return[b,c];}if(ap<ao){al=$substring(al,0,(al.length-e.length>>0));aw="";ax=new M.ptr("invalid character class range",al);b=aw;c=ax;$s=-1;return[b,c];}}if(((d.flags&1)>>>0)===0){h=AE(h,ao,ap);}else{h=AF(h,ao,ap);}$s=1;continue;case 2:e=$substring(e,1);f.Rune=h;ay=AC((f.$ptr_Rune||(f.$ptr_Rune=new CL(function(){return this.$target.Rune;},function($v){this.$target.Rune=$v;},f))));$s=10;case 10:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}h=ay;if(g<0){h=AL(h);}f.Rune=h;d.push(f);az=e;ba=$ifaceNil;b=az;c=ba;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseClass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseClass=function(a){return this.$val.parseClass(a);};AC=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.Sort((b=new AM.ptr(a),new b.constructor.elem(b)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=a.$get();if(c.$length<2){$s=-1;return c;}d=2;e=2;while(true){if(!(e<c.$length)){break;}f=((e<0||e>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+e]);g=(h=e+1>>0,((h<0||h>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+h]));i=f;j=g;if(i<=((k=d-1>>0,((k<0||k>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+k]))+1>>0)){if(j>(l=d-1>>0,((l<0||l>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+l]))){(m=d-1>>0,((m<0||m>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+m]=j));}e=e+(2)>>0;continue;}((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=i);(n=d+1>>0,((n<0||n>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+n]=j));d=d+(2)>>0;e=e+(2)>>0;}$s=-1;return $subslice(c,0,d);}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};AD=function(a,b,c){var $ptr,a,b,c;if(!((((c&1)>>>0)===0))){return AF(a,b,b);}return AE(a,b,b);};AE=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=a.$length;e=2;while(true){if(!(e<=4)){break;}if(d>=e){f=(g=d-e>>0,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));h=(i=(d-e>>0)+1>>0,((i<0||i>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+i]));j=f;k=h;if(b<=(k+1>>0)&&j<=(c+1>>0)){if(b<j){(l=d-e>>0,((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]=b));}if(c>k){(m=(d-e>>0)+1>>0,((m<0||m>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+m]=c));}return a;}}e=e+(2)>>0;}return $append(a,b,c);};AF=function(a,b,c){var $ptr,a,b,c,d,e;if(b<=65&&c>=125251){return AE(a,b,c);}if(c<65||b>125251){return AE(a,b,c);}if(b<65){a=AE(a,b,64);b=65;}if(c>125251){a=AE(a,125252,c);c=125251;}d=b;while(true){if(!(d<=c)){break;}a=AE(a,d,d);e=A.SimpleFold(d);while(true){if(!(!((e===d)))){break;}a=AE(a,e,e);e=A.SimpleFold(e);}d=d+(1)>>0;}return a;};AG=function(a,b){var $ptr,a,b,c,d;c=0;while(true){if(!(c<b.$length)){break;}a=AE(a,((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]),(d=c+1>>0,((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d])));c=c+(2)>>0;}return a;};AH=function(a,b){var $ptr,a,b,c,d;c=0;while(true){if(!(c<b.$length)){break;}a=AF(a,((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]),(d=c+1>>0,((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d])));c=c+(2)>>0;}return a;};AI=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i;c=0;d=0;while(true){if(!(d<b.$length)){break;}e=((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d]);f=(g=d+1>>0,((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]));h=e;i=f;if(c<=(h-1>>0)){a=AE(a,c,h-1>>0);}c=i+1>>0;d=d+(2)>>0;}if(c<=1114111){a=AE(a,c,1114111);}return a;};AJ=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;c=b.R16;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Range16);f=(e.Lo>>0);g=(e.Hi>>0);h=(e.Stride>>0);i=f;j=g;k=h;if(k===1){a=AE(a,i,j);d++;continue;}l=i;while(true){if(!(l<=j)){break;}a=AE(a,l,l);l=l+(k)>>0;}d++;}m=b.R32;n=0;while(true){if(!(n<m.$length)){break;}o=$clone(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]),A.Range32);p=(o.Lo>>0);q=(o.Hi>>0);r=(o.Stride>>0);s=p;t=q;u=r;if(u===1){a=AE(a,s,t);n++;continue;}v=s;while(true){if(!(v<=t)){break;}a=AE(a,v,v);v=v+(u)>>0;}n++;}return a;};AK=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;c=0;d=b.R16;e=0;while(true){if(!(e<d.$length)){break;}f=$clone(((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]),A.Range16);g=(f.Lo>>0);h=(f.Hi>>0);i=(f.Stride>>0);j=g;k=h;l=i;if(l===1){if(c<=(j-1>>0)){a=AE(a,c,j-1>>0);}c=k+1>>0;e++;continue;}m=j;while(true){if(!(m<=k)){break;}if(c<=(m-1>>0)){a=AE(a,c,m-1>>0);}c=m+1>>0;m=m+(l)>>0;}e++;}n=b.R32;o=0;while(true){if(!(o<n.$length)){break;}p=$clone(((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]),A.Range32);q=(p.Lo>>0);r=(p.Hi>>0);s=(p.Stride>>0);t=q;u=r;v=s;if(v===1){if(c<=(t-1>>0)){a=AE(a,c,t-1>>0);}c=u+1>>0;o++;continue;}w=t;while(true){if(!(w<=u)){break;}if(c<=(w-1>>0)){a=AE(a,c,w-1>>0);}c=w+1>>0;w=w+(v)>>0;}o++;}if(c<=1114111){a=AE(a,c,1114111);}return a;};AL=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;while(true){if(!(d<a.$length)){break;}e=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);f=(g=d+1>>0,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));h=e;i=f;if(b<=(h-1>>0)){((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=b);(j=c+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=(h-1>>0)));c=c+(2)>>0;}b=i+1>>0;d=d+(2)>>0;}a=$subslice(a,0,c);if(b<=1114111){a=$append(a,b,1114111);}return a;};AM.ptr.prototype.Less=function(a,b){var $ptr,a,b,c,d,e,f;c=this;d=c.p.$get();a=$imul(a,(2));b=$imul(b,(2));return((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a])<((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b])||(((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a])===((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]))&&(e=a+1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]))>(f=b+1>>0,((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f]));};AM.prototype.Less=function(a,b){return this.$val.Less(a,b);};AM.ptr.prototype.Len=function(){var $ptr,a,b;a=this;return(b=a.p.$get().$length/2,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};AM.prototype.Len=function(){return this.$val.Len();};AM.ptr.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;c=this;d=c.p.$get();a=$imul(a,(2));b=$imul(b,(2));e=((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]);f=(g=b+1>>0,((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]));h=((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a]);i=(j=a+1>>0,((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]));((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a]=e);(k=a+1>>0,((k<0||k>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+k]=f));((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]=h);(l=b+1>>0,((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]=i));};AM.prototype.Swap=function(a,b){return this.$val.Swap(a,b);};AN=function(a){var $ptr,a,b,c,d;while(true){if(!(!(a===""))){break;}b=D.DecodeRuneInString(a);c=b[0];d=b[1];if((c===65533)&&(d===1)){return new M.ptr("invalid UTF-8",a);}a=$substring(a,d);}return $ifaceNil;};AO=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c="";d=$ifaceNil;e=D.DecodeRuneInString(a);b=e[0];f=e[1];if((b===65533)&&(f===1)){g=0;h="";i=new M.ptr("invalid UTF-8",a);b=g;c=h;d=i;return[b,c,d];}j=b;k=$substring(a,f);l=$ifaceNil;b=j;c=k;d=l;return[b,c,d];};AP=function(a){var $ptr,a;return 48<=a&&a<=57||65<=a&&a<=90||97<=a&&a<=122;};AQ=function(a){var $ptr,a;if(48<=a&&a<=57){return a-48>>0;}if(97<=a&&a<=102){return(a-97>>0)+10>>0;}if(65<=a&&a<=70){return(a-65>>0)+10>>0;}return-1;};BL.prototype.String=function(){var $ptr,a;a=this.$val;if((a>>>0)>=(BM.$length>>>0)){return"";}return((a<0||a>=BM.$length)?($throwRuntimeError("index out of range"),undefined):BM.$array[BM.$offset+a]);};$ptrType(BL).prototype.String=function(){return new BL(this.$get()).String();};BO=function(a,b){var $ptr,a,b,c,d;c=32;d=0;if(BP(a)){d=1;}else if((a===10)){c=(c|(1))>>>0;}else if(a<0){c=(c|(5))>>>0;}if(BP(b)){d=(d^(1))<<24>>>24;}else if((b===10)){c=(c|(2))>>>0;}else if(b<0){c=(c|(10))>>>0;}if(!((d===0))){c=(c^(48))<<24>>>24;}return c;};$pkg.EmptyOpContext=BO;BP=function(a){var $ptr,a;return 65<=a&&a<=90||97<=a&&a<=122||48<=a&&a<=57||(a===95);};$pkg.IsWordChar=BP;BK.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BT(b,a);return b.String();};BK.prototype.String=function(){return this.$val.String();};BK.ptr.prototype.skipNop=function(a){var $ptr,a,b,c,d,e;b=this;d=(c=b.Inst,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]));while(true){if(!((d.Op===6)||(d.Op===2))){break;}a=d.Out;d=(e=b.Inst,((a<0||a>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+a]));}return[d,a];};BK.prototype.skipNop=function(a){return this.$val.skipNop(a);};BQ.ptr.prototype.op=function(){var $ptr,a,b,c;a=this;b=a.Op;c=b;if((c===(8))||(c===(9))||(c===(10))){b=7;}return b;};BQ.prototype.op=function(){return this.$val.op();};BK.ptr.prototype.Prefix=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;a="";b=false;c=this;d=c.skipNop((c.Start>>>0));e=d[0];if(!((e.op()===7))||!((e.Rune.$length===1))){f="";g=e.Op===4;a=f;b=g;return[a,b];}h=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);while(true){if(!((e.op()===7)&&(e.Rune.$length===1)&&((((e.Arg<<16>>>16)&1)>>>0)===0))){break;}h.WriteRune((i=e.Rune,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])));j=c.skipNop(e.Out);e=j[0];}k=h.String();l=e.Op===4;a=k;b=l;return[a,b];};BK.prototype.Prefix=function(){return this.$val.Prefix();};BK.ptr.prototype.StartCond=function(){var $ptr,a,b,c,d,e,f,g;a=this;b=0;c=(a.Start>>>0);e=(d=a.Inst,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));Loop:while(true){f=e.Op;if(f===(3)){b=(b|((e.Arg<<24>>>24)))>>>0;}else if(f===(5)){return 255;}else if((f===(2))||(f===(6))){}else{break Loop;}c=e.Out;e=(g=a.Inst,((c<0||c>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+c]));}return b;};BK.prototype.StartCond=function(){return this.$val.StartCond();};BQ.ptr.prototype.MatchRune=function(a){var $ptr,a,b;b=this;return!((b.MatchRunePos(a)===-1));};BQ.prototype.MatchRune=function(a){return this.$val.MatchRune(a);};BQ.ptr.prototype.MatchRunePos=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;b=this;c=b.Rune;if(c.$length===1){d=(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]);if(a===d){return 0;}if(!(((((b.Arg<<16>>>16)&1)>>>0)===0))){e=A.SimpleFold(d);while(true){if(!(!((e===d)))){break;}if(a===e){return 0;}e=A.SimpleFold(e);}}return-1;}f=0;while(true){if(!(f<c.$length&&f<=8)){break;}if(a<((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f])){return-1;}if(a<=(g=f+1>>0,((g<0||g>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+g]))){return(h=f/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));}f=f+(2)>>0;}i=0;k=(j=c.$length/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(i<k)){break;}m=i+(l=((k-i>>0))/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0;o=(n=$imul(2,m),((n<0||n>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+n]));if(o<=a){if(a<=(p=($imul(2,m))+1>>0,((p<0||p>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+p]))){return m;}i=m+1>>0;}else{k=m;}}return-1;};BQ.prototype.MatchRunePos=function(a){return this.$val.MatchRunePos(a);};BR=function(a){var $ptr,a;return(a===95)||(65<=a&&a<=90)||(97<=a&&a<=122)||(48<=a&&a<=57);};BQ.ptr.prototype.MatchEmptyWidth=function(a,b){var $ptr,a,b,c,d;c=this;d=(c.Arg<<24>>>24);if(d===(1)){return(a===10)||(a===-1);}else if(d===(2)){return(b===10)||(b===-1);}else if(d===(4)){return a===-1;}else if(d===(8)){return b===-1;}else if(d===(16)){return!(BR(a)===BR(b));}else if(d===(32)){return BR(a)===BR(b);}$panic(new $String("unknown empty width arg"));};BQ.prototype.MatchEmptyWidth=function(a,b){return this.$val.MatchEmptyWidth(a,b);};BQ.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BV(b,a);return b.String();};BQ.prototype.String=function(){return this.$val.String();};BS=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);a.WriteString(e);d++;}};BT=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=b.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=d;g=(f=b.Inst,((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]));h=F.Itoa(e);if(h.length<3){a.WriteString($substring(" ",h.length));}if(e===b.Start){h=h+("*");}BS(a,new CE([h,"\t"]));BV(a,g);BS(a,new CE(["\n"]));d++;}};BU=function(a){var $ptr,a;return F.FormatUint(new $Uint64(0,a),10);};BV=function(a,b){var $ptr,a,b,c;c=b.Op;if(c===(0)){BS(a,new CE(["alt -> ",BU(b.Out),", ",BU(b.Arg)]));}else if(c===(1)){BS(a,new CE(["altmatch -> ",BU(b.Out),", ",BU(b.Arg)]));}else if(c===(2)){BS(a,new CE(["cap ",BU(b.Arg)," -> ",BU(b.Out)]));}else if(c===(3)){BS(a,new CE(["empty ",BU(b.Arg)," -> ",BU(b.Out)]));}else if(c===(4)){BS(a,new CE(["match"]));}else if(c===(5)){BS(a,new CE(["fail"]));}else if(c===(6)){BS(a,new CE(["nop -> ",BU(b.Out)]));}else if(c===(7)){if(b.Rune===CB.nil){BS(a,new CE(["rune <nil>"]));}BS(a,new CE(["rune ",F.QuoteToASCII($runesToString(b.Rune))]));if(!(((((b.Arg<<16>>>16)&1)>>>0)===0))){BS(a,new CE(["/i"]));}BS(a,new CE([" -> ",BU(b.Out)]));}else if(c===(8)){BS(a,new CE(["rune1 ",F.QuoteToASCII($runesToString(b.Rune))," -> ",BU(b.Out)]));}else if(c===(9)){BS(a,new CE(["any -> ",BU(b.Out)]));}else if(c===(10)){BS(a,new CE(["anynotnl -> ",BU(b.Out)]));}};BW.ptr.prototype.Equal=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;b=this;if(b===CH.nil||a===CH.nil){return b===a;}if(!((b.Op===a.Op))){return false;}c=b.Op;if(c===(10)){if(!((((b.Flags&256)>>>0)===((a.Flags&256)>>>0)))){return false;}}else if((c===(3))||(c===(4))){if(!((b.Rune.$length===a.Rune.$length))){return false;}d=b.Rune;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(!((g===(h=a.Rune,((f<0||f>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+f]))))){return false;}e++;}}else if((c===(19))||(c===(18))){if(!((b.Sub.$length===a.Sub.$length))){return false;}i=b.Sub;j=0;while(true){if(!(j<i.$length)){break;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(!l.Equal((m=a.Sub,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k])))){return false;}j++;}}else if((c===(14))||(c===(15))||(c===(16))){if(!((((b.Flags&32)>>>0)===((a.Flags&32)>>>0)))||!(n=b.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])).Equal((o=a.Sub,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])))){return false;}}else if(c===(17)){if(!((((b.Flags&32)>>>0)===((a.Flags&32)>>>0)))||!((b.Min===a.Min))||!((b.Max===a.Max))||!(p=b.Sub,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])).Equal((q=a.Sub,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])))){return false;}}else if(c===(13)){if(!((b.Cap===a.Cap))||!(b.Name===a.Name)||!(r=b.Sub,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])).Equal((s=a.Sub,(0>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+0])))){return false;}}return true;};BW.prototype.Equal=function(a){return this.$val.Equal(a);};BY=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;switch(0){default:c=b.Op;if(c===(1)){a.WriteString("[^\\x00-\\x{10FFFF}]");}else if(c===(2)){a.WriteString("(?:)");}else if(c===(3)){if(!((((b.Flags&1)>>>0)===0))){a.WriteString("(?i:");}d=b.Rune;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);BZ(a,f,false);e++;}if(!((((b.Flags&1)>>>0)===0))){a.WriteString(")");}}else if(c===(4)){if(!(((g=b.Rune.$length%2,g===g?g:$throwRuntimeError("integer divide by zero"))===0))){a.WriteString("[invalid char class]");break;}a.WriteRune(91);if(b.Rune.$length===0){a.WriteString("^\\x00-\\x{10FFFF}");}else if(((h=b.Rune,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))===0)&&((i=b.Rune,j=b.Rune.$length-1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]))===1114111)){a.WriteRune(94);k=1;while(true){if(!(k<(b.Rune.$length-1>>0))){break;}l=(m=b.Rune,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k]))+1>>0;n=(o=b.Rune,p=k+1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]))-1>>0;q=l;r=n;BZ(a,q,q===45);if(!((q===r))){a.WriteRune(45);BZ(a,r,r===45);}k=k+(2)>>0;}}else{s=0;while(true){if(!(s<b.Rune.$length)){break;}t=(u=b.Rune,((s<0||s>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+s]));v=(w=b.Rune,x=s+1>>0,((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]));y=t;z=v;BZ(a,y,y===45);if(!((y===z))){a.WriteRune(45);BZ(a,z,z===45);}s=s+(2)>>0;}}a.WriteRune(93);}else if(c===(5)){a.WriteString("(?-s:.)");}else if(c===(6)){a.WriteString("(?s:.)");}else if(c===(7)){a.WriteString("(?m:^)");}else if(c===(8)){a.WriteString("(?m:$)");}else if(c===(9)){a.WriteString("\\A");}else if(c===(10)){if(!((((b.Flags&256)>>>0)===0))){a.WriteString("(?-m:$)");}else{a.WriteString("\\z");}}else if(c===(11)){a.WriteString("\\b");}else if(c===(12)){a.WriteString("\\B");}else if(c===(13)){if(!(b.Name==="")){a.WriteString("(?P<");a.WriteString(b.Name);a.WriteRune(62);}else{a.WriteRune(40);}if(!(((aa=b.Sub,(0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])).Op===2))){BY(a,(ab=b.Sub,(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0])));}a.WriteRune(41);}else if((c===(14))||(c===(15))||(c===(16))||(c===(17))){ad=(ac=b.Sub,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]));if(ad.Op>13||(ad.Op===3)&&ad.Rune.$length>1){a.WriteString("(?:");BY(a,ad);a.WriteString(")");}else{BY(a,ad);}ae=b.Op;if(ae===(14)){a.WriteRune(42);}else if(ae===(15)){a.WriteRune(43);}else if(ae===(16)){a.WriteRune(63);}else if(ae===(17)){a.WriteRune(123);a.WriteString(F.Itoa(b.Min));if(!((b.Max===b.Min))){a.WriteRune(44);if(b.Max>=0){a.WriteString(F.Itoa(b.Max));}}a.WriteRune(125);}if(!((((b.Flags&32)>>>0)===0))){a.WriteRune(63);}}else if(c===(18)){af=b.Sub;ag=0;while(true){if(!(ag<af.$length)){break;}ah=((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag]);if(ah.Op===19){a.WriteString("(?:");BY(a,ah);a.WriteString(")");}else{BY(a,ah);}ag++;}}else if(c===(19)){ai=b.Sub;aj=0;while(true){if(!(aj<ai.$length)){break;}ak=aj;al=((aj<0||aj>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+aj]);if(ak>0){a.WriteRune(124);}BY(a,al);aj++;}}else{a.WriteString("<invalid op"+F.Itoa((b.Op>>0))+">");}}};BW.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BY(b,a);return b.String();};BW.prototype.String=function(){return this.$val.String();};BZ=function(a,b,c){var $ptr,a,b,c,d,e;if(A.IsPrint(b)){if(C.ContainsRune("\\.+*?()|[]{}^$",b)||c){a.WriteRune(92);}a.WriteRune(b);return;}switch(0){default:d=b;if(d===(7)){a.WriteString("\\a");}else if(d===(12)){a.WriteString("\\f");}else if(d===(10)){a.WriteString("\\n");}else if(d===(13)){a.WriteString("\\r");}else if(d===(9)){a.WriteString("\\t");}else if(d===(11)){a.WriteString("\\v");}else{if(b<256){a.WriteString("\\x");e=F.FormatInt(new $Int64(0,b),16);if(e.length===1){a.WriteRune(48);}a.WriteString(e);break;}a.WriteString("\\x{");a.WriteString(F.FormatInt(new $Int64(0,b),16));a.WriteString("}");}}};BW.ptr.prototype.MaxCap=function(){var $ptr,a,b,c,d,e,f;a=this;b=0;if(a.Op===13){b=a.Cap;}c=a.Sub;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);f=e.MaxCap();if(b<f){b=f;}d++;}return b;};BW.prototype.MaxCap=function(){return this.$val.MaxCap();};BW.ptr.prototype.CapNames=function(){var $ptr,a,b;a=this;b=$makeSlice(CE,(a.MaxCap()+1>>0));a.capNames(b);return b;};BW.prototype.CapNames=function(){return this.$val.CapNames();};BW.ptr.prototype.capNames=function(a){var $ptr,a,b,c,d,e,f;b=this;if(b.Op===13){(c=b.Cap,((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=b.Name));}d=b.Sub;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);f.capNames(a);e++;}};BW.prototype.capNames=function(a){return this.$val.capNames(a);};BW.ptr.prototype.Simplify=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=this;if(a===CH.nil){return CH.nil;}b=a.Op;if((b===(13))||(b===(18))||(b===(19))){c=a;d=a.Sub;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);h=g.Simplify();if(c===a&&!(h===g)){c=new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");BW.copy(c,a);c.Rune=CB.nil;c.Sub=$appendSlice($subslice(new CI(c.Sub0),0,0),$subslice(a.Sub,0,f));}if(!(c===a)){c.Sub=$append(c.Sub,h);}e++;}return c;}else if((b===(14))||(b===(15))||(b===(16))){j=(i=a.Sub,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])).Simplify();return CA(a.Op,a.Flags,j,a);}else if(b===(17)){if((a.Min===0)&&(a.Max===0)){return new BW.ptr(2,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}l=(k=a.Sub,(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0])).Simplify();if(a.Max===-1){if(a.Min===0){return CA(14,a.Flags,l,CH.nil);}if(a.Min===1){return CA(15,a.Flags,l,CH.nil);}m=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");m.Sub=$subslice(new CI(m.Sub0),0,0);n=0;while(true){if(!(n<(a.Min-1>>0))){break;}m.Sub=$append(m.Sub,l);n=n+(1)>>0;}m.Sub=$append(m.Sub,CA(15,a.Flags,l,CH.nil));return m;}if((a.Min===1)&&(a.Max===1)){return l;}o=CH.nil;if(a.Min>0){o=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");o.Sub=$subslice(new CI(o.Sub0),0,0);p=0;while(true){if(!(p<a.Min)){break;}o.Sub=$append(o.Sub,l);p=p+(1)>>0;}}if(a.Max>a.Min){q=CA(16,a.Flags,l,CH.nil);r=a.Min+1>>0;while(true){if(!(r<a.Max)){break;}s=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");s.Sub=$append($subslice(new CI(s.Sub0),0,0),l,q);q=CA(16,a.Flags,s,CH.nil);r=r+(1)>>0;}if(o===CH.nil){return q;}o.Sub=$append(o.Sub,q);}if(!(o===CH.nil)){return o;}return new BW.ptr(1,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}return a;};BW.prototype.Simplify=function(){return this.$val.Simplify();};CA=function(a,b,c,d){var $ptr,a,b,c,d,e;if(c.Op===2){return c;}if((a===c.Op)&&(((b&32)>>>0)===((c.Flags&32)>>>0))){return c;}if(!(d===CH.nil)&&(d.Op===a)&&(((d.Flags&32)>>>0)===((b&32)>>>0))&&c===(e=d.Sub,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))){return d;}d=new BW.ptr(a,b,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");d.Sub=$append($subslice(new CI(d.Sub0),0,0),c);return d;};G.methods=[{prop:"next",name:"next",pkg:"regexp/syntax",typ:$funcType([CF],[G],false)},{prop:"patch",name:"patch",pkg:"regexp/syntax",typ:$funcType([CF,$Uint32],[],false)},{prop:"append",name:"append",pkg:"regexp/syntax",typ:$funcType([CF,G],[G],false)}];CP.methods=[{prop:"init",name:"init",pkg:"regexp/syntax",typ:$funcType([],[],false)},{prop:"compile",name:"compile",pkg:"regexp/syntax",typ:$funcType([CH],[H],false)},{prop:"inst",name:"inst",pkg:"regexp/syntax",typ:$funcType([BL],[H],false)},{prop:"nop",name:"nop",pkg:"regexp/syntax",typ:$funcType([],[H],false)},{prop:"fail",name:"fail",pkg:"regexp/syntax",typ:$funcType([],[H],false)},{prop:"cap",name:"cap",pkg:"regexp/syntax",typ:$funcType([$Uint32],[H],false)},{prop:"cat",name:"cat",pkg:"regexp/syntax",typ:$funcType([H,H],[H],false)},{prop:"alt",name:"alt",pkg:"regexp/syntax",typ:$funcType([H,H],[H],false)},{prop:"quest",name:"quest",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"star",name:"star",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"plus",name:"plus",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"empty",name:"empty",pkg:"regexp/syntax",typ:$funcType([BN],[H],false)},{prop:"rune",name:"rune",pkg:"regexp/syntax",typ:$funcType([CB,O],[H],false)}];CQ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];N.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"newRegexp",name:"newRegexp",pkg:"regexp/syntax",typ:$funcType([BX],[CH],false)},{prop:"reuse",name:"reuse",pkg:"regexp/syntax",typ:$funcType([CH],[],false)},{prop:"push",name:"push",pkg:"regexp/syntax",typ:$funcType([CH],[CH],false)},{prop:"maybeConcat",name:"maybeConcat",pkg:"regexp/syntax",typ:$funcType([$Int32,O],[$Bool],false)},{prop:"newLiteral",name:"newLiteral",pkg:"regexp/syntax",typ:$funcType([$Int32,O],[CH],false)},{prop:"literal",name:"literal",pkg:"regexp/syntax",typ:$funcType([$Int32],[],false)},{prop:"op",name:"op",pkg:"regexp/syntax",typ:$funcType([BX],[CH],false)},{prop:"repeat",name:"repeat",pkg:"regexp/syntax",typ:$funcType([BX,$Int,$Int,$String,$String,$String],[$String,$error],false)},{prop:"concat",name:"concat",pkg:"regexp/syntax",typ:$funcType([],[CH],false)},{prop:"alternate",name:"alternate",pkg:"regexp/syntax",typ:$funcType([],[CH],false)},{prop:"collapse",name:"collapse",pkg:"regexp/syntax",typ:$funcType([CI,BX],[CH],false)},{prop:"factor",name:"factor",pkg:"regexp/syntax",typ:$funcType([CI,O],[CI],false)},{prop:"leadingString",name:"leadingString",pkg:"regexp/syntax",typ:$funcType([CH],[CB,O],false)},{prop:"removeLeadingString",name:"removeLeadingString",pkg:"regexp/syntax",typ:$funcType([CH,$Int],[CH],false)},{prop:"leadingRegexp",name:"leadingRegexp",pkg:"regexp/syntax",typ:$funcType([CH],[CH],false)},{prop:"removeLeadingRegexp",name:"removeLeadingRegexp",pkg:"regexp/syntax",typ:$funcType([CH,$Bool],[CH],false)},{prop:"parseRepeat",name:"parseRepeat",pkg:"regexp/syntax",typ:$funcType([$String],[$Int,$Int,$String,$Bool],false)},{prop:"parsePerlFlags",name:"parsePerlFlags",pkg:"regexp/syntax",typ:$funcType([$String],[$String,$error],false)},{prop:"parseInt",name:"parseInt",pkg:"regexp/syntax",typ:$funcType([$String],[$Int,$String,$Bool],false)},{prop:"parseVerticalBar",name:"parseVerticalBar",pkg:"regexp/syntax",typ:$funcType([],[$error],false)},{prop:"swapVerticalBar",name:"swapVerticalBar",pkg:"regexp/syntax",typ:$funcType([],[$Bool],false)},{prop:"parseRightParen",name:"parseRightParen",pkg:"regexp/syntax",typ:$funcType([],[$error],false)},{prop:"parseEscape",name:"parseEscape",pkg:"regexp/syntax",typ:$funcType([$String],[$Int32,$String,$error],false)},{prop:"parseClassChar",name:"parseClassChar",pkg:"regexp/syntax",typ:$funcType([$String,$String],[$Int32,$String,$error],false)},{prop:"parsePerlClassEscape",name:"parsePerlClassEscape",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String],false)},{prop:"parseNamedClass",name:"parseNamedClass",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String,$error],false)},{prop:"appendGroup",name:"appendGroup",pkg:"regexp/syntax",typ:$funcType([CB,Z],[CB],false)},{prop:"parseUnicodeClass",name:"parseUnicodeClass",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String,$error],false)},{prop:"parseClass",name:"parseClass",pkg:"regexp/syntax",typ:$funcType([$String],[$String,$error],false)}];AM.methods=[{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)}];CF.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"skipNop",name:"skipNop",pkg:"regexp/syntax",typ:$funcType([$Uint32],[CS,$Uint32],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String,$Bool],false)},{prop:"StartCond",name:"StartCond",pkg:"",typ:$funcType([],[BN],false)}];BL.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CS.methods=[{prop:"op",name:"op",pkg:"regexp/syntax",typ:$funcType([],[BL],false)},{prop:"MatchRune",name:"MatchRune",pkg:"",typ:$funcType([$Int32],[$Bool],false)},{prop:"MatchRunePos",name:"MatchRunePos",pkg:"",typ:$funcType([$Int32],[$Int],false)},{prop:"MatchEmptyWidth",name:"MatchEmptyWidth",pkg:"",typ:$funcType([$Int32,$Int32],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CH.methods=[{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([CH],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MaxCap",name:"MaxCap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"CapNames",name:"CapNames",pkg:"",typ:$funcType([],[CE],false)},{prop:"capNames",name:"capNames",pkg:"regexp/syntax",typ:$funcType([CE],[],false)},{prop:"Simplify",name:"Simplify",pkg:"",typ:$funcType([],[CH],false)}];H.init("regexp/syntax",[{prop:"i",name:"i",exported:false,typ:$Uint32,tag:""},{prop:"out",name:"out",exported:false,typ:G,tag:""}]);I.init("regexp/syntax",[{prop:"p",name:"p",exported:false,typ:CF,tag:""}]);M.init("",[{prop:"Code",name:"Code",exported:true,typ:N,tag:""},{prop:"Expr",name:"Expr",exported:true,typ:$String,tag:""}]);P.init("regexp/syntax",[{prop:"flags",name:"flags",exported:false,typ:O,tag:""},{prop:"stack",name:"stack",exported:false,typ:CI,tag:""},{prop:"free",name:"free",exported:false,typ:CH,tag:""},{prop:"numCap",name:"numCap",exported:false,typ:$Int,tag:""},{prop:"wholeRegexp",name:"wholeRegexp",exported:false,typ:$String,tag:""},{prop:"tmpClass",name:"tmpClass",exported:false,typ:CB,tag:""}]);Z.init("regexp/syntax",[{prop:"sign",name:"sign",exported:false,typ:$Int,tag:""},{prop:"class$1",name:"class",exported:false,typ:CB,tag:""}]);AM.init("regexp/syntax",[{prop:"p",name:"p",exported:false,typ:CL,tag:""}]);BK.init("",[{prop:"Inst",name:"Inst",exported:true,typ:CG,tag:""},{prop:"Start",name:"Start",exported:true,typ:$Int,tag:""},{prop:"NumCap",name:"NumCap",exported:true,typ:$Int,tag:""}]);BQ.init("",[{prop:"Op",name:"Op",exported:true,typ:BL,tag:""},{prop:"Out",name:"Out",exported:true,typ:$Uint32,tag:""},{prop:"Arg",name:"Arg",exported:true,typ:$Uint32,tag:""},{prop:"Rune",name:"Rune",exported:true,typ:CB,tag:""}]);BW.init("",[{prop:"Op",name:"Op",exported:true,typ:BX,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:O,tag:""},{prop:"Sub",name:"Sub",exported:true,typ:CI,tag:""},{prop:"Sub0",name:"Sub0",exported:true,typ:CJ,tag:""},{prop:"Rune",name:"Rune",exported:true,typ:CB,tag:""},{prop:"Rune0",name:"Rune0",exported:true,typ:CK,tag:""},{prop:"Min",name:"Min",exported:true,typ:$Int,tag:""},{prop:"Max",name:"Max",exported:true,typ:$Int,tag:""},{prop:"Cap",name:"Cap",exported:true,typ:$Int,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=new CB([0,9,11,1114111]);L=new CB([0,1114111]);AA=new A.RangeTable.ptr(new CC([new A.Range16.ptr(0,65535,1)]),new CD([new A.Range32.ptr(65536,1114111,1)]),0);AR=new CB([48,57]);AS=new CB([9,10,12,13,32,32]);AT=new CB([48,57,65,90,95,95,97,122]);AU=$makeMap($String.keyFor,[{k:"\\d",v:new Z.ptr(1,AR)},{k:"\\D",v:new Z.ptr(-1,AR)},{k:"\\s",v:new Z.ptr(1,AS)},{k:"\\S",v:new Z.ptr(-1,AS)},{k:"\\w",v:new Z.ptr(1,AT)},{k:"\\W",v:new Z.ptr(-1,AT)}]);AV=new CB([48,57,65,90,97,122]);AW=new CB([65,90,97,122]);AX=new CB([0,127]);AY=new CB([9,9,32,32]);AZ=new CB([0,31,127,127]);BA=new CB([48,57]);BB=new CB([33,126]);BC=new CB([97,122]);BD=new CB([32,126]);BE=new CB([33,47,58,64,91,96,123,126]);BF=new CB([9,13,32,32]);BG=new CB([65,90]);BH=new CB([48,57,65,90,95,95,97,122]);BI=new CB([48,57,65,70,97,102]);BJ=$makeMap($String.keyFor,[{k:"[:alnum:]",v:new Z.ptr(1,AV)},{k:"[:^alnum:]",v:new Z.ptr(-1,AV)},{k:"[:alpha:]",v:new Z.ptr(1,AW)},{k:"[:^alpha:]",v:new Z.ptr(-1,AW)},{k:"[:ascii:]",v:new Z.ptr(1,AX)},{k:"[:^ascii:]",v:new Z.ptr(-1,AX)},{k:"[:blank:]",v:new Z.ptr(1,AY)},{k:"[:^blank:]",v:new Z.ptr(-1,AY)},{k:"[:cntrl:]",v:new Z.ptr(1,AZ)},{k:"[:^cntrl:]",v:new Z.ptr(-1,AZ)},{k:"[:digit:]",v:new Z.ptr(1,BA)},{k:"[:^digit:]",v:new Z.ptr(-1,BA)},{k:"[:graph:]",v:new Z.ptr(1,BB)},{k:"[:^graph:]",v:new Z.ptr(-1,BB)},{k:"[:lower:]",v:new Z.ptr(1,BC)},{k:"[:^lower:]",v:new Z.ptr(-1,BC)},{k:"[:print:]",v:new Z.ptr(1,BD)},{k:"[:^print:]",v:new Z.ptr(-1,BD)},{k:"[:punct:]",v:new Z.ptr(1,BE)},{k:"[:^punct:]",v:new Z.ptr(-1,BE)},{k:"[:space:]",v:new Z.ptr(1,BF)},{k:"[:^space:]",v:new Z.ptr(-1,BF)},{k:"[:upper:]",v:new Z.ptr(1,BG)},{k:"[:^upper:]",v:new Z.ptr(-1,BG)},{k:"[:word:]",v:new Z.ptr(1,BH)},{k:"[:^word:]",v:new Z.ptr(-1,BH)},{k:"[:xdigit:]",v:new Z.ptr(1,BI)},{k:"[:^xdigit:]",v:new Z.ptr(-1,BI)}]);BM=new CE(["InstAlt","InstAltMatch","InstCapture","InstEmptyWidth","InstMatch","InstFail","InstNop","InstRune","InstRune1","InstRuneAny","InstRuneAnyNotNL"]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["regexp"]=(function(){var $pkg={},$init,C,H,B,A,D,F,G,E,I,J,K,P,Q,R,S,V,W,AA,AH,AN,AO,AV,AW,AX,AY,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,L,U,AC,AD,AI,AJ,AL,M,N,O,T,X,Y,Z,AB,AE,AF,AG,AK,AM,AP,AR,AS,AU,BA,BF;C=$packages["bytes"];H=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];A=$packages["regexp/syntax"];D=$packages["sort"];F=$packages["strconv"];G=$packages["strings"];E=$packages["unicode"];I=$packages["unicode/utf8"];J=$pkg.job=$newType(0,$kindStruct,"regexp.job",true,"regexp",false,function(pc_,arg_,pos_){this.$val=this;if(arguments.length===0){this.pc=0;this.arg=0;this.pos=0;return;}this.pc=pc_;this.arg=arg_;this.pos=pos_;});K=$pkg.bitState=$newType(0,$kindStruct,"regexp.bitState",true,"regexp",false,function(prog_,end_,cap_,jobs_,visited_){this.$val=this;if(arguments.length===0){this.prog=BM.nil;this.end=0;this.cap=BN.nil;this.jobs=BO.nil;this.visited=BJ.nil;return;}this.prog=prog_;this.end=end_;this.cap=cap_;this.jobs=jobs_;this.visited=visited_;});P=$pkg.queue=$newType(0,$kindStruct,"regexp.queue",true,"regexp",false,function(sparse_,dense_){this.$val=this;if(arguments.length===0){this.sparse=BJ.nil;this.dense=BQ.nil;return;}this.sparse=sparse_;this.dense=dense_;});Q=$pkg.entry=$newType(0,$kindStruct,"regexp.entry",true,"regexp",false,function(pc_,t_){this.$val=this;if(arguments.length===0){this.pc=0;this.t=BR.nil;return;}this.pc=pc_;this.t=t_;});R=$pkg.thread=$newType(0,$kindStruct,"regexp.thread",true,"regexp",false,function(inst_,cap_){this.$val=this;if(arguments.length===0){this.inst=BT.nil;this.cap=BN.nil;return;}this.inst=inst_;this.cap=cap_;});S=$pkg.machine=$newType(0,$kindStruct,"regexp.machine",true,"regexp",false,function(re_,p_,op_,maxBitStateLen_,b_,q0_,q1_,pool_,matched_,matchcap_,inputBytes_,inputString_,inputReader_){this.$val=this;if(arguments.length===0){this.re=BP.nil;this.p=BM.nil;this.op=BK.nil;this.maxBitStateLen=0;this.b=BH.nil;this.q0=new P.ptr(BJ.nil,BQ.nil);this.q1=new P.ptr(BJ.nil,BQ.nil);this.pool=BS.nil;this.matched=false;this.matchcap=BN.nil;this.inputBytes=new AX.ptr(BL.nil);this.inputString=new AW.ptr("");this.inputReader=new AY.ptr($ifaceNil,false,0);return;}this.re=re_;this.p=p_;this.op=op_;this.maxBitStateLen=maxBitStateLen_;this.b=b_;this.q0=q0_;this.q1=q1_;this.pool=pool_;this.matched=matched_;this.matchcap=matchcap_;this.inputBytes=inputBytes_;this.inputString=inputString_;this.inputReader=inputReader_;});V=$pkg.onePassProg=$newType(0,$kindStruct,"regexp.onePassProg",true,"regexp",false,function(Inst_,Start_,NumCap_){this.$val=this;if(arguments.length===0){this.Inst=BX.nil;this.Start=0;this.NumCap=0;return;}this.Inst=Inst_;this.Start=Start_;this.NumCap=NumCap_;});W=$pkg.onePassInst=$newType(0,$kindStruct,"regexp.onePassInst",true,"regexp",false,function(Inst_,Next_){this.$val=this;if(arguments.length===0){this.Inst=new A.Inst.ptr(0,0,0,BI.nil);this.Next=BJ.nil;return;}this.Inst=Inst_;this.Next=Next_;});AA=$pkg.queueOnePass=$newType(0,$kindStruct,"regexp.queueOnePass",true,"regexp",false,function(sparse_,dense_,size_,nextIndex_){this.$val=this;if(arguments.length===0){this.sparse=BJ.nil;this.dense=BJ.nil;this.size=0;this.nextIndex=0;return;}this.sparse=sparse_;this.dense=dense_;this.size=size_;this.nextIndex=nextIndex_;});AH=$pkg.runeSlice=$newType(12,$kindSlice,"regexp.runeSlice",true,"regexp",false,null);AN=$pkg.Regexp=$newType(0,$kindStruct,"regexp.Regexp",true,"regexp",true,function(regexpRO_,mu_,machine_){this.$val=this;if(arguments.length===0){this.regexpRO=new AO.ptr("",BM.nil,BK.nil,"",BL.nil,false,0,0,0,0,CB.nil,false);this.mu=new H.Mutex.ptr(false);this.machine=CD.nil;return;}this.regexpRO=regexpRO_;this.mu=mu_;this.machine=machine_;});AO=$pkg.regexpRO=$newType(0,$kindStruct,"regexp.regexpRO",true,"regexp",false,function(expr_,prog_,onepass_,prefix_,prefixBytes_,prefixComplete_,prefixRune_,prefixEnd_,cond_,numSubexp_,subexpNames_,longest_){this.$val=this;if(arguments.length===0){this.expr="";this.prog=BM.nil;this.onepass=BK.nil;this.prefix="";this.prefixBytes=BL.nil;this.prefixComplete=false;this.prefixRune=0;this.prefixEnd=0;this.cond=0;this.numSubexp=0;this.subexpNames=CB.nil;this.longest=false;return;}this.expr=expr_;this.prog=prog_;this.onepass=onepass_;this.prefix=prefix_;this.prefixBytes=prefixBytes_;this.prefixComplete=prefixComplete_;this.prefixRune=prefixRune_;this.prefixEnd=prefixEnd_;this.cond=cond_;this.numSubexp=numSubexp_;this.subexpNames=subexpNames_;this.longest=longest_;});AV=$pkg.input=$newType(8,$kindInterface,"regexp.input",true,"regexp",false,null);AW=$pkg.inputString=$newType(0,$kindStruct,"regexp.inputString",true,"regexp",false,function(str_){this.$val=this;if(arguments.length===0){this.str="";return;}this.str=str_;});AX=$pkg.inputBytes=$newType(0,$kindStruct,"regexp.inputBytes",true,"regexp",false,function(str_){this.$val=this;if(arguments.length===0){this.str=BL.nil;return;}this.str=str_;});AY=$pkg.inputReader=$newType(0,$kindStruct,"regexp.inputReader",true,"regexp",false,function(r_,atEOT_,pos_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.atEOT=false;this.pos=0;return;}this.r=r_;this.atEOT=atEOT_;this.pos=pos_;});BG=$arrayType($Int,0);BH=$ptrType(K);BI=$sliceType($Int32);BJ=$sliceType($Uint32);BK=$ptrType(V);BL=$sliceType($Uint8);BM=$ptrType(A.Prog);BN=$sliceType($Int);BO=$sliceType(J);BP=$ptrType(AN);BQ=$sliceType(Q);BR=$ptrType(R);BS=$sliceType(BR);BT=$ptrType(A.Inst);BU=$ptrType($Int);BV=$arrayType($Uint8,64);BW=$ptrType(AA);BX=$sliceType(W);BY=$ptrType($Uint32);BZ=$sliceType(BI);CA=$ptrType(BI);CB=$sliceType($String);CC=$ptrType(S);CD=$sliceType(CC);CE=$arrayType($Int,2);CF=$arrayType($Int,4);CG=$sliceType(BL);CH=$sliceType(BN);CI=$sliceType(CG);CJ=$sliceType(CB);CK=$ptrType(P);CL=$funcType([$String],[$String],false);CM=$funcType([BL,BN],[BL],false);CN=$funcType([BL],[BL],false);CO=$funcType([BN],[],false);CP=$ptrType(AW);CQ=$ptrType(AX);CR=$ptrType(AY);M=function(a){var $ptr,a,b;if(!O(a)){return 0;}return(b=262144/a.Inst.$length,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};N=function(a){var $ptr,a;if(!O(a)){return L;}return new K.ptr(a,0,BN.nil,BO.nil,BJ.nil);};O=function(a){var $ptr,a;return a.Inst.$length<=500;};K.ptr.prototype.reset=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;c=this;c.end=a;if(c.jobs.$capacity===0){c.jobs=$makeSlice(BO,0,256);}else{c.jobs=$subslice(c.jobs,0,0);}e=(d=(((($imul(c.prog.Inst.$length,((a+1>>0))))+32>>0)-1>>0))/32,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));if(c.visited.$capacity<e){c.visited=$makeSlice(BJ,e,8192);}else{c.visited=$subslice(c.visited,0,e);f=c.visited;g=0;while(true){if(!(g<f.$length)){break;}h=g;(i=c.visited,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]=0));g++;}}if(c.cap.$capacity<b){c.cap=$makeSlice(BN,b);}else{c.cap=$subslice(c.cap,0,b);}j=c.cap;k=0;while(true){if(!(k<j.$length)){break;}l=k;(m=c.cap,((l<0||l>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+l]=-1));k++;}};K.prototype.reset=function(a,b){return this.$val.reset(a,b);};K.ptr.prototype.shouldVisit=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;c=this;d=((($imul((a>>0),((c.end+1>>0))))+b>>0)>>>0);if(!(((((e=c.visited,f=(g=d/32,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero")),((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]))&(((h=(((d&31)>>>0)),h<32?(1<<h):0)>>>0)))>>>0)===0))){return false;}j=(i=d/32,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));(m=c.visited,((j<0||j>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+j]=(((k=c.visited,((j<0||j>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+j]))|(((l=(((d&31)>>>0)),l<32?(1<<l):0)>>>0)))>>>0)));return true;};K.prototype.shouldVisit=function(a,b){return this.$val.shouldVisit(a,b);};K.ptr.prototype.push=function(a,b,c){var $ptr,a,b,c,d,e;d=this;if((e=d.prog.Inst,((a<0||a>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+a])).Op===5){return;}if((c===0)&&!d.shouldVisit(a,b)){return;}d.jobs=$append(d.jobs,new J.ptr(a,c,b));};K.prototype.push=function(a,b,c){return this.$val.push(a,b,c);};S.ptr.prototype.tryBacktrack=function(a,b,c,d){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=e.re.regexpRO.longest;e.matched=false;a.push(c,d,0);case 1:if(!(a.jobs.$length>0)){$s=2;continue;}g=a.jobs.$length-1>>0;i=(h=a.jobs,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g])).pc;k=(j=a.jobs,((g<0||g>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+g])).pos;m=(l=a.jobs,((g<0||g>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+g])).arg;a.jobs=$subslice(a.jobs,0,g);$s=3;continue;case 4:if(!a.shouldVisit(i,k)){$s=1;continue;}case 3:o=$clone((n=a.prog.Inst,((i<0||i>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+i])),A.Inst);p=o.Op;if(p===(5)){$s=6;continue;}if(p===(0)){$s=7;continue;}if(p===(1)){$s=8;continue;}if(p===(7)){$s=9;continue;}if(p===(8)){$s=10;continue;}if(p===(10)){$s=11;continue;}if(p===(9)){$s=12;continue;}if(p===(2)){$s=13;continue;}if(p===(3)){$s=14;continue;}if(p===(6)){$s=15;continue;}if(p===(4)){$s=16;continue;}$s=17;continue;case 6:$panic(new $String("unexpected InstFail"));$s=18;continue;case 7:q=m;if(q===(0)){$s=20;continue;}if(q===(1)){$s=21;continue;}$s=22;continue;case 20:a.push(i,k,1);i=o.Out;$s=4;continue;$s=22;continue;case 21:m=0;i=o.Arg;$s=4;continue;case 22:case 19:$panic(new $String("bad arg in InstAlt"));$s=18;continue;case 8:t=(r=a.prog.Inst,s=o.Out,((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s])).Op;if((t===(7))||(t===(8))||(t===(9))||(t===(10))){$s=24;continue;}$s=25;continue;case 24:a.push(o.Arg,k,0);i=o.Arg;k=a.end;$s=4;continue;case 25:case 23:a.push(o.Out,a.end,0);i=o.Out;$s=4;continue;$s=18;continue;case 9:v=b.step(k);$s=26;case 26:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(!o.MatchRune(w)){$s=27;continue;}$s=28;continue;case 27:$s=1;continue;case 28:k=k+(x)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 10:z=b.step(k);$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];if(!((aa===(ac=o.Rune,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))))){$s=30;continue;}$s=31;continue;case 30:$s=1;continue;case 31:k=k+(ab)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 11:ae=b.step(k);$s=32;case 32:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;af=ad[0];ag=ad[1];if((af===10)||(af===-1)){$s=33;continue;}$s=34;continue;case 33:$s=1;continue;case 34:k=k+(ag)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 12:ai=b.step(k);$s=35;case 35:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;aj=ah[0];ak=ah[1];if(aj===-1){$s=36;continue;}$s=37;continue;case 36:$s=1;continue;case 37:k=k+(ak)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 13:al=m;if(al===(0)){$s=39;continue;}if(al===(1)){$s=40;continue;}$s=41;continue;case 39:if(0<=o.Arg&&o.Arg<(a.cap.$length>>>0)){a.push(i,(am=a.cap,an=o.Arg,((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an])),1);(ao=a.cap,ap=o.Arg,((ap<0||ap>=ao.$length)?($throwRuntimeError("index out of range"),undefined):ao.$array[ao.$offset+ap]=k));}i=o.Out;$s=4;continue;$s=41;continue;case 40:(aq=a.cap,ar=o.Arg,((ar<0||ar>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ar]=k));$s=1;continue;case 41:case 38:$panic(new $String("bad arg in InstCapture"));$s=18;continue;case 14:as=b.context(k);$s=44;case 44:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}if(!(((((o.Arg<<24>>>24)&~as)<<24>>>24)===0))){$s=42;continue;}$s=43;continue;case 42:$s=1;continue;case 43:i=o.Out;$s=4;continue;$s=18;continue;case 15:i=o.Out;$s=4;continue;$s=18;continue;case 16:if(a.cap.$length===0){e.matched=true;$s=-1;return e.matched;}if(a.cap.$length>1){(at=a.cap,(1>=at.$length?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+1]=k));}if(!e.matched||(f&&k>0&&k>(au=e.matchcap,(1>=au.$length?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+1])))){$copySlice(e.matchcap,a.cap);}e.matched=true;if(!f){$s=-1;return e.matched;}if(k===a.end){$s=-1;return e.matched;}$s=1;continue;$s=18;continue;case 17:$panic(new $String("bad inst"));case 18:case 5:$s=1;continue;case 2:$s=-1;return e.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.tryBacktrack};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.tryBacktrack=function(a,b,c,d){return this.$val.tryBacktrack(a,b,c,d);};S.ptr.prototype.backtrack=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=a.canCheckPrefix();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!f){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("backtrack called for a RuneReader"));case 2:g=e.re.regexpRO.cond;if(g===255){$s=-1;return false;}if(!((((g&4)>>>0)===0))&&!((b===0))){$s=-1;return false;}h=e.b;h.reset(c,d);e.matchcap=$subslice(e.matchcap,0,d);i=e.matchcap;j=0;while(true){if(!(j<i.$length)){break;}k=j;(l=e.matchcap,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]=-1));j++;}if(!((((g&4)>>>0)===0))){$s=4;continue;}$s=5;continue;case 4:if(h.cap.$length>0){(m=h.cap,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]=b));}n=e.tryBacktrack(h,a,(e.p.Start>>>0),b);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;case 5:o=-1;case 7:if(!(b<=c&&!((o===0)))){$s=8;continue;}if(e.re.regexpRO.prefix.length>0){$s=9;continue;}$s=10;continue;case 9:p=a.index(e.re,b);$s=11;case 11:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(q<0){$s=-1;return false;}b=b+(q)>>0;case 10:if(h.cap.$length>0){(r=h.cap,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]=b));}s=e.tryBacktrack(h,a,(e.p.Start>>>0),b);$s=14;case 14:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(s){$s=12;continue;}$s=13;continue;case 12:$s=-1;return true;case 13:u=a.step(b);$s=15;case 15:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;o=t[1];b=b+(o)>>0;$s=7;continue;case 8:$s=-1;return false;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.backtrack};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.backtrack=function(a,b,c,d){return this.$val.backtrack(a,b,c,d);};S.ptr.prototype.newInputBytes=function(a){var $ptr,a,b;b=this;b.inputBytes.str=a;return b.inputBytes;};S.prototype.newInputBytes=function(a){return this.$val.newInputBytes(a);};S.ptr.prototype.newInputString=function(a){var $ptr,a,b;b=this;b.inputString.str=a;return b.inputString;};S.prototype.newInputString=function(a){return this.$val.newInputString(a);};S.ptr.prototype.newInputReader=function(a){var $ptr,a,b;b=this;b.inputReader.r=a;b.inputReader.atEOT=false;b.inputReader.pos=0;return b.inputReader;};S.prototype.newInputReader=function(a){return this.$val.newInputReader(a);};T=function(a,b){var $ptr,a,b,c,d,e;c=new S.ptr(BP.nil,a,b,0,BH.nil,new P.ptr(BJ.nil,BQ.nil),new P.ptr(BJ.nil,BQ.nil),BS.nil,false,BN.nil,new AX.ptr(BL.nil),new AW.ptr(""),new AY.ptr($ifaceNil,false,0));d=c.p.Inst.$length;P.copy(c.q0,new P.ptr($makeSlice(BJ,d),$makeSlice(BQ,0,d)));P.copy(c.q1,new P.ptr($makeSlice(BJ,d),$makeSlice(BQ,0,d)));e=a.NumCap;if(e<2){e=2;}if(b===AL){c.maxBitStateLen=M(a);}c.matchcap=$makeSlice(BN,e);return c;};S.ptr.prototype.init=function(a){var $ptr,a,b,c,d,e;b=this;c=b.pool;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);e.cap=$subslice(e.cap,0,a);d++;}b.matchcap=$subslice(b.matchcap,0,a);};S.prototype.init=function(a){return this.$val.init(a);};S.ptr.prototype.alloc=function(a){var $ptr,a,b,c,d,e,f;b=this;c=BR.nil;d=b.pool.$length;if(d>0){c=(e=b.pool,f=d-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));b.pool=$subslice(b.pool,0,(d-1>>0));}else{c=new R.ptr(BT.nil,BN.nil);c.cap=$makeSlice(BN,b.matchcap.$length,b.matchcap.$capacity);}c.inst=a;return c;};S.prototype.alloc=function(a){return this.$val.alloc(a);};S.ptr.prototype.match=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.re.regexpRO.cond;if(d===255){$s=-1;return false;}c.matched=false;e=c.matchcap;f=0;while(true){if(!(f<e.$length)){break;}g=f;(h=c.matchcap,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]=-1));f++;}i=c.q0;j=c.q1;k=i;l=j;m=-1;n=-1;o=m;p=n;q=0;r=0;s=q;t=r;v=a.step(b);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;o=u[0];s=u[1];if(!((o===-1))){$s=2;continue;}$s=3;continue;case 2:x=a.step(b+s>>0);$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;p=w[0];t=w[1];case 3:y=0;if(b===0){$s=5;continue;}$s=6;continue;case 5:y=A.EmptyOpContext(-1,o);$s=7;continue;case 6:z=a.context(b);$s=8;case 8:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;case 7:case 9:if(k.dense.$length===0){$s=11;continue;}$s=12;continue;case 11:if(!((((d&4)>>>0)===0))&&!((b===0))){$s=10;continue;}if(c.matched){$s=10;continue;}if(!(c.re.regexpRO.prefix.length>0&&!((p===c.re.regexpRO.prefixRune)))){aa=false;$s=15;continue s;}ab=a.canCheckPrefix();$s=16;case 16:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;case 15:if(aa){$s=13;continue;}$s=14;continue;case 13:ac=a.index(c.re,b);$s=17;case 17:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;if(ad<0){$s=10;continue;}b=b+(ad)>>0;af=a.step(b);$s=18;case 18:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;o=ae[0];s=ae[1];ah=a.step(b+s>>0);$s=19;case 19:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;p=ag[0];t=ag[1];case 14:case 12:if(!c.matched){if(c.matchcap.$length>0){(ai=c.matchcap,(0>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+0]=b));}c.add(k,(c.p.Start>>>0),b,c.matchcap,y,BR.nil);}y=A.EmptyOpContext(o,p);c.step(k,l,b,b+s>>0,o,y);if(s===0){$s=10;continue;}if((c.matchcap.$length===0)&&c.matched){$s=10;continue;}b=b+(s)>>0;aj=p;ak=t;o=aj;s=ak;if(!((o===-1))){$s=20;continue;}$s=21;continue;case 20:am=a.step(b+s>>0);$s=22;case 22:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}al=am;p=al[0];t=al[1];case 21:an=l;ao=k;k=an;l=ao;$s=9;continue;case 10:c.clear(l);$s=-1;return c.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.match};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.match=function(a,b){return this.$val.match(a,b);};S.ptr.prototype.clear=function(a){var $ptr,a,b,c,d,e;b=this;c=a.dense;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),Q);if(!(e.t===BR.nil)){b.pool=$append(b.pool,e.t);}d++;}a.dense=$subslice(a.dense,0,0);};S.prototype.clear=function(a){return this.$val.clear(a);};S.ptr.prototype.step=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;h=g.re.regexpRO.longest;i=0;while(true){if(!(i<a.dense.$length)){break;}k=(j=a.dense,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i]));l=k.t;if(l===BR.nil){i=i+(1)>>0;continue;}if(h&&g.matched&&l.cap.$length>0&&(m=g.matchcap,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))<(n=l.cap,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))){g.pool=$append(g.pool,l);i=i+(1)>>0;continue;}o=l.inst;p=false;q=o.Op;if(q===(4)){if(l.cap.$length>0&&(!h||!g.matched||(r=g.matchcap,(1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1]))<c)){(s=l.cap,(1>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+1]=c));$copySlice(g.matchcap,l.cap);}if(!h){t=$subslice(a.dense,(i+1>>0));u=0;while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),Q);if(!(v.t===BR.nil)){g.pool=$append(g.pool,v.t);}u++;}a.dense=$subslice(a.dense,0,0);}g.matched=true;}else if(q===(7)){p=o.MatchRune(e);}else if(q===(8)){p=e===(w=o.Rune,(0>=w.$length?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+0]));}else if(q===(9)){p=true;}else if(q===(10)){p=!((e===10));}else{$panic(new $String("bad inst"));}if(p){l=g.add(b,o.Out,d,l.cap,f,l);}if(!(l===BR.nil)){g.pool=$append(g.pool,l);}i=i+(1)>>0;}a.dense=$subslice(a.dense,0,0);};S.prototype.step=function(a,b,c,d,e,f){return this.$val.step(a,b,c,d,e,f);};S.ptr.prototype.add=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;if(b===0){return f;}i=(h=a.sparse,((b<0||b>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+b]));if(i<(a.dense.$length>>>0)&&((j=a.dense,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i])).pc===b)){return f;}k=a.dense.$length;a.dense=$subslice(a.dense,0,(k+1>>0));m=(l=a.dense,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]));m.t=BR.nil;m.pc=b;(n=a.sparse,((b<0||b>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+b]=(k>>>0)));p=(o=g.p.Inst,((b<0||b>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+b]));q=p.Op;if(q===(5)){}else if((q===(0))||(q===(1))){f=g.add(a,p.Out,c,d,e,f);f=g.add(a,p.Arg,c,d,e,f);}else if(q===(3)){if((((p.Arg<<24>>>24)&~e)<<24>>>24)===0){f=g.add(a,p.Out,c,d,e,f);}}else if(q===(6)){f=g.add(a,p.Out,c,d,e,f);}else if(q===(2)){if((p.Arg>>0)<d.$length){s=(r=p.Arg,((r<0||r>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+r]));(t=p.Arg,((t<0||t>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+t]=c));g.add(a,p.Out,c,d,e,BR.nil);(u=p.Arg,((u<0||u>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+u]=s));}else{f=g.add(a,p.Out,c,d,e,f);}}else if((q===(4))||(q===(7))||(q===(8))||(q===(9))||(q===(10))){if(f===BR.nil){f=g.alloc(p);}else{f.inst=p;}if(d.$length>0&&!((v=f.cap,$indexPtr(v.$array,v.$offset+0,BU))===$indexPtr(d.$array,d.$offset+0,BU))){$copySlice(f.cap,d);}m.t=f;f=BR.nil;}else{$panic(new $String("unhandled"));}return f;};S.prototype.add=function(a,b,c,d,e,f){return this.$val.add(a,b,c,d,e,f);};S.ptr.prototype.onepass=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;e=d.re.regexpRO.cond;if(e===255){$s=-1;return false;}d.matched=false;f=d.matchcap;g=0;while(true){if(!(g<f.$length)){break;}h=g;(i=d.matchcap,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]=-1));g++;}j=-1;k=-1;l=j;m=k;n=0;o=0;p=n;q=o;s=a.step(b);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;l=r[0];p=r[1];if(!((l===-1))){$s=2;continue;}$s=3;continue;case 2:u=a.step(b+p>>0);$s=4;case 4:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;m=t[0];q=t[1];case 3:v=0;if(b===0){$s=5;continue;}$s=6;continue;case 5:v=A.EmptyOpContext(-1,l);$s=7;continue;case 6:w=a.context(b);$s=8;case 8:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;case 7:x=d.op.Start;c[0]=$clone((y=d.op.Inst,((x<0||x>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+x])),W);if(!((b===0)&&((((c[0].Inst.Arg<<24>>>24)&~v)<<24>>>24)===0)&&d.re.regexpRO.prefix.length>0)){z=false;$s=11;continue s;}aa=a.canCheckPrefix();$s=12;case 12:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;case 11:if(z){$s=9;continue;}$s=10;continue;case 9:ab=a.hasPrefix(d.re);$s=16;case 16:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab){$s=13;continue;}$s=14;continue;case 13:b=b+(d.re.regexpRO.prefix.length)>>0;ad=a.step(b);$s=17;case 17:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;l=ac[0];p=ac[1];af=a.step(b+p>>0);$s=18;case 18:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;m=ae[0];q=ae[1];ag=a.context(b);$s=19;case 19:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}v=ag;x=(d.re.regexpRO.prefixEnd>>0);$s=15;continue;case 14:$s=-1;return d.matched;case 15:case 10:case 20:W.copy(c[0],(ah=d.op.Inst,((x<0||x>=ah.$length)?($throwRuntimeError("index out of range"),undefined):ah.$array[ah.$offset+x])));x=(c[0].Inst.Out>>0);ai=c[0].Inst.Op;if(ai===(4)){$s=23;continue;}if(ai===(7)){$s=24;continue;}if(ai===(8)){$s=25;continue;}if(ai===(9)){$s=26;continue;}if(ai===(10)){$s=27;continue;}if((ai===(0))||(ai===(1))){$s=28;continue;}if(ai===(5)){$s=29;continue;}if(ai===(6)){$s=30;continue;}if(ai===(3)){$s=31;continue;}if(ai===(2)){$s=32;continue;}$s=33;continue;case 23:d.matched=true;if(d.matchcap.$length>0){(aj=d.matchcap,(0>=aj.$length?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+0]=0));(ak=d.matchcap,(1>=ak.$length?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+1]=b));}$s=-1;return d.matched;case 24:if(!c[0].Inst.MatchRune(l)){$s=-1;return d.matched;}$s=34;continue;case 25:if(!((l===(al=c[0].Inst.Rune,(0>=al.$length?($throwRuntimeError("index out of range"),undefined):al.$array[al.$offset+0]))))){$s=-1;return d.matched;}$s=34;continue;case 26:$s=34;continue;case 27:if(l===10){$s=-1;return d.matched;}$s=34;continue;case 28:x=(Y(c[0],l)>>0);$s=20;continue;$s=34;continue;case 29:$s=-1;return d.matched;case 30:$s=20;continue;$s=34;continue;case 31:if(!(((((c[0].Inst.Arg<<24>>>24)&~v)<<24>>>24)===0))){$s=-1;return d.matched;}$s=20;continue;$s=34;continue;case 32:if((c[0].Inst.Arg>>0)<d.matchcap.$length){(am=d.matchcap,an=c[0].Inst.Arg,((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an]=b));}$s=20;continue;$s=34;continue;case 33:$panic(new $String("bad inst"));case 34:case 22:if(p===0){$s=21;continue;}v=A.EmptyOpContext(l,m);b=b+(p)>>0;ao=m;ap=q;l=ao;p=ap;if(!((l===-1))){$s=35;continue;}$s=36;continue;case 35:ar=a.step(b+p>>0);$s=37;case 37:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=ar;m=aq[0];q=aq[1];case 36:$s=20;continue;case 21:$s=-1;return d.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.onepass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.onepass=function(a,b){return this.$val.onepass(a,b);};AN.ptr.prototype.doMatch=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=d.doExecute(a,b,c,0,0,BN.nil);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return!(e===BN.nil);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.doMatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.doMatch=function(a,b,c){return this.$val.doMatch(a,b,c);};AN.ptr.prototype.doExecute=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=g.get();i=$ifaceNil;j=0;if(!($interfaceIsEqual(a,$ifaceNil))){i=h.newInputReader(a);}else if(!(b===BL.nil)){i=h.newInputBytes(b);j=b.$length;}else{i=h.newInputString(c);j=c.length;}if(!(h.op===AL)){$s=1;continue;}if(j<h.maxBitStateLen&&$interfaceIsEqual(a,$ifaceNil)){$s=2;continue;}$s=3;continue;case 1:k=h.onepass(i,d);$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!k){$s=5;continue;}$s=6;continue;case 5:g.put(h);$s=-1;return BN.nil;case 6:$s=4;continue;case 2:if(h.b===BH.nil){h.b=N(h.p);}l=h.backtrack(i,d,j,e);$s=10;case 10:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(!l){$s=8;continue;}$s=9;continue;case 8:g.put(h);$s=-1;return BN.nil;case 9:$s=4;continue;case 3:h.init(e);m=h.match(i,d);$s=13;case 13:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!m){$s=11;continue;}$s=12;continue;case 11:g.put(h);$s=-1;return BN.nil;case 12:case 4:f=$appendSlice(f,h.matchcap);if(f===BN.nil){f=$subslice(new BN(U),0,0);}g.put(h);$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.doExecute};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.doExecute=function(a,b,c,d,e,f){return this.$val.doExecute(a,b,c,d,e,f);};X=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b="";c=false;d=0;g=(e=a.Inst,f=a.Start,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(!((g.Op===3))||(((((g.Arg<<24>>>24))&4)>>>0)===0)){h="";i=g.Op===4;j=(a.Start>>>0);b=h;c=i;d=j;return[b,c,d];}d=g.Out;g=(k=a.Inst,((d<0||d>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+d]));while(true){if(!(g.Op===6)){break;}d=g.Out;g=(l=a.Inst,((d<0||d>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+d]));}if(!((Z(g)===7))||!((g.Rune.$length===1))){m="";n=g.Op===4;o=(a.Start>>>0);b=m;c=n;d=o;return[b,c,d];}p=new C.Buffer.ptr(BL.nil,0,BV.zero(),0);while(true){if(!((Z(g)===7)&&(g.Rune.$length===1)&&((((g.Arg<<16>>>16)&1)>>>0)===0))){break;}p.WriteRune((q=g.Rune,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])));r=g.Out;s=(t=a.Inst,u=g.Out,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]));d=r;g=s;}if((g.Op===3)&&!(((((g.Arg<<24>>>24)&8)>>>0)===0))&&((v=a.Inst,w=g.Out,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])).Op===4)){c=true;}x=p.String();y=c;z=d;b=x;c=y;d=z;return[b,c,d];};Y=function(a,b){var $ptr,a,b,c,d;c=a.Inst.MatchRunePos(b);if(c>=0){return(d=a.Next,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));}if(a.Inst.Op===1){return a.Inst.Out;}return 0;};Z=function(a){var $ptr,a,b,c;b=a.Op;c=b;if((c===(8))||(c===(9))||(c===(10))){b=7;}return b;};AA.ptr.prototype.empty=function(){var $ptr,a;a=this;return a.nextIndex>=a.size;};AA.prototype.empty=function(){return this.$val.empty();};AA.ptr.prototype.next=function(){var $ptr,a,b,c,d;a=0;b=this;a=(c=b.dense,d=b.nextIndex,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));b.nextIndex=b.nextIndex+(1)>>>0;return a;};AA.prototype.next=function(){return this.$val.next();};AA.ptr.prototype.clear=function(){var $ptr,a;a=this;a.size=0;a.nextIndex=0;};AA.prototype.clear=function(){return this.$val.clear();};AA.ptr.prototype.contains=function(a){var $ptr,a,b,c,d,e,f;b=this;if(a>=(b.sparse.$length>>>0)){return false;}return(c=b.sparse,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]))<b.size&&((d=b.dense,e=(f=b.sparse,((a<0||a>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+a])),((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]))===a);};AA.prototype.contains=function(a){return this.$val.contains(a);};AA.ptr.prototype.insert=function(a){var $ptr,a,b;b=this;if(!b.contains(a)){b.insertNew(a);}};AA.prototype.insert=function(a){return this.$val.insert(a);};AA.ptr.prototype.insertNew=function(a){var $ptr,a,b,c,d,e;b=this;if(a>=(b.sparse.$length>>>0)){return;}(c=b.sparse,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=b.size));(d=b.dense,e=b.size,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]=a));b.size=b.size+(1)>>>0;};AA.prototype.insertNew=function(a){return this.$val.insertNew(a);};AB=function(a){var $ptr,a,b;b=BW.nil;b=new AA.ptr($makeSlice(BJ,a),$makeSlice(BJ,a),0,0);return b;};AE=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);e=[e];f=[f];g=[g];h=[h];i=[i];j=[j];k=a.$get().$length;l=b.$get().$length;if(!(((k&1)===0))||!(((l&1)===0))){$panic(new $String("mergeRuneSets odd length []rune"));}m=0;n=0;f[0]=m;j[0]=n;g[0]=$makeSlice(BI,0);h[0]=$makeSlice(BJ,0);i[0]=true;$deferred.push([(function(e,f,g,h,i,j){return function(){var $ptr;if(!i[0]){g[0]=BI.nil;h[0]=BJ.nil;}};})(e,f,g,h,i,j),[]]);e[0]=-1;o=(function(e,f,g,h,i,j){return function(o,p,q){var $ptr,o,p,q,r,s,t,u,v,w;if(e[0]>0&&(r=p.$get(),s=o.$get(),((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]))<=((e[0]<0||e[0]>=g[0].$length)?($throwRuntimeError("index out of range"),undefined):g[0].$array[g[0].$offset+e[0]])){return false;}g[0]=$append(g[0],(t=p.$get(),u=o.$get(),((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u])),(v=p.$get(),w=o.$get()+1>>0,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])));o.$set(o.$get()+(2)>>0);e[0]=e[0]+(2)>>0;h[0]=$append(h[0],q);return true;};})(e,f,g,h,i,j);case 1:if(!(f[0]<k||j[0]<l)){$s=2;continue;}if(j[0]>=l){$s=4;continue;}if(f[0]>=k){$s=5;continue;}if((p=b.$get(),((j[0]<0||j[0]>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+j[0]]))<(q=a.$get(),((f[0]<0||f[0]>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+f[0]]))){$s=6;continue;}$s=7;continue;case 4:r=o((f.$ptr||(f.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),a,c);$s=9;case 9:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}i[0]=r;$s=8;continue;case 5:s=o((j.$ptr||(j.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},j))),b,d);$s=10;case 10:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}i[0]=s;$s=8;continue;case 6:t=o((j.$ptr||(j.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},j))),b,d);$s=11;case 11:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}i[0]=t;$s=8;continue;case 7:u=o((f.$ptr||(f.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),a,c);$s=12;case 12:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}i[0]=u;case 8:case 3:if(!i[0]){$s=-1;return[AC,AD];}$s=1;continue;case 2:$s=-1;return[g[0],h[0]];}return;}}catch(err){$err=err;$s=-1;return[BI.nil,BJ.nil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AF=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;c=b.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Inst);g=f.Op;if((g===(0))||(g===(1))||(g===(7))){}else if((g===(2))||(g===(3))||(g===(6))||(g===(4))||(g===(5))){(h=a.Inst,((e<0||e>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+e])).Next=BJ.nil;}else if((g===(8))||(g===(9))||(g===(10))){(i=a.Inst,((e<0||e>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+e])).Next=BJ.nil;W.copy((j=a.Inst,((e<0||e>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+e])),new W.ptr($clone(f,A.Inst),BJ.nil));}d++;}};AG=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=new V.ptr(BX.nil,a.Start,a.NumCap);c=a.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Inst);b.Inst=$append(b.Inst,new W.ptr($clone(e,A.Inst),BJ.nil));d++;}f=b.Inst;g=0;while(true){if(!(g<f.$length)){break;}h=g;j=(i=b.Inst,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h])).Inst.Op;if((j===(0))||(j===(1))){m=(k=(l=b.Inst,((h<0||h>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+h])),(k.$ptr_Out||(k.$ptr_Out=new BY(function(){return this.$target.Inst.Out;},function($v){this.$target.Inst.Out=$v;},k))));p=(n=(o=b.Inst,((h<0||h>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+h])),(n.$ptr_Arg||(n.$ptr_Arg=new BY(function(){return this.$target.Inst.Arg;},function($v){this.$target.Inst.Arg=$v;},n))));s=$clone((q=b.Inst,r=p.$get(),((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r])),W);if(!((s.Inst.Op===0)||(s.Inst.Op===1))){t=m;u=p;p=t;m=u;W.copy(s,(v=b.Inst,w=p.$get(),((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])));if(!((s.Inst.Op===0)||(s.Inst.Op===1))){g++;continue;}}z=$clone((x=b.Inst,y=m.$get(),((y<0||y>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+y])),W);if((z.Inst.Op===0)||(z.Inst.Op===1)){g++;continue;}ad=(aa=(ab=b.Inst,ac=p.$get(),((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac])),(aa.$ptr_Out||(aa.$ptr_Out=new BY(function(){return this.$target.Inst.Out;},function($v){this.$target.Inst.Out=$v;},aa))));ah=(ae=(af=b.Inst,ag=p.$get(),((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag])),(ae.$ptr_Arg||(ae.$ptr_Arg=new BY(function(){return this.$target.Inst.Arg;},function($v){this.$target.Inst.Arg=$v;},ae))));ai=false;if(s.Inst.Out===(h>>>0)){ai=true;}else if(s.Inst.Arg===(h>>>0)){ai=true;aj=ah;ak=ad;ad=aj;ah=ak;}if(ai){ad.$set(m.$get());}if(m.$get()===ad.$get()){p.$set(ah.$get());}}else{g++;continue;}g++;}return b;};AH.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AH).prototype.Len=function(){return this.$get().Len();};AH.prototype.Less=function(a,b){var $ptr,a,b,c;c=this;return((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a])<((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);};$ptrType(AH).prototype.Less=function(a,b){return this.$get().Less(a,b);};AH.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e;c=this;d=((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);e=((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]);((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=d);((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]=e);};$ptrType(AH).prototype.Swap=function(a,b){return this.$get().Swap(a,b);};AK=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];d=[d];e=[e];if(a[0].Inst.$length>=1000){$s=-1;return AL;}c[0]=AB(a[0].Inst.$length);e[0]=AB(a[0].Inst.$length);b[0]=$throwNilPointerError;d[0]=$makeSlice(BZ,a[0].Inst.$length);b[0]=(function(a,b,c,d,e){return function $b(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=false;h=true;j=(i=a[0].Inst,((f<0||f>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+f]));if(e[0].contains(f)){$s=-1;return h;}e[0].insert(f);k=j.Inst.Op;if((k===(0))||(k===(1))){$s=2;continue;}if((k===(2))||(k===(6))){$s=3;continue;}if(k===(3)){$s=4;continue;}if((k===(4))||(k===(5))){$s=5;continue;}if(k===(7)){$s=6;continue;}if(k===(8)){$s=7;continue;}if(k===(9)){$s=8;continue;}if(k===(10)){$s=9;continue;}$s=10;continue;case 2:m=b[0](j.Inst.Out,g);$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!(m)){l=false;$s=11;continue s;}n=b[0](j.Inst.Arg,g);$s=13;case 13:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;case 11:h=l;p=(o=g[$Uint32.keyFor(j.Inst.Out)],o!==undefined?o.v:false);r=(q=g[$Uint32.keyFor(j.Inst.Arg)],q!==undefined?q.v:false);if(p&&r){h=false;$s=1;continue;}if(r){s=j.Inst.Arg;t=j.Inst.Out;j.Inst.Out=s;j.Inst.Arg=t;u=r;v=p;p=u;r=v;}if(p){w=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(w)]={k:w,v:true};j.Inst.Op=1;}y=AE($indexPtr(d[0].$array,d[0].$offset+j.Inst.Out,CA),$indexPtr(d[0].$array,d[0].$offset+j.Inst.Arg,CA),j.Inst.Out,j.Inst.Arg);$s=14;case 14:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y;((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=x[0]);j.Next=x[1];if(j.Next.$length>0&&((z=j.Next,(0>=z.$length?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+0]))===4294967295)){h=false;$s=1;continue;}$s=10;continue;case 3:aa=b[0](j.Inst.Out,g);$s=15;case 15:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}h=aa;ab=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(ab)]={k:ab,v:(ac=g[$Uint32.keyFor(j.Inst.Out)],ac!==undefined?ac.v:false)};((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),(ad=j.Inst.Out,((ad<0||ad>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+ad]))));j.Next=new BJ([]);af=(ae=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(af>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);af=af-(1)>>0;}$s=10;continue;case 4:ag=b[0](j.Inst.Out,g);$s=16;case 16:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}h=ag;ah=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(ah)]={k:ah,v:(ai=g[$Uint32.keyFor(j.Inst.Out)],ai!==undefined?ai.v:false)};((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),(aj=j.Inst.Out,((aj<0||aj>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+aj]))));j.Next=new BJ([]);al=(ak=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(al>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);al=al-(1)>>0;}$s=10;continue;case 5:am=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(am)]={k:am,v:j.Inst.Op===4};$s=1;continue;$s=10;continue;case 6:an=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(an)]={k:an,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);if(j.Inst.Rune.$length===0){((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=new BI([]));j.Next=new BJ([j.Inst.Out]);$s=1;continue;}ao=$makeSlice(BI,0);if((j.Inst.Rune.$length===1)&&!(((((j.Inst.Arg<<16>>>16)&1)>>>0)===0))){$s=17;continue;}$s=18;continue;case 17:aq=(ap=j.Inst.Rune,(0>=ap.$length?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+0]));ao=$append(ao,aq,aq);ar=E.SimpleFold(aq);while(true){if(!(!((ar===aq)))){break;}ao=$append(ao,ar,ar);ar=E.SimpleFold(ar);}$r=D.Sort($subslice(new AH(ao.$array),ao.$offset,ao.$offset+ao.$length));$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=19;continue;case 18:ao=$appendSlice(ao,j.Inst.Rune);case 19:((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=ao);j.Next=new BJ([]);at=(as=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(at>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);at=at-(1)>>0;}j.Inst.Op=7;$s=10;continue;case 7:au=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(au)]={k:au,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);av=new BI([]);if(!(((((j.Inst.Arg<<16>>>16)&1)>>>0)===0))){$s=21;continue;}$s=22;continue;case 21:ax=(aw=j.Inst.Rune,(0>=aw.$length?($throwRuntimeError("index out of range"),undefined):aw.$array[aw.$offset+0]));av=$append(av,ax,ax);ay=E.SimpleFold(ax);while(true){if(!(!((ay===ax)))){break;}av=$append(av,ay,ay);ay=E.SimpleFold(ay);}$r=D.Sort($subslice(new AH(av.$array),av.$offset,av.$offset+av.$length));$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=23;continue;case 22:av=$append(av,(az=j.Inst.Rune,(0>=az.$length?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+0])),(ba=j.Inst.Rune,(0>=ba.$length?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+0])));case 23:((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=av);j.Next=new BJ([]);bc=(bb=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(bc>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);bc=bc-(1)>>0;}j.Inst.Op=7;$s=10;continue;case 8:bd=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(bd)]={k:bd,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),AJ));j.Next=new BJ([j.Inst.Out]);$s=10;continue;case 9:be=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(be)]={k:be,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),AI));j.Next=new BJ([]);bg=(bf=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(bf===bf&&bf!==1/0&&bf!==-1/0)?bf>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(bg>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);bg=bg-(1)>>0;}case 10:case 1:$s=-1;return h;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e);c[0].clear();c[0].insert((a[0].Start>>>0));g=(f=a[0].Inst.$length,((f<0||f>2147483647)?$throwRuntimeError("makemap: size out of range"):{}));case 1:if(!(!c[0].empty())){$s=2;continue;}e[0].clear();h=c[0].next();i=b[0](h,g);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=3;continue;}$s=4;continue;case 3:a[0]=AL;$s=2;continue;case 4:$s=1;continue;case 2:if(!(a[0]===AL)){j=a[0].Inst;k=0;while(true){if(!(k<j.$length)){break;}l=k;(m=a[0].Inst,((l<0||l>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+l])).Inst.Rune=((l<0||l>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+l]);k++;}}$s=-1;return a[0];}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};AM=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BK.nil;if(a.Start===0){b=AL;$s=-1;return b;}if(!(((c=a.Inst,d=a.Start,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op===3))||!((((((e=a.Inst,f=a.Start,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])).Arg<<24>>>24)&4)>>>0)===4))){b=AL;$s=-1;return b;}g=a.Inst;h=0;case 1:if(!(h<g.$length)){$s=2;continue;}i=$clone(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]),A.Inst);l=(j=a.Inst,k=i.Out,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k])).Op;m=i.Op;if((m===(0))||(m===(1))){if((l===4)||((n=a.Inst,o=i.Arg,((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o])).Op===4)){b=AL;$s=-1;return b;}}else if(m===(3)){if(l===4){if((((i.Arg<<24>>>24)&8)>>>0)===8){h++;$s=1;continue;}b=AL;$s=-1;return b;}}else if(l===4){b=AL;$s=-1;return b;}h++;$s=1;continue;case 2:b=AG(a);p=AK(b);$s=3;case 3:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}b=p;if(!(b===AL)){AF(b,a);}b=b;$s=-1;return b;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.ptr.prototype.String=function(){var $ptr,a;a=this;return a.regexpRO.expr;};AN.prototype.String=function(){return this.$val.String();};AN.ptr.prototype.Copy=function(){var $ptr,a;a=this;return new AN.ptr($clone(a.regexpRO,AO),new H.Mutex.ptr(false),CD.nil);};AN.prototype.Copy=function(){return this.$val.Copy();};AP=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=AR(a,212,false);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Compile=AP;AN.ptr.prototype.Longest=function(){var $ptr,a;a=this;a.regexpRO.longest=true;};AN.prototype.Longest=function(){return this.$val.Longest();};AR=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=A.Parse(a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return[BP.nil,g];}h=f.MaxCap();i=f.CapNames();f=f.Simplify();j=A.Compile(f);k=j[0];g=j[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return[BP.nil,g];}l=AM(k);$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=new AN.ptr(new AO.ptr(a,k,l,"",BL.nil,false,0,0,k.StartCond(),h,i,c),new H.Mutex.ptr(false),CD.nil);if(m.regexpRO.onepass===AL){n=k.Prefix();m.regexpRO.prefix=n[0];m.regexpRO.prefixComplete=n[1];}else{o=X(k);m.regexpRO.prefix=o[0];m.regexpRO.prefixComplete=o[1];m.regexpRO.prefixEnd=o[2];}if(!(m.regexpRO.prefix==="")){m.regexpRO.prefixBytes=new BL($stringToBytes(m.regexpRO.prefix));p=I.DecodeRuneInString(m.regexpRO.prefix);m.regexpRO.prefixRune=p[0];}$s=-1;return[m,$ifaceNil];}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.ptr.prototype.get=function(){var $ptr,a,b,c,d,e,f;a=this;a.mu.Lock();b=a.machine.$length;if(b>0){e=(c=a.machine,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));a.machine=$subslice(a.machine,0,(b-1>>0));a.mu.Unlock();return e;}a.mu.Unlock();f=T(a.regexpRO.prog,a.regexpRO.onepass);f.re=a;return f;};AN.prototype.get=function(){return this.$val.get();};AN.ptr.prototype.put=function(a){var $ptr,a,b;b=this;b.mu.Lock();b.machine=$append(b.machine,a);b.mu.Unlock();};AN.prototype.put=function(a){return this.$val.put(a);};AS=function(a){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AP(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[0];e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:f=e.Error();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$panic(new $String("regexp: Compile("+AU(a)+"): "+f));case 3:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MustCompile=AS;AU=function(a){var $ptr,a;if(F.CanBackquote(a)){return"`"+a+"`";}return F.Quote(a);};AN.ptr.prototype.NumSubexp=function(){var $ptr,a;a=this;return a.regexpRO.numSubexp;};AN.prototype.NumSubexp=function(){return this.$val.NumSubexp();};AN.ptr.prototype.SubexpNames=function(){var $ptr,a;a=this;return a.regexpRO.subexpNames;};AN.prototype.SubexpNames=function(){return this.$val.SubexpNames();};AW.ptr.prototype.step=function(a){var $ptr,a,b,c;b=this;if(a<b.str.length){c=b.str.charCodeAt(a);if(c<128){return[(c>>0),1];}return I.DecodeRuneInString($substring(b.str,a));}return[-1,0];};AW.prototype.step=function(a){return this.$val.step(a);};AW.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return true;};AW.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AW.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return G.HasPrefix(b.str,a.regexpRO.prefix);};AW.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AW.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return G.Index($substring(c.str,b),a.regexpRO.prefix);};AW.prototype.index=function(a,b){return this.$val.index(a,b);};AW.ptr.prototype.context=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=-1;d=-1;e=c;f=d;if(a>0&&a<=b.str.length){g=I.DecodeLastRuneInString($substring(b.str,0,a));e=g[0];}if(a<b.str.length){h=I.DecodeRuneInString($substring(b.str,a));f=h[0];}return A.EmptyOpContext(e,f);};AW.prototype.context=function(a){return this.$val.context(a);};AX.ptr.prototype.step=function(a){var $ptr,a,b,c,d;b=this;if(a<b.str.$length){d=(c=b.str,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]));if(d<128){return[(d>>0),1];}return I.DecodeRune($subslice(b.str,a));}return[-1,0];};AX.prototype.step=function(a){return this.$val.step(a);};AX.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return true;};AX.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AX.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return C.HasPrefix(b.str,a.regexpRO.prefixBytes);};AX.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AX.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return C.Index($subslice(c.str,b),a.regexpRO.prefixBytes);};AX.prototype.index=function(a,b){return this.$val.index(a,b);};AX.ptr.prototype.context=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=-1;d=-1;e=c;f=d;if(a>0&&a<=b.str.$length){g=I.DecodeLastRune($subslice(b.str,0,a));e=g[0];}if(a<b.str.$length){h=I.DecodeRune($subslice(b.str,a));f=h[0];}return A.EmptyOpContext(e,f);};AX.prototype.context=function(a){return this.$val.context(a);};AY.ptr.prototype.step=function(a){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(!b.atEOT&&!((a===b.pos))){$s=-1;return[-1,0];}d=b.r.ReadRune();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];g=c[2];if(!($interfaceIsEqual(g,$ifaceNil))){b.atEOT=true;$s=-1;return[-1,0];}b.pos=b.pos+(f)>>0;$s=-1;return[e,f];}return;}if($f===undefined){$f={$blk:AY.ptr.prototype.step};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY.prototype.step=function(a){return this.$val.step(a);};AY.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return false;};AY.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AY.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return false;};AY.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AY.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return-1;};AY.prototype.index=function(a,b){return this.$val.index(a,b);};AY.ptr.prototype.context=function(a){var $ptr,a,b;b=this;return 0;};AY.prototype.context=function(a){return this.$val.context(a);};AN.ptr.prototype.LiteralPrefix=function(){var $ptr,a,b,c,d,e;a="";b=false;c=this;d=c.regexpRO.prefix;e=c.regexpRO.prefixComplete;a=d;b=e;return[a,b];};AN.prototype.LiteralPrefix=function(){return this.$val.LiteralPrefix();};AN.ptr.prototype.MatchReader=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch(a,BL.nil,"");$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.MatchReader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.MatchReader=function(a){return this.$val.MatchReader(a);};AN.ptr.prototype.MatchString=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch($ifaceNil,BL.nil,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.MatchString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.MatchString=function(a){return this.$val.MatchString(a);};AN.ptr.prototype.Match=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch($ifaceNil,a,"");$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Match};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Match=function(a){return this.$val.Match(a);};BA=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=false;d=$ifaceNil;f=AP(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];d=e[1];if(!($interfaceIsEqual(d,$ifaceNil))){h=false;i=d;c=h;d=i;$s=-1;return[c,d];}k=g.MatchString(b);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=$ifaceNil;c=j;d=l;$s=-1;return[c,d];}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MatchString=BA;AN.ptr.prototype.ReplaceAllString=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];c[0]=this;d=2;if(G.Contains(b[0],"$")){d=$imul(2,((c[0].regexpRO.numSubexp+1>>0)));}e=c[0].replaceAll(BL.nil,a[0],d,(function(a,b,c){return function(e,f){var $ptr,e,f;return c[0].expand(e,b[0],BL.nil,a[0],f);};})(a,b,c));$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=-1;return $bytesToString(f);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllString=function(a,b){return this.$val.ReplaceAllString(a,b);};AN.ptr.prototype.ReplaceAllLiteralString=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=[b];c=this;d=c.replaceAll(BL.nil,a,2,(function(b){return function(d,e){var $ptr,d,e;return $appendSlice(d,b[0]);};})(b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return $bytesToString(d);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllLiteralString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllLiteralString=function(a,b){return this.$val.ReplaceAllLiteralString(a,b);};AN.ptr.prototype.ReplaceAllStringFunc=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=this;d=c.replaceAll(BL.nil,a[0],2,(function(a,b){return function $b(d,e){var $ptr,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=d;g=b[0]($substring(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return $appendSlice(f,h);}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(a,b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=-1;return $bytesToString(e);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllStringFunc};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllStringFunc=function(a,b){return this.$val.ReplaceAllStringFunc(a,b);};AN.ptr.prototype.replaceAll=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=0;g=0;h=BL.nil;i=0;if(!(a===BL.nil)){i=a.$length;}else{i=b.length;}if(c>e.regexpRO.prog.NumCap){c=e.regexpRO.prog.NumCap;}j=CE.zero();case 1:if(!(g<=i)){$s=2;continue;}k=e.doExecute($ifaceNil,a,b,g,c,$subslice(new BN(j),0,0));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(l.$length===0){$s=2;continue;}if(!(a===BL.nil)){h=$appendSlice(h,$subslice(a,f,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])));}else{h=$appendSlice(h,$substring(b,f,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])));}if((1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])>f||((0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])===0)){$s=4;continue;}$s=5;continue;case 4:m=d(h,l);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}h=m;case 5:f=(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1]);n=0;if(!(a===BL.nil)){o=I.DecodeRune($subslice(a,g));n=o[1];}else{p=I.DecodeRuneInString($substring(b,g));n=p[1];}if((g+n>>0)>(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])){g=g+(n)>>0;}else if((g+1>>0)>(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])){g=g+(1)>>0;}else{g=(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1]);}$s=1;continue;case 2:if(!(a===BL.nil)){h=$appendSlice(h,$subslice(a,f));}else{h=$appendSlice(h,$substring(b,f));}$s=-1;return h;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.replaceAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.replaceAll=function(a,b,c,d){return this.$val.replaceAll(a,b,c,d);};AN.ptr.prototype.ReplaceAll=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];d=[d];c[0]=this;e=2;if(C.IndexByte(b[0],36)>=0){e=$imul(2,((c[0].regexpRO.numSubexp+1>>0)));}d[0]="";f=c[0].replaceAll(a[0],"",e,(function(a,b,c,d){return function(f,g){var $ptr,f,g;if(!((d[0].length===b[0].$length))){d[0]=$bytesToString(b[0]);}return c[0].expand(f,d[0],a[0],"",g);};})(a,b,c,d));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=-1;return g;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAll=function(a,b){return this.$val.ReplaceAll(a,b);};AN.ptr.prototype.ReplaceAllLiteral=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=[b];c=this;d=c.replaceAll(a,"",2,(function(b){return function(d,e){var $ptr,d,e;return $appendSlice(d,b[0]);};})(b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllLiteral};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllLiteral=function(a,b){return this.$val.ReplaceAllLiteral(a,b);};AN.ptr.prototype.ReplaceAllFunc=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=this;d=c.replaceAll(a[0],"",2,(function(a,b){return function $b(d,e){var $ptr,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=d;g=b[0]($subslice(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return $appendSlice(f,h);}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(a,b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllFunc};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllFunc=function(a,b){return this.$val.ReplaceAllFunc(a,b);};AN.ptr.prototype.pad=function(a){var $ptr,a,b,c;b=this;if(a===BN.nil){return BN.nil;}c=$imul(((1+b.regexpRO.numSubexp>>0)),2);while(true){if(!(a.$length<c)){break;}a=$append(a,-1);}return a;};AN.prototype.pad=function(a){return this.$val.pad(a);};AN.ptr.prototype.allMatches=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=0;if(b===BL.nil){f=a.length;}else{f=b.$length;}g=0;h=0;i=-1;j=g;k=h;l=i;case 1:if(!(k<c&&j<=f)){$s=2;continue;}m=e.doExecute($ifaceNil,b,a,j,e.regexpRO.prog.NumCap,BN.nil);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;if(n.$length===0){$s=2;continue;}o=true;if((1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])===j){if((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])===l){o=false;}p=0;if(b===BL.nil){q=I.DecodeRuneInString($substring(a,j,f));p=q[1];}else{r=I.DecodeRune($subslice(b,j,f));p=r[1];}if(p>0){j=j+(p)>>0;}else{j=f+1>>0;}}else{j=(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]);}l=(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]);if(o){$s=4;continue;}$s=5;continue;case 4:$r=d(e.pad(n));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;case 5:$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.allMatches};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.allMatches=function(a,b,c,d){return this.$val.allMatches(a,b,c,d);};AN.ptr.prototype.Find=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CE.zero();d=b.doExecute($ifaceNil,a,"",0,2,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return BL.nil;}$s=-1;return $subslice(a,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Find};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Find=function(a){return this.$val.Find(a);};AN.ptr.prototype.FindIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute($ifaceNil,a,"",0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindIndex=function(a){return this.$val.FindIndex(a);};AN.ptr.prototype.FindString=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CE.zero();d=b.doExecute($ifaceNil,BL.nil,a,0,2,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return"";}$s=-1;return $substring(a,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindString=function(a){return this.$val.FindString(a);};AN.ptr.prototype.FindStringIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute($ifaceNil,BL.nil,a,0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringIndex=function(a){return this.$val.FindStringIndex(a);};AN.ptr.prototype.FindReaderIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute(a,BL.nil,"",0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindReaderIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindReaderIndex=function(a){return this.$val.FindReaderIndex(a);};AN.ptr.prototype.FindSubmatch=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CF.zero();d=b.doExecute($ifaceNil,a,"",0,b.regexpRO.prog.NumCap,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return CG.nil;}f=$makeSlice(CG,(1+b.regexpRO.numSubexp>>0));g=f;h=0;while(true){if(!(h<g.$length)){break;}i=h;if(($imul(2,i))<e.$length&&(j=$imul(2,i),((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))>=0){((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]=$subslice(a,(k=$imul(2,i),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k])),(l=($imul(2,i))+1>>0,((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l]))));}h++;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindSubmatch=function(a){return this.$val.FindSubmatch(a);};AN.ptr.prototype.Expand=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return e.expand(a,$bytesToString(b),c,"",d);};AN.prototype.Expand=function(a,b,c,d){return this.$val.Expand(a,b,c,d);};AN.ptr.prototype.ExpandString=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return e.expand(a,b,BL.nil,c,d);};AN.prototype.ExpandString=function(a,b,c,d){return this.$val.ExpandString(a,b,c,d);};AN.ptr.prototype.expand=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=this;while(true){if(!(b.length>0)){break;}g=G.Index(b,"$");if(g<0){break;}a=$appendSlice(a,$substring(b,0,g));b=$substring(b,g);if(b.length>1&&(b.charCodeAt(1)===36)){a=$append(a,36);b=$substring(b,2);continue;}h=BF(b);i=h[0];j=h[1];k=h[2];l=h[3];if(!l){a=$append(a,36);b=$substring(b,1);continue;}b=k;if(j>=0){if((($imul(2,j))+1>>0)<e.$length&&(m=$imul(2,j),((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))>=0){if(!(c===BL.nil)){a=$appendSlice(a,$subslice(c,(n=$imul(2,j),((n<0||n>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+n])),(o=($imul(2,j))+1>>0,((o<0||o>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+o]))));}else{a=$appendSlice(a,$substring(d,(p=$imul(2,j),((p<0||p>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+p])),(q=($imul(2,j))+1>>0,((q<0||q>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+q]))));}}}else{r=f.regexpRO.subexpNames;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(i===u&&(($imul(2,t))+1>>0)<e.$length&&(v=$imul(2,t),((v<0||v>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+v]))>=0){if(!(c===BL.nil)){a=$appendSlice(a,$subslice(c,(w=$imul(2,t),((w<0||w>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+w])),(x=($imul(2,t))+1>>0,((x<0||x>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+x]))));}else{a=$appendSlice(a,$substring(d,(y=$imul(2,t),((y<0||y>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+y])),(z=($imul(2,t))+1>>0,((z<0||z>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+z]))));}break;}s++;}}}a=$appendSlice(a,b);return a;};AN.prototype.expand=function(a,b,c,d,e){return this.$val.expand(a,b,c,d,e);};BF=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b="";c=0;d="";e=false;if(a.length<2||!((a.charCodeAt(0)===36))){return[b,c,d,e];}f=false;if(a.charCodeAt(1)===123){f=true;a=$substring(a,2);}else{a=$substring(a,1);}g=0;while(true){if(!(g<a.length)){break;}h=I.DecodeRuneInString($substring(a,g));i=h[0];j=h[1];if(!E.IsLetter(i)&&!E.IsDigit(i)&&!((i===95))){break;}g=g+(j)>>0;}if(g===0){return[b,c,d,e];}b=$substring(a,0,g);if(f){if(g>=a.length||!((a.charCodeAt(g)===125))){return[b,c,d,e];}g=g+(1)>>0;}c=0;k=0;while(true){if(!(k<b.length)){break;}if(b.charCodeAt(k)<48||57<b.charCodeAt(k)||c>=100000000){c=-1;break;}c=(($imul(c,10))+(b.charCodeAt(k)>>0)>>0)-48>>0;k=k+(1)>>0;}if((b.charCodeAt(0)===48)&&b.length>1){c=-1;}d=$substring(a,g);e=true;return[b,c,d,e];};AN.ptr.prototype.FindSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute($ifaceNil,a,"",0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindSubmatchIndex=function(a){return this.$val.FindSubmatchIndex(a);};AN.ptr.prototype.FindStringSubmatch=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CF.zero();d=b.doExecute($ifaceNil,BL.nil,a,0,b.regexpRO.prog.NumCap,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return CB.nil;}f=$makeSlice(CB,(1+b.regexpRO.numSubexp>>0));g=f;h=0;while(true){if(!(h<g.$length)){break;}i=h;if(($imul(2,i))<e.$length&&(j=$imul(2,i),((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))>=0){((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]=$substring(a,(k=$imul(2,i),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k])),(l=($imul(2,i))+1>>0,((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l]))));}h++;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringSubmatch=function(a){return this.$val.FindStringSubmatch(a);};AN.ptr.prototype.FindStringSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute($ifaceNil,BL.nil,a,0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringSubmatchIndex=function(a){return this.$val.FindStringSubmatchIndex(a);};AN.ptr.prototype.FindReaderSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute(a,BL.nil,"",0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindReaderSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindReaderSubmatchIndex=function(a){return this.$val.FindReaderSubmatchIndex(a);};AN.ptr.prototype.FindAll=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].$length+1>>0;}c[0]=$makeSlice(CG,0,10);$r=d.allMatches("",a[0],b,(function(a,c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CG.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAll=function(a,b){return this.$val.FindAll(a,b);};AN.ptr.prototype.FindAllIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.$length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches("",a,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(e,0,2));};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllIndex=function(a,b){return this.$val.FindAllIndex(a,b);};AN.ptr.prototype.FindAllString=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].length+1>>0;}c[0]=$makeSlice(CB,0,10);$r=d.allMatches(a[0],BL.nil,b,(function(a,c){return function(e){var $ptr,e;c[0]=$append(c[0],$substring(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CB.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllString=function(a,b){return this.$val.FindAllString(a,b);};AN.ptr.prototype.FindAllStringIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches(a,BL.nil,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(e,0,2));};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringIndex=function(a,b){return this.$val.FindAllStringIndex(a,b);};AN.ptr.prototype.FindAllSubmatch=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].$length+1>>0;}c[0]=$makeSlice(CI,0,10);$r=d.allMatches("",a[0],b,(function(a,c){return function(e){var $ptr,e,f,g,h,i,j,k,l,m;g=$makeSlice(CG,(f=e.$length/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero")));h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;if((k=$imul(2,j),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]))>=0){((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=$subslice(a[0],(l=$imul(2,j),((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l])),(m=($imul(2,j))+1>>0,((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))));}i++;}c[0]=$append(c[0],g);};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CI.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllSubmatch=function(a,b){return this.$val.FindAllSubmatch(a,b);};AN.ptr.prototype.FindAllSubmatchIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.$length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches("",a,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],e);};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllSubmatchIndex=function(a,b){return this.$val.FindAllSubmatchIndex(a,b);};AN.ptr.prototype.FindAllStringSubmatch=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].length+1>>0;}c[0]=$makeSlice(CJ,0,10);$r=d.allMatches(a[0],BL.nil,b,(function(a,c){return function(e){var $ptr,e,f,g,h,i,j,k,l,m;g=$makeSlice(CB,(f=e.$length/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero")));h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;if((k=$imul(2,j),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]))>=0){((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=$substring(a[0],(l=$imul(2,j),((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l])),(m=($imul(2,j))+1>>0,((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))));}i++;}c[0]=$append(c[0],g);};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CJ.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringSubmatch=function(a,b){return this.$val.FindAllStringSubmatch(a,b);};AN.ptr.prototype.FindAllStringSubmatchIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches(a,BL.nil,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],e);};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringSubmatchIndex=function(a,b){return this.$val.FindAllStringSubmatchIndex(a,b);};AN.ptr.prototype.Split=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(b===0){$s=-1;return CB.nil;}if(c.regexpRO.expr.length>0&&(a.length===0)){$s=-1;return new CB([""]);}d=c.FindAllStringIndex(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=$makeSlice(CB,0,e.$length);g=0;h=0;i=e;j=0;while(true){if(!(j<i.$length)){break;}k=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(b>0&&f.$length>=(b-1>>0)){break;}h=(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]);if(!(((1>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+1])===0))){f=$append(f,$substring(a,g,h));}g=(1>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+1]);j++;}if(!((h===a.length))){f=$append(f,$substring(a,g));}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Split};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Split=function(a,b){return this.$val.Split(a,b);};BH.methods=[{prop:"reset",name:"reset",pkg:"regexp",typ:$funcType([$Int,$Int],[],false)},{prop:"shouldVisit",name:"shouldVisit",pkg:"regexp",typ:$funcType([$Uint32,$Int],[$Bool],false)},{prop:"push",name:"push",pkg:"regexp",typ:$funcType([$Uint32,$Int,$Int],[],false)}];CC.methods=[{prop:"tryBacktrack",name:"tryBacktrack",pkg:"regexp",typ:$funcType([BH,AV,$Uint32,$Int],[$Bool],false)},{prop:"backtrack",name:"backtrack",pkg:"regexp",typ:$funcType([AV,$Int,$Int,$Int],[$Bool],false)},{prop:"newInputBytes",name:"newInputBytes",pkg:"regexp",typ:$funcType([BL],[AV],false)},{prop:"newInputString",name:"newInputString",pkg:"regexp",typ:$funcType([$String],[AV],false)},{prop:"newInputReader",name:"newInputReader",pkg:"regexp",typ:$funcType([B.RuneReader],[AV],false)},{prop:"init",name:"init",pkg:"regexp",typ:$funcType([$Int],[],false)},{prop:"alloc",name:"alloc",pkg:"regexp",typ:$funcType([BT],[BR],false)},{prop:"match",name:"match",pkg:"regexp",typ:$funcType([AV,$Int],[$Bool],false)},{prop:"clear",name:"clear",pkg:"regexp",typ:$funcType([CK],[],false)},{prop:"step",name:"step",pkg:"regexp",typ:$funcType([CK,CK,$Int,$Int,$Int32,A.EmptyOp],[],false)},{prop:"add",name:"add",pkg:"regexp",typ:$funcType([CK,$Uint32,$Int,BN,A.EmptyOp,BR],[BR],false)},{prop:"onepass",name:"onepass",pkg:"regexp",typ:$funcType([AV,$Int],[$Bool],false)}];BW.methods=[{prop:"empty",name:"empty",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"next",name:"next",pkg:"regexp",typ:$funcType([],[$Uint32],false)},{prop:"clear",name:"clear",pkg:"regexp",typ:$funcType([],[],false)},{prop:"contains",name:"contains",pkg:"regexp",typ:$funcType([$Uint32],[$Bool],false)},{prop:"insert",name:"insert",pkg:"regexp",typ:$funcType([$Uint32],[],false)},{prop:"insertNew",name:"insertNew",pkg:"regexp",typ:$funcType([$Uint32],[],false)}];AH.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)}];BP.methods=[{prop:"doMatch",name:"doMatch",pkg:"regexp",typ:$funcType([B.RuneReader,BL,$String],[$Bool],false)},{prop:"doExecute",name:"doExecute",pkg:"regexp",typ:$funcType([B.RuneReader,BL,$String,$Int,$Int,BN],[BN],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Copy",name:"Copy",pkg:"",typ:$funcType([],[BP],false)},{prop:"Longest",name:"Longest",pkg:"",typ:$funcType([],[],false)},{prop:"get",name:"get",pkg:"regexp",typ:$funcType([],[CC],false)},{prop:"put",name:"put",pkg:"regexp",typ:$funcType([CC],[],false)},{prop:"NumSubexp",name:"NumSubexp",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SubexpNames",name:"SubexpNames",pkg:"",typ:$funcType([],[CB],false)},{prop:"LiteralPrefix",name:"LiteralPrefix",pkg:"",typ:$funcType([],[$String,$Bool],false)},{prop:"MatchReader",name:"MatchReader",pkg:"",typ:$funcType([B.RuneReader],[$Bool],false)},{prop:"MatchString",name:"MatchString",pkg:"",typ:$funcType([$String],[$Bool],false)},{prop:"Match",name:"Match",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"ReplaceAllString",name:"ReplaceAllString",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"ReplaceAllLiteralString",name:"ReplaceAllLiteralString",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"ReplaceAllStringFunc",name:"ReplaceAllStringFunc",pkg:"",typ:$funcType([$String,CL],[$String],false)},{prop:"replaceAll",name:"replaceAll",pkg:"regexp",typ:$funcType([BL,$String,$Int,CM],[BL],false)},{prop:"ReplaceAll",name:"ReplaceAll",pkg:"",typ:$funcType([BL,BL],[BL],false)},{prop:"ReplaceAllLiteral",name:"ReplaceAllLiteral",pkg:"",typ:$funcType([BL,BL],[BL],false)},{prop:"ReplaceAllFunc",name:"ReplaceAllFunc",pkg:"",typ:$funcType([BL,CN],[BL],false)},{prop:"pad",name:"pad",pkg:"regexp",typ:$funcType([BN],[BN],false)},{prop:"allMatches",name:"allMatches",pkg:"regexp",typ:$funcType([$String,BL,$Int,CO],[],false)},{prop:"Find",name:"Find",pkg:"",typ:$funcType([BL],[BL],false)},{prop:"FindIndex",name:"FindIndex",pkg:"",typ:$funcType([BL],[BN],false)},{prop:"FindString",name:"FindString",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"FindStringIndex",name:"FindStringIndex",pkg:"",typ:$funcType([$String],[BN],false)},{prop:"FindReaderIndex",name:"FindReaderIndex",pkg:"",typ:$funcType([B.RuneReader],[BN],false)},{prop:"FindSubmatch",name:"FindSubmatch",pkg:"",typ:$funcType([BL],[CG],false)},{prop:"Expand",name:"Expand",pkg:"",typ:$funcType([BL,BL,BL,BN],[BL],false)},{prop:"ExpandString",name:"ExpandString",pkg:"",typ:$funcType([BL,$String,$String,BN],[BL],false)},{prop:"expand",name:"expand",pkg:"regexp",typ:$funcType([BL,$String,BL,$String,BN],[BL],false)},{prop:"FindSubmatchIndex",name:"FindSubmatchIndex",pkg:"",typ:$funcType([BL],[BN],false)},{prop:"FindStringSubmatch",name:"FindStringSubmatch",pkg:"",typ:$funcType([$String],[CB],false)},{prop:"FindStringSubmatchIndex",name:"FindStringSubmatchIndex",pkg:"",typ:$funcType([$String],[BN],false)},{prop:"FindReaderSubmatchIndex",name:"FindReaderSubmatchIndex",pkg:"",typ:$funcType([B.RuneReader],[BN],false)},{prop:"FindAll",name:"FindAll",pkg:"",typ:$funcType([BL,$Int],[CG],false)},{prop:"FindAllIndex",name:"FindAllIndex",pkg:"",typ:$funcType([BL,$Int],[CH],false)},{prop:"FindAllString",name:"FindAllString",pkg:"",typ:$funcType([$String,$Int],[CB],false)},{prop:"FindAllStringIndex",name:"FindAllStringIndex",pkg:"",typ:$funcType([$String,$Int],[CH],false)},{prop:"FindAllSubmatch",name:"FindAllSubmatch",pkg:"",typ:$funcType([BL,$Int],[CI],false)},{prop:"FindAllSubmatchIndex",name:"FindAllSubmatchIndex",pkg:"",typ:$funcType([BL,$Int],[CH],false)},{prop:"FindAllStringSubmatch",name:"FindAllStringSubmatch",pkg:"",typ:$funcType([$String,$Int],[CJ],false)},{prop:"FindAllStringSubmatchIndex",name:"FindAllStringSubmatchIndex",pkg:"",typ:$funcType([$String,$Int],[CH],false)},{prop:"Split",name:"Split",pkg:"",typ:$funcType([$String,$Int],[CB],false)}];CP.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];CQ.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];CR.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];J.init("regexp",[{prop:"pc",name:"pc",exported:false,typ:$Uint32,tag:""},{prop:"arg",name:"arg",exported:false,typ:$Int,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);K.init("regexp",[{prop:"prog",name:"prog",exported:false,typ:BM,tag:""},{prop:"end",name:"end",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:BN,tag:""},{prop:"jobs",name:"jobs",exported:false,typ:BO,tag:""},{prop:"visited",name:"visited",exported:false,typ:BJ,tag:""}]);P.init("regexp",[{prop:"sparse",name:"sparse",exported:false,typ:BJ,tag:""},{prop:"dense",name:"dense",exported:false,typ:BQ,tag:""}]);Q.init("regexp",[{prop:"pc",name:"pc",exported:false,typ:$Uint32,tag:""},{prop:"t",name:"t",exported:false,typ:BR,tag:""}]);R.init("regexp",[{prop:"inst",name:"inst",exported:false,typ:BT,tag:""},{prop:"cap",name:"cap",exported:false,typ:BN,tag:""}]);S.init("regexp",[{prop:"re",name:"re",exported:false,typ:BP,tag:""},{prop:"p",name:"p",exported:false,typ:BM,tag:""},{prop:"op",name:"op",exported:false,typ:BK,tag:""},{prop:"maxBitStateLen",name:"maxBitStateLen",exported:false,typ:$Int,tag:""},{prop:"b",name:"b",exported:false,typ:BH,tag:""},{prop:"q0",name:"q0",exported:false,typ:P,tag:""},{prop:"q1",name:"q1",exported:false,typ:P,tag:""},{prop:"pool",name:"pool",exported:false,typ:BS,tag:""},{prop:"matched",name:"matched",exported:false,typ:$Bool,tag:""},{prop:"matchcap",name:"matchcap",exported:false,typ:BN,tag:""},{prop:"inputBytes",name:"inputBytes",exported:false,typ:AX,tag:""},{prop:"inputString",name:"inputString",exported:false,typ:AW,tag:""},{prop:"inputReader",name:"inputReader",exported:false,typ:AY,tag:""}]);V.init("",[{prop:"Inst",name:"Inst",exported:true,typ:BX,tag:""},{prop:"Start",name:"Start",exported:true,typ:$Int,tag:""},{prop:"NumCap",name:"NumCap",exported:true,typ:$Int,tag:""}]);W.init("",[{prop:"Inst",name:"",exported:true,typ:A.Inst,tag:""},{prop:"Next",name:"Next",exported:true,typ:BJ,tag:""}]);AA.init("regexp",[{prop:"sparse",name:"sparse",exported:false,typ:BJ,tag:""},{prop:"dense",name:"dense",exported:false,typ:BJ,tag:""},{prop:"size",name:"size",exported:false,typ:$Uint32,tag:""},{prop:"nextIndex",name:"nextIndex",exported:false,typ:$Uint32,tag:""}]);AH.init($Int32);AN.init("regexp",[{prop:"regexpRO",name:"",exported:false,typ:AO,tag:""},{prop:"mu",name:"mu",exported:false,typ:H.Mutex,tag:""},{prop:"machine",name:"machine",exported:false,typ:CD,tag:""}]);AO.init("regexp",[{prop:"expr",name:"expr",exported:false,typ:$String,tag:""},{prop:"prog",name:"prog",exported:false,typ:BM,tag:""},{prop:"onepass",name:"onepass",exported:false,typ:BK,tag:""},{prop:"prefix",name:"prefix",exported:false,typ:$String,tag:""},{prop:"prefixBytes",name:"prefixBytes",exported:false,typ:BL,tag:""},{prop:"prefixComplete",name:"prefixComplete",exported:false,typ:$Bool,tag:""},{prop:"prefixRune",name:"prefixRune",exported:false,typ:$Int32,tag:""},{prop:"prefixEnd",name:"prefixEnd",exported:false,typ:$Uint32,tag:""},{prop:"cond",name:"cond",exported:false,typ:A.EmptyOp,tag:""},{prop:"numSubexp",name:"numSubexp",exported:false,typ:$Int,tag:""},{prop:"subexpNames",name:"subexpNames",exported:false,typ:CB,tag:""},{prop:"longest",name:"longest",exported:false,typ:$Bool,tag:""}]);AV.init([{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)}]);AW.init("regexp",[{prop:"str",name:"str",exported:false,typ:$String,tag:""}]);AX.init("regexp",[{prop:"str",name:"str",exported:false,typ:BL,tag:""}]);AY.init("regexp",[{prop:"r",name:"r",exported:false,typ:B.RuneReader,tag:""},{prop:"atEOT",name:"atEOT",exported:false,typ:$Bool,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=BG.zero();L=BH.nil;AC=new BI([]);AD=new BJ([4294967295]);AI=new BI([0,9,11,1114111]);AJ=new BI([0,1114111]);AL=BK.nil;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["runtime/debug"]=(function(){var $pkg={},$init,D,A,B,C,Y,Q;D=$packages["os"];A=$packages["runtime"];B=$packages["sort"];C=$packages["time"];Y=$sliceType($Uint8);Q=function(){var $ptr,c,d;c=$makeSlice(Y,1024);while(true){d=A.Stack(c,false);if(d<c.$length){return $subslice(c,0,d);}c=$makeSlice(Y,($imul(2,c.$length)));}};$pkg.Stack=Q;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;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=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;}}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;A=$packages["io"];B=$packages["sync"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["runtime/trace"]=(function(){var $pkg={},$init,A,B;A=$packages["io"];B=$packages["runtime"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["testing"]=(function(){var $pkg={},$init,E,O,J,A,L,K,F,B,I,P,Q,N,G,C,H,M,D,Z,AA,AB,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CP,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;E=$packages["bytes"];O=$packages["errors"];J=$packages["flag"];A=$packages["fmt"];L=$packages["github.com/gopherjs/gopherjs/nosync"];K=$packages["internal/race"];F=$packages["io"];B=$packages["os"];I=$packages["runtime"];P=$packages["runtime/debug"];Q=$packages["runtime/trace"];N=$packages["sort"];G=$packages["strconv"];C=$packages["strings"];H=$packages["sync"];M=$packages["sync/atomic"];D=$packages["time"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=Q.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=J.String("test.bench","","run only benchmarks matching `regexp`");$s=18;case 18:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}Z=b;c=J.Duration("test.benchtime",new D.Duration(0,1000000000),"run each benchmark for duration `d`");$s=19;case 19:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}AA=c;d=J.Bool("test.benchmem",false,"print memory allocations for benchmarks");$s=20;case 20:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}AB=d;e=J.Bool("test.short",false,"run smaller test suite to save time");$s=21;case 21:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}BJ=e;f=J.String("test.outputdir","","write profiles to `dir`");$s=22;case 22:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}BK=f;g=J.Bool("test.v",false,"verbose: print additional output");$s=23;case 23:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}BL=g;h=J.Uint("test.count",1,"run tests and benchmarks `n` times");$s=24;case 24:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}BM=h;i=J.String("test.coverprofile","","write a coverage profile to `file`");$s=25;case 25:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}BN=i;j=J.String("test.run","","run only tests and examples matching `regexp`");$s=26;case 26:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}BO=j;k=J.String("test.memprofile","","write a memory profile to `file`");$s=27;case 27:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}BP=k;l=J.Int("test.memprofilerate",0,"set memory profiling `rate` (see runtime.MemProfileRate)");$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}BQ=l;m=J.String("test.cpuprofile","","write a cpu profile to `file`");$s=29;case 29:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}BR=m;n=J.String("test.blockprofile","","write a goroutine blocking profile to `file`");$s=30;case 30:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}BS=n;o=J.Int("test.blockprofilerate",1,"set blocking profile `rate` (see runtime.SetBlockProfileRate)");$s=31;case 31:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}BT=o;p=J.String("test.mutexprofile","","write a mutex contention profile to the named file after execution");$s=32;case 32:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}BU=p;q=J.Int("test.mutexprofilefraction",1,"if >= 0, calls runtime.SetMutexProfileFraction()");$s=33;case 33:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}BV=q;r=J.String("test.trace","","write an execution trace to `file`");$s=34;case 34:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}BW=r;s=J.Duration("test.timeout",new D.Duration(0,0),"fail test binary execution after duration `d` (0 means unlimited)");$s=35;case 35:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}BX=s;t=J.String("test.cpu","","comma-separated `list` of cpu counts to run each test with");$s=36;case 36:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}BY=t;u=J.Int("test.parallel",I.GOMAXPROCS(0),"run at most `n` tests in parallel");$s=37;case 37:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}BZ=u;CP=O.New("testing: unexpected use of func Main");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/onet.v1/log"]=(function(){var $pkg={},$init,A,E,F,N,B,C,G,H,O,M,P,I,D,J,K,L,CQ,CR,CV,Q,R,AB,CN,AC,CO,AD,CP,AE,AF,AG,a,b,S,AH,AI,AJ,AL,AO,BI,BO,BS,BT,BX,BZ,CD,CI;A=$packages["bytes"];E=$packages["flag"];F=$packages["fmt"];N=$packages["github.com/daviddengcn/go-colortext"];B=$packages["io"];C=$packages["os"];G=$packages["regexp"];H=$packages["runtime"];O=$packages["runtime/debug"];M=$packages["runtime/pprof"];P=$packages["sort"];I=$packages["strconv"];D=$packages["strings"];J=$packages["sync"];K=$packages["testing"];L=$packages["time"];CQ=$sliceType($emptyInterface);CR=$sliceType(N.Color);CV=$sliceType($String);S=function(){var $ptr;Q=C.Stdout;R=C.Stderr;};AH=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=BO();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AI=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$r=AF.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AF,"Unlock"),[]]);if(c>AB){$s=-1;return;}f=H.Caller(d);g=f[0];h=f[2];i=AG.ReplaceAllString(H.FuncForPC(g).Name(),"");$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=F.Sprintf("%d",new CQ([new $Int(h)]));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(!AE){h=0;}if(j.length>$pkg.NamePadding&&$pkg.NamePadding>0){$pkg.NamePadding=j.length;}if(l.length>$pkg.LinePadding&&$pkg.LinePadding>0){$pkg.LinePadding=j.length;}m=F.Sprintf("%%%ds: %%%dd",new CQ([new $Int($pkg.NamePadding),new $Int($pkg.LinePadding)]));$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=F.Sprintf(n,new CQ([new $String(j),new $Int(h)]));$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($pkg.StaticMsg==="")){p=p+("@"+$pkg.StaticMsg);}q=F.Sprintln(e);$s=6;case 6:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=c<0;t=c;if(s){t=$imul(t,(-1));}u=I.Itoa(t);if(c<0){u=u+("!");}v=c;if(v===(-15)){$s=8;continue;}if(v===(-16)){$s=9;continue;}if(v===(-20)){$s=10;continue;}if(v===(-19)){$s=11;continue;}if(v===(-18)){$s=12;continue;}if(v===(-17)){$s=13;continue;}if(!((c===0))){$s=14;continue;}$s=15;continue;case 8:$r=AJ(8,true);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="I";$s=15;continue;case 9:$r=AJ(8,true);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="I";$s=15;continue;case 10:$r=AJ(3,true);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="W";$s=15;continue;case 11:$r=AJ(2,false);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="E";$s=15;continue;case 12:$r=AJ(2,true);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="F";$s=15;continue;case 13:$r=AJ(2,true);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="P";$s=15;continue;case 14:if(t<=5){$s=22;continue;}$s=23;continue;case 22:w=new CR([4,7,3,5,7]);$r=AJ((x=t-1>>0,((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x])),s);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 23:case 15:case 7:y=F.Sprintf(": (%s) - %s",new CQ([new $String(p),new $String(r)]));$s=25;case 25:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(AC){$s=26;continue;}$s=27;continue;case 26:aa=$clone(L.Now(),L.Time);ab=$clone(aa,L.Time).Format("06/02/01 15:04:05");$s=28;case 28:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=new $String(ab);ad=new $Int($clone(aa,L.Time).Nanosecond());ae=new $String(z);af=F.Sprintf("%s.%09d%s",new CQ([ac,ad,ae]));$s=29;case 29:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}z=af;case 27:ag=F.Sprintf("%-2s%s",new CQ([new $String(u),new $String(z)]));$s=30;case 30:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}z=ag;if(c<-16){$s=31;continue;}$s=32;continue;case 31:ah=F.Fprint(R,new CQ([new $String(z)]));$s=34;case 34:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;$s=33;continue;case 32:ai=F.Fprint(Q,new CQ([new $String(z)]));$s=35;case 35:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;case 33:if(AD){$s=36;continue;}$s=37;continue;case 36:$r=N.ResetColor();$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 37:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AJ=function(c,d){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:if(AD){$s=1;continue;}$s=2;continue;case 1:$r=N.Foreground(c,d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AJ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AL=function(c,d){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:$r=AI(c,3,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AO=function(c){var $ptr,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=AL(3,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AO};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Lvl3=AO;BI=function(){var $ptr,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;$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=AF.RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AF,"RUnlock"),[]]);$s=-1;return AB;}return;}}catch(err){$err=err;$s=-1;return 0;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BI};}$f.$ptr=$ptr;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.DebugVisible=BI;BO=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=$ifaceNil;d=C.Getenv("DEBUG_LVL");$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(e==="")){$s=2;continue;}$s=3;continue;case 2:f=I.Atoi(e);AB=f[0];c=f[1];$r=AO(new CQ([new $String("Setting level to"),new $String(e),new $Int(AB),c]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:$r=BX(new CQ([new $String("Couldn't convert"),new $String(e),new $String("to debug-level")]));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:case 3:g=C.Getenv("DEBUG_TIME");$s=8;case 8:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!(h==="")){$s=9;continue;}$s=10;continue;case 9:i=I.ParseBool(h);AC=i[0];c=i[1];$r=AO(new CQ([new $String("Setting showTime to"),new $String(h),new $Bool(AC),c]));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:$r=BX(new CQ([new $String("Couldn't convert"),new $String(h),new $String("to boolean")]));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:case 10:j=C.Getenv("DEBUG_COLOR");$s=15;case 15:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!(k==="")){$s=16;continue;}$s=17;continue;case 16:l=I.ParseBool(k);AD=l[0];c=l[1];$r=AO(new CQ([new $String("Setting useColor to"),new $String(k),new $Bool(AC),c]));$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:$r=BX(new CQ([new $String("Couldn't convert"),new $String(k),new $String("to boolean")]));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:case 17:$s=-1;return;}return;}if($f===undefined){$f={$blk:BO};}$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.ParseEnv=BO;BS=function(){var $ptr;return $bytesToString(O.Stack());};$pkg.Stack=BS;BT=function(c,d){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=BI();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e>0){$s=1;continue;}$s=2;continue;case 1:$r=AI(c,3,d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=CI(c,d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};BX=function(c){var $ptr,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=BT(-19,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:BX};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Error=BX;BZ=function(c){var $ptr,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=BT(-18,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C.Exit(1);$s=-1;return;}return;}if($f===undefined){$f={$blk:BZ};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=BZ;CD=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=F.Sprintf(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=new $String(e);$r=BT(-19,new CQ([f]));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:CD};}$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=CD;CI=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$r=AF.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AF,"Unlock"),[]]);e=AB;if(e===(-1)){$s=3;continue;}if(e===(0)){$s=4;continue;}$s=5;continue;case 3:f=new CV(["[-]","[!]","[X]","[Q]","[+]",""]);g=c- -20>>0;if(g<0||g>4){$panic(new $String("index out of range "+I.Itoa(g)));}h=F.Fprint(Q,new CQ([new $String(((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g])),new $String(" ")]));$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=5;continue;case 4:case 5:case 2:i=d;j=0;case 7:if(!(j<i.$length)){$s=8;continue;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);m=F.Fprint(Q,new CQ([l]));$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;if(!((k===(d.$length-1>>0)))){$s=10;continue;}$s=11;continue;case 10:n=F.Fprint(Q,new CQ([new $String(" ")]));$s=12;case 12:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;case 11:j++;$s=7;continue;case 8:o=F.Fprint(Q,new CQ([new $String("\n")]));$s=13;case 13:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:CI};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$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=C.$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=O.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$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=J.$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;}$r=L.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=$ifaceNil;R=$ifaceNil;AF=new J.RWMutex.ptr(new J.Mutex.ptr(0,0),0,0,0,0);$pkg.NamePadding=40;$pkg.LinePadding=3;$pkg.StaticMsg="";AB=1;AC=false;AD=false;AE=true;b=G.Compile(".*/");$s=17;case 17:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;AG=a[0];S();$r=AH();$s=18;case 18: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["net/url"]=(function(){var $pkg={},$init,A,B,C,D,E,F,AO,O,S,U;A=$packages["bytes"];B=$packages["errors"];C=$packages["fmt"];D=$packages["sort"];E=$packages["strconv"];F=$packages["strings"];AO=$sliceType($Uint8);O=function(a,b){var $ptr,a,b,c,d,e;if(65<=a&&a<=90||97<=a&&a<=122||48<=a&&a<=57){return false;}if((b===3)||(b===4)){c=a;if((c===(33))||(c===(36))||(c===(38))||(c===(39))||(c===(40))||(c===(41))||(c===(42))||(c===(43))||(c===(44))||(c===(59))||(c===(61))||(c===(58))||(c===(91))||(c===(93))||(c===(60))||(c===(62))||(c===(34))){return false;}}d=a;if((d===(45))||(d===(95))||(d===(46))||(d===(126))){return false;}else if((d===(36))||(d===(38))||(d===(43))||(d===(44))||(d===(47))||(d===(58))||(d===(59))||(d===(61))||(d===(63))||(d===(64))){e=b;if(e===(1)){return a===63;}else if(e===(2)){return(a===47)||(a===59)||(a===44)||(a===63);}else if(e===(5)){return(a===64)||(a===47)||(a===63)||(a===58);}else if(e===(6)){return true;}else if(e===(7)){return false;}}return true;};S=function(a){var $ptr,a;return U(a,6);};$pkg.QueryEscape=S;U=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=0;d=0;e=c;f=d;g=0;while(true){if(!(g<a.length)){break;}h=a.charCodeAt(g);if(O(h,b)){if((h===32)&&(b===6)){e=e+(1)>>0;}else{f=f+(1)>>0;}}g=g+(1)>>0;}if((e===0)&&(f===0)){return a;}i=$makeSlice(AO,(a.length+($imul(2,f))>>0));j=0;k=0;while(true){if(!(k<a.length)){break;}l=a.charCodeAt(k);if((l===32)&&(b===6)){((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]=43);j=j+(1)>>0;}else if(O(l,b)){((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]=37);(m=j+1>>0,((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]="0123456789ABCDEF".charCodeAt((l>>>4<<24>>>24))));(n=j+2>>0,((n<0||n>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+n]="0123456789ABCDEF".charCodeAt(((l&15)>>>0))));j=j+(3)>>0;}else{((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]=a.charCodeAt(k));j=j+(1)>>0;}k=k+(1)>>0;}return $bytesToString(i);};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["text/template/parse"]=(function(){var $pkg={},$init,E,A,G,F,B,C,D;E=$packages["bytes"];A=$packages["fmt"];G=$packages["runtime"];F=$packages["strconv"];B=$packages["strings"];C=$packages["unicode"];D=$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=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=F.$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=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$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["text/template"]=(function(){var $pkg={},$init,A,I,B,C,M,J,N,D,E,F,G,O,H,K,L,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DN,Z,AA,AB,AN,AO,BD,BE,BF,BO,BP,BQ,BR,BS,BW,BX,BY,BZ,CA,CB,CC,a,b,c,d,X,AC,AD,AE,AF,AP,AQ,AS,AT,AV,AW,AX,AY,AZ,BA,BB,BC,BH,BI,BJ,BK,BL,BM,BN,BT,BU,BV,CD,CE,CF,CG,CH,CI;A=$packages["bytes"];I=$packages["errors"];B=$packages["fmt"];C=$packages["io"];M=$packages["io/ioutil"];J=$packages["net/url"];N=$packages["path/filepath"];D=$packages["reflect"];E=$packages["runtime"];F=$packages["sort"];G=$packages["strings"];O=$packages["sync"];H=$packages["text/template/parse"];K=$packages["unicode"];L=$packages["unicode/utf8"];CT=$ptrType(D.rtype);CU=$ptrType($error);CV=$ptrType(B.Stringer);CW=$ptrType(D.Value);CX=$sliceType($Uint8);CY=$sliceType(D.Value);CZ=$funcType([D.Value,CY],[D.Value],true);DA=$funcType([D.Value,CY],[D.Value,$error],true);DB=$sliceType($emptyInterface);DC=$funcType([DB],[$String],true);DD=$funcType([$emptyInterface],[$Int,$error],false);DE=$funcType([D.Value],[$Bool],false);DF=$funcType([$String,DB],[$String],true);DG=$funcType([D.Value,CY],[$Bool,$error],true);DH=$funcType([D.Value,D.Value],[$Bool,$error],false);DN=$arrayType($Uint8,64);X=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o;f=false;g=false;if(!$clone(e,D.Value).IsValid()){h=false;i=true;f=h;g=i;return[f,g];}j=$clone(e,D.Value).Kind();if((j===(17))||(j===(21))||(j===(23))||(j===(24))){f=$clone(e,D.Value).Len()>0;}else if(j===(1)){f=$clone(e,D.Value).Bool();}else if((j===(15))||(j===(16))){f=!((k=$clone(e,D.Value).Complex(),(k.$real===0&&k.$imag===0)));}else if((j===(18))||(j===(19))||(j===(22))||(j===(20))){f=!$clone(e,D.Value).IsNil();}else if((j===(2))||(j===(3))||(j===(4))||(j===(5))||(j===(6))){f=!((l=$clone(e,D.Value).Int(),(l.$high===0&&l.$low===0)));}else if((j===(13))||(j===(14))){f=!(($clone(e,D.Value).Float()===0));}else if((j===(7))||(j===(8))||(j===(9))||(j===(10))||(j===(11))||(j===(12))){f=!((m=$clone(e,D.Value).Uint(),(m.$high===0&&m.$low===0)));}else if(j===(25)){f=true;}else{return[f,g];}n=f;o=true;f=n;g=o;return[f,g];};AC=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=e.Kind();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if((g===(18))||(g===(19))||(g===(20))||(g===(21))||(g===(22))||(g===(23))){$s=-1;return true;}else if(g===(25)){$s=-1;return $interfaceIsEqual(e,AB);}case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AD=function(e){var $ptr,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=new D.Value.ptr(CT.nil,0,0);g=false;case 1:if(!(($clone(e,D.Value).Kind()===22)||($clone(e,D.Value).Kind()===20))){$s=2;continue;}if($clone(e,D.Value).IsNil()){h=e;i=true;f=h;g=i;$s=-1;return[f,g];}j=$clone(e,D.Value).Elem();$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}e=j;$s=1;continue;case 2:k=e;l=false;f=k;g=l;$s=-1;return[f,g];}return;}if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AE=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(($clone(e,D.Value).Kind()===20))){$s=-1;return e;}if($clone(e,D.Value).IsNil()){$s=-1;return new D.Value.ptr(CT.nil,0,0);}f=$clone(e,D.Value).Elem();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AF=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(e,D.Value).Kind()===22){$s=1;continue;}$s=2;continue;case 1:g=AD($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;e=f[0];case 2:if(!$clone(e,D.Value).IsValid()){$s=-1;return[new $String("<no value>"),true];}i=$clone(e,D.Value).Type().Implements(Z);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!(!i)){h=false;$s=6;continue s;}j=$clone(e,D.Value).Type().Implements(AA);$s=8;case 8:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}h=!j;case 6:if(h){$s=4;continue;}$s=5;continue;case 4:if(!($clone(e,D.Value).CanAddr())){k=false;$s=12;continue s;}m=D.PtrTo($clone(e,D.Value).Type()).Implements(Z);$s=14;case 14:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(m){l=true;$s=13;continue s;}n=D.PtrTo($clone(e,D.Value).Type()).Implements(AA);$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;case 13:k=l;case 12:if(k){$s=9;continue;}$s=10;continue;case 9:e=$clone(e,D.Value).Addr();$s=11;continue;case 10:o=$clone(e,D.Value).Kind();if((o===(18))||(o===(19))){$s=-1;return[$ifaceNil,false];}case 11:case 5:p=$clone(e,D.Value).Interface();$s=16;case 16:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[p,true];}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AP=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f={};$r=AQ(f,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AQ=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=f;h=0;i=$keys(g);case 1:if(!(h<i.length)){$s=2;continue;}j=g[i[h]];if(j===undefined){h++;$s=1;continue;}k=j.k;l=j.v;if(!AT(k)){$s=3;continue;}$s=4;continue;case 3:m=B.Errorf("function name %s is not a valid identifier",new DB([new $String(k)]));$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$panic(m);case 4:n=D.ValueOf(l);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(!(($clone(o,D.Value).Kind()===19))){$panic(new $String("value for "+k+" not a function"));}p=AS($clone(o,D.Value).Type());$s=9;case 9:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(!p){$s=7;continue;}$s=8;continue;case 7:q=new $String(k);r=$clone(o,D.Value).Type().NumOut();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new $Int(r);t=B.Errorf("can't install method/function %q with %d results",new DB([q,s]));$s=11;case 11:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$panic(t);case 8:u=k;(e||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(u)]={k:u,v:$clone(o,D.Value)};h++;$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};AS=function(e){var $ptr,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=e.NumOut();$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if((f===1)){$s=2;continue;}h=e.NumOut();$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!(h===2)){g=false;$s=6;continue s;}i=e.Out(1);$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=$interfaceIsEqual(i,Z);case 6:if(g){$s=3;continue;}$s=4;continue;case 2:$s=-1;return true;case 3:$s=-1;return true;case 4:case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AT=function(e){var $ptr,e,f,g,h,i,j;if(e===""){return false;}f=e;g=0;while(true){if(!(g<f.length)){break;}h=$decodeRune(f,g);i=g;j=h[0];if((j===95)){}else if((i===0)&&!K.IsLetter(j)){return false;}else if(!K.IsLetter(j)&&!K.IsDigit(j)){return false;}g+=h[1];}return true;};AV=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!$clone(e,D.Value).IsValid()){$s=1;continue;}$s=2;continue;case 1:g=AC(f);$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!g){$s=3;continue;}$s=4;continue;case 3:h=B.Errorf("value is nil; should be of type %s",new DB([f]));$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),h];case 4:i=D.Zero(f);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}e=i;case 2:j=$clone(e,D.Value).Type().AssignableTo(f);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(!j){$s=8;continue;}$s=9;continue;case 8:k=B.Errorf("value has type %s; should be %s",new DB([$clone(e,D.Value).Type(),f]));$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),k];case 9:$s=-1;return[e,$ifaceNil];}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AW=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!$clone(h,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:i=B.Errorf("index of untyped nil",new DB([]));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),i];case 3:j=f;k=0;case 5:if(!(k<j.$length)){$s=6;continue;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);m=AE($clone(l,D.Value));$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=false;q=AD($clone(h,D.Value));$s=8;case 8:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;h=p[0];o=p[1];if(o){$s=9;continue;}$s=10;continue;case 9:r=B.Errorf("index of nil pointer",new DB([]));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),r];case 10:s=$clone(h,D.Value).Kind();if((s===(17))||(s===(23))||(s===(24))){$s=13;continue;}if(s===(21)){$s=14;continue;}if(s===(0)){$s=15;continue;}$s=16;continue;case 13:t=new $Int64(0,0);u=$clone(n,D.Value).Kind();if((u===(2))||(u===(3))||(u===(4))||(u===(5))||(u===(6))){$s=19;continue;}if((u===(7))||(u===(8))||(u===(9))||(u===(10))||(u===(11))||(u===(12))){$s=20;continue;}if(u===(0)){$s=21;continue;}$s=22;continue;case 19:t=$clone(n,D.Value).Int();$s=23;continue;case 20:t=(v=$clone(n,D.Value).Uint(),new $Int64(v.$high,v.$low));$s=23;continue;case 21:w=B.Errorf("cannot index slice/array with nil",new DB([]));$s=24;case 24:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),w];case 22:x=B.Errorf("cannot index slice/array with type %s",new DB([$clone(n,D.Value).Type()]));$s=25;case 25:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),x];case 23:case 18:if((t.$high<0||(t.$high===0&&t.$low<0))||(y=new $Int64(0,$clone(h,D.Value).Len()),(t.$high>y.$high||(t.$high===y.$high&&t.$low>=y.$low)))){$s=26;continue;}$s=27;continue;case 26:z=B.Errorf("index out of range: %d",new DB([t]));$s=28;case 28:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),z];case 27:aa=$clone(h,D.Value).Index(((t.$low+((t.$high>>31)*4294967296))>>0));$s=29;case 29:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}h=aa;$s=17;continue;case 14:ac=$clone(n,D.Value);ad=$clone(h,D.Value).Type().Key();$s=30;case 30:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;af=AV(ac,ae);$s=31;case 31:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ab=af;ag=ab[0];ah=ab[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new D.Value.ptr(CT.nil,0,0),ah];}ai=$clone(h,D.Value).MapIndex($clone(ag,D.Value));$s=32;case 32:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if($clone(aj,D.Value).IsValid()){$s=33;continue;}$s=34;continue;case 33:h=aj;$s=35;continue;case 34:ak=$clone(h,D.Value).Type().Elem();$s=36;case 36:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=D.Zero(ak);$s=37;case 37:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}h=al;case 35:$s=17;continue;case 15:$panic(new $String("unreachable"));$s=17;continue;case 16:am=B.Errorf("can't index item of type %s",new DB([$clone(h,D.Value).Type()]));$s=38;case 38:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),am];case 17:case 12:k++;$s=5;continue;case 6:$s=-1;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AX=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=D.ValueOf(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!$clone(g,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:h=B.Errorf("len of untyped nil",new DB([]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return[0,h];case 3:j=AD($clone(g,D.Value));$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;g=i[0];k=i[1];if(k){$s=6;continue;}$s=7;continue;case 6:l=B.Errorf("len of nil pointer",new DB([]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return[0,l];case 7:m=$clone(g,D.Value).Kind();if((m===(17))||(m===(18))||(m===(21))||(m===(23))||(m===(24))){$s=-1;return[$clone(g,D.Value).Len(),$ifaceNil];}n=B.Errorf("len of type %s",new DB([$clone(g,D.Value).Type()]));$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return[0,n];}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};AY=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!$clone(h,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:i=B.Errorf("call of nil",new DB([]));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),i];case 3:j=$clone(h,D.Value).Type();k=j.Kind();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!((k===19))){$s=5;continue;}$s=6;continue;case 5:l=B.Errorf("non-function of type %s",new DB([j]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),l];case 6:m=AS(j);$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!m){$s=9;continue;}$s=10;continue;case 9:n=j.NumOut();$s=12;case 12:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new $Int(n);p=B.Errorf("function called with %d args; should be 1 or 2",new DB([o]));$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),p];case 10:q=j.NumIn();$s=14;case 14:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=$ifaceNil;t=j.IsVariadic();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}if(t){$s=15;continue;}$s=16;continue;case 15:if(f.$length<(r-1>>0)){$s=19;continue;}$s=20;continue;case 19:u=B.Errorf("wrong number of args: got %d want at least %d",new DB([new $Int(f.$length),new $Int((r-1>>0))]));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),u];case 20:v=j.In(r-1>>0);$s=22;case 22:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v.Elem();$s=23;case 23:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}s=w;$s=17;continue;case 16:if(!((f.$length===r))){$s=24;continue;}$s=25;continue;case 24:x=B.Errorf("wrong number of args: got %d want %d",new DB([new $Int(f.$length),new $Int(r)]));$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),x];case 25:case 17:y=$makeSlice(CY,f.$length);z=f;aa=0;case 27:if(!(aa<z.$length)){$s=28;continue;}ab=aa;ac=((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]);ad=AE($clone(ac,D.Value));$s=29;case 29:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;af=$ifaceNil;ag=j.IsVariadic();$s=33;case 33:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}if(!ag||ab<(r-1>>0)){$s=30;continue;}$s=31;continue;case 30:ah=j.In(ab);$s=34;case 34:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}af=ah;$s=32;continue;case 31:af=s;case 32:ai=$ifaceNil;ak=AV($clone(ae,D.Value),af);$s=35;case 35:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;((ab<0||ab>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+ab]=aj[0]);ai=aj[1];if(!($interfaceIsEqual(ai,$ifaceNil))){$s=36;continue;}$s=37;continue;case 36:al=B.Errorf("arg %d: %s",new DB([new $Int(ab),ai]));$s=38;case 38:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),al];case 37:aa++;$s=27;continue;case 28:am=$clone(h,D.Value).Call(y);$s=39;case 39:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if((an.$length===2)&&!$clone((1>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+1]),D.Value).IsNil()){$s=40;continue;}$s=41;continue;case 40:ao=$clone((1>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+1]),D.Value).Interface();$s=42;case 42:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return[(0>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+0]),$assertType(ao,$error)];case 41:$s=-1;return[(0>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+0]),$ifaceNil];}return;}if($f===undefined){$f={$blk:AY};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AZ=function(e){var $ptr,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=X($clone(g,D.Value));$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;i=f[0];$s=-1;return i;}return;}if($f===undefined){$f={$blk:AZ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BA=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AZ($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!g){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:h=f;i=0;case 4:if(!(i<h.$length)){$s=5;continue;}j=i;e=((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]);k=AZ($clone(e,D.Value));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!k){$s=6;continue;}$s=7;continue;case 6:$s=5;continue;case 7:i++;$s=4;continue;case 5:$s=-1;return e;}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BB=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AZ($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:h=f;i=0;case 4:if(!(i<h.$length)){$s=5;continue;}j=i;e=((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]);k=AZ($clone(e,D.Value));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k){$s=6;continue;}$s=7;continue;case 6:$s=5;continue;case 7:i++;$s=4;continue;case 5:$s=-1;return e;}return;}if($f===undefined){$f={$blk:BB};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BC=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=AZ($clone(e,D.Value));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return!f;}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};BH=function(e){var $ptr,e,f;f=$clone(e,D.Value).Kind();if(f===(1)){return[1,$ifaceNil];}else if((f===(2))||(f===(3))||(f===(4))||(f===(5))||(f===(6))){return[3,$ifaceNil];}else if((f===(7))||(f===(8))||(f===(9))||(f===(10))||(f===(11))||(f===(12))){return[6,$ifaceNil];}else if((f===(13))||(f===(14))){return[4,$ifaceNil];}else if((f===(15))||(f===(16))){return[2,$ifaceNil];}else if(f===(24)){return[5,$ifaceNil];}return[0,BD];};BI=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=BH($clone(h,D.Value));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}if(f.$length===0){$s=-1;return[false,BF];}l=f;m=0;case 2:if(!(m<l.$length)){$s=3;continue;}n=((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]);o=AE($clone(n,D.Value));$s=4;case 4:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=BH($clone(p,D.Value));r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[false,s];}t=false;if(!((j===r))){$s=5;continue;}$s=6;continue;case 5:if((j===3)&&(r===6)){t=(u=$clone(h,D.Value).Int(),(u.$high>0||(u.$high===0&&u.$low>=0)))&&(v=(w=$clone(h,D.Value).Int(),new $Uint64(w.$high,w.$low)),x=$clone(p,D.Value).Uint(),(v.$high===x.$high&&v.$low===x.$low));}else if((j===6)&&(r===3)){t=(y=$clone(p,D.Value).Int(),(y.$high>0||(y.$high===0&&y.$low>=0)))&&(z=$clone(h,D.Value).Uint(),aa=(ab=$clone(p,D.Value).Int(),new $Uint64(ab.$high,ab.$low)),(z.$high===aa.$high&&z.$low===aa.$low));}else{$s=-1;return[false,BE];}$s=7;continue;case 6:ac=j;if(ac===(1)){$s=9;continue;}if(ac===(2)){$s=10;continue;}if(ac===(4)){$s=11;continue;}if(ac===(3)){$s=12;continue;}if(ac===(5)){$s=13;continue;}if(ac===(6)){$s=14;continue;}$s=15;continue;case 9:t=$clone(h,D.Value).Bool()===$clone(p,D.Value).Bool();$s=16;continue;case 10:t=(ad=$clone(h,D.Value).Complex(),ae=$clone(p,D.Value).Complex(),(ad.$real===ae.$real&&ad.$imag===ae.$imag));$s=16;continue;case 11:t=$clone(h,D.Value).Float()===$clone(p,D.Value).Float();$s=16;continue;case 12:t=(af=$clone(h,D.Value).Int(),ag=$clone(p,D.Value).Int(),(af.$high===ag.$high&&af.$low===ag.$low));$s=16;continue;case 13:ah=$clone(h,D.Value).String();$s=17;case 17:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(p,D.Value).String();$s=18;case 18:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}t=ah===ai;$s=16;continue;case 14:t=(aj=$clone(h,D.Value).Uint(),ak=$clone(p,D.Value).Uint(),(aj.$high===ak.$high&&aj.$low===ak.$low));$s=16;continue;case 15:$panic(new $String("invalid kind"));case 16:case 8:case 7:if(t){$s=-1;return[true,$ifaceNil];}m++;$s=2;continue;case 3:$s=-1;return[false,$ifaceNil];}return;}if($f===undefined){$f={$blk:BI};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BJ=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BI($clone(e,D.Value),new CY([$clone(f,D.Value)]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];$s=-1;return[!i,j];}return;}if($f===undefined){$f={$blk:BJ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BK=function(e,f){var $ptr,aa,ab,ac,ad,ae,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=BH($clone(h,D.Value));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}l=AE($clone(f,D.Value));$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=BH($clone(m,D.Value));o=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}p=false;if(!((j===o))){$s=3;continue;}$s=4;continue;case 3:if((j===3)&&(o===6)){p=(q=$clone(h,D.Value).Int(),(q.$high<0||(q.$high===0&&q.$low<0)))||(r=(s=$clone(h,D.Value).Int(),new $Uint64(s.$high,s.$low)),t=$clone(m,D.Value).Uint(),(r.$high<t.$high||(r.$high===t.$high&&r.$low<t.$low)));}else if((j===6)&&(o===3)){p=(u=$clone(m,D.Value).Int(),(u.$high>0||(u.$high===0&&u.$low>=0)))&&(v=$clone(h,D.Value).Uint(),w=(x=$clone(m,D.Value).Int(),new $Uint64(x.$high,x.$low)),(v.$high<w.$high||(v.$high===w.$high&&v.$low<w.$low)));}else{$s=-1;return[false,BE];}$s=5;continue;case 4:y=j;if((y===(1))||(y===(2))){$s=7;continue;}if(y===(4)){$s=8;continue;}if(y===(3)){$s=9;continue;}if(y===(5)){$s=10;continue;}if(y===(6)){$s=11;continue;}$s=12;continue;case 7:$s=-1;return[false,BD];case 8:p=$clone(h,D.Value).Float()<$clone(m,D.Value).Float();$s=13;continue;case 9:p=(z=$clone(h,D.Value).Int(),aa=$clone(m,D.Value).Int(),(z.$high<aa.$high||(z.$high===aa.$high&&z.$low<aa.$low)));$s=13;continue;case 10:ab=$clone(h,D.Value).String();$s=14;case 14:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=$clone(m,D.Value).String();$s=15;case 15:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}p=ab<ac;$s=13;continue;case 11:p=(ad=$clone(h,D.Value).Uint(),ae=$clone(m,D.Value).Uint(),(ad.$high<ae.$high||(ad.$high===ae.$high&&ad.$low<ae.$low)));$s=13;continue;case 12:$panic(new $String("invalid kind"));case 13:case 6:case 5:$s=-1;return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BK};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BL=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BK($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(i||!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[i,j];}k=BI($clone(e,D.Value),new CY([$clone(f,D.Value)]));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:BL};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BM=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BL($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[false,j];}$s=-1;return[!i,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BN=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BK($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[false,j];}$s=-1;return[!i,$ifaceNil];}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BT=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=0;h=f;i=0;case 1:if(!(i<h.$length)){$s=2;continue;}j=i;k=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);l=CX.nil;m=k;if(m===(34)){l=BO;}else if(m===(39)){l=BP;}else if(m===(38)){l=BQ;}else if(m===(60)){l=BR;}else if(m===(62)){l=BS;}else{i++;$s=1;continue;}case 3:n=e.Write($subslice(f,g,j));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;o=e.Write(l);$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;g=j+1>>0;i++;$s=1;continue;case 2:p=e.Write($subslice(f,g));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscape=BT;BU=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=[f];if(!G.ContainsAny(e,"'\"&<>")){$s=-1;return e;}f[0]=new A.Buffer.ptr(CX.nil,0,DN.zero(),0);$r=BT(f[0],new CX($stringToBytes(e)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f[0].String();}return;}if($f===undefined){$f={$blk:BU};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscapeString=BU;BV=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=BU(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscaper=BV;CD=function(e,f){var $ptr,aa,ab,ac,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=0;h=0;case 1:if(!(h<f.$length)){$s=2;continue;}i=((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]);if(!CF((i>>0))){$s=3;continue;}$s=4;continue;case 3:h=h+(1)>>0;$s=1;continue;case 4:j=e.Write($subslice(f,g,h));$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(i<128){$s=6;continue;}$s=7;continue;case 6:k=i;if(k===(92)){$s=10;continue;}if(k===(39)){$s=11;continue;}if(k===(34)){$s=12;continue;}if(k===(60)){$s=13;continue;}if(k===(62)){$s=14;continue;}$s=15;continue;case 10:l=e.Write(BY);$s=17;case 17:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;$s=16;continue;case 11:m=e.Write(BZ);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;$s=16;continue;case 12:n=e.Write(CA);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=16;continue;case 13:o=e.Write(CB);$s=20;case 20:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=16;continue;case 14:p=e.Write(CC);$s=21;case 21:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=16;continue;case 15:q=e.Write(BW);$s=22;case 22:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;r=i>>>4<<24>>>24;s=(i&15)>>>0;t=r;u=s;v=e.Write($subslice(BX,t,(t+1<<24>>>24)));$s=23;case 23:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;w=e.Write($subslice(BX,u,(u+1<<24>>>24)));$s=24;case 24:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;case 16:case 9:$s=8;continue;case 7:x=L.DecodeRune($subslice(f,h));y=x[0];z=x[1];if(K.IsPrint(y)){$s=25;continue;}$s=26;continue;case 25:aa=e.Write($subslice(f,h,(h+z>>0)));$s=28;case 28:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;$s=27;continue;case 26:ab=B.Fprintf(e,"\\u%04X",new DB([new $Int32(y)]));$s=29;case 29:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;case 27:h=h+((z-1>>0))>>0;case 8:g=h+1>>0;h=h+(1)>>0;$s=1;continue;case 2:ac=e.Write($subslice(f,g));$s=30;case 30:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;$s=-1;return;}return;}if($f===undefined){$f={$blk:CD};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscape=CD;CE=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=[f];g=G.IndexFunc(e,CF);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g<0){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:f[0]=new A.Buffer.ptr(CX.nil,0,DN.zero(),0);$r=CD(f[0],new CX($stringToBytes(e)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f[0].String();}return;}if($f===undefined){$f={$blk:CE};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscapeString=CE;CF=function(e){var $ptr,e,f;f=e;if((f===(92))||(f===(39))||(f===(34))||(f===(60))||(f===(62))){return true;}return e<32||128<=e;};CG=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=CE(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:CG};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscaper=CG;CH=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=J.QueryEscape(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:CH};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.URLQueryEscaper=CH;CI=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=false;g="";if(e.$length===1){h=$assertType((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),$String,true);g=h[0];f=h[1];}if(!f){$s=1;continue;}$s=2;continue;case 1:i=e;j=0;case 3:if(!(j<i.$length)){$s=4;continue;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);n=D.ValueOf(l);$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=AF($clone(n,D.Value));$s=6;case 6:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}m=o;p=m[0];q=m[1];if(q){((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]=p);}j++;$s=3;continue;case 4:r=B.Sprint(e);$s=7;case 7:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}g=r;case 2:$s=-1;return g;}return;}if($f===undefined){$f={$blk:CI};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=D.TypeOf(CU.nil).Elem();$s=16;case 16:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}Z=a;b=D.TypeOf(CV.nil).Elem();$s=17;case 17:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AA=b;c=D.TypeOf(CW.nil).Elem();$s=18;case 18:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}AB=c;BD=I.New("invalid type for comparison");BE=I.New("incompatible types for comparison");BF=I.New("missing argument for comparison");BO=new CX($stringToBytes("&#34;"));BP=new CX($stringToBytes("&#39;"));BQ=new CX($stringToBytes("&amp;"));BR=new CX($stringToBytes("&lt;"));BS=new CX($stringToBytes("&gt;"));BW=new CX($stringToBytes("\\u00"));BX=new CX($stringToBytes("0123456789ABCDEF"));BY=new CX($stringToBytes("\\\\"));BZ=new CX($stringToBytes("\\'"));CA=new CX($stringToBytes("\\\""));CB=new CX($stringToBytes("\\x3C"));CC=new CX($stringToBytes("\\x3E"));AN=$makeMap($String.keyFor,[{k:"and",v:new CZ(BA)},{k:"call",v:new DA(AY)},{k:"html",v:new DC(BV)},{k:"index",v:new DA(AW)},{k:"js",v:new DC(CG)},{k:"len",v:new DD(AX)},{k:"not",v:new DE(BC)},{k:"or",v:new CZ(BB)},{k:"print",v:new DC(B.Sprint)},{k:"printf",v:new DF(B.Sprintf)},{k:"println",v:new DC(B.Sprintln)},{k:"urlquery",v:new DC(CH)},{k:"eq",v:new DG(BI)},{k:"ge",v:new DH(BN)},{k:"gt",v:new DH(BM)},{k:"le",v:new DH(BL)},{k:"lt",v:new DH(BK)},{k:"ne",v:new DH(BJ)}]);d=AP(AN);$s=19;case 19:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}AO=d;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/dedis/protobuf"]=(function(){var $pkg={},$init,H,A,B,C,D,L,E,F,M,N,I,J,K,O,G,P,Q,X,Y,Z,AA,AC,AH,AJ,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CG,CH,CI,T,U,V,W,AE,AF,AG,AK,AL,AO,a,b,R,S,AD,AI,AM,AN;H=$packages["bytes"];A=$packages["encoding"];B=$packages["encoding/binary"];C=$packages["errors"];D=$packages["fmt"];L=$packages["io"];E=$packages["math"];F=$packages["reflect"];M=$packages["regexp"];N=$packages["sort"];I=$packages["strconv"];J=$packages["strings"];K=$packages["sync"];O=$packages["text/template"];G=$packages["time"];P=$pkg.Constructors=$newType(4,$kindMap,"protobuf.Constructors",true,"github.com/dedis/protobuf",true,null);Q=$pkg.decoder=$newType(0,$kindStruct,"protobuf.decoder",true,"github.com/dedis/protobuf",false,function(nm_){this.$val=this;if(arguments.length===0){this.nm=false;return;}this.nm=nm_;});X=$pkg.Ufixed32=$newType(4,$kindUint32,"protobuf.Ufixed32",true,"github.com/dedis/protobuf",true,null);Y=$pkg.Ufixed64=$newType(8,$kindUint64,"protobuf.Ufixed64",true,"github.com/dedis/protobuf",true,null);Z=$pkg.Sfixed32=$newType(4,$kindInt32,"protobuf.Sfixed32",true,"github.com/dedis/protobuf",true,null);AA=$pkg.Sfixed64=$newType(8,$kindInt64,"protobuf.Sfixed64",true,"github.com/dedis/protobuf",true,null);AC=$pkg.encoder=$newType(0,$kindStruct,"protobuf.encoder",true,"github.com/dedis/protobuf",false,function(Buffer_){this.$val=this;if(arguments.length===0){this.Buffer=new H.Buffer.ptr(BD.nil,0,BK.zero(),0);return;}this.Buffer=Buffer_;});AH=$pkg.TagPrefix=$newType(4,$kindInt,"protobuf.TagPrefix",true,"github.com/dedis/protobuf",true,null);AJ=$pkg.ProtoField=$newType(0,$kindStruct,"protobuf.ProtoField",true,"github.com/dedis/protobuf",true,function(ID_,Prefix_,Name_,Index_,Field_){this.$val=this;if(arguments.length===0){this.ID=new $Int64(0,0);this.Prefix=0;this.Name="";this.Index=BH.nil;this.Field=new F.StructField.ptr("","",$ifaceNil,"",0,BH.nil,false);return;}this.ID=ID_;this.Prefix=Prefix_;this.Name=Name_;this.Index=Index_;this.Field=Field_;});BC=$ptrType(G.Location);BD=$sliceType($Uint8);BE=$funcType([],[$emptyInterface],false);BF=$sliceType($emptyInterface);BG=$ptrType(F.rtype);BH=$sliceType($Int);BI=$ptrType(AJ);BJ=$sliceType(F.Value);BK=$arrayType($Uint8,64);BL=$sliceType($Bool);BM=$sliceType($Int32);BN=$sliceType($Int64);BO=$sliceType($Uint32);BP=$sliceType($Uint64);BQ=$sliceType(Z);BR=$sliceType(AA);BS=$sliceType(X);BT=$sliceType(Y);BU=$sliceType($Float32);BV=$sliceType($Float64);BW=$sliceType($String);BX=$arrayType($Uint8,10);BY=$arrayType($Uint8,4);BZ=$arrayType($Uint8,8);CA=$sliceType(BI);CB=$ptrType($Int);CC=$structType("",[]);CG=$ptrType(P);CH=$ptrType(Q);CI=$ptrType(AC);$ptrType(P).prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d="";e=c.$get();f=0;g=$keys(e);case 1:if(!(f<g.length)){$s=2;continue;}h=e[g[f]];if(h===undefined){f++;$s=1;continue;}i=h.k;j=h.v;k=i.String();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=D.Sprintf("%+v",new BF([new BE(j)]));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}d=d+(k+"=>"+l+"\t");f++;$s=1;continue;case 2:$s=-1;return d;}return;}if($f===undefined){$f={$blk:$ptrType(P).prototype.String};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};R=function(c,d){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=S(c,d,false);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Decode=R;S=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(d,$ifaceNil)){$s=-1;return $ifaceNil;}f=new Q.ptr(e);g=F.ValueOf(d);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!(($clone(h,F.Value).Kind()===22))){$s=-1;return C.New("Decode has been given a non pointer type");}i=c;j=$clone(h,F.Value).Elem();$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone(j,F.Value);l=f.message(i,k);$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeWithConstructors=S;Q.ptr.prototype.message=function(c,d){var $ptr,aa,ab,ac,ad,ae,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=AM($clone(d,F.Value).Type());$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=0;case 2:if(!(c.$length>0)){$s=3;continue;}i=B.Uvarint(c);j=i[0];k=i[1];if(k<=0){$s=-1;return C.New("bad protobuf field key");}c=$subslice(c,k);l=(new $Uint64(j.$high&0,(j.$low&7)>>>0).$low>>0);m=$shiftRightUint64(j,3);n=new F.Value.ptr(BG.nil,0,0);while(true){if(!(h<g.$length&&(o=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).ID,p=new $Int64(m.$high,m.$low),(o.$high<p.$high||(o.$high===p.$high&&o.$low<p.$low))))){break;}h=h+(1)>>0;}if(h<g.$length&&(q=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).ID,r=new $Int64(m.$high,m.$low),(q.$high===r.$high&&q.$low===r.$low))){$s=4;continue;}$s=5;continue;case 4:s=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).Index;t=$makeSlice(BH,0,s.$length);u=s;v=0;case 6:if(!(v<u.$length)){$s=7;continue;}w=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);t=$append(t,w);x=$clone(d,F.Value).FieldByIndex(t);$s=8;case 8:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}n=x;if(($clone(n,F.Value).Kind()===22)&&$clone(n,F.Value).IsNil()){$s=9;continue;}$s=10;continue;case 9:y=$clone(n,F.Value).Type().Elem();$s=11;case 11:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=F.New(y);$s=12;case 12:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=$clone(n,F.Value).Set($clone(z,F.Value));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:v++;$s=6;continue;case 7:case 5:ab=e.value(l,c,$clone(n,F.Value));$s=14;case 14:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;ac=aa[0];ad=aa[1];if(!($interfaceIsEqual(ad,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:if(h<g.$length&&!(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])===BI.nil)){$s=17;continue;}$s=18;continue;case 17:ae=D.Errorf("Error while decding FieldName %s: %v",new BF([new $String(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).Name),ad]));$s=20;case 20:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return ae;case 18:$s=-1;return ad;case 19:case 16:c=ac;$s=2;continue;case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.message};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.message=function(c,d){return this.$val.message(c,d);};Q.ptr.prototype.value=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;g=new $Uint64(0,0);h=0;i=BD.nil;j=c;if(j===(0)){k=B.Uvarint(d);g=k[0];h=k[1];if(h<=0){$s=-1;return[BD.nil,C.New("bad protobuf varint value")];}d=$subslice(d,h);}else if(j===(5)){if(d.$length<4){$s=-1;return[BD.nil,C.New("bad protobuf 32-bit value")];}g=(l=(m=(n=new $Uint64(0,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),o=$shiftLeft64(new $Uint64(0,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])),8),new $Uint64(n.$high|o.$high,(n.$low|o.$low)>>>0)),p=$shiftLeft64(new $Uint64(0,(2>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+2])),16),new $Uint64(m.$high|p.$high,(m.$low|p.$low)>>>0)),q=$shiftLeft64(new $Uint64(0,(3>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+3])),24),new $Uint64(l.$high|q.$high,(l.$low|q.$low)>>>0));d=$subslice(d,4);}else if(j===(1)){if(d.$length<8){$s=-1;return[BD.nil,C.New("bad protobuf 64-bit value")];}g=(r=(s=(t=(u=(v=(w=(x=new $Uint64(0,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),y=$shiftLeft64(new $Uint64(0,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])),8),new $Uint64(x.$high|y.$high,(x.$low|y.$low)>>>0)),z=$shiftLeft64(new $Uint64(0,(2>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+2])),16),new $Uint64(w.$high|z.$high,(w.$low|z.$low)>>>0)),aa=$shiftLeft64(new $Uint64(0,(3>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+3])),24),new $Uint64(v.$high|aa.$high,(v.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(4>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+4])),32),new $Uint64(u.$high|ab.$high,(u.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(5>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+5])),40),new $Uint64(t.$high|ac.$high,(t.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(6>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+6])),48),new $Uint64(s.$high|ad.$high,(s.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(7>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+7])),56),new $Uint64(r.$high|ae.$high,(r.$low|ae.$low)>>>0));d=$subslice(d,8);}else if(j===(2)){af=B.Uvarint(d);g=af[0];h=af[1];if(h<=0||(ag=new $Uint64(0,(d.$length-h>>0)),(g.$high>ag.$high||(g.$high===ag.$high&&g.$low>ag.$low)))){$s=-1;return[BD.nil,C.New("bad protobuf length-delimited value")];}i=$subslice(d,h,(h+(g.$low>>0)>>0));d=$subslice(d,(h+(g.$low>>0)>>0));}else{$s=-1;return[BD.nil,C.New("unknown protobuf wire-type")];}ah=f.putvalue(c,$clone(e,F.Value),g,i);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(!($interfaceIsEqual(ai,$ifaceNil))){$s=-1;return[BD.nil,ai];}$s=-1;return[d,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.value=function(c,d,e){return this.$val.value(c,d,e);};Q.ptr.prototype.decodeSignedInt=function(c,d){var $ptr,c,d,e,f,g;e=this;if(c===0){f=$shiftRightInt64(new $Int64(d.$high,d.$low),1);if(!((g=new $Uint64(d.$high&0,(d.$low&1)>>>0),(g.$high===0&&g.$low===0)))){f=new $Int64(~f.$high,~f.$low>>>0);}return[f,$ifaceNil];}else if(c===5){return[new $Int64(0,(d.$low>>0)),$ifaceNil];}else if(c===1){return[new $Int64(d.$high,d.$low),$ifaceNil];}else{return[new $Int64(-1,4294967295),C.New("bad wiretype for sint")];}};Q.prototype.decodeSignedInt=function(c,d){return this.$val.decodeSignedInt(c,d);};Q.ptr.prototype.putvalue=function(c,d,e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;if(!$clone(d,F.Value).CanSet()){$s=-1;return $ifaceNil;}h=$clone(d,F.Value).Kind();if(h===(1)){$s=2;continue;}if((h===(2))||(h===(5))||(h===(6))){$s=3;continue;}if((h===(10))||(h===(11))){$s=4;continue;}if(h===(13)){$s=5;continue;}if(h===(14)){$s=6;continue;}if(h===(24)){$s=7;continue;}if(h===(25)){$s=8;continue;}if(h===(22)){$s=9;continue;}if((h===(23))||(h===(17))){$s=10;continue;}if(h===(21)){$s=11;continue;}if(h===(20)){$s=12;continue;}$s=13;continue;case 2:if(!((c===0))){$s=-1;return C.New("bad wiretype for bool");}if((e.$high>0||(e.$high===0&&e.$low>1))){$s=-1;return C.New("invalid bool value");}$clone(d,F.Value).SetBool(!((e.$high===0&&e.$low===0)));$s=14;continue;case 3:i=g.decodeSignedInt(c,e);j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:l=e;m=new $Int(c);n=$clone(d,F.Value).Type().Name();$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new $String(n);p=D.Println(new BF([new $String("Error Reflect.Int for v="),l,new $String("wiretype="),m,new $String("for Value="),o]));$s=18;case 18:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return k;case 16:$clone(d,F.Value).SetInt(j);$s=14;continue;case 4:if(c===0){$clone(d,F.Value).SetUint(e);}else if(c===5){$clone(d,F.Value).SetUint(new $Uint64(0,(e.$low>>>0)));}else if(c===1){$clone(d,F.Value).SetUint(e);}else{$s=-1;return C.New("bad wiretype for uint");}$s=14;continue;case 5:if(!((c===5))){$s=-1;return C.New("bad wiretype for float32");}$clone(d,F.Value).SetFloat(E.Float32frombits((e.$low>>>0)));$s=14;continue;case 6:if(!((c===1))){$s=-1;return C.New("bad wiretype for float64");}$clone(d,F.Value).SetFloat(E.Float64frombits(e));$s=14;continue;case 7:if(!((c===2))){$s=-1;return C.New("bad wiretype for string");}$clone(d,F.Value).SetString($bytesToString(f));$s=14;continue;case 8:if($interfaceIsEqual($clone(d,F.Value).Type(),AE)){$s=19;continue;}$s=20;continue;case 19:q=g.decodeSignedInt(c,e);r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return s;}t=$clone(G.Unix($div64(r,new $Int64(0,1000000000),false),$div64(r,new $Int64(0,1000000000),true)),G.Time);u=F.ValueOf(new t.constructor.elem(t));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(u,F.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;case 20:if(!((c===2))){$s=-1;return C.New("bad wiretype for embedded message");}v=g.message(f,$clone(d,F.Value));$s=23;case 23:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;case 9:if($clone(d,F.Value).IsNil()){$s=24;continue;}$s=25;continue;case 24:w=$clone(d,F.Value).Type().Elem();$s=26;case 26:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=g.instantiate(w);$s=27;case 27:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(x,F.Value));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 25:y=c;z=$clone(d,F.Value).Elem();$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=$clone(z,F.Value);ab=e;ac=f;ad=g.putvalue(y,aa,ab,ac);$s=30;case 30:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$s=-1;return ad;case 10:if(!((c===2))){$s=-1;return C.New("bad wiretype for repeated field");}ae=g.slice($clone(d,F.Value),f);$s=31;case 31:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return ae;case 11:if(!((c===2))){$s=-1;return C.New("bad wiretype for repeated field");}if($clone(d,F.Value).IsNil()){$s=32;continue;}$s=33;continue;case 32:af=F.MakeMap($clone(d,F.Value).Type());$s=34;case 34:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(af,F.Value));$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 33:ag=g.mapEntry($clone(d,F.Value),f);$s=36;case 36:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}$s=-1;return ag;case 12:if($clone(d,F.Value).IsNil()){$s=37;continue;}$s=38;continue;case 37:ah=g.instantiate($clone(d,F.Value).Type());$s=39;case 39:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(ah,F.Value));$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 38:aj=$clone(d,F.Value).Interface();$s=41;case 41:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=$assertType(aj,A.BinaryUnmarshaler,true);ak=ai[0];al=ai[1];if(al){$s=42;continue;}$s=43;continue;case 42:if(!((c===2))){$s=-1;return C.New("bad wiretype for bytes");}am=ak.UnmarshalBinary(f);$s=44;case 44:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=-1;return am;case 43:an=f;ao=$clone(d,F.Value).Interface();$s=45;case 45:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=ao;aq=R(an,ap);$s=46;case 46:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return aq;case 13:$panic(new $String("unsupported value kind "+new F.Kind($clone(d,F.Value).Kind()).String()));case 14:case 1:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.putvalue};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.putvalue=function(c,d,e,f){return this.$val.putvalue(c,d,e,f);};Q.ptr.prototype.instantiate=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=c.Kind();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e===20){$s=1;continue;}$s=2;continue;case 1:f=(g=d.nm[F.Type.keyFor(c)],g!==undefined?[g.v,true]:[$throwNilPointerError,false]);h=f[0];i=f[1];if(!i){$s=4;continue;}$s=5;continue;case 4:j=c.String();$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$panic(new $String("no constructor for interface "+j));case 5:k=h();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=F.ValueOf(k);$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return l;case 2:m=F.New(c);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=-1;return m;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.instantiate};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.instantiate=function(c){return this.$val.instantiate(c);};Q.ptr.prototype.slice=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(c,F.Value).Type().Elem();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=F.New(g);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=$clone(h,F.Value).Elem();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=0;l=g.Kind();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if((m===(1))||(m===(5))||(m===(6))||(m===(10))||(m===(11))){$s=6;continue;}if(m===(13)){$s=7;continue;}if(m===(14)){$s=8;continue;}if(m===(8)){$s=9;continue;}$s=10;continue;case 6:n=g;if($interfaceIsEqual(n,(T))){k=5;}else if($interfaceIsEqual(n,(U))){k=1;}else if($interfaceIsEqual(n,(V))){k=5;}else if($interfaceIsEqual(n,(W))){k=1;}else{k=0;}$s=11;continue;case 7:k=5;$s=11;continue;case 8:k=1;$s=11;continue;case 9:if($clone(c,F.Value).Kind()===17){$s=12;continue;}$s=13;continue;case 12:if(!(($clone(c,F.Value).Len()===d.$length))){$panic(new $String("Array length != buffer length"));}o=0;case 15:if(!(o<$clone(c,F.Value).Len())){$s=16;continue;}p=$clone(c,F.Value).Index(o);$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=$clone(p,F.Value).SetUint(new $Uint64(0,((o<0||o>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+o])));$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=15;continue;case 16:$s=14;continue;case 13:$r=$clone(c,F.Value).SetBytes(d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:$s=-1;return $ifaceNil;case 10:q=e.putvalue(2,$clone(j,F.Value),new $Uint64(0,0),d);$s=20;case 20:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(!($interfaceIsEqual(r,$ifaceNil))){$s=-1;return r;}s=F.Append($clone(c,F.Value),new BJ([$clone(j,F.Value)]));$s=21;case 21:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=$clone(c,F.Value).Set($clone(s,F.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;case 11:case 4:case 23:if(!(d.$length>0)){$s=24;continue;}u=e.value(k,d,$clone(j,F.Value));$s=25;case 25:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];if(!($interfaceIsEqual(w,$ifaceNil))){$s=-1;return w;}x=F.Append($clone(c,F.Value),new BJ([$clone(j,F.Value)]));$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(c,F.Value).Set($clone(x,F.Value));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=v;$s=23;continue;case 24:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.slice};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.slice=function(c,d){return this.$val.slice(c,d);};Q.ptr.prototype.mapEntry=function(c,d){var $ptr,aa,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(c,F.Value).Type().Key();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=F.New(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(c,F.Value).Type().Elem();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=F.New(i);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$clone(h,F.Value).Elem();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=$clone(k,F.Value).Elem();$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;p=B.Uvarint(d);q=p[0];r=p[1];if(r<=0){$s=-1;return C.New("bad protobuf field key");}s=$subslice(d,r);t=(new $Uint64(q.$high&0,(q.$low&7)>>>0).$low>>0);u=$ifaceNil;w=e.value(t,s,$clone(m,F.Value));$s=7;case 7:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;s=v[0];u=v[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return u;}case 8:if(!(s.$length>0)){$s=9;continue;}x=B.Uvarint(s);q=x[0];r=x[1];if(r<=0){$s=-1;return C.New("bad protobuf field key");}s=$subslice(s,r);t=(new $Uint64(q.$high&0,(q.$low&7)>>>0).$low>>0);z=e.value(t,s,$clone(o,F.Value));$s=10;case 10:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;s=y[0];u=y[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return u;}$s=8;continue;case 9:if(!$clone(m,F.Value).IsValid()||!$clone(o,F.Value).IsValid()){$s=11;continue;}$s=12;continue;case 11:aa=D.Errorf("proto: bad map data: missing key/val",new BF([]));$s=13;case 13:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return aa;case 12:$r=$clone(c,F.Value).SetMapIndex($clone(m,F.Value),$clone(o,F.Value));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mapEntry};}$f.$ptr=$ptr;$f.aa=aa;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.mapEntry=function(c,d){return this.$val.mapEntry(c,d);};AD=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];e=[e];d[0]=BD.nil;e[0]=$ifaceNil;$deferred.push([(function(d,e){return function(){var $ptr,f;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){e[0]=C.New($assertType(f,$String));d[0]=BD.nil;}};})(d,e),[]]);if($interfaceIsEqual(c,$ifaceNil)){f=BD.nil;g=$ifaceNil;d[0]=f;e[0]=g;$s=-1;return[d[0],e[0]];}h=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));i=F.ValueOf(c);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!(($clone(j,F.Value).Kind()===22))){k=BD.nil;l=C.New("Encode takes a pointer to struct");d[0]=k;e[0]=l;$s=-1;return[d[0],e[0]];}m=$clone(j,F.Value).Elem();$s=2;case 2:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$r=h.message($clone(m,F.Value));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=h.Buffer.Bytes();o=$ifaceNil;d[0]=n;e[0]=o;$s=-1;return[d[0],e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[d[0],e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.Encode=AD;AC.ptr.prototype.message=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];e=this;d[0]=BI.nil;$deferred.push([(function(d){return function $b(){var $ptr,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:if(!(d[0]===BI.nil)){$s=3;continue;}$s=4;continue;case 3:g=D.Sprintf("%s (field %s)",new BF([f,new $String(d[0].Field.Name)]));$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$panic(new $String(g));$s=5;continue;case 4:$panic(f);case 5:case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};})(d),[]]);g=AM($clone(c,F.Value).Type());$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=0;case 2:if(!(h<f.$length)){$s=3;continue;}d[0]=((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]);i=$clone(c,F.Value).FieldByIndex(d[0].Index);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;l=$shiftLeft64((k=d[0].ID,new $Uint64(k.$high,k.$low)),3);if($clone(j,F.Value).CanSet()){$s=5;continue;}$s=6;continue;case 5:$r=e.value(l,$clone(j,F.Value),d[0].Prefix);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:h++;$s=2;continue;case 3:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AC.ptr.prototype.message};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AC.prototype.message=function(c){return this.$val.message(c);};AC.ptr.prototype.value=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;h=$clone(d,F.Value).Interface();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;if($assertType(g,$Bool,true)[1]){$s=2;continue;}if($assertType(g,$Int,true)[1]){$s=3;continue;}if($assertType(g,$Int32,true)[1]){$s=4;continue;}if($assertType(g,G.Time,true)[1]){$s=5;continue;}if($assertType(g,$Int64,true)[1]){$s=6;continue;}if($assertType(g,$Uint32,true)[1]){$s=7;continue;}if($assertType(g,$Uint64,true)[1]){$s=8;continue;}if($assertType(g,Z,true)[1]){$s=9;continue;}if($assertType(g,AA,true)[1]){$s=10;continue;}if($assertType(g,X,true)[1]){$s=11;continue;}if($assertType(g,Y,true)[1]){$s=12;continue;}if($assertType(g,$Float32,true)[1]){$s=13;continue;}if($assertType(g,$Float64,true)[1]){$s=14;continue;}if($assertType(g,$String,true)[1]){$s=15;continue;}if($assertType(g,BD,true)[1]){$s=16;continue;}$s=17;continue;case 2:i=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));x=new $Uint64(0,0);if(i){x=new $Uint64(0,1);}f.uvarint(x);$s=-1;return;case 3:j=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(new $Int64(0,j));$s=-1;return;case 4:k=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(new $Int64(0,k));$s=-1;return;case 5:l=$clone(g.$val,G.Time);y=$clone(l,G.Time).UnixNano();f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(y.$high,y.$low));$s=-1;return;case 6:m=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(m);$s=-1;return;case 7:n=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint(new $Uint64(0,n));$s=-1;return;case 8:o=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint(o);$s=-1;return;case 9:p=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32((p>>>0));$s=-1;return;case 10:q=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(q.$high,q.$low));$s=-1;return;case 11:r=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32((r>>>0));$s=-1;return;case 12:s=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(s.$high,s.$low));$s=-1;return;case 13:t=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32(E.Float32bits(t));$s=-1;return;case 14:u=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(E.Float64bits(u));$s=-1;return;case 15:v=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));z=new BD($stringToBytes(v));f.uvarint(new $Uint64(0,z.$length));f.Buffer.Write(z);$s=-1;return;case 16:w=g.$val;if(w===BD.nil){if(!((e===1))){$panic(new $String("passed nil []byte to required field"));}$s=-1;return;}f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));f.uvarint(new $Uint64(0,w.$length));f.Buffer.Write(w);$s=-1;return;case 17:aa=$clone(d,F.Value).Kind();if(aa===(1)){$s=19;continue;}if((aa===(2))||(aa===(5))||(aa===(6))){$s=20;continue;}if((aa===(10))||(aa===(11))){$s=21;continue;}if(aa===(13)){$s=22;continue;}if(aa===(14)){$s=23;continue;}if(aa===(24)){$s=24;continue;}if(aa===(25)){$s=25;continue;}if((aa===(23))||(aa===(17))){$s=26;continue;}if(aa===(22)){$s=27;continue;}if(aa===(20)){$s=28;continue;}if(aa===(21)){$s=29;continue;}$s=30;continue;case 19:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));ab=new $Uint64(0,0);if($clone(d,F.Value).Bool()){ab=new $Uint64(0,1);}f.uvarint(ab);$s=31;continue;case 20:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint($clone(d,F.Value).Int());$s=31;continue;case 21:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint($clone(d,F.Value).Uint());$s=31;continue;case 22:f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32(E.Float32bits($fround($clone(d,F.Value).Float())));$s=31;continue;case 23:f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(E.Float64bits($clone(d,F.Value).Float()));$s=31;continue;case 24:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ac=$clone(d,F.Value).String();$s=32;case 32:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=new BD($stringToBytes(ac));f.uvarint(new $Uint64(0,ad.$length));f.Buffer.Write(ad);$s=31;continue;case 25:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ae=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));$r=ae.message($clone(d,F.Value));$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}af=ae.Buffer.Bytes();f.uvarint(new $Uint64(0,af.$length));f.Buffer.Write(af);$s=31;continue;case 26:$r=f.slice(c,$clone(d,F.Value));$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 27:if($clone(d,F.Value).IsNil()){if(e===2){$panic(new $String("required field is nil"));}$s=-1;return;}ag=c;ah=$clone(d,F.Value).Elem();$s=35;case 35:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value);aj=e;$r=f.value(ag,ai,aj);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=31;continue;case 28:if($clone(d,F.Value).IsNil()){$s=-1;return;}al=$clone(d,F.Value).Interface();$s=37;case 37:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=$assertType(al,A.BinaryMarshaler,true);am=ak[0];an=ak[1];if(an){$s=38;continue;}$s=39;continue;case 38:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ap=am.MarshalBinary();$s=40;case 40:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=ao[0];ar=ao[1];if(!($interfaceIsEqual(ar,$ifaceNil))){$s=41;continue;}$s=42;continue;case 41:as=ar.Error();$s=43;case 43:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$panic(new $String(as));case 42:f.uvarint(new $Uint64(0,aq.$length));f.Buffer.Write(aq);$s=-1;return;case 39:at=c;au=$clone(d,F.Value).Elem();$s=44;case 44:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=$clone(au,F.Value);aw=e;$r=f.value(at,av,aw);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=31;continue;case 29:$r=f.handleMap(c,$clone(d,F.Value),e);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 30:ax=D.Sprintf("unsupported field Kind %d",new BF([new F.Kind($clone(d,F.Value).Kind())]));$s=47;case 47:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$panic(new $String(ax));case 31:case 18:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.value=function(c,d,e){return this.$val.value(c,d,e);};AC.ptr.prototype.slice=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(d,F.Value).Len();g=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));i=$clone(d,F.Value).Interface();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;if($assertType(h,BL,true)[1]){$s=2;continue;}if($assertType(h,BM,true)[1]){$s=3;continue;}if($assertType(h,BN,true)[1]){$s=4;continue;}if($assertType(h,BO,true)[1]){$s=5;continue;}if($assertType(h,BP,true)[1]){$s=6;continue;}if($assertType(h,BQ,true)[1]){$s=7;continue;}if($assertType(h,BR,true)[1]){$s=8;continue;}if($assertType(h,BS,true)[1]){$s=9;continue;}if($assertType(h,BT,true)[1]){$s=10;continue;}if($assertType(h,BU,true)[1]){$s=11;continue;}if($assertType(h,BV,true)[1]){$s=12;continue;}if($assertType(h,BD,true)[1]){$s=13;continue;}if($assertType(h,BW,true)[1]){$s=14;continue;}$s=15;continue;case 2:j=h.$val;x=0;while(true){if(!(x<f)){break;}y=new $Uint64(0,0);if(((x<0||x>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+x])){y=new $Uint64(0,1);}g.uvarint(y);x=x+(1)>>0;}$s=16;continue;case 3:k=h.$val;z=0;while(true){if(!(z<f)){break;}g.svarint(new $Int64(0,((z<0||z>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+z])));z=z+(1)>>0;}$s=16;continue;case 4:l=h.$val;aa=0;while(true){if(!(aa<f)){break;}g.svarint(((aa<0||aa>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+aa]));aa=aa+(1)>>0;}$s=16;continue;case 5:m=h.$val;ab=0;while(true){if(!(ab<f)){break;}g.uvarint(new $Uint64(0,((ab<0||ab>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ab])));ab=ab+(1)>>0;}$s=16;continue;case 6:n=h.$val;ac=0;while(true){if(!(ac<f)){break;}g.uvarint(((ac<0||ac>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+ac]));ac=ac+(1)>>0;}$s=16;continue;case 7:o=h.$val;ad=0;while(true){if(!(ad<f)){break;}g.u32((((ad<0||ad>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+ad])>>>0));ad=ad+(1)>>0;}$s=16;continue;case 8:p=h.$val;ae=0;while(true){if(!(ae<f)){break;}g.u64((af=((ae<0||ae>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ae]),new $Uint64(af.$high,af.$low)));ae=ae+(1)>>0;}$s=16;continue;case 9:q=h.$val;ag=0;while(true){if(!(ag<f)){break;}g.u32((((ag<0||ag>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+ag])>>>0));ag=ag+(1)>>0;}$s=16;continue;case 10:r=h.$val;ah=0;while(true){if(!(ah<f)){break;}g.u64((ai=((ah<0||ah>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ah]),new $Uint64(ai.$high,ai.$low)));ah=ah+(1)>>0;}$s=16;continue;case 11:s=h.$val;aj=0;while(true){if(!(aj<f)){break;}g.u32(E.Float32bits(((aj<0||aj>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+aj])));aj=aj+(1)>>0;}$s=16;continue;case 12:t=h.$val;ak=0;while(true){if(!(ak<f)){break;}g.u64(E.Float64bits(((ak<0||ak>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+ak])));ak=ak+(1)>>0;}$s=16;continue;case 13:u=h.$val;e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,f));e.Buffer.Write(u);$s=-1;return;case 14:v=h.$val;al=0;case 17:if(!(al<f)){$s=18;continue;}am=$clone(d,F.Value).Index(al);$s=19;case 19:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;ao=$clone(an,F.Value).Interface();$s=20;case 20:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=$assertType(ao,$String);aq=new BD($stringToBytes(ap));e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,aq.$length));e.Buffer.Write(aq);al=al+(1)>>0;$s=17;continue;case 18:$s=-1;return;case 15:w=h;$r=e.sliceReflect(c,$clone(d,F.Value));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 16:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ar=g.Buffer.Bytes();e.uvarint(new $Uint64(0,ar.$length));e.Buffer.Write(ar);$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.slice};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.slice=function(c,d){return this.$val.slice(c,d);};AC.ptr.prototype.handleMap=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;h=$clone(d,F.Value).MapKeys();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=0;case 2:if(!(i<g.$length)){$s=3;continue;}j=((i<0||i>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+i]);k=$clone(d,F.Value).MapIndex($clone(j,F.Value));$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=$clone(l,F.Value).Kind();n=m;if(n===(22)){$s=6;continue;}if((n===(23))||(n===(17))){$s=7;continue;}$s=8;continue;case 6:if($clone(l,F.Value).IsNil()){$panic(new $String("proto: map has nil element"));}$s=8;continue;case 7:o=$clone(l,F.Value).Type().Elem();$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o.Kind();$s=12;case 12:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(!((p===8))){$s=9;continue;}$s=10;continue;case 9:$panic(new $String("protobuf: map only support []byte or string as repeated value"));case 10:case 8:case 5:q=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));$r=q.value(c,$clone(j,F.Value),e);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}r=$shiftRightUint64(c,3);$r=q.value($shiftLeft64(new $Uint64(r.$high+0,r.$low+1),3),$clone(l,F.Value),e);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));s=q.Buffer.Bytes();f.uvarint(new $Uint64(0,s.$length));f.Buffer.Write(s);i++;$s=2;continue;case 3:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.handleMap};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.handleMap=function(c,d,e){return this.$val.handleMap(c,d,e);};AC.ptr.prototype.sliceReflect=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(d,F.Value).Kind();if(!((f===23))&&!((f===17))){$panic(new $String("no slice passed"));}g=$clone(d,F.Value).Len();h=$clone(d,F.Value).Type().Elem();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));k=i.Kind();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(l===(1)){$s=4;continue;}if((l===(2))||(l===(5))||(l===(6))){$s=5;continue;}if((l===(10))||(l===(11))){$s=6;continue;}if(l===(13)){$s=7;continue;}if(l===(14)){$s=8;continue;}if(l===(8)){$s=9;continue;}$s=10;continue;case 4:m=0;case 12:if(!(m<g)){$s=13;continue;}n=new $Uint64(0,0);o=$clone(d,F.Value).Index(m);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=$clone(o,F.Value).Bool();$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(p){$s=14;continue;}$s=15;continue;case 14:n=new $Uint64(0,1);case 15:j.uvarint(n);m=m+(1)>>0;$s=12;continue;case 13:$s=11;continue;case 5:q=0;case 18:if(!(q<g)){$s=19;continue;}r=$clone(d,F.Value).Index(q);$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=$clone(r,F.Value).Int();$s=21;case 21:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=j.svarint(s);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=q+(1)>>0;$s=18;continue;case 19:$s=11;continue;case 6:t=0;case 23:if(!(t<g)){$s=24;continue;}u=$clone(d,F.Value).Index(t);$s=25;case 25:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=$clone(u,F.Value).Uint();$s=26;case 26:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=j.uvarint(v);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}t=t+(1)>>0;$s=23;continue;case 24:$s=11;continue;case 7:w=0;case 28:if(!(w<g)){$s=29;continue;}x=$clone(d,F.Value).Index(w);$s=30;case 30:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=$clone(x,F.Value).Float();$s=31;case 31:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=E.Float32bits($fround(y));$s=32;case 32:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=j.u32(z);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}w=w+(1)>>0;$s=28;continue;case 29:$s=11;continue;case 8:aa=0;case 34:if(!(aa<g)){$s=35;continue;}ab=$clone(d,F.Value).Index(aa);$s=36;case 36:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=$clone(ab,F.Value).Float();$s=37;case 37:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=E.Float64bits(ac);$s=38;case 38:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$r=j.u64(ad);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}aa=aa+(1)>>0;$s=34;continue;case 35:$s=11;continue;case 9:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,g));ae=BD.nil;if($clone(d,F.Value).Kind()===17){$s=40;continue;}$s=41;continue;case 40:af=$clone(d,F.Value).Slice(0,g);$s=43;case 43:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;ah=$clone(ag,F.Value).Convert(AG);$s=44;case 44:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value).Interface();$s=45;case 45:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ae=$assertType(ai,BD);$s=42;continue;case 41:aj=$clone(d,F.Value).Convert(AG);$s=46;case 46:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$clone(aj,F.Value).Interface();$s=47;case 47:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ae=$assertType(ak,BD);case 42:e.Buffer.Write(ae);$s=-1;return;case 10:al=$clone(d,F.Value).Type().Elem();$s=48;case 48:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;ao=am.Kind();$s=52;case 52:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(ao===23){an=true;$s=51;continue s;}ap=am.Kind();$s=53;case 53:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}an=ap===17;case 51:if(an){$s=49;continue;}$s=50;continue;case 49:aq=am.Elem();$s=54;case 54:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;as=ar.Kind();$s=57;case 57:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}if(!((as===8))){$s=55;continue;}$s=56;continue;case 55:$panic(new $String("protobuf: no support for 2-dimensional array except for [][]byte"));case 56:case 50:at=0;case 58:if(!(at<g)){$s=59;continue;}au=c;av=$clone(d,F.Value).Index(at);$s=60;case 60:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=$clone(av,F.Value);$r=e.value(au,aw,0);$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}at=at+(1)>>0;$s=58;continue;case 59:$s=-1;return;case 11:case 2:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ax=j.Buffer.Bytes();e.uvarint(new $Uint64(0,ax.$length));e.Buffer.Write(ax);$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.sliceReflect};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.sliceReflect=function(c,d){return this.$val.sliceReflect(c,d);};AC.ptr.prototype.uvarint=function(c){var $ptr,c,d,e,f;d=this;e=BX.zero();f=B.PutUvarint(new BD(e),c);d.Buffer.Write($subslice(new BD(e),0,f));};AC.prototype.uvarint=function(c){return this.$val.uvarint(c);};AC.ptr.prototype.svarint=function(c){var $ptr,c,d,e,f;d=this;if((c.$high>0||(c.$high===0&&c.$low>=0))){d.uvarint($shiftLeft64(new $Uint64(c.$high,c.$low),1));}else{d.uvarint((e=(f=$shiftLeft64(c,1),new $Uint64(f.$high,f.$low)),new $Uint64(~e.$high,~e.$low>>>0)));}};AC.prototype.svarint=function(c){return this.$val.svarint(c);};AC.ptr.prototype.u32=function(c){var $ptr,c,d,e;d=this;e=BY.zero();e[0]=(c<<24>>>24);e[1]=((c>>>8>>>0)<<24>>>24);e[2]=((c>>>16>>>0)<<24>>>24);e[3]=((c>>>24>>>0)<<24>>>24);d.Buffer.Write(new BD(e));};AC.prototype.u32=function(c){return this.$val.u32(c);};AC.ptr.prototype.u64=function(c){var $ptr,c,d,e;d=this;e=BZ.zero();e[0]=(c.$low<<24>>>24);e[1]=($shiftRightUint64(c,8).$low<<24>>>24);e[2]=($shiftRightUint64(c,16).$low<<24>>>24);e[3]=($shiftRightUint64(c,24).$low<<24>>>24);e[4]=($shiftRightUint64(c,32).$low<<24>>>24);e[5]=($shiftRightUint64(c,40).$low<<24>>>24);e[6]=($shiftRightUint64(c,48).$low<<24>>>24);e[7]=($shiftRightUint64(c,56).$low<<24>>>24);d.Buffer.Write(new BD(e));};AC.prototype.u64=function(c){return this.$val.u64(c);};AI=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=0;f="";g=new F.StructTag(c.Tag).Get("protobuf");if(g===""){return[d,e,f];}h=J.Split(g,",");i=h;j=0;while(true){if(!(j<i.$length)){break;}k=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(k==="opt"){e=1;}else if(k==="req"){e=2;}else{l=I.Atoi(k);m=l[0];n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){f=k;}else{d=m;}}j++;}return[d,e,f];};$pkg.ParseTag=AI;AJ.ptr.prototype.Required=function(){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(c.Prefix===2){d=true;$s=1;continue s;}e=c.Field.Type.Kind();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=!((e===22));case 1:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Required};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Required=function(){return this.$val.Required();};AM=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];$r=AL.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=(f=AK[F.Type.keyFor(c)],f!==undefined?[f.v,true]:[CA.nil,false]);g=e[0];h=e[1];$r=AL.Unlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(h){$s=-1;return g;}d[0]=0;i=AN((d.$ptr||(d.$ptr=new CB(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d))),c);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=i;j=$makeMap($Int64.keyFor,[]);k=g;l=0;case 4:if(!(l<k.$length)){$s=5;continue;}m=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);n=(o=j[$Int64.keyFor(m.ID)],o!==undefined?[o.v,true]:[new CC.ptr(),false]);p=n[1];if(p){$s=6;continue;}$s=7;continue;case 6:q=m.ID;r=c.PkgPath();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new $String(r);t=c.Name();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=new $String(t);v=D.Sprintf("protobuf ID %d reused in %s.%s",new BF([q,s,u]));$s=10;case 10:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$panic(new $String(v));case 7:w=m.ID;(j||$throwRuntimeError("assignment to entry in nil map"))[$Int64.keyFor(w)]={k:w,v:new CC.ptr()};l++;$s=4;continue;case 5:$r=AL.Lock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AL,"Unlock"),[]]);x=c;(AK||$throwRuntimeError("assignment to entry in nil map"))[F.Type.keyFor(x)]={k:x,v:g};$s=-1;return g;}return;}}catch(err){$err=err;$s=-1;return CA.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.ProtoFields=AM;AN=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=d.Kind();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e===22){$s=1;continue;}$s=2;continue;case 1:f=c;g=d.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=AN(f,h);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;case 2:j=new CA([]);k=0;case 6:l=d.NumField();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(!(k<l)){$s=7;continue;}m=d.Field(k);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$clone(m,F.StructField);c.$set(c.$get()+(1)>>0);o=AI($clone(n,F.StructField));p=o[0];q=o[1];r=o[2];if(!((p===0))){c.$set(p);}if(n.Anonymous){$s=10;continue;}$s=11;continue;case 10:c.$set(c.$get()-(1)>>0);t=AN(c,n.Type);$s=13;case 13:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=0;case 14:if(!(u<s.$length)){$s=15;continue;}v=((u<0||u>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+u]);v.Index=$appendSlice(new BH([k]),v.Index);j=$append(j,v);u++;$s=14;continue;case 15:$s=12;continue;case 11:j=$append(j,new AJ.ptr(new $Int64(0,c.$get()),q,r,new BH([k]),$clone(n,F.StructField)));case 12:k=k+(1)>>0;$s=6;continue;case 7:$s=-1;return j;}return;}if($f===undefined){$f={$blk:AN};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};CG.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CH.methods=[{prop:"message",name:"message",pkg:"github.com/dedis/protobuf",typ:$funcType([BD,F.Value],[$error],false)},{prop:"value",name:"value",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,BD,F.Value],[BD,$error],false)},{prop:"decodeSignedInt",name:"decodeSignedInt",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,$Uint64],[$Int64,$error],false)},{prop:"putvalue",name:"putvalue",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,F.Value,$Uint64,BD],[$error],false)},{prop:"instantiate",name:"instantiate",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Type],[F.Value],false)},{prop:"slice",name:"slice",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value,BD],[$error],false)},{prop:"mapEntry",name:"mapEntry",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value,BD],[$error],false)}];CI.methods=[{prop:"message",name:"message",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value],[],false)},{prop:"value",name:"value",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value,AH],[],false)},{prop:"slice",name:"slice",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value],[],false)},{prop:"handleMap",name:"handleMap",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value,AH],[],false)},{prop:"sliceReflect",name:"sliceReflect",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value],[],false)},{prop:"uvarint",name:"uvarint",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64],[],false)},{prop:"svarint",name:"svarint",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int64],[],false)},{prop:"u32",name:"u32",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint32],[],false)},{prop:"u64",name:"u64",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64],[],false)}];BI.methods=[{prop:"Required",name:"Required",pkg:"",typ:$funcType([],[$Bool],false)}];P.init(F.Type,BE);Q.init("github.com/dedis/protobuf",[{prop:"nm",name:"nm",exported:false,typ:P,tag:""}]);AC.init("",[{prop:"Buffer",name:"",exported:true,typ:H.Buffer,tag:""}]);AJ.init("",[{prop:"ID",name:"ID",exported:true,typ:$Int64,tag:""},{prop:"Prefix",name:"Prefix",exported:true,typ:AH,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Index",name:"Index",exported:true,typ:BH,tag:""},{prop:"Field",name:"Field",exported:true,typ:F.StructField,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=H.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AL=new K.Mutex.ptr(0,0);T=F.TypeOf(new Z(0));U=F.TypeOf(new AA(0,0));V=F.TypeOf(new X(0));W=F.TypeOf(new Y(0,0));AE=F.TypeOf((a=new G.Time.ptr(new $Int64(0,0),0,BC.nil),new a.constructor.elem(a)));AF=F.TypeOf(new G.Duration(0,0));AG=F.TypeOf(new BD([]));AK=$makeMap(F.Type.keyFor,[]);b=M.MustCompile("((?:ID)|(?:[A-Z][a-z_0-9]+)|([\\w\\d]+))");$s=16;case 16:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AO=b;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto"]=(function(){var $pkg={},$init,A,B,C,D,N,O,P,E,F,G;A=$packages["hash"];B=$packages["io"];C=$packages["strconv"];D=$pkg.Hash=$newType(4,$kindUint,"crypto.Hash",true,"crypto",true,null);N=$sliceType($Uint8);O=$funcType([],[A.Hash],false);P=$sliceType(O);D.prototype.HashFunc=function(){var $ptr,a;a=this.$val;return a;};$ptrType(D).prototype.HashFunc=function(){return new D(this.$get()).HashFunc();};D.prototype.Size=function(){var $ptr,a;a=this.$val;if(a>0&&a<16){return(((a<0||a>=E.$length)?($throwRuntimeError("index out of range"),undefined):E.$array[E.$offset+a])>>0);}$panic(new $String("crypto: Size of unknown hash function"));};$ptrType(D).prototype.Size=function(){return new D(this.$get()).Size();};D.prototype.New=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;if(a>0&&a<16){$s=1;continue;}$s=2;continue;case 1:b=((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a]);if(!(b===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:c=b();$s=5;case 5:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;case 4:case 2:$panic(new $String("crypto: requested hash function #"+C.Itoa((a>>0))+" is unavailable"));$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:D.prototype.New};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(D).prototype.New=function(){return new D(this.$get()).New();};D.prototype.Available=function(){var $ptr,a;a=this.$val;return a<16&&!(((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a])===$throwNilPointerError);};$ptrType(D).prototype.Available=function(){return new D(this.$get()).Available();};G=function(a,b){var $ptr,a,b;if(a>=16){$panic(new $String("crypto: RegisterHash of unknown hash function"));}((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a]=b);};$pkg.RegisterHash=G;D.methods=[{prop:"HashFunc",name:"HashFunc",pkg:"",typ:$funcType([],[D],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"New",name:"New",pkg:"",typ:$funcType([],[A.Hash],false)},{prop:"Available",name:"Available",pkg:"",typ:$funcType([],[$Bool],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}E=new N([0,16,16,20,28,32,48,64,36,20,28,32,48,64,28,32]);F=$makeSlice(P,16);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/md5"]=(function(){var $pkg={},$init,A,B,C,E,L,M,N,O,P,Q,R,S,H,K,D,F,I,J;A=$packages["crypto"];B=$packages["hash"];C=$packages["runtime"];E=$pkg.digest=$newType(0,$kindStruct,"md5.digest",true,"crypto/md5",false,function(s_,x_,nx_,len_){this.$val=this;if(arguments.length===0){this.s=L.zero();this.x=M.zero();this.nx=0;this.len=new $Uint64(0,0);return;}this.s=s_;this.x=x_;this.nx=nx_;this.len=len_;});L=$arrayType($Uint32,4);M=$arrayType($Uint8,64);N=$sliceType($Uint8);O=$arrayType($Uint8,16);P=$arrayType($Uint8,4);Q=$arrayType($Uint32,16);R=$ptrType(Q);S=$ptrType(E);D=function(){var $ptr;A.RegisterHash(2,F);};E.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.s[0]=1732584193;a.s[1]=4023233417;a.s[2]=2562383102;a.s[3]=271733878;a.nx=0;a.len=new $Uint64(0,0);};E.prototype.Reset=function(){return this.$val.Reset();};F=function(){var $ptr,a;a=new E.ptr(L.zero(),M.zero(),0,new $Uint64(0,0));a.Reset();return a;};$pkg.New=F;E.ptr.prototype.Size=function(){var $ptr,a;a=this;return 16;};E.prototype.Size=function(){return this.$val.Size();};E.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};E.prototype.BlockSize=function(){return this.$val.BlockSize();};E.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new N(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=K(d,new N(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=K(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new N(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Write=function(a){return this.$val.Write(a);};E.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,E);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,O);$s=-1;return $appendSlice(a,new N(e));}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Sum=function(a){return this.$val.Sum(a);};E.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=M.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new N(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new N(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((8*i>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new N(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=O.zero();l=a.s;m=0;while(true){if(!(m<4)){break;}n=m;o=((m<0||m>=l.length)?($throwRuntimeError("index out of range"),undefined):l[m]);(p=$imul(n,4),((p<0||p>=k.length)?($throwRuntimeError("index out of range"),undefined):k[p]=(o<<24>>>24)));(q=($imul(n,4))+1>>0,((q<0||q>=k.length)?($throwRuntimeError("index out of range"),undefined):k[q]=((o>>>8>>>0)<<24>>>24)));(r=($imul(n,4))+2>>0,((r<0||r>=k.length)?($throwRuntimeError("index out of range"),undefined):k[r]=((o>>>16>>>0)<<24>>>24)));(s=($imul(n,4))+3>>0,((s<0||s>=k.length)?($throwRuntimeError("index out of range"),undefined):k[s]=((o>>>24>>>0)<<24>>>24)));m++;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.checkSum=function(){return this.$val.checkSum();};I=function(){var $ptr,a,b;a=67305985;b=$toNativeArray($kindUint8,[1,2,3,4]);H=$equal(a,b,P);};J=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;c=a.s[0];d=a.s[1];e=a.s[2];f=a.s[3];g=R.nil;h=Q.zero();while(true){if(!(b.$length>=64)){break;}i=c;j=d;k=e;l=f;m=i;n=j;o=k;p=l;if(false){g=$sliceToArray(b);}else if(H&&((($sliceToArray(b)&3)>>>0)===0)){g=$sliceToArray(b);}else{g=h;q=0;r=0;while(true){if(!(r<16)){break;}(v=r&15,g.nilCheck,((v<0||v>=g.length)?($throwRuntimeError("index out of range"),undefined):g[v]=(((((((((q<0||q>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+q])>>>0)|(((s=q+1>>0,((s<0||s>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+s]))>>>0)<<8>>>0))>>>0)|(((t=q+2>>0,((t<0||t>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+t]))>>>0)<<16>>>0))>>>0)|(((u=q+3>>0,((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u]))>>>0)<<24>>>0))>>>0)));q=q+(4)>>0;r=r+(1)>>0;}}c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[0])>>>0)+3614090360>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[1])>>>0)+3905402710>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[2])>>>0)+606105819>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[3])>>>0)+3250441966>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[4])>>>0)+4118548399>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[5])>>>0)+1200080426>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[6])>>>0)+2821735955>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[7])>>>0)+4249261313>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[8])>>>0)+1770035416>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[9])>>>0)+2336552879>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[10])>>>0)+4294925233>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[11])>>>0)+2304563134>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[12])>>>0)+1804603682>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[13])>>>0)+4254626195>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[14])>>>0)+2792965006>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[15])>>>0)+1236535329>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[1])>>>0)+4129170786>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[6])>>>0)+3225465664>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[11])>>>0)+643717713>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[0])>>>0)+3921069994>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[5])>>>0)+3593408605>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[10])>>>0)+38016083>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[15])>>>0)+3634488961>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[4])>>>0)+3889429448>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[9])>>>0)+568446438>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[14])>>>0)+3275163606>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[3])>>>0)+4107603335>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[8])>>>0)+1163531501>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[13])>>>0)+2850285829>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[2])>>>0)+4243563512>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[7])>>>0)+1735328473>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[12])>>>0)+2368359562>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[5])>>>0)+4294588738>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[8])>>>0)+2272392833>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[11])>>>0)+1839030562>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[14])>>>0)+4259657740>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[1])>>>0)+2763975236>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[4])>>>0)+1272893353>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[7])>>>0)+4139469664>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[10])>>>0)+3200236656>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[13])>>>0)+681279174>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[0])>>>0)+3936430074>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[3])>>>0)+3572445317>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[6])>>>0)+76029189>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[9])>>>0)+3654602809>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[12])>>>0)+3873151461>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[15])>>>0)+530742520>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[2])>>>0)+3299628645>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[0])>>>0)+4096336452>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[7])>>>0)+1126891415>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[14])>>>0)+2878612391>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[5])>>>0)+4237533241>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[12])>>>0)+1700485571>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[3])>>>0)+2399980690>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[10])>>>0)+4293915773>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[1])>>>0)+2240044497>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[8])>>>0)+1873313359>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[15])>>>0)+4264355552>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[6])>>>0)+2734768916>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[13])>>>0)+1309151649>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[4])>>>0)+4149444226>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[11])>>>0)+3174756917>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[2])>>>0)+718787259>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[9])>>>0)+3951481745>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+(m)>>>0;d=d+(n)>>>0;e=e+(o)>>>0;f=f+(p)>>>0;b=$subslice(b,64);}a.s[0]=c;a.s[1]=d;a.s[2]=e;a.s[3]=f;};S.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([N],[N],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/md5",typ:$funcType([],[O],false)}];E.init("crypto/md5",[{prop:"s",name:"s",exported:false,typ:L,tag:""},{prop:"x",name:"x",exported:false,typ:M,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}H=false;K=J;D();I();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/sha1"]=(function(){var $pkg={},$init,A,B,D,I,J,K,L,M,N,O,H,C,E,G;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha1.digest",true,"crypto/sha1",false,function(h_,x_,nx_,len_){this.$val=this;if(arguments.length===0){this.h=I.zero();this.x=J.zero();this.nx=0;this.len=new $Uint64(0,0);return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;});I=$arrayType($Uint32,5);J=$arrayType($Uint8,64);K=$sliceType($Uint8);L=$arrayType($Uint8,20);M=$arrayType($Uint8,8);N=$arrayType($Uint32,16);O=$ptrType(D);C=function(){var $ptr;A.RegisterHash(3,E);};D.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.h[0]=1732584193;a.h[1]=4023233417;a.h[2]=2562383102;a.h[3]=271733878;a.h[4]=3285377520;a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(I.zero(),J.zero(),0,new $Uint64(0,0));a.Reset();return a;};$pkg.New=E;D.ptr.prototype.Size=function(){var $ptr,a;a=this;return 20;};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new K(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=H(d,new K(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=H(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new K(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,L);$s=-1;return $appendSlice(a,new K(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=J.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new K(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new K(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((56-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new K(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=L.zero();l=a.h;m=0;while(true){if(!(m<5)){break;}n=m;o=((m<0||m>=l.length)?($throwRuntimeError("index out of range"),undefined):l[m]);(p=$imul(n,4),((p<0||p>=k.length)?($throwRuntimeError("index out of range"),undefined):k[p]=((o>>>24>>>0)<<24>>>24)));(q=($imul(n,4))+1>>0,((q<0||q>=k.length)?($throwRuntimeError("index out of range"),undefined):k[q]=((o>>>16>>>0)<<24>>>24)));(r=($imul(n,4))+2>>0,((r<0||r>=k.length)?($throwRuntimeError("index out of range"),undefined):k[r]=((o>>>8>>>0)<<24>>>24)));(s=($imul(n,4))+3>>0,((s<0||s>=k.length)?($throwRuntimeError("index out of range"),undefined):k[s]=(o<<24>>>24)));m++;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};D.ptr.prototype.ConstantTimeSum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.constSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,L);$s=-1;return $appendSlice(a,new K(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.ConstantTimeSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.ConstantTimeSum=function(a){return this.$val.ConstantTimeSum(a);};D.ptr.prototype.constSum=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=M.zero();c=$shiftLeft64(a.len,3);d=0;while(true){if(!(d<8)){break;}((d<0||d>=b.length)?($throwRuntimeError("index out of range"),undefined):b[d]=($shiftRightUint64(c,((56-(8*d>>>0)>>>0))).$low<<24>>>24));d=d+(1)>>>0;}e=(a.nx<<24>>>24);f=e-56<<24>>>24;g=(((f<<24>>24)>>7<<24>>24)<<24>>>24);h=128;i=0;while(true){if(!(i<64)){break;}j=((((i-e<<24>>>24)<<24>>24)>>7<<24>>24)<<24>>>24);(l=a.x,((i<0||i>=l.length)?($throwRuntimeError("index out of range"),undefined):l[i]=((((((~j<<24>>>24)&h)>>>0))|(((j&(k=a.x,((i<0||i>=k.length)?($throwRuntimeError("index out of range"),undefined):k[i])))>>>0)))>>>0)));h=(h&(j))>>>0;if(i>=56){(o=a.x,((i<0||i>=o.length)?($throwRuntimeError("index out of range"),undefined):o[i]=(((m=a.x,((i<0||i>=m.length)?($throwRuntimeError("index out of range"),undefined):m[i]))|(((g&(n=i-56<<24>>>24,((n<0||n>=b.length)?($throwRuntimeError("index out of range"),undefined):b[n])))>>>0)))>>>0)));}i=i+(1)<<24>>>24;}$r=H(a,new K(a.x));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=L.zero();q=a.h;r=0;while(true){if(!(r<5)){break;}s=r;t=((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]);(u=$imul(s,4),((u<0||u>=p.length)?($throwRuntimeError("index out of range"),undefined):p[u]=((g&((t>>>24>>>0)<<24>>>24))>>>0)));(v=($imul(s,4))+1>>0,((v<0||v>=p.length)?($throwRuntimeError("index out of range"),undefined):p[v]=((g&((t>>>16>>>0)<<24>>>24))>>>0)));(w=($imul(s,4))+2>>0,((w<0||w>=p.length)?($throwRuntimeError("index out of range"),undefined):p[w]=((g&((t>>>8>>>0)<<24>>>24))>>>0)));(x=($imul(s,4))+3>>0,((x<0||x>=p.length)?($throwRuntimeError("index out of range"),undefined):p[x]=((g&(t<<24>>>24))>>>0)));r++;}y=0;while(true){if(!(y<64)){break;}if(y<56){(z=a.x,((y<0||y>=z.length)?($throwRuntimeError("index out of range"),undefined):z[y]=h));h=0;}else{(ab=a.x,((y<0||y>=ab.length)?($throwRuntimeError("index out of range"),undefined):ab[y]=(aa=y-56<<24>>>24,((aa<0||aa>=b.length)?($throwRuntimeError("index out of range"),undefined):b[aa]))));}y=y+(1)<<24>>>24;}$r=H(a,new K(a.x));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ac=a.h;ad=0;while(true){if(!(ad<5)){break;}ae=ad;af=((ad<0||ad>=ac.length)?($throwRuntimeError("index out of range"),undefined):ac[ad]);ag=$imul(ae,4);((ag<0||ag>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ag]=((((ag<0||ag>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ag])|((((~g<<24>>>24)&((af>>>24>>>0)<<24>>>24))>>>0)))>>>0));ah=($imul(ae,4))+1>>0;((ah<0||ah>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ah]=((((ah<0||ah>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ah])|((((~g<<24>>>24)&((af>>>16>>>0)<<24>>>24))>>>0)))>>>0));ai=($imul(ae,4))+2>>0;((ai<0||ai>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ai]=((((ai<0||ai>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ai])|((((~g<<24>>>24)&((af>>>8>>>0)<<24>>>24))>>>0)))>>>0));aj=($imul(ae,4))+3>>0;((aj<0||aj>=p.length)?($throwRuntimeError("index out of range"),undefined):p[aj]=((((aj<0||aj>=p.length)?($throwRuntimeError("index out of range"),undefined):p[aj])|((((~g<<24>>>24)&(af<<24>>>24))>>>0)))>>>0));ad++;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.constSum};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.constSum=function(){return this.$val.constSum();};G=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=N.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=d;j=e;k=f;l=g;m=h;while(true){if(!(b.$length>=64)){break;}n=0;while(true){if(!(n<16)){break;}o=$imul(n,4);((n<0||n>=c.length)?($throwRuntimeError("index out of range"),undefined):c[n]=((((((((((o<0||o>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+o])>>>0)<<24>>>0)|(((p=o+1>>0,((p<0||p>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+p]))>>>0)<<16>>>0))>>>0)|(((q=o+2>>0,((q<0||q>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+q]))>>>0)<<8>>>0))>>>0)|((r=o+3>>0,((r<0||r>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+r]))>>>0))>>>0));n=n+(1)>>0;}s=i;t=j;u=k;v=l;w=m;x=s;y=t;z=u;aa=v;ab=w;ac=0;while(true){if(!(ac<16)){break;}ad=(((y&z)>>>0)|((((~y>>>0))&aa)>>>0))>>>0;ae=((x<<5>>>0)|(x>>>27>>>0))>>>0;af=((y<<30>>>0)|(y>>>2>>>0))>>>0;ah=(((ae+ad>>>0)+ab>>>0)+(ag=ac&15,((ag<0||ag>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ag]))>>>0)+1518500249>>>0;ai=ah;aj=x;ak=af;al=z;am=aa;x=ai;y=aj;z=ak;aa=al;ab=am;ac=ac+(1)>>0;}while(true){if(!(ac<20)){break;}ar=((((((an=((ac-3>>0))&15,((an<0||an>=c.length)?($throwRuntimeError("index out of range"),undefined):c[an]))^(ao=((ac-8>>0))&15,((ao<0||ao>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ao])))>>>0)^(ap=((ac-14>>0))&15,((ap<0||ap>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ap])))>>>0)^(aq=(ac)&15,((aq<0||aq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aq])))>>>0;(as=ac&15,((as<0||as>=c.length)?($throwRuntimeError("index out of range"),undefined):c[as]=(((ar<<1>>>0)|(ar>>>31>>>0))>>>0)));at=(((y&z)>>>0)|((((~y>>>0))&aa)>>>0))>>>0;au=((x<<5>>>0)|(x>>>27>>>0))>>>0;av=((y<<30>>>0)|(y>>>2>>>0))>>>0;ax=(((au+at>>>0)+ab>>>0)+(aw=ac&15,((aw<0||aw>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aw]))>>>0)+1518500249>>>0;ay=ax;az=x;ba=av;bb=z;bc=aa;x=ay;y=az;z=ba;aa=bb;ab=bc;ac=ac+(1)>>0;}while(true){if(!(ac<40)){break;}bh=((((((bd=((ac-3>>0))&15,((bd<0||bd>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bd]))^(be=((ac-8>>0))&15,((be<0||be>=c.length)?($throwRuntimeError("index out of range"),undefined):c[be])))>>>0)^(bf=((ac-14>>0))&15,((bf<0||bf>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bf])))>>>0)^(bg=(ac)&15,((bg<0||bg>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bg])))>>>0;(bi=ac&15,((bi<0||bi>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bi]=(((bh<<1>>>0)|(bh>>>31>>>0))>>>0)));bj=(((y^z)>>>0)^aa)>>>0;bk=((x<<5>>>0)|(x>>>27>>>0))>>>0;bl=((y<<30>>>0)|(y>>>2>>>0))>>>0;bn=(((bk+bj>>>0)+ab>>>0)+(bm=ac&15,((bm<0||bm>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bm]))>>>0)+1859775393>>>0;bo=bn;bp=x;bq=bl;br=z;bs=aa;x=bo;y=bp;z=bq;aa=br;ab=bs;ac=ac+(1)>>0;}while(true){if(!(ac<60)){break;}bx=((((((bt=((ac-3>>0))&15,((bt<0||bt>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bt]))^(bu=((ac-8>>0))&15,((bu<0||bu>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bu])))>>>0)^(bv=((ac-14>>0))&15,((bv<0||bv>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bv])))>>>0)^(bw=(ac)&15,((bw<0||bw>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bw])))>>>0;(by=ac&15,((by<0||by>=c.length)?($throwRuntimeError("index out of range"),undefined):c[by]=(((bx<<1>>>0)|(bx>>>31>>>0))>>>0)));bz=(((((((y|z)>>>0))&aa)>>>0))|(((y&z)>>>0)))>>>0;ca=((x<<5>>>0)|(x>>>27>>>0))>>>0;cb=((y<<30>>>0)|(y>>>2>>>0))>>>0;cd=(((ca+bz>>>0)+ab>>>0)+(cc=ac&15,((cc<0||cc>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cc]))>>>0)+2400959708>>>0;ce=cd;cf=x;cg=cb;ch=z;ci=aa;x=ce;y=cf;z=cg;aa=ch;ab=ci;ac=ac+(1)>>0;}while(true){if(!(ac<80)){break;}cn=((((((cj=((ac-3>>0))&15,((cj<0||cj>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cj]))^(ck=((ac-8>>0))&15,((ck<0||ck>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ck])))>>>0)^(cl=((ac-14>>0))&15,((cl<0||cl>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cl])))>>>0)^(cm=(ac)&15,((cm<0||cm>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cm])))>>>0;(co=ac&15,((co<0||co>=c.length)?($throwRuntimeError("index out of range"),undefined):c[co]=(((cn<<1>>>0)|(cn>>>31>>>0))>>>0)));cp=(((y^z)>>>0)^aa)>>>0;cq=((x<<5>>>0)|(x>>>27>>>0))>>>0;cr=((y<<30>>>0)|(y>>>2>>>0))>>>0;ct=(((cq+cp>>>0)+ab>>>0)+(cs=ac&15,((cs<0||cs>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cs]))>>>0)+3395469782>>>0;cu=ct;cv=x;cw=cr;cx=z;cy=aa;x=cu;y=cv;z=cw;aa=cx;ab=cy;ac=ac+(1)>>0;}i=i+(x)>>>0;j=j+(y)>>>0;k=k+(z)>>>0;l=l+(aa)>>>0;m=m+(ab)>>>0;b=$subslice(b,64);}cz=i;da=j;db=k;dc=l;dd=m;a.h[0]=cz;a.h[1]=da;a.h[2]=db;a.h[3]=dc;a.h[4]=dd;};O.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([K],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([K],[K],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha1",typ:$funcType([],[L],false)},{prop:"ConstantTimeSum",name:"ConstantTimeSum",pkg:"",typ:$funcType([K],[K],false)},{prop:"constSum",name:"constSum",pkg:"crypto/sha1",typ:$funcType([],[L],false)}];D.init("crypto/sha1",[{prop:"h",name:"h",exported:false,typ:I,tag:""},{prop:"x",name:"x",exported:false,typ:J,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}H=G;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["context"]=(function(){var $pkg={},$init,A,B,C,D,E,H,Z,AA,AB,AH,I,J;A=$packages["errors"];B=$packages["fmt"];C=$packages["reflect"];D=$packages["sync"];E=$packages["time"];H=$pkg.emptyCtx=$newType(4,$kindInt,"context.emptyCtx",true,"context",false,null);Z=$ptrType(H);AA=$ptrType(E.Location);AB=$structType("",[]);AH=$chanType(AB,false,true);$ptrType(H).prototype.Deadline=function(){var $ptr,b,c;b=new E.Time.ptr(new $Int64(0,0),0,AA.nil);c=false;return[b,c];};$ptrType(H).prototype.Done=function(){var $ptr;return $chanNil;};$ptrType(H).prototype.Err=function(){var $ptr;return $ifaceNil;};$ptrType(H).prototype.Value=function(b){var $ptr,b;return $ifaceNil;};$ptrType(H).prototype.String=function(){var $ptr,b,c;b=this;c=b;if(c===(I)){return"context.Background";}else if(c===(J)){return"context.TODO";}return"unknown empty Context";};Z.methods=[{prop:"Deadline",name:"Deadline",pkg:"",typ:$funcType([],[E.Time,$Bool],false)},{prop:"Done",name:"Done",pkg:"",typ:$funcType([],[AH],false)},{prop:"Err",name:"Err",pkg:"",typ:$funcType([],[$error],false)},{prop:"Value",name:"Value",pkg:"",typ:$funcType([$emptyInterface],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Canceled=A.New("context canceled");I=$newDataPointer(0,Z);J=$newDataPointer(0,Z);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["database/sql/driver"]=(function(){var $pkg={},$init,A,B,D,C,E,F,G,AJ,AU,AS,a;A=$packages["context"];B=$packages["errors"];D=$packages["fmt"];C=$packages["reflect"];E=$packages["strconv"];F=$packages["time"];G=$pkg.Value=$newType(8,$kindInterface,"driver.Value",true,"database/sql/driver",true,null);AJ=$pkg.Valuer=$newType(8,$kindInterface,"driver.Valuer",true,"database/sql/driver",true,null);AU=$ptrType(AJ);G.init([]);AJ.init([{prop:"Value",name:"Value",pkg:"",typ:$funcType([],[G,$error],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrSkip=B.New("driver: skip fast-path; continue as if unimplemented");$pkg.ErrBadConn=B.New("driver: bad connection");a=C.TypeOf(AU.nil).Elem();$s=7;case 7:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}AS=a;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["encoding/hex"]=(function(){var $pkg={},$init,A,B,C,D,H,R,S,E,F,G,J,K,L;A=$packages["bytes"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];H=$pkg.InvalidByteError=$newType(1,$kindUint8,"hex.InvalidByteError",true,"encoding/hex",true,null);R=$sliceType($emptyInterface);S=$sliceType($Uint8);F=function(a){var $ptr,a;return $imul(a,2);};$pkg.EncodedLen=F;G=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);(h=$imul(e,2),((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]=(g=f>>>4<<24>>>24,((g<0||g>=E.length)?($throwRuntimeError("index out of range"),undefined):E[g]))));(j=($imul(e,2))+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=(i=(f&15)>>>0,((i<0||i>=E.length)?($throwRuntimeError("index out of range"),undefined):E[i]))));d++;}return $imul(b.$length,2);};$pkg.Encode=G;H.prototype.Error=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;b=C.Sprintf("encoding/hex: invalid byte: %#U",new R([new $Int32((a>>0))]));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:H.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(H).prototype.Error=function(){return new H(this.$get()).Error();};J=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;if((c=b.$length%2,c===c?c:$throwRuntimeError("integer divide by zero"))===1){return[0,$pkg.ErrLength];}d=0;while(true){if(!(d<(e=b.$length/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")))){break;}f=K((g=$imul(d,2),((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])));h=f[0];i=f[1];if(!i){return[0,new H(((j=$imul(d,2),((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))<<24>>>24))];}k=K((l=($imul(d,2))+1>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l])));m=k[0];i=k[1];if(!i){return[0,new H(((n=($imul(d,2))+1>>0,((n<0||n>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+n]))<<24>>>24))];}((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=((((h<<4<<24>>>24))|m)>>>0));d=d+(1)>>0;}return[(o=b.$length/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero")),$ifaceNil];};$pkg.Decode=J;K=function(a){var $ptr,a;if(48<=a&&a<=57){return[a-48<<24>>>24,true];}else if(97<=a&&a<=102){return[(a-97<<24>>>24)+10<<24>>>24,true];}else if(65<=a&&a<=70){return[(a-65<<24>>>24)+10<<24>>>24,true];}return[0,false];};L=function(a){var $ptr,a,b;b=$makeSlice(S,F(a.$length));G(b,a);return $bytesToString(b);};$pkg.EncodeToString=L;H.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}E=$toNativeArray($kindUint8,[48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102]);$pkg.ErrLength=B.New("encoding/hex: odd length hex string");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["internal/nettrace"]=(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["internal/singleflight"]=(function(){var $pkg={},$init,A;A=$packages["sync"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["net"]=(function(){var $pkg={},$init,E,A,C,I,N,L,K,F,G,D,H,M,B,J,AB,AC,AF,CZ,DB,DC,DD,DE,DF,DG,DH,DI,DJ,FV,FW,GD,GQ,GR,GS,HL,JE,JJ,JW,KA,KB,KD,KE,KY,MK,OV,OY,PD,PE,PF,PH,PO,PU,PV,QA,QB,QD,QE,QF,QG,QR,QT,QX,QY,QZ,RA,RB,RC,RD,RL,RO,RR,RS,RU,RV,RX,SK,SN,SS,ST,SU,SV,SY,AD,DK,FA,FQ,FR,FS,FT,FU,FX,GE,GU,GY,GZ,HA,HV,HW,HX,JG,JN,JQ,JR,JT,JU,JX,KI,KM,g,h,i,j,k,l,m,n,o,O,Q,R,S,U,AE,AG,AK,GB,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GT,GV,GW,GX,HB,HC,HD,HE,HF,HG,HH,HI,HJ,HK,ID,IE,JI,KZ,LB,LC,LE,LF,LG,LI,LJ,LL;E=$packages["context"];A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];I=$packages["internal/nettrace"];N=$packages["internal/singleflight"];L=$packages["io"];K=$packages["math/rand"];F=$packages["os"];G=$packages["runtime"];D=$packages["sort"];H=$packages["sync"];M=$packages["sync/atomic"];B=$packages["syscall"];J=$packages["time"];AB=$pkg.policyTableEntry=$newType(0,$kindStruct,"net.policyTableEntry",true,"net",false,function(Prefix_,Precedence_,Label_){this.$val=this;if(arguments.length===0){this.Prefix=PH.nil;this.Precedence=0;this.Label=0;return;}this.Prefix=Prefix_;this.Precedence=Precedence_;this.Label=Label_;});AC=$pkg.policyTable=$newType(12,$kindSlice,"net.policyTable",true,"net",false,null);AF=$pkg.byMaskLength=$newType(12,$kindSlice,"net.byMaskLength",true,"net",false,null);CZ=$pkg.dnsRR_Header=$newType(0,$kindStruct,"net.dnsRR_Header",true,"net",false,function(Name_,Rrtype_,Class_,Ttl_,Rdlength_){this.$val=this;if(arguments.length===0){this.Name="";this.Rrtype=0;this.Class=0;this.Ttl=0;this.Rdlength=0;return;}this.Name=Name_;this.Rrtype=Rrtype_;this.Class=Class_;this.Ttl=Ttl_;this.Rdlength=Rdlength_;});DB=$pkg.dnsRR_CNAME=$newType(0,$kindStruct,"net.dnsRR_CNAME",true,"net",false,function(Hdr_,Cname_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Cname="";return;}this.Hdr=Hdr_;this.Cname=Cname_;});DC=$pkg.dnsRR_MX=$newType(0,$kindStruct,"net.dnsRR_MX",true,"net",false,function(Hdr_,Pref_,Mx_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Pref=0;this.Mx="";return;}this.Hdr=Hdr_;this.Pref=Pref_;this.Mx=Mx_;});DD=$pkg.dnsRR_NS=$newType(0,$kindStruct,"net.dnsRR_NS",true,"net",false,function(Hdr_,Ns_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ns="";return;}this.Hdr=Hdr_;this.Ns=Ns_;});DE=$pkg.dnsRR_PTR=$newType(0,$kindStruct,"net.dnsRR_PTR",true,"net",false,function(Hdr_,Ptr_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ptr="";return;}this.Hdr=Hdr_;this.Ptr=Ptr_;});DF=$pkg.dnsRR_SOA=$newType(0,$kindStruct,"net.dnsRR_SOA",true,"net",false,function(Hdr_,Ns_,Mbox_,Serial_,Refresh_,Retry_,Expire_,Minttl_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ns="";this.Mbox="";this.Serial=0;this.Refresh=0;this.Retry=0;this.Expire=0;this.Minttl=0;return;}this.Hdr=Hdr_;this.Ns=Ns_;this.Mbox=Mbox_;this.Serial=Serial_;this.Refresh=Refresh_;this.Retry=Retry_;this.Expire=Expire_;this.Minttl=Minttl_;});DG=$pkg.dnsRR_TXT=$newType(0,$kindStruct,"net.dnsRR_TXT",true,"net",false,function(Hdr_,Txt_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Txt="";return;}this.Hdr=Hdr_;this.Txt=Txt_;});DH=$pkg.dnsRR_SRV=$newType(0,$kindStruct,"net.dnsRR_SRV",true,"net",false,function(Hdr_,Priority_,Weight_,Port_,Target_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Priority=0;this.Weight=0;this.Port=0;this.Target="";return;}this.Hdr=Hdr_;this.Priority=Priority_;this.Weight=Weight_;this.Port=Port_;this.Target=Target_;});DI=$pkg.dnsRR_A=$newType(0,$kindStruct,"net.dnsRR_A",true,"net",false,function(Hdr_,A_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.A=0;return;}this.Hdr=Hdr_;this.A=A_;});DJ=$pkg.dnsRR_AAAA=$newType(0,$kindStruct,"net.dnsRR_AAAA",true,"net",false,function(Hdr_,AAAA_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.AAAA=PD.zero();return;}this.Hdr=Hdr_;this.AAAA=AAAA_;});FV=$pkg.Interface=$newType(0,$kindStruct,"net.Interface",true,"net",true,function(Index_,MTU_,Name_,HardwareAddr_,Flags_){this.$val=this;if(arguments.length===0){this.Index=0;this.MTU=0;this.Name="";this.HardwareAddr=JE.nil;this.Flags=0;return;}this.Index=Index_;this.MTU=MTU_;this.Name=Name_;this.HardwareAddr=HardwareAddr_;this.Flags=Flags_;});FW=$pkg.Flags=$newType(4,$kindUint,"net.Flags",true,"net",true,null);GD=$pkg.ipv6ZoneCache=$newType(0,$kindStruct,"net.ipv6ZoneCache",true,"net",false,function(RWMutex_,lastFetched_,toIndex_,toName_){this.$val=this;if(arguments.length===0){this.RWMutex=new H.RWMutex.ptr(new H.Mutex.ptr(0,0),0,0,0,0);this.lastFetched=new J.Time.ptr(new $Int64(0,0),0,OV.nil);this.toIndex=false;this.toName=false;return;}this.RWMutex=RWMutex_;this.lastFetched=lastFetched_;this.toIndex=toIndex_;this.toName=toName_;});GQ=$pkg.IP=$newType(12,$kindSlice,"net.IP",true,"net",true,null);GR=$pkg.IPMask=$newType(12,$kindSlice,"net.IPMask",true,"net",true,null);GS=$pkg.IPNet=$newType(0,$kindStruct,"net.IPNet",true,"net",true,function(IP_,Mask_){this.$val=this;if(arguments.length===0){this.IP=GQ.nil;this.Mask=GR.nil;return;}this.IP=IP_;this.Mask=Mask_;});HL=$pkg.IPAddr=$newType(0,$kindStruct,"net.IPAddr",true,"net",true,function(IP_,Zone_){this.$val=this;if(arguments.length===0){this.IP=GQ.nil;this.Zone="";return;}this.IP=IP_;this.Zone=Zone_;});JE=$pkg.HardwareAddr=$newType(12,$kindSlice,"net.HardwareAddr",true,"net",true,null);JJ=$pkg.Addr=$newType(8,$kindInterface,"net.Addr",true,"net",true,null);JW=$pkg.OpError=$newType(0,$kindStruct,"net.OpError",true,"net",true,function(Op_,Net_,Source_,Addr_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Net="";this.Source=$ifaceNil;this.Addr=$ifaceNil;this.Err=$ifaceNil;return;}this.Op=Op_;this.Net=Net_;this.Source=Source_;this.Addr=Addr_;this.Err=Err_;});KA=$pkg.timeout=$newType(8,$kindInterface,"net.timeout",true,"net",false,null);KB=$pkg.temporary=$newType(8,$kindInterface,"net.temporary",true,"net",false,null);KD=$pkg.ParseError=$newType(0,$kindStruct,"net.ParseError",true,"net",true,function(Type_,Text_){this.$val=this;if(arguments.length===0){this.Type="";this.Text="";return;}this.Type=Type_;this.Text=Text_;});KE=$pkg.AddrError=$newType(0,$kindStruct,"net.AddrError",true,"net",true,function(Err_,Addr_){this.$val=this;if(arguments.length===0){this.Err="";this.Addr="";return;}this.Err=Err_;this.Addr=Addr_;});KY=$pkg.file=$newType(0,$kindStruct,"net.file",true,"net",false,function(file_,data_,atEOF_){this.$val=this;if(arguments.length===0){this.file=QT.nil;this.data=PE.nil;this.atEOF=false;return;}this.file=file_;this.data=data_;this.atEOF=atEOF_;});MK=$pkg.sockaddr=$newType(8,$kindInterface,"net.sockaddr",true,"net",false,null);OV=$ptrType(J.Location);OY=$sliceType($String);PD=$arrayType($Uint8,16);PE=$sliceType($Uint8);PF=$structType("",[]);PH=$ptrType(GS);PO=$ptrType(HL);PU=$ptrType(CZ);PV=$ptrType(DB);QA=$ptrType(DI);QB=$ptrType(DJ);QD=$ptrType(DE);QE=$ptrType($Uint32);QF=$ptrType($Uint16);QG=$ptrType($String);QR=$ptrType(F.SyscallError);QT=$ptrType(F.File);QX=$ptrType(KY);QY=$ptrType(FV);QZ=$sliceType(JJ);RA=$sliceType(FV);RB=$ptrType(B.IfInfomsg);RC=$ptrType(B.IfAddrmsg);RD=$arrayType($Uint8,4);RL=$ptrType(DH);RO=$ptrType(DC);RR=$ptrType(DD);RS=$ptrType(DG);RU=$ptrType(JW);RV=$ptrType(KE);RX=$arrayType($Uint8,20);SK=$funcType([$emptyInterface,$String,$String],[$Bool],false);SN=$ptrType(DF);SS=$ptrType(GD);ST=$mapType($String,$Int);SU=$mapType($Int,$String);SV=$ptrType(GQ);SY=$ptrType(KD);O=function(p,q){var $ptr,p,q;return $parseInt(p.indexOf($global.String.fromCharCode(q)))>>0;};Q=function(){var $ptr;};R=function(){var $ptr;return false;};S=function(){var $ptr,p,q,r,s;p=false;q=false;r=false;s=false;p=r;q=s;return[p,q];};U=function(){var $ptr;return 128;};AE=function(){var $ptr,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=D.Sort(D.Reverse($subslice(new AF(AD.$array),AD.$offset,AD.$offset+AD.$length)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Len=function(){var $ptr,p;p=this;return p.$length;};$ptrType(AF).prototype.Len=function(){return this.$get().Len();};AF.prototype.Swap=function(p,q){var $ptr,p,q,r,s,t;r=this;s=$clone(((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]),AB);t=$clone(((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]),AB);AB.copy(((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]),s);AB.copy(((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]),t);};$ptrType(AF).prototype.Swap=function(p,q){return this.$get().Swap(p,q);};AF.prototype.Less=function(p,q){var $ptr,p,q,r,s,t,u,v;r=this;s=((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]).Prefix.Mask.Size();t=s[0];u=((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]).Prefix.Mask.Size();v=u[0];return t<v;};$ptrType(AF).prototype.Less=function(p,q){return this.$get().Less(p,q);};AG=function(p){var $ptr,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=HK(p);r=q[0];s=q[1];t=q[2];if(!($interfaceIsEqual(t,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:u=t.Error();$s=3;case 3:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$panic(new $String(u));case 2:if(!((r.$length===16))){$panic(new $String("unexpected IP length"));}$s=-1;return s;}return;}if($f===undefined){$f={$blk:AG};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Classify=function(p){var $ptr,p,q,r,s,t;q=this;r=q;s=0;while(true){if(!(s<r.$length)){break;}t=$clone(((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]),AB);if(t.Prefix.Contains(p)){return t;}s++;}return new AB.ptr(PH.nil,0,0);};$ptrType(AC).prototype.Classify=function(p){return this.$get().Classify(p);};AK=function(){var $ptr;JG=true;};CZ.ptr.prototype.Header=function(){var $ptr,p;p=this;return p;};CZ.prototype.Header=function(){return this.$val.Header();};CZ.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;v=p((q.$ptr_Name||(q.$ptr_Name=new QG(function(){return this.$target.Name;},function($v){this.$target.Name=$v;},q))),"Name","domain");$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}if(!(v)){u=false;$s=4;continue s;}w=p((q.$ptr_Rrtype||(q.$ptr_Rrtype=new QF(function(){return this.$target.Rrtype;},function($v){this.$target.Rrtype=$v;},q))),"Rrtype","");$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;case 4:if(!(u)){t=false;$s=3;continue s;}x=p((q.$ptr_Class||(q.$ptr_Class=new QF(function(){return this.$target.Class;},function($v){this.$target.Class=$v;},q))),"Class","");$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}t=x;case 3:if(!(t)){s=false;$s=2;continue s;}y=p((q.$ptr_Ttl||(q.$ptr_Ttl=new QE(function(){return this.$target.Ttl;},function($v){this.$target.Ttl=$v;},q))),"Ttl","");$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}s=y;case 2:if(!(s)){r=false;$s=1;continue s;}z=p((q.$ptr_Rdlength||(q.$ptr_Rdlength=new QF(function(){return this.$target.Rdlength;},function($v){this.$target.Rdlength=$v;},q))),"Rdlength","");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}r=z;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:CZ.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CZ.prototype.Walk=function(p){return this.$val.Walk(p);};DB.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DB.prototype.Header=function(){return this.$val.Header();};DB.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Cname||(q.$ptr_Cname=new QG(function(){return this.$target.Cname;},function($v){this.$target.Cname=$v;},q))),"Cname","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DB.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DB.prototype.Walk=function(p){return this.$val.Walk(p);};DC.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DC.prototype.Header=function(){return this.$val.Header();};DC.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;t=q.Hdr.Walk(p);$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}if(!(t)){s=false;$s=2;continue s;}u=p((q.$ptr_Pref||(q.$ptr_Pref=new QF(function(){return this.$target.Pref;},function($v){this.$target.Pref=$v;},q))),"Pref","");$s=4;case 4:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}s=u;case 2:if(!(s)){r=false;$s=1;continue s;}v=p((q.$ptr_Mx||(q.$ptr_Mx=new QG(function(){return this.$target.Mx;},function($v){this.$target.Mx=$v;},q))),"Mx","domain");$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}r=v;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DC.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};DC.prototype.Walk=function(p){return this.$val.Walk(p);};DD.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DD.prototype.Header=function(){return this.$val.Header();};DD.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Ns||(q.$ptr_Ns=new QG(function(){return this.$target.Ns;},function($v){this.$target.Ns=$v;},q))),"Ns","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DD.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DD.prototype.Walk=function(p){return this.$val.Walk(p);};DE.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DE.prototype.Header=function(){return this.$val.Header();};DE.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Ptr||(q.$ptr_Ptr=new QG(function(){return this.$target.Ptr;},function($v){this.$target.Ptr=$v;},q))),"Ptr","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DE.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DE.prototype.Walk=function(p){return this.$val.Walk(p);};DF.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DF.prototype.Header=function(){return this.$val.Header();};DF.ptr.prototype.Walk=function(p){var $ptr,aa,ab,ac,ad,ae,af,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;y=q.Hdr.Walk(p);$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(!(y)){x=false;$s=7;continue s;}z=p((q.$ptr_Ns||(q.$ptr_Ns=new QG(function(){return this.$target.Ns;},function($v){this.$target.Ns=$v;},q))),"Ns","domain");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}x=z;case 7:if(!(x)){w=false;$s=6;continue s;}aa=p((q.$ptr_Mbox||(q.$ptr_Mbox=new QG(function(){return this.$target.Mbox;},function($v){this.$target.Mbox=$v;},q))),"Mbox","domain");$s=10;case 10:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}w=aa;case 6:if(!(w)){v=false;$s=5;continue s;}ab=p((q.$ptr_Serial||(q.$ptr_Serial=new QE(function(){return this.$target.Serial;},function($v){this.$target.Serial=$v;},q))),"Serial","");$s=11;case 11:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}v=ab;case 5:if(!(v)){u=false;$s=4;continue s;}ac=p((q.$ptr_Refresh||(q.$ptr_Refresh=new QE(function(){return this.$target.Refresh;},function($v){this.$target.Refresh=$v;},q))),"Refresh","");$s=12;case 12:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}u=ac;case 4:if(!(u)){t=false;$s=3;continue s;}ad=p((q.$ptr_Retry||(q.$ptr_Retry=new QE(function(){return this.$target.Retry;},function($v){this.$target.Retry=$v;},q))),"Retry","");$s=13;case 13:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}t=ad;case 3:if(!(t)){s=false;$s=2;continue s;}ae=p((q.$ptr_Expire||(q.$ptr_Expire=new QE(function(){return this.$target.Expire;},function($v){this.$target.Expire=$v;},q))),"Expire","");$s=14;case 14:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}s=ae;case 2:if(!(s)){r=false;$s=1;continue s;}af=p((q.$ptr_Minttl||(q.$ptr_Minttl=new QE(function(){return this.$target.Minttl;},function($v){this.$target.Minttl=$v;},q))),"Minttl","");$s=15;case 15:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}r=af;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DF.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};DF.prototype.Walk=function(p){return this.$val.Walk(p);};DG.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DG.prototype.Header=function(){return this.$val.Header();};DG.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;r=q.Hdr.Walk(p);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!r){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:s=0;case 4:if(!(s<q.Hdr.Rdlength)){$s=5;continue;}t=[t];t[0]="";u=p((t.$ptr||(t.$ptr=new QG(function(){return this.$target[0];},function($v){this.$target[0]=$v;},t))),"Txt","");$s=8;case 8:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}if(!u){$s=6;continue;}$s=7;continue;case 6:$s=-1;return false;case 7:if((q.Hdr.Rdlength-s<<16>>>16)<((t[0].length<<16>>>16)+1<<16>>>16)){$s=-1;return false;}s=s+(((t[0].length<<16>>>16)+1<<16>>>16))<<16>>>16;q.Txt=q.Txt+(t[0]);$s=4;continue;case 5:$s=-1;return true;}return;}if($f===undefined){$f={$blk:DG.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};DG.prototype.Walk=function(p){return this.$val.Walk(p);};DH.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DH.prototype.Header=function(){return this.$val.Header();};DH.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;v=q.Hdr.Walk(p);$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}if(!(v)){u=false;$s=4;continue s;}w=p((q.$ptr_Priority||(q.$ptr_Priority=new QF(function(){return this.$target.Priority;},function($v){this.$target.Priority=$v;},q))),"Priority","");$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;case 4:if(!(u)){t=false;$s=3;continue s;}x=p((q.$ptr_Weight||(q.$ptr_Weight=new QF(function(){return this.$target.Weight;},function($v){this.$target.Weight=$v;},q))),"Weight","");$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}t=x;case 3:if(!(t)){s=false;$s=2;continue s;}y=p((q.$ptr_Port||(q.$ptr_Port=new QF(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},q))),"Port","");$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}s=y;case 2:if(!(s)){r=false;$s=1;continue s;}z=p((q.$ptr_Target||(q.$ptr_Target=new QG(function(){return this.$target.Target;},function($v){this.$target.Target=$v;},q))),"Target","domain");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}r=z;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DH.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};DH.prototype.Walk=function(p){return this.$val.Walk(p);};DI.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DI.prototype.Header=function(){return this.$val.Header();};DI.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_A||(q.$ptr_A=new QE(function(){return this.$target.A;},function($v){this.$target.A=$v;},q))),"A","ipv4");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Walk=function(p){return this.$val.Walk(p);};DJ.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DJ.prototype.Header=function(){return this.$val.Header();};DJ.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p(new PE(q.AAAA),"AAAA","ipv6");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DJ.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DJ.prototype.Walk=function(p){return this.$val.Walk(p);};FW.prototype.String=function(){var $ptr,p,q,r,s,t,u,v;p=this.$val;q="";r=FX;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(!((((p&(((v=(t>>>0),v<32?(1<<v):0)>>>0)))>>>0)===0))){if(!(q==="")){q=q+("|");}q=q+(u);}s++;}if(q===""){q="0";}return q;};$ptrType(FW).prototype.String=function(){return new FW(this.$get()).String();};FV.ptr.prototype.Addrs=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===QY.nil){$s=-1;return[QZ.nil,new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,FQ)];}r=GK(p);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){t=new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,t);}$s=-1;return[s,t];}return;}if($f===undefined){$f={$blk:FV.ptr.prototype.Addrs};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};FV.prototype.Addrs=function(){return this.$val.Addrs();};FV.ptr.prototype.MulticastAddrs=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===QY.nil){$s=-1;return[QZ.nil,new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,FQ)];}r=GN(p);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){t=new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,t);}$s=-1;return[s,t];}return;}if($f===undefined){$f={$blk:FV.ptr.prototype.MulticastAddrs};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};FV.prototype.MulticastAddrs=function(){return this.$val.MulticastAddrs();};GB=function(p,q){var $ptr,p,q,r,s,t;r=p;s=0;while(true){if(!(s<r.$length)){break;}t=$clone(((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]),FV);if(q===t.Index){return[t,$ifaceNil];}s++;}return[QY.nil,FT];};GH=function(p){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=[q];s=B.NetlinkRIB(18,0);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("netlinkrib",u)];}v=B.ParseNetlinkMessage(t);w=v[0];u=v[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("parsenetlinkmessage",u)];}x=RA.nil;y=w;z=0;loop:while(true){if(!(z<y.$length)){break;}q[0]=$clone(((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z]),B.NetlinkMessage);aa=q[0].Header.Type;if(aa===(3)){break loop;}else if(aa===(16)){ab=$pointerOfStructConversion($sliceToArray(q[0].Data),RB);if((p===0)||(p===(ab.Index>>0))){ac=B.ParseNetlinkRouteAttr(q[0]);ad=ac[0];ae=ac[1];if(!($interfaceIsEqual(ae,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("parsenetlinkrouteattr",ae)];}x=$append(x,GI(ab,ad));if(p===(ab.Index>>0)){break loop;}}}z++;}$s=-1;return[x,$ifaceNil];}return;}if($f===undefined){$f={$blk:GH};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};GI=function(p,q){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z;r=new FV.ptr((p.Index>>0),0,"",JE.nil,GJ(p.Flags));s=q;t=0;while(true){if(!(t<s.$length)){break;}u=$clone(((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]),B.NetlinkRouteAttr);v=u.Attr.Type;if(v===(1)){w=u.Value.$length;if(w===(4)){x=p.Type;if((x===(768))||(x===(778))||(x===(776))){t++;continue;}}else if(w===(16)){y=p.Type;if((y===(769))||(y===(823))){t++;continue;}}z=false;aa=u.Value;ab=0;while(true){if(!(ab<aa.$length)){break;}ac=((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]);if(!((ac===0))){z=true;break;}ab++;}if(z){r.HardwareAddr=(ad=u.Value,$subslice(new JE(ad.$array),ad.$offset,ad.$offset+ad.$length));}}else if(v===(3)){r.Name=$bytesToString($subslice(u.Value,0,(u.Value.$length-1>>0)));}else if(v===(4)){r.MTU=((ae=$subslice(u.Value,0,4),(0>=ae.$length?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+0]))>>0);}t++;}return r;};GJ=function(p){var $ptr,p,q;q=0;if(!((((p&1)>>>0)===0))){q=(q|(1))>>>0;}if(!((((p&2)>>>0)===0))){q=(q|(2))>>>0;}if(!((((p&8)>>>0)===0))){q=(q|(4))>>>0;}if(!((((p&16)>>>0)===0))){q=(q|(8))>>>0;}if(!((((p&4096)>>>0)===0))){q=(q|(16))>>>0;}return q;};GK=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:r=B.NetlinkRIB(22,0);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,F.NewSyscallError("netlinkrib",t)];}u=B.ParseNetlinkMessage(s);v=u[0];t=u[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,F.NewSyscallError("parsenetlinkmessage",t)];}w=RA.nil;if(p===QY.nil){$s=2;continue;}$s=3;continue;case 2:x=$ifaceNil;z=GH(0);$s=4;case 4:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;w=y[0];x=y[1];if(!($interfaceIsEqual(x,$ifaceNil))){$s=-1;return[QZ.nil,x];}case 3:aa=GL(w,p,v);ab=aa[0];t=aa[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,t];}$s=-1;return[ab,$ifaceNil];}return;}if($f===undefined){$f={$blk:GK};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};GL=function(p,q,r){var $ptr,aa,ab,ac,ad,p,q,r,s,t,u,v,w,x,y,z;s=QZ.nil;t=r;u=0;loop:while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),B.NetlinkMessage);w=v.Header.Type;if(w===(3)){break loop;}else if(w===(20)){x=$pointerOfStructConversion($sliceToArray(v.Data),RC);if(!((p.$length===0))||(q.Index===(x.Index>>0))){if(!((p.$length===0))){y=$ifaceNil;z=GB(p,(x.Index>>0));q=z[0];y=z[1];if(!($interfaceIsEqual(y,$ifaceNil))){return[QZ.nil,y];}}aa=B.ParseNetlinkRouteAttr(v);ab=aa[0];ac=aa[1];if(!($interfaceIsEqual(ac,$ifaceNil))){return[QZ.nil,F.NewSyscallError("parsenetlinkrouteattr",ac)];}ad=GM(q,x,ab);if(!($interfaceIsEqual(ad,$ifaceNil))){s=$append(s,ad);}}}u++;}return[s,$ifaceNil];};GM=function(p,q,r){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z;s=false;t=r;u=0;while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),B.NetlinkRouteAttr);if(v.Attr.Type===2){s=true;break;}u++;}w=r;x=0;while(true){if(!(x<w.$length)){break;}y=$clone(((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]),B.NetlinkRouteAttr);if(s&&(y.Attr.Type===1)){x++;continue;}z=q.Family;if(z===(2)){return new GS.ptr(GT((aa=y.Value,(0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])),(ab=y.Value,(1>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+1])),(ac=y.Value,(2>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+2])),(ad=y.Value,(3>=ad.$length?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+3]))),GW((q.Prefixlen>>0),32));}else if(z===(10)){ae=new GS.ptr($makeSlice(GQ,16),GW((q.Prefixlen>>0),128));$copySlice(ae.IP,y.Value);return ae;}x++;}return $ifaceNil;};GN=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=GO("/proc/net/igmp",p);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=GP("/proc/net/igmp6",p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;$s=-1;return[$appendSlice(r,t),$ifaceNil];}return;}if($f===undefined){$f={$blk:GN};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};GO=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);r=KZ(p);s=r[0];t=r[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return QZ.nil;}$deferred.push([$methodVal(s,"close"),[]]);u=QZ.nil;v="";w=s.readLine();$s=1;case 1:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;x=$makeSlice(PE,4);z=s.readLine();$s=2;case 2:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];case 3:if(!(ab)){$s=4;continue;}ac=LC(aa," :\r\t\n");if(ac.$length<4){$s=5;continue;}$s=6;continue;case 5:ae=s.readLine();$s=7;case 7:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;aa=ad[0];ab=ad[1];$s=3;continue;case 6:if(!((aa.charCodeAt(0)===32))&&!((aa.charCodeAt(0)===9))){v=(1>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+1]);}else if(((0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]).length===8)){if(q===QY.nil||v===q.Name){af=0;while(true){if(!((af+1>>0)<(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]).length)){break;}ag=LG($substring((0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]),af,(af+2>>0)),0);(ah=(ai=af/2,(ai===ai&&ai!==1/0&&ai!==-1/0)?ai>>0:$throwRuntimeError("integer divide by zero")),((ah<0||ah>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+ah]=ag[0]));af=af+(2)>>0;}ak=(aj=$subslice(x,0,4),(0>=aj.$length?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+0]));al=new HL.ptr(GT(((ak>>>24>>>0)<<24>>>24),((ak>>>16>>>0)<<24>>>24),((ak>>>8>>>0)<<24>>>24),(ak<<24>>>24)),"");u=$append(u,al);}}an=s.readLine();$s=8;case 8:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;aa=am[0];ab=am[1];$s=3;continue;case 4:$s=-1;return u;}return;}}catch(err){$err=err;$s=-1;return QZ.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:GO};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};GP=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);r=KZ(p);s=r[0];t=r[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return QZ.nil;}$deferred.push([$methodVal(s,"close"),[]]);u=QZ.nil;v=$makeSlice(PE,16);x=s.readLine();$s=1;case 1:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];z=w[1];case 2:if(!(z)){$s=3;continue;}aa=LC(y," \r\t\n");if(aa.$length<6){$s=4;continue;}$s=5;continue;case 4:ac=s.readLine();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;y=ab[0];z=ab[1];$s=2;continue;case 5:if(q===QY.nil||(1>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+1])===q.Name){ad=0;while(true){if(!((ad+1>>0)<(2>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+2]).length)){break;}ae=LG($substring((2>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+2]),ad,(ad+2>>0)),0);(af=(ag=ad/2,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero")),((af<0||af>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+af]=ae[0]));ad=ad+(2)>>0;}ah=new HL.ptr(new GQ([(0>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+0]),(1>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+1]),(2>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+2]),(3>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+3]),(4>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+4]),(5>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+5]),(6>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+6]),(7>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+7]),(8>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+8]),(9>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+9]),(10>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+10]),(11>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+11]),(12>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+12]),(13>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+13]),(14>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+14]),(15>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+15])]),"");u=$append(u,ah);}aj=s.readLine();$s=7;case 7:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;y=ai[0];z=ai[1];$s=2;continue;case 3:$s=-1;return u;}return;}}catch(err){$err=err;$s=-1;return QZ.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:GP};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};GT=function(p,q,r,s){var $ptr,p,q,r,s,t;t=$makeSlice(GQ,16);$copySlice(t,GU);(12>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+12]=p);(13>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+13]=q);(14>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+14]=r);(15>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+15]=s);return t;};$pkg.IPv4=GT;GV=function(p,q,r,s){var $ptr,p,q,r,s,t;t=$makeSlice(GR,4);(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]=p);(1>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+1]=q);(2>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+2]=r);(3>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+3]=s);return t;};$pkg.IPv4Mask=GV;GW=function(p,q){var $ptr,p,q,r,s,t,u,v,w;if(!((q===32))&&!((q===128))){return GR.nil;}if(p<0||p>q){return GR.nil;}s=(r=q/8,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"));t=$makeSlice(GR,s);u=(p>>>0);v=0;while(true){if(!(v<s)){break;}if(u>=8){((v<0||v>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+v]=255);u=u-(8)>>>0;v=v+(1)>>0;continue;}((v<0||v>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+v]=(~((w=u,w<32?(255>>>w):0)<<24>>>24)<<24>>>24));u=0;v=v+(1)>>0;}return t;};$pkg.CIDRMask=GW;GQ.prototype.IsUnspecified=function(){var $ptr,p;p=this;return p.Equal($pkg.IPv4zero)||p.Equal($pkg.IPv6unspecified);};$ptrType(GQ).prototype.IsUnspecified=function(){return this.$get().IsUnspecified();};GQ.prototype.IsLoopback=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===127;}return p.Equal($pkg.IPv6loopback);};$ptrType(GQ).prototype.IsLoopback=function(){return this.$get().IsLoopback();};GQ.prototype.IsMulticast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return(((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])&240)>>>0)===224;}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255);};$ptrType(GQ).prototype.IsMulticast=function(){return this.$get().IsMulticast();};GQ.prototype.IsInterfaceLocalMulticast=function(){var $ptr,p;p=this;return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&15)>>>0)===1);};$ptrType(GQ).prototype.IsInterfaceLocalMulticast=function(){return this.$get().IsInterfaceLocalMulticast();};GQ.prototype.IsLinkLocalMulticast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===224)&&((1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])===0)&&((2>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+2])===0);}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&15)>>>0)===2);};$ptrType(GQ).prototype.IsLinkLocalMulticast=function(){return this.$get().IsLinkLocalMulticast();};GQ.prototype.IsLinkLocalUnicast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===169)&&((1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])===254);}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===254)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&192)>>>0)===128);};$ptrType(GQ).prototype.IsLinkLocalUnicast=function(){return this.$get().IsLinkLocalUnicast();};GQ.prototype.IsGlobalUnicast=function(){var $ptr,p;p=this;return((p.$length===4)||(p.$length===16))&&!p.Equal($pkg.IPv4bcast)&&!p.IsUnspecified()&&!p.IsLoopback()&&!p.IsMulticast()&&!p.IsLinkLocalUnicast();};$ptrType(GQ).prototype.IsGlobalUnicast=function(){return this.$get().IsGlobalUnicast();};GX=function(p){var $ptr,p,q;q=0;while(true){if(!(q<p.$length)){break;}if(!((((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q])===0))){return false;}q=q+(1)>>0;}return true;};GQ.prototype.To4=function(){var $ptr,p;p=this;if(p.$length===4){return p;}if((p.$length===16)&&GX($subslice(p,0,10))&&((10>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+10])===255)&&((11>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+11])===255)){return $subslice(p,12,16);}return GQ.nil;};$ptrType(GQ).prototype.To4=function(){return this.$get().To4();};GQ.prototype.To16=function(){var $ptr,p;p=this;if(p.$length===4){return GT((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0]),(1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1]),(2>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+2]),(3>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+3]));}if(p.$length===16){return p;}return GQ.nil;};$ptrType(GQ).prototype.To16=function(){return this.$get().To16();};GQ.prototype.DefaultMask=function(){var $ptr,p,q;p=this;p=p.To4();if(p===GQ.nil){return GR.nil;}q=true;if(q===((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])<128)){return GY;}else if(q===((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])<192)){return GZ;}else{return HA;}};$ptrType(GQ).prototype.DefaultMask=function(){return this.$get().DefaultMask();};HB=function(p){var $ptr,p,q,r,s;q=p;r=0;while(true){if(!(r<q.$length)){break;}s=((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]);if(!((s===255))){return false;}r++;}return true;};GQ.prototype.Mask=function(p){var $ptr,p,q,r,s,t,u,v;q=this;if((p.$length===16)&&(q.$length===4)&&HB((r=$subslice(p,0,12),$subslice(new PE(r.$array),r.$offset,r.$offset+r.$length)))){p=$subslice(p,12);}if((p.$length===4)&&(q.$length===16)&&HE((s=$subslice(q,0,12),$subslice(new PE(s.$array),s.$offset,s.$offset+s.$length)),GU)){q=$subslice(q,12);}t=q.$length;if(!((t===p.$length))){return GQ.nil;}u=$makeSlice(GQ,t);v=0;while(true){if(!(v<t)){break;}((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]=((((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])&((v<0||v>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+v]))>>>0));v=v+(1)>>0;}return u;};$ptrType(GQ).prototype.Mask=function(p){return this.$get().Mask(p);};GQ.prototype.String=function(){var $ptr,p,q,r,s,t,u,v,w,x,y,z;p=this;q=p;if(p.$length===0){return"<nil>";}r=q.To4();if(r.$length===4){return LI(((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])>>>0))+"."+LI(((1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1])>>>0))+"."+LI(((2>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+2])>>>0))+"."+LI(((3>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+3])>>>0));}if(!((q.$length===16))){return"?"+HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}s=-1;t=-1;u=0;while(true){if(!(u<16)){break;}v=u;while(true){if(!(v<16&&(((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])===0)&&((w=v+1>>0,((w<0||w>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+w]))===0))){break;}v=v+(2)>>0;}if(v>u&&(v-u>>0)>(t-s>>0)){s=u;t=v;u=v;}u=u+(2)>>0;}if((t-s>>0)<=2){s=-1;t=-1;}x=$makeSlice(PE,0,39);y=0;while(true){if(!(y<16)){break;}if(y===s){x=$append(x,58,58);y=t;if(y>=16){break;}}else if(y>0){x=$append(x,58);}x=LJ(x,((((((y<0||y>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+y])>>>0)<<8>>>0))|((z=y+1>>0,((z<0||z>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+z]))>>>0))>>>0);y=y+(2)>>0;}return $bytesToString(x);};$ptrType(GQ).prototype.String=function(){return this.$get().String();};HC=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y;q=$makeSlice(PE,($imul(p.$length,2)));r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);v="0123456789abcdef".charCodeAt((u>>>4<<24>>>24));w="0123456789abcdef".charCodeAt(((u&15)>>>0));(x=$imul(t,2),((x<0||x>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+x]=v));(y=($imul(t,2))+1>>0,((y<0||y>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+y]=w));s++;}return $bytesToString(q);};HD=function(p){var $ptr,p;if(p.$length===0){return"";}return p.String();};GQ.prototype.MarshalText=function(){var $ptr,p;p=this;if(p.$length===0){return[new PE($stringToBytes("")),$ifaceNil];}if(!((p.$length===4))&&!((p.$length===16))){return[PE.nil,new KE.ptr("invalid IP address",HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length)))];}return[new PE($stringToBytes(p.String())),$ifaceNil];};$ptrType(GQ).prototype.MarshalText=function(){return this.$get().MarshalText();};$ptrType(GQ).prototype.UnmarshalText=function(p){var $ptr,p,q,r,s;q=this;if(p.$length===0){q.$set(GQ.nil);return $ifaceNil;}r=$bytesToString(p);s=HJ(r);if(s===GQ.nil){return new KD.ptr("IP address",r);}q.$set(s);return $ifaceNil;};GQ.prototype.Equal=function(p){var $ptr,p,q,r,s,t,u;q=this;if(q.$length===p.$length){return HE($subslice(new PE(q.$array),q.$offset,q.$offset+q.$length),$subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}if((q.$length===4)&&(p.$length===16)){return HE((r=$subslice(p,0,12),$subslice(new PE(r.$array),r.$offset,r.$offset+r.$length)),GU)&&HE($subslice(new PE(q.$array),q.$offset,q.$offset+q.$length),(s=$subslice(p,12),$subslice(new PE(s.$array),s.$offset,s.$offset+s.$length)));}if((q.$length===16)&&(p.$length===4)){return HE((t=$subslice(q,0,12),$subslice(new PE(t.$array),t.$offset,t.$offset+t.$length)),GU)&&HE((u=$subslice(q,12),$subslice(new PE(u.$array),u.$offset,u.$offset+u.$length)),$subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}return false;};$ptrType(GQ).prototype.Equal=function(p){return this.$get().Equal(p);};HE=function(p,q){var $ptr,p,q,r,s,t,u;if(!((p.$length===q.$length))){return false;}r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(!((((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t])===u))){return false;}s++;}return true;};HF=function(p){var $ptr,p,q,r,s,t,u,v;q=0;r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(u===255){q=q+(8)>>0;s++;continue;}while(true){if(!(!((((u&128)>>>0)===0)))){break;}q=q+(1)>>0;u=(v=(1),v<32?(u<<v):0)<<24>>>24;}if(!((u===0))){return-1;}t=t+(1)>>0;while(true){if(!(t<p.$length)){break;}if(!((((t<0||t>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+t])===0))){return-1;}t=t+(1)>>0;}break;}return q;};GR.prototype.Size=function(){var $ptr,p,q,r,s,t,u,v;p=0;q=0;r=this;s=HF(r);t=$imul(r.$length,8);p=s;q=t;if(p===-1){u=0;v=0;p=u;q=v;return[p,q];}return[p,q];};$ptrType(GR).prototype.Size=function(){return this.$get().Size();};GR.prototype.String=function(){var $ptr,p;p=this;if(p.$length===0){return"<nil>";}return HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));};$ptrType(GR).prototype.String=function(){return this.$get().String();};HG=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y;q=GQ.nil;r=GR.nil;q=p.IP.To4();if(q===GQ.nil){q=p.IP;if(!((q.$length===16))){s=GQ.nil;t=GR.nil;q=s;r=t;return[q,r];}}r=p.Mask;u=r.$length;if(u===(4)){if(!((q.$length===4))){v=GQ.nil;w=GR.nil;q=v;r=w;return[q,r];}}else if(u===(16)){if(q.$length===4){r=$subslice(r,12);}}else{x=GQ.nil;y=GR.nil;q=x;r=y;return[q,r];}return[q,r];};GS.ptr.prototype.Contains=function(p){var $ptr,p,q,r,s,t,u,v,w;q=this;r=HG(q);s=r[0];t=r[1];u=p.To4();if(!(u===GQ.nil)){p=u;}v=p.$length;if(!((v===s.$length))){return false;}w=0;while(true){if(!(w<v)){break;}if(!((((((w<0||w>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+w])&((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]))>>>0)===((((w<0||w>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+w])&((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]))>>>0)))){return false;}w=w+(1)>>0;}return true;};GS.prototype.Contains=function(p){return this.$val.Contains(p);};GS.ptr.prototype.Network=function(){var $ptr,p;p=this;return"ip+net";};GS.prototype.Network=function(){return this.$val.Network();};GS.ptr.prototype.String=function(){var $ptr,p,q,r,s,t;p=this;q=HG(p);r=q[0];s=q[1];if(r===GQ.nil||s===GR.nil){return"<nil>";}t=HF(s);if(t===-1){return r.String()+"/"+s.String();}return r.String()+"/"+LI((t>>>0));};GS.prototype.String=function(){return this.$val.String();};HH=function(p){var $ptr,p,q,r,s,t,u,v;q=RD.zero();r=0;while(true){if(!(r<4)){break;}if(p.length===0){return GQ.nil;}if(r>0){if(!((p.charCodeAt(0)===46))){return GQ.nil;}p=$substring(p,1);}s=LE(p);t=s[0];u=s[1];v=s[2];if(!v||t>255){return GQ.nil;}p=$substring(p,u);((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(t<<24>>>24));r=r+(1)>>0;}if(!((p.length===0))){return GQ.nil;}return GT(q[0],q[1],q[2],q[3]);};HI=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,p,q,r,s,t,u,v,w,x,y,z;r=GQ.nil;s="";r=$makeSlice(GQ,16);t=-1;if(q){u=IE(p);p=u[0];s=u[1];}if(p.length>=2&&(p.charCodeAt(0)===58)&&(p.charCodeAt(1)===58)){t=0;p=$substring(p,2);if(p.length===0){v=r;w=s;r=v;s=w;return[r,s];}}x=0;while(true){if(!(x<16)){break;}y=LF(p);z=y[0];aa=y[1];ab=y[2];if(!ab||z>65535){ac=GQ.nil;ad=s;r=ac;s=ad;return[r,s];}if(aa<p.length&&(p.charCodeAt(aa)===46)){if(t<0&&!((x===12))){ae=GQ.nil;af=s;r=ae;s=af;return[r,s];}if((x+4>>0)>16){ag=GQ.nil;ah=s;r=ag;s=ah;return[r,s];}ai=HH(p);if(ai===GQ.nil){aj=GQ.nil;ak=s;r=aj;s=ak;return[r,s];}((x<0||x>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+x]=(12>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+12]));(al=x+1>>0,((al<0||al>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+al]=(13>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+13])));(am=x+2>>0,((am<0||am>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+am]=(14>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+14])));(an=x+3>>0,((an<0||an>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+an]=(15>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+15])));p="";x=x+(4)>>0;break;}((x<0||x>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+x]=((z>>8>>0)<<24>>>24));(ao=x+1>>0,((ao<0||ao>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ao]=(z<<24>>>24)));x=x+(2)>>0;p=$substring(p,aa);if(p.length===0){break;}if(!((p.charCodeAt(0)===58))||(p.length===1)){ap=GQ.nil;aq=s;r=ap;s=aq;return[r,s];}p=$substring(p,1);if(p.charCodeAt(0)===58){if(t>=0){ar=GQ.nil;as=s;r=ar;s=as;return[r,s];}t=x;p=$substring(p,1);if(p.length===0){break;}}}if(!((p.length===0))){at=GQ.nil;au=s;r=at;s=au;return[r,s];}if(x<16){if(t<0){av=GQ.nil;aw=s;r=av;s=aw;return[r,s];}ax=16-x>>0;ay=x-1>>0;while(true){if(!(ay>=t)){break;}(az=ay+ax>>0,((az<0||az>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+az]=((ay<0||ay>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ay])));ay=ay-(1)>>0;}ba=(t+ax>>0)-1>>0;while(true){if(!(ba>=t)){break;}((ba<0||ba>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ba]=0);ba=ba-(1)>>0;}}else if(t>=0){bb=GQ.nil;bc=s;r=bb;s=bc;return[r,s];}bd=r;be=s;r=bd;s=be;return[r,s];};HJ=function(p){var $ptr,p,q,r,s,t;q=0;while(true){if(!(q<p.length)){break;}r=p.charCodeAt(q);if(r===(46)){return HH(p);}else if(r===(58)){s=HI(p,false);t=s[0];return t;}q=q+(1)>>0;}return GQ.nil;};$pkg.ParseIP=HJ;HK=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=O(p,47);if(q<0){return[GQ.nil,PH.nil,new KD.ptr("CIDR address",p)];}r=$substring(p,0,q);s=$substring(p,(q+1>>0));t=r;u=s;v=4;w=HH(t);if(w===GQ.nil){v=16;x=HI(t,false);w=x[0];}y=LE(u);z=y[0];q=y[1];aa=y[2];if(w===GQ.nil||!aa||!((q===u.length))||z<0||z>($imul(8,v))){return[GQ.nil,PH.nil,new KD.ptr("CIDR address",p)];}ab=GW(z,$imul(8,v));return[w,new GS.ptr(w.Mask(ab),ab),$ifaceNil];};$pkg.ParseCIDR=HK;HL.ptr.prototype.Network=function(){var $ptr,p;p=this;return"ip";};HL.prototype.Network=function(){return this.$val.Network();};HL.ptr.prototype.String=function(){var $ptr,p,q;p=this;if(p===PO.nil){return"<nil>";}q=HD(p.IP);if(!(p.Zone==="")){return q+"%"+p.Zone;}return q;};HL.prototype.String=function(){return this.$val.String();};ID=function(p){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q="";r="";s=$ifaceNil;t=(function(t,u){var $ptr,aa,t,u,v,w,x,y,z;v="";w="";x=$ifaceNil;y="";z="";aa=new KE.ptr(u,t);v=y;w=z;x=aa;return[v,w,x];});u=0;v=0;w=u;x=v;y=LL(p,58);if(y<0){$s=1;continue;}$s=2;continue;case 1:aa=t(p,"missing port in address");$s=3;case 3:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;q=z[0];r=z[1];s=z[2];$s=-1;return[q,r,s];case 2:if(p.charCodeAt(0)===91){$s=4;continue;}$s=5;continue;case 4:ab=O(p,93);if(ab<0){$s=7;continue;}$s=8;continue;case 7:ad=t(p,"missing ']' in address");$s=9;case 9:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;q=ac[0];r=ac[1];s=ac[2];$s=-1;return[q,r,s];case 8:ae=ab+1>>0;if(ae===(p.length)){$s=11;continue;}if(ae===(y)){$s=12;continue;}$s=13;continue;case 11:ag=t(p,"missing port in address");$s=15;case 15:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;q=af[0];r=af[1];s=af[2];$s=-1;return[q,r,s];case 12:$s=14;continue;case 13:if(p.charCodeAt((ab+1>>0))===58){$s=16;continue;}$s=17;continue;case 16:ai=t(p,"too many colons in address");$s=18;case 18:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;q=ah[0];r=ah[1];s=ah[2];$s=-1;return[q,r,s];case 17:ak=t(p,"missing port in address");$s=19;case 19:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;q=aj[0];r=aj[1];s=aj[2];$s=-1;return[q,r,s];case 14:case 10:q=$substring(p,1,ab);al=1;am=ab+1>>0;w=al;x=am;$s=6;continue;case 5:q=$substring(p,0,y);if(O(q,58)>=0){$s=20;continue;}$s=21;continue;case 20:ao=t(p,"too many colons in address");$s=22;case 22:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;q=an[0];r=an[1];s=an[2];$s=-1;return[q,r,s];case 21:if(O(q,37)>=0){$s=23;continue;}$s=24;continue;case 23:aq=t(p,"missing brackets in address");$s=25;case 25:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;q=ap[0];r=ap[1];s=ap[2];$s=-1;return[q,r,s];case 24:case 6:if(O($substring(p,w),91)>=0){$s=26;continue;}$s=27;continue;case 26:as=t(p,"unexpected '[' in address");$s=28;case 28:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;q=ar[0];r=ar[1];s=ar[2];$s=-1;return[q,r,s];case 27:if(O($substring(p,x),93)>=0){$s=29;continue;}$s=30;continue;case 29:au=t(p,"unexpected ']' in address");$s=31;case 31:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;q=at[0];r=at[1];s=at[2];$s=-1;return[q,r,s];case 30:r=$substring(p,(y+1>>0));av=q;aw=r;ax=$ifaceNil;q=av;r=aw;s=ax;$s=-1;return[q,r,s];}return;}if($f===undefined){$f={$blk:ID};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SplitHostPort=ID;IE=function(p){var $ptr,p,q,r,s,t,u;q="";r="";s=LL(p,37);if(s>0){t=$substring(p,0,s);u=$substring(p,(s+1>>0));q=t;r=u;}else{q=p;}return[q,r];};JE.prototype.String=function(){var $ptr,p,q,r,s,t,u;p=this;if(p.$length===0){return"";}q=$makeSlice(PE,0,(($imul(p.$length,3))-1>>0));r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(t>0){q=$append(q,58);}q=$append(q,"0123456789abcdef".charCodeAt((u>>>4<<24>>>24)));q=$append(q,"0123456789abcdef".charCodeAt(((u&15)>>>0)));s++;}return $bytesToString(q);};$ptrType(JE).prototype.String=function(){return this.$get().String();};JI=function(){var $ptr,p;Q();HV=R();p=S();HW=p[0];HX=p[1];};JW.ptr.prototype.Error=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===RU.nil){$s=-1;return"<nil>";}q=p.Op;if(!(p.Net==="")){q=q+(" "+p.Net);}if(!($interfaceIsEqual(p.Source,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:r=p.Source.String();$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=q+(" "+r);case 2:if(!($interfaceIsEqual(p.Addr,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(!($interfaceIsEqual(p.Source,$ifaceNil))){q=q+("->");}else{q=q+(" ");}s=p.Addr.String();$s=6;case 6:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=q+(s);case 5:t=p.Err.Error();$s=7;case 7:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}q=q+(": "+t);$s=-1;return q;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Error};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Error=function(){return this.$val.Error();};JW.ptr.prototype.Timeout=function(){var $ptr,aa,ab,ac,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=$assertType(p.Err,QR,true);r=q[0];s=q[1];if(s){$s=1;continue;}$s=2;continue;case 1:t=$assertType(r.Err,KA,true);u=t[0];v=t[1];if(!(v)){w=false;$s=3;continue s;}x=u.Timeout();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;case 3:$s=-1;return w;case 2:y=$assertType(p.Err,KA,true);z=y[0];aa=y[1];if(!(aa)){ab=false;$s=5;continue s;}ac=z.Timeout();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;case 5:$s=-1;return ab;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Timeout};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Timeout=function(){return this.$val.Timeout();};JW.ptr.prototype.Temporary=function(){var $ptr,aa,ab,ac,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=$assertType(p.Err,QR,true);r=q[0];s=q[1];if(s){$s=1;continue;}$s=2;continue;case 1:t=$assertType(r.Err,KB,true);u=t[0];v=t[1];if(!(v)){w=false;$s=3;continue s;}x=u.Temporary();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;case 3:$s=-1;return w;case 2:y=$assertType(p.Err,KB,true);z=y[0];aa=y[1];if(!(aa)){ab=false;$s=5;continue s;}ac=z.Temporary();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;case 5:$s=-1;return ab;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Temporary};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Temporary=function(){return this.$val.Temporary();};KD.ptr.prototype.Error=function(){var $ptr,p;p=this;return"invalid "+p.Type+": "+p.Text;};KD.prototype.Error=function(){return this.$val.Error();};KE.ptr.prototype.Error=function(){var $ptr,p,q;p=this;if(p===RV.nil){return"<nil>";}q=p.Err;if(!(p.Addr==="")){q="address "+p.Addr+": "+q;}return q;};KE.prototype.Error=function(){return this.$val.Error();};KE.ptr.prototype.Timeout=function(){var $ptr,p;p=this;return false;};KE.prototype.Timeout=function(){return this.$val.Timeout();};KE.ptr.prototype.Temporary=function(){var $ptr,p;p=this;return false;};KE.prototype.Temporary=function(){return this.$val.Temporary();};KY.ptr.prototype.close=function(){var $ptr,p;p=this;p.file.Close();};KY.prototype.close=function(){return this.$val.close();};KY.ptr.prototype.getLineFromData=function(){var $ptr,p,q,r,s,t,u;p="";q=false;r=this;s=r.data;t=0;t=0;while(true){if(!(t<s.$length)){break;}if(((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t])===10){p=$bytesToString($subslice(s,0,t));q=true;t=t+(1)>>0;u=s.$length-t>>0;$copySlice($subslice(s,0),$subslice(s,t));r.data=$subslice(s,0,u);return[p,q];}t=t+(1)>>0;}if(r.atEOF&&r.data.$length>0){p=$bytesToString(s);r.data=$subslice(r.data,0,0);q=true;}return[p,q];};KY.prototype.getLineFromData=function(){return this.$val.getLineFromData();};KY.ptr.prototype.readLine=function(){var $ptr,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p="";q=false;r=this;s=r.getLineFromData();p=s[0];q=s[1];if(q){$s=-1;return[p,q];}if(r.data.$length<r.data.$capacity){$s=1;continue;}$s=2;continue;case 1:t=r.data.$length;v=L.ReadFull(r.file,$subslice(r.data,t,r.data.$capacity));$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(w>=0){r.data=$subslice(r.data,0,(t+w>>0));}if($interfaceIsEqual(x,L.EOF)||$interfaceIsEqual(x,L.ErrUnexpectedEOF)){r.atEOF=true;}case 2:y=r.getLineFromData();p=y[0];q=y[1];$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:KY.ptr.prototype.readLine};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};KY.prototype.readLine=function(){return this.$val.readLine();};KZ=function(p){var $ptr,p,q,r,s;q=F.Open(p);r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){return[QX.nil,s];}return[new KY.ptr(r,$makeSlice(PE,0,F.Getpagesize()),false),$ifaceNil];};LB=function(p,q){var $ptr,p,q,r,s;r=0;s=0;while(true){if(!(s<p.length)){break;}if(O(q,p.charCodeAt(s))>=0){r=r+(1)>>0;}s=s+(1)>>0;}return r;};LC=function(p,q){var $ptr,p,q,r,s,t,u;r=$makeSlice(OY,(1+LB(p,q)>>0));s=0;t=0;u=0;while(true){if(!(u<p.length)){break;}if(O(q,p.charCodeAt(u))>=0){if(t<u){((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]=$substring(p,t,u));s=s+(1)>>0;}t=u+1>>0;}u=u+(1)>>0;}if(t<p.length){((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]=$substring(p,t));s=s+(1)>>0;}return $subslice(r,0,s);};LE=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=0;r=0;s=false;q=0;r=0;while(true){if(!(r<p.length&&48<=p.charCodeAt(r)&&p.charCodeAt(r)<=57)){break;}q=($imul(q,10))+((p.charCodeAt(r)-48<<24>>>24)>>0)>>0;if(q>=16777215){t=16777215;u=r;v=false;q=t;r=u;s=v;return[q,r,s];}r=r+(1)>>0;}if(r===0){w=0;x=0;y=false;q=w;r=x;s=y;return[q,r,s];}z=q;aa=r;ab=true;q=z;r=aa;s=ab;return[q,r,s];};LF=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=0;r=0;s=false;q=0;r=0;while(true){if(!(r<p.length)){break;}if(48<=p.charCodeAt(r)&&p.charCodeAt(r)<=57){q=$imul(q,(16));q=q+(((p.charCodeAt(r)-48<<24>>>24)>>0))>>0;}else if(97<=p.charCodeAt(r)&&p.charCodeAt(r)<=102){q=$imul(q,(16));q=q+((((p.charCodeAt(r)-97<<24>>>24)>>0)+10>>0))>>0;}else if(65<=p.charCodeAt(r)&&p.charCodeAt(r)<=70){q=$imul(q,(16));q=q+((((p.charCodeAt(r)-65<<24>>>24)>>0)+10>>0))>>0;}else{break;}if(q>=16777215){t=0;u=r;v=false;q=t;r=u;s=v;return[q,r,s];}r=r+(1)>>0;}if(r===0){w=0;x=r;y=false;q=w;r=x;s=y;return[q,r,s];}z=q;aa=r;ab=true;q=z;r=aa;s=ab;return[q,r,s];};LG=function(p,q){var $ptr,p,q,r,s,t,u;if(p.length>2&&!((p.charCodeAt(2)===q))){return[0,false];}r=LF($substring(p,0,2));s=r[0];t=r[1];u=r[2];return[(s<<24>>>24),u&&(t===2)];};LI=function(p){var $ptr,p,q,r,s,t;if(p===0){return"0";}q=RX.zero();r=19;while(true){if(!(p>=10)){break;}t=(s=p/10,(s===s&&s!==1/0&&s!==-1/0)?s>>>0:$throwRuntimeError("integer divide by zero"));((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(((48+p>>>0)-(t*10>>>0)>>>0)<<24>>>24));r=r-(1)>>0;p=t;}((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=((48+p>>>0)<<24>>>24));return $bytesToString($subslice(new PE(q),r));};LJ=function(p,q){var $ptr,p,q,r,s,t;if(q===0){return $append(p,48);}r=7;while(true){if(!(r>=0)){break;}t=(s=(($imul(r,4))>>>0),s<32?(q>>>s):0)>>>0;if(t>0){p=$append(p,"0123456789abcdef".charCodeAt(((t&15)>>>0)));}r=r-(1)>>0;}return p;};LL=function(p,q){var $ptr,p,q,r;r=p.length;r=r-(1)>>0;while(true){if(!(r>=0)){break;}if(p.charCodeAt(r)===q){break;}r=r-(1)>>0;}return r;};AC.methods=[{prop:"Classify",name:"Classify",pkg:"",typ:$funcType([GQ],[AB],false)}];AF.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)}];PU.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];PV.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RO.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RR.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QD.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];SN.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RS.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RL.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QA.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QB.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QY.methods=[{prop:"Addrs",name:"Addrs",pkg:"",typ:$funcType([],[QZ,$error],false)},{prop:"MulticastAddrs",name:"MulticastAddrs",pkg:"",typ:$funcType([],[QZ,$error],false)}];FW.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];SS.methods=[{prop:"update",name:"update",pkg:"net",typ:$funcType([RA],[],false)}];GQ.methods=[{prop:"IsUnspecified",name:"IsUnspecified",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLoopback",name:"IsLoopback",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsMulticast",name:"IsMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsInterfaceLocalMulticast",name:"IsInterfaceLocalMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLinkLocalMulticast",name:"IsLinkLocalMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLinkLocalUnicast",name:"IsLinkLocalUnicast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsGlobalUnicast",name:"IsGlobalUnicast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"To4",name:"To4",pkg:"",typ:$funcType([],[GQ],false)},{prop:"To16",name:"To16",pkg:"",typ:$funcType([],[GQ],false)},{prop:"DefaultMask",name:"DefaultMask",pkg:"",typ:$funcType([],[GR],false)},{prop:"Mask",name:"Mask",pkg:"",typ:$funcType([GR],[GQ],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[PE,$error],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([GQ],[$Bool],false)},{prop:"matchAddrFamily",name:"matchAddrFamily",pkg:"net",typ:$funcType([GQ],[$Bool],false)}];SV.methods=[{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([PE],[$error],false)}];GR.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];PH.methods=[{prop:"Contains",name:"Contains",pkg:"",typ:$funcType([GQ],[$Bool],false)},{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];PO.methods=[{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"isWildcard",name:"isWildcard",pkg:"net",typ:$funcType([],[$Bool],false)},{prop:"opAddr",name:"opAddr",pkg:"net",typ:$funcType([],[JJ],false)},{prop:"family",name:"family",pkg:"net",typ:$funcType([],[$Int],false)},{prop:"sockaddr",name:"sockaddr",pkg:"net",typ:$funcType([$Int],[B.Sockaddr,$error],false)},{prop:"toLocal",name:"toLocal",pkg:"net",typ:$funcType([$String],[MK],false)}];JE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];RU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];SY.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];RV.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];QX.methods=[{prop:"close",name:"close",pkg:"net",typ:$funcType([],[],false)},{prop:"getLineFromData",name:"getLineFromData",pkg:"net",typ:$funcType([],[$String,$Bool],false)},{prop:"readLine",name:"readLine",pkg:"net",typ:$funcType([],[$String,$Bool],false)}];AB.init("",[{prop:"Prefix",name:"Prefix",exported:true,typ:PH,tag:""},{prop:"Precedence",name:"Precedence",exported:true,typ:$Uint8,tag:""},{prop:"Label",name:"Label",exported:true,typ:$Uint8,tag:""}]);AC.init(AB);AF.init(AB);CZ.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Rrtype",name:"Rrtype",exported:true,typ:$Uint16,tag:""},{prop:"Class",name:"Class",exported:true,typ:$Uint16,tag:""},{prop:"Ttl",name:"Ttl",exported:true,typ:$Uint32,tag:""},{prop:"Rdlength",name:"Rdlength",exported:true,typ:$Uint16,tag:""}]);DB.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Cname",name:"Cname",exported:true,typ:$String,tag:""}]);DC.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Pref",name:"Pref",exported:true,typ:$Uint16,tag:""},{prop:"Mx",name:"Mx",exported:true,typ:$String,tag:""}]);DD.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ns",name:"Ns",exported:true,typ:$String,tag:""}]);DE.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ptr",name:"Ptr",exported:true,typ:$String,tag:""}]);DF.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ns",name:"Ns",exported:true,typ:$String,tag:""},{prop:"Mbox",name:"Mbox",exported:true,typ:$String,tag:""},{prop:"Serial",name:"Serial",exported:true,typ:$Uint32,tag:""},{prop:"Refresh",name:"Refresh",exported:true,typ:$Uint32,tag:""},{prop:"Retry",name:"Retry",exported:true,typ:$Uint32,tag:""},{prop:"Expire",name:"Expire",exported:true,typ:$Uint32,tag:""},{prop:"Minttl",name:"Minttl",exported:true,typ:$Uint32,tag:""}]);DG.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Txt",name:"Txt",exported:true,typ:$String,tag:""}]);DH.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Priority",name:"Priority",exported:true,typ:$Uint16,tag:""},{prop:"Weight",name:"Weight",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Target",name:"Target",exported:true,typ:$String,tag:""}]);DI.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"A",name:"A",exported:true,typ:$Uint32,tag:""}]);DJ.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"AAAA",name:"AAAA",exported:true,typ:PD,tag:""}]);FV.init("",[{prop:"Index",name:"Index",exported:true,typ:$Int,tag:""},{prop:"MTU",name:"MTU",exported:true,typ:$Int,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"HardwareAddr",name:"HardwareAddr",exported:true,typ:JE,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:FW,tag:""}]);GD.init("net",[{prop:"RWMutex",name:"",exported:true,typ:H.RWMutex,tag:""},{prop:"lastFetched",name:"lastFetched",exported:false,typ:J.Time,tag:""},{prop:"toIndex",name:"toIndex",exported:false,typ:ST,tag:""},{prop:"toName",name:"toName",exported:false,typ:SU,tag:""}]);GQ.init($Uint8);GR.init($Uint8);GS.init("",[{prop:"IP",name:"IP",exported:true,typ:GQ,tag:""},{prop:"Mask",name:"Mask",exported:true,typ:GR,tag:""}]);HL.init("",[{prop:"IP",name:"IP",exported:true,typ:GQ,tag:""},{prop:"Zone",name:"Zone",exported:true,typ:$String,tag:""}]);JE.init($Uint8);JJ.init([{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);JW.init("",[{prop:"Op",name:"Op",exported:true,typ:$String,tag:""},{prop:"Net",name:"Net",exported:true,typ:$String,tag:""},{prop:"Source",name:"Source",exported:true,typ:JJ,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:JJ,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);KA.init([{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}]);KB.init([{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}]);KD.init("",[{prop:"Type",name:"Type",exported:true,typ:$String,tag:""},{prop:"Text",name:"Text",exported:true,typ:$String,tag:""}]);KE.init("",[{prop:"Err",name:"Err",exported:true,typ:$String,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:$String,tag:""}]);KY.init("net",[{prop:"file",name:"file",exported:false,typ:QT,tag:""},{prop:"data",name:"data",exported:false,typ:PE,tag:""},{prop:"atEOF",name:"atEOF",exported:false,typ:$Bool,tag:""}]);MK.init([{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"family",name:"family",pkg:"net",typ:$funcType([],[$Int],false)},{prop:"isWildcard",name:"isWildcard",pkg:"net",typ:$funcType([],[$Bool],false)},{prop:"sockaddr",name:"sockaddr",pkg:"net",typ:$funcType([$Int],[B.Sockaddr,$error],false)},{prop:"toLocal",name:"toLocal",pkg:"net",typ:$funcType([$String],[MK],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}HV=false;HW=false;HX=false;JG=false;DK=$makeMap($Int.keyFor,[{k:5,v:(function(){var $ptr;return new DB.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:15,v:(function(){var $ptr;return new DC.ptr(new CZ.ptr("",0,0,0,0),0,"");})},{k:2,v:(function(){var $ptr;return new DD.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:12,v:(function(){var $ptr;return new DE.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:6,v:(function(){var $ptr;return new DF.ptr(new CZ.ptr("",0,0,0,0),"","",0,0,0,0,0);})},{k:16,v:(function(){var $ptr;return new DG.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:33,v:(function(){var $ptr;return new DH.ptr(new CZ.ptr("",0,0,0,0),0,0,0,"");})},{k:1,v:(function(){var $ptr;return new DI.ptr(new CZ.ptr("",0,0,0,0),0);})},{k:28,v:(function(){var $ptr;return new DJ.ptr(new CZ.ptr("",0,0,0,0),PD.zero());})}]);FA=(function $b(g,h,i){var $ptr,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=h(g,i);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=-1;return j;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;});FQ=A.New("invalid network interface");FR=A.New("invalid network interface index");FS=A.New("invalid network interface name");FT=A.New("no such network interface");FU=A.New("no such multicast network interface");FX=new OY(["up","broadcast","loopback","pointtopoint","multicast"]);GE=new GD.ptr(new H.RWMutex.ptr(new H.Mutex.ptr(0,0),0,0,0,0),new J.Time.ptr(new $Int64(0,0),0,OV.nil),{},{});GU=new PE([0,0,0,0,0,0,0,0,0,0,255,255]);$pkg.IPv4bcast=GT(255,255,255,255);$pkg.IPv4allsys=GT(224,0,0,1);$pkg.IPv4allrouter=GT(224,0,0,2);$pkg.IPv4zero=GT(0,0,0,0);$pkg.IPv6unspecified=new GQ([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);$pkg.IPv6loopback=new GQ([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]);GY=GV(255,0,0,0);GZ=GV(255,255,0,0);HA=GV(255,255,255,0);JN=U();JQ=A.New("no suitable address found");JR=A.New("missing address");JT=A.New("operation was canceled");JU=A.New("use of closed network connection");$pkg.ErrWriteToConnected=A.New("use of WriteTo with pre-connected connection");JX=$clone(J.Unix(new $Int64(0,233431200),new $Int64(0,0)),J.Time);KI=A.New("no such host");KM=new $Chan(PF,500);g=AG("::1/128");$s=15;case 15:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=AG("::/0");$s=16;case 16:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=AG("::ffff:0:0/96");$s=17;case 17:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=AG("2002::/16");$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=AG("2001::/32");$s=19;case 19:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=AG("fc00::/7");$s=20;case 20:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=AG("::/96");$s=21;case 21:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=AG("fec0::/10");$s=22;case 22:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=AG("3ffe::/16");$s=23;case 23:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}AD=new AC([new AB.ptr(g,50,0),new AB.ptr(h,40,1),new AB.ptr(i,35,4),new AB.ptr(j,30,2),new AB.ptr(k,5,5),new AB.ptr(l,3,13),new AB.ptr(m,1,3),new AB.ptr(n,1,11),new AB.ptr(o,1,12)]);$r=AE();$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AK();JI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/satori/go.uuid"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,M,AC,AT,AU,AV,AW,AX,T,U,V,W,a,b,c,d,e,f,g,h,AG,AJ,AQ,AR;A=$packages["bytes"];B=$packages["crypto/md5"];C=$packages["crypto/rand"];D=$packages["crypto/sha1"];E=$packages["database/sql/driver"];F=$packages["encoding/binary"];G=$packages["encoding/hex"];H=$packages["fmt"];I=$packages["hash"];J=$packages["net"];K=$packages["os"];L=$packages["sync"];M=$packages["time"];AC=$pkg.UUID=$newType(16,$kindArray,"uuid.UUID",true,"github.com/satori/go.uuid",true,null);AT=$sliceType($Uint8);AU=$sliceType($Int);AV=$arrayType($Uint8,16);AW=$sliceType($emptyInterface);AX=$ptrType(AC);AG=function(i,j){var $ptr,i,j;return A.Equal(new AT(i),new AT(j));};$pkg.Equal=AG;AC.prototype.Version=function(){var $ptr,i;i=this.$val;return((i[6]>>>4<<24>>>24)>>>0);};$ptrType(AC).prototype.Version=function(){return new AC(this.$get()).Version();};AC.prototype.Variant=function(){var $ptr,i;i=this.$val;if(((((i[8]&128)>>>0))===0)){return 0;}else if(((((((i[8]&192)>>>0))|128)>>>0)===128)){return 1;}else if(((((((i[8]&224)>>>0))|192)>>>0)===192)){return 2;}return 3;};$ptrType(AC).prototype.Variant=function(){return new AC(this.$get()).Variant();};AC.prototype.Bytes=function(){var $ptr,i;i=this.$val;return new AT(i);};$ptrType(AC).prototype.Bytes=function(){return new AC(this.$get()).Bytes();};AC.prototype.String=function(){var $ptr,i,j;i=this.$val;j=$makeSlice(AT,36);G.Encode($subslice(j,0,8),$subslice(new AT(i),0,4));(8>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+8]=45);G.Encode($subslice(j,9,13),$subslice(new AT(i),4,6));(13>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+13]=45);G.Encode($subslice(j,14,18),$subslice(new AT(i),6,8));(18>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+18]=45);G.Encode($subslice(j,19,23),$subslice(new AT(i),8,10));(23>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+23]=45);G.Encode($subslice(j,24),$subslice(new AT(i),10));return $bytesToString(j);};$ptrType(AC).prototype.String=function(){return new AC(this.$get()).String();};AC.prototype.SetVersion=function(i){var $ptr,i,j;j=this.$val;j.nilCheck,j[6]=((((((j.nilCheck,j[6])&15)>>>0))|((i<<4<<24>>>24)))>>>0);};$ptrType(AC).prototype.SetVersion=function(i){return(new AC(this.$get())).SetVersion(i);};AC.prototype.SetVariant=function(){var $ptr,i;i=this.$val;i.nilCheck,i[8]=((((((i.nilCheck,i[8])&191)>>>0))|128)>>>0);};$ptrType(AC).prototype.SetVariant=function(){return(new AC(this.$get())).SetVariant();};AC.prototype.MarshalText=function(){var $ptr,i,j,k;i=AT.nil;j=$ifaceNil;k=this.$val;i=new AT($stringToBytes(new AC($clone(k,AC)).String()));return[i,j];};$ptrType(AC).prototype.MarshalText=function(){return new AC(this.$get()).MarshalText();};AC.prototype.UnmarshalText=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=$ifaceNil;k=this.$val;if(i.$length<32){$s=1;continue;}$s=2;continue;case 1:l=H.Errorf("uuid: UUID string too short: %s",new AW([i]));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;$s=-1;return j;case 2:m=i;n=false;if(A.Equal($subslice(m,0,9),V)){m=$subslice(m,9);}else if((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===123){n=true;m=$subslice(m,1);}o=new AT(k);p=W;q=0;case 4:if(!(q<p.$length)){$s=5;continue;}r=q;s=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);if(r>0){$s=6;continue;}$s=7;continue;case 6:if(!(((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===45))){$s=8;continue;}$s=9;continue;case 8:t=H.Errorf("uuid: invalid string format",new AW([]));$s=10;case 10:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}j=t;$s=-1;return j;case 9:m=$subslice(m,1);case 7:if(m.$length<s){$s=11;continue;}$s=12;continue;case 11:u=H.Errorf("uuid: UUID string too short: %s",new AW([i]));$s=13;case 13:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}j=u;$s=-1;return j;case 12:if((r===4)&&m.$length>s&&((n&&!((((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s])===125)))||$subslice(m,s).$length>1||!n)){$s=14;continue;}$s=15;continue;case 14:v=H.Errorf("uuid: UUID string too long: %s",new AW([i]));$s=16;case 16:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}j=v;$s=-1;return j;case 15:w=G.Decode($subslice(o,0,(x=s/2,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))),$subslice(m,0,s));j=w[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}m=$subslice(m,s);o=$subslice(o,(y=s/2,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero")));q++;$s=4;continue;case 5:$s=-1;return j;}return;}if($f===undefined){$f={$blk:AC.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.UnmarshalText=function(i){return(new AC(this.$get())).UnmarshalText(i);};AC.prototype.MarshalBinary=function(){var $ptr,i,j,k;i=AT.nil;j=$ifaceNil;k=this.$val;i=new AC($clone(k,AC)).Bytes();return[i,j];};$ptrType(AC).prototype.MarshalBinary=function(){return new AC(this.$get()).MarshalBinary();};AC.prototype.UnmarshalBinary=function(i){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=$ifaceNil;k=this.$val;if(!((i.$length===16))){$s=1;continue;}$s=2;continue;case 1:l=H.Errorf("uuid: UUID must be exactly 16 bytes long, got %d bytes",new AW([new $Int(i.$length)]));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;$s=-1;return j;case 2:$copySlice(new AT(k),i);$s=-1;return j;}return;}if($f===undefined){$f={$blk:AC.prototype.UnmarshalBinary};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.UnmarshalBinary=function(i){return(new AC(this.$get())).UnmarshalBinary(i);};AC.prototype.Value=function(){var $ptr,i;i=this.$val;return[new $String(new AC($clone(i,AC)).String()),$ifaceNil];};$ptrType(AC).prototype.Value=function(){return new AC(this.$get()).Value();};AC.prototype.Scan=function(i){var $ptr,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this.$val;k=i;if($assertType(k,AT,true)[1]){$s=1;continue;}if($assertType(k,$String,true)[1]){$s=2;continue;}$s=3;continue;case 1:l=k.$val;if(l.$length===16){$s=4;continue;}$s=5;continue;case 4:n=new AX(j).UnmarshalBinary(l);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;case 5:o=new AX(j).UnmarshalText(l);$s=7;case 7:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;case 2:m=k.$val;p=new AX(j).UnmarshalText(new AT($stringToBytes(m)));$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;case 3:q=H.Errorf("uuid: cannot convert %T to UUID",new AW([i]));$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return q;}return;}if($f===undefined){$f={$blk:AC.prototype.Scan};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.Scan=function(i){return(new AC(this.$get())).Scan(i);};AJ=function(i){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=AV.zero();k=$ifaceNil;l=new AX(j).UnmarshalText(new AT($stringToBytes(i)));$s=1;case 1:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;$s=-1;return[j,k];}return;}if($f===undefined){$f={$blk:AJ};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.FromString=AJ;AQ=function(i,j){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AR(D.New(),$clone(i,AC),j);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$clone(k,AC);new AX(l).SetVersion(5);new AX(l).SetVariant();$s=-1;return l;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewV5=AQ;AR=function(i,j,k){var $ptr,i,j,k,l,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=AV.zero();m=i.Write(new AT(j));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;n=i.Write(new AT($stringToBytes(k)));$s=2;case 2:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;o=i.Sum(AT.nil);$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$copySlice(new AT(l),o);$s=-1;return l;}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};AC.methods=[{prop:"Version",name:"Version",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Variant",name:"Variant",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[AT],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[AT,$error],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AT,$error],false)},{prop:"Value",name:"Value",pkg:"",typ:$funcType([],[E.Value,$error],false)}];AX.methods=[{prop:"SetVersion",name:"SetVersion",pkg:"",typ:$funcType([$Uint8],[],false)},{prop:"SetVariant",name:"SetVariant",pkg:"",typ:$funcType([],[],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([AT],[$error],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AT],[$error],false)},{prop:"Scan",name:"Scan",pkg:"",typ:$funcType([$emptyInterface],[$error],false)}];AC.init($Uint8,16);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}T=(K.Getuid()>>>0);U=(K.Getgid()>>>0);V=new AT($stringToBytes("urn:uuid:"));W=new AU([8,4,4,4,12]);$pkg.Nil=AV.zero();b=AJ("6ba7b810-9dad-11d1-80b4-00c04fd430c8");$s=14;case 14:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;$pkg.NamespaceDNS=$clone(a[0],AC);d=AJ("6ba7b811-9dad-11d1-80b4-00c04fd430c8");$s=15;case 15:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;$pkg.NamespaceURL=$clone(c[0],AC);f=AJ("6ba7b812-9dad-11d1-80b4-00c04fd430c8");$s=16;case 16:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;$pkg.NamespaceOID=$clone(e[0],AC);h=AJ("6ba7b814-9dad-11d1-80b4-00c04fd430c8");$s=17;case 17:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;$pkg.NamespaceX500=$clone(g[0],AC);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/sha256"]=(function(){var $pkg={},$init,A,B,D,L,M,N,O,P,R,S,I,K,C,E,F,J;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha256.digest",true,"crypto/sha256",false,function(h_,x_,nx_,len_,is224_){this.$val=this;if(arguments.length===0){this.h=M.zero();this.x=N.zero();this.nx=0;this.len=new $Uint64(0,0);this.is224=false;return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;this.is224=is224_;});L=$sliceType($Uint32);M=$arrayType($Uint32,8);N=$arrayType($Uint8,64);O=$sliceType($Uint8);P=$arrayType($Uint8,32);R=$arrayType($Uint32,64);S=$ptrType(D);C=function(){var $ptr;A.RegisterHash(4,F);A.RegisterHash(5,E);};D.ptr.prototype.Reset=function(){var $ptr,a;a=this;if(!a.is224){a.h[0]=1779033703;a.h[1]=3144134277;a.h[2]=1013904242;a.h[3]=2773480762;a.h[4]=1359893119;a.h[5]=2600822924;a.h[6]=528734635;a.h[7]=1541459225;}else{a.h[0]=3238371032;a.h[1]=914150663;a.h[2]=812702999;a.h[3]=4144912697;a.h[4]=4290775857;a.h[5]=1750603025;a.h[6]=1694076839;a.h[7]=3204075428;}a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(M.zero(),N.zero(),0,new $Uint64(0,0),false);a.Reset();return a;};$pkg.New=E;F=function(){var $ptr,a;a=new D.ptr(M.zero(),N.zero(),0,new $Uint64(0,0),false);a.is224=true;a.Reset();return a;};$pkg.New224=F;D.ptr.prototype.Size=function(){var $ptr,a;a=this;if(!a.is224){return 32;}return 28;};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new O(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=K(d,new O(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=K(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new O(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,P);if(c.is224){$s=-1;return $appendSlice(a,$subslice(new O(e),0,28));}$s=-1;return $appendSlice(a,new O(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=N.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new O(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new O(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((56-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new O(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=new L(a.h);if(a.is224){k=$subslice(new L(a.h),0,7);}l=P.zero();m=k;n=0;while(true){if(!(n<m.$length)){break;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);(q=$imul(o,4),((q<0||q>=l.length)?($throwRuntimeError("index out of range"),undefined):l[q]=((p>>>24>>>0)<<24>>>24)));(r=($imul(o,4))+1>>0,((r<0||r>=l.length)?($throwRuntimeError("index out of range"),undefined):l[r]=((p>>>16>>>0)<<24>>>24)));(s=($imul(o,4))+2>>0,((s<0||s>=l.length)?($throwRuntimeError("index out of range"),undefined):l[s]=((p>>>8>>>0)<<24>>>24)));(t=($imul(o,4))+3>>0,((t<0||t>=l.length)?($throwRuntimeError("index out of range"),undefined):l[t]=(p<<24>>>24)));n++;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};J=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=R.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=a.h[5];j=a.h[6];k=a.h[7];l=d;m=e;n=f;o=g;p=h;q=i;r=j;s=k;while(true){if(!(b.$length>=64)){break;}t=0;while(true){if(!(t<16)){break;}u=$imul(t,4);((t<0||t>=c.length)?($throwRuntimeError("index out of range"),undefined):c[t]=((((((((((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u])>>>0)<<24>>>0)|(((v=u+1>>0,((v<0||v>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+v]))>>>0)<<16>>>0))>>>0)|(((w=u+2>>0,((w<0||w>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+w]))>>>0)<<8>>>0))>>>0)|((x=u+3>>0,((x<0||x>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+x]))>>>0))>>>0));t=t+(1)>>0;}y=16;while(true){if(!(y<64)){break;}aa=(z=y-2>>0,((z<0||z>=c.length)?($throwRuntimeError("index out of range"),undefined):c[z]));ab=(((((((aa>>>17>>>0)|(aa<<15>>>0))>>>0))^((((aa>>>19>>>0)|(aa<<13>>>0))>>>0)))>>>0)^((aa>>>10>>>0)))>>>0;ad=(ac=y-15>>0,((ac<0||ac>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ac]));ae=(((((((ad>>>7>>>0)|(ad<<25>>>0))>>>0))^((((ad>>>18>>>0)|(ad<<14>>>0))>>>0)))>>>0)^((ad>>>3>>>0)))>>>0;((y<0||y>=c.length)?($throwRuntimeError("index out of range"),undefined):c[y]=(((ab+(af=y-7>>0,((af<0||af>=c.length)?($throwRuntimeError("index out of range"),undefined):c[af]))>>>0)+ae>>>0)+(ag=y-16>>0,((ag<0||ag>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ag]))>>>0));y=y+(1)>>0;}ah=l;ai=m;aj=n;ak=o;al=p;am=q;an=r;ao=s;ap=ah;aq=ai;ar=aj;as=ak;at=al;au=am;av=an;aw=ao;ax=0;while(true){if(!(ax<64)){break;}ay=(((aw+(((((((((at>>>6>>>0)|(at<<26>>>0))>>>0))^((((at>>>11>>>0)|(at<<21>>>0))>>>0)))>>>0)^((((at>>>25>>>0)|(at<<7>>>0))>>>0)))>>>0))>>>0)+((((((at&au)>>>0))^((((~at>>>0)&av)>>>0)))>>>0))>>>0)+((ax<0||ax>=I.$length)?($throwRuntimeError("index out of range"),undefined):I.$array[I.$offset+ax])>>>0)+((ax<0||ax>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ax])>>>0;az=(((((((((ap>>>2>>>0)|(ap<<30>>>0))>>>0))^((((ap>>>13>>>0)|(ap<<19>>>0))>>>0)))>>>0)^((((ap>>>22>>>0)|(ap<<10>>>0))>>>0)))>>>0))+((((((((ap&aq)>>>0))^(((ap&ar)>>>0)))>>>0)^(((aq&ar)>>>0)))>>>0))>>>0;aw=av;av=au;au=at;at=as+ay>>>0;as=ar;ar=aq;aq=ap;ap=ay+az>>>0;ax=ax+(1)>>0;}l=l+(ap)>>>0;m=m+(aq)>>>0;n=n+(ar)>>>0;o=o+(as)>>>0;p=p+(at)>>>0;q=q+(au)>>>0;r=r+(av)>>>0;s=s+(aw)>>>0;b=$subslice(b,64);}ba=l;bb=m;bc=n;bd=o;be=p;bf=q;bg=r;bh=s;a.h[0]=ba;a.h[1]=bb;a.h[2]=bc;a.h[3]=bd;a.h[4]=be;a.h[5]=bf;a.h[6]=bg;a.h[7]=bh;};S.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([O],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([O],[O],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha256",typ:$funcType([],[P],false)}];D.init("crypto/sha256",[{prop:"h",name:"h",exported:false,typ:M,tag:""},{prop:"x",name:"x",exported:false,typ:N,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""},{prop:"is224",name:"is224",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=new L([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);K=J;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/sha512"]=(function(){var $pkg={},$init,A,B,D,P,Q,R,S,T,X,Y,M,O,C,E,F,G,H,I,N;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha512.digest",true,"crypto/sha512",false,function(h_,x_,nx_,len_,function$4_){this.$val=this;if(arguments.length===0){this.h=Q.zero();this.x=R.zero();this.nx=0;this.len=new $Uint64(0,0);this.function$4=0;return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;this.function$4=function$4_;});P=$sliceType($Uint64);Q=$arrayType($Uint64,8);R=$arrayType($Uint8,128);S=$sliceType($Uint8);T=$arrayType($Uint8,64);X=$arrayType($Uint64,80);Y=$ptrType(D);C=function(){var $ptr;A.RegisterHash(6,H);A.RegisterHash(7,E);A.RegisterHash(14,F);A.RegisterHash(15,G);};D.ptr.prototype.Reset=function(){var $ptr,a,b;a=this;b=a.function$4;if(b===(6)){a.h[0]=new $Uint64(3418070365,3238371032);a.h[1]=new $Uint64(1654270250,914150663);a.h[2]=new $Uint64(2438529370,812702999);a.h[3]=new $Uint64(355462360,4144912697);a.h[4]=new $Uint64(1731405415,4290775857);a.h[5]=new $Uint64(2394180231,1750603025);a.h[6]=new $Uint64(3675008525,1694076839);a.h[7]=new $Uint64(1203062813,3204075428);}else if(b===(14)){a.h[0]=new $Uint64(2352822216,424955298);a.h[1]=new $Uint64(1944164710,2312950998);a.h[2]=new $Uint64(502970286,855612546);a.h[3]=new $Uint64(1738396948,1479516111);a.h[4]=new $Uint64(258812777,2077511080);a.h[5]=new $Uint64(2011393907,79989058);a.h[6]=new $Uint64(1067287976,1780299464);a.h[7]=new $Uint64(286451373,2446758561);}else if(b===(15)){a.h[0]=new $Uint64(573645204,4230739756);a.h[1]=new $Uint64(2673172387,3360449730);a.h[2]=new $Uint64(596883563,1867755857);a.h[3]=new $Uint64(2520282905,1497426621);a.h[4]=new $Uint64(2519219938,2827943907);a.h[5]=new $Uint64(3193839141,1401305490);a.h[6]=new $Uint64(721525244,746961066);a.h[7]=new $Uint64(246885852,2177182882);}else{a.h[0]=new $Uint64(1779033703,4089235720);a.h[1]=new $Uint64(3144134277,2227873595);a.h[2]=new $Uint64(1013904242,4271175723);a.h[3]=new $Uint64(2773480762,1595750129);a.h[4]=new $Uint64(1359893119,2917565137);a.h[5]=new $Uint64(2600822924,725511199);a.h[6]=new $Uint64(528734635,4215389547);a.h[7]=new $Uint64(1541459225,327033209);}a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),7);a.Reset();return a;};$pkg.New=E;F=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),14);a.Reset();return a;};$pkg.New512_224=F;G=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),15);a.Reset();return a;};$pkg.New512_256=G;H=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),6);a.Reset();return a;};$pkg.New384=H;D.ptr.prototype.Size=function(){var $ptr,a,b;a=this;b=a.function$4;if(b===(14)){return 28;}else if(b===(15)){return 32;}else if(b===(6)){return 48;}else{return 64;}};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 128;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new S(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===128){$s=3;continue;}$s=4;continue;case 3:$r=O(d,new S(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=128){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~127)>>0;$r=O(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new S(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),0);D.copy(c,b);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,T);f=c.function$4;if(f===(6)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,48));}else if(f===(14)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,28));}else if(f===(15)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,32));}else{$s=-1;return $appendSlice(a,new S(e));}$s=-1;return S.nil;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=R.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,128),true),(d.$high<0||(d.$high===0&&d.$low<112)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new S(c),0,$flatten64((e=$div64(b,new $Uint64(0,128),true),new $Uint64(0-e.$high,112-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new S(c),0,$flatten64((g=$div64(b,new $Uint64(0,128),true),new $Uint64(0-g.$high,240-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<16)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((120-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new S(c),0,16));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=new P(a.h);if(a.function$4===6){k=$subslice(new P(a.h),0,6);}l=T.zero();m=k;n=0;while(true){if(!(n<m.$length)){break;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);(q=$imul(o,8),((q<0||q>=l.length)?($throwRuntimeError("index out of range"),undefined):l[q]=($shiftRightUint64(p,56).$low<<24>>>24)));(r=($imul(o,8))+1>>0,((r<0||r>=l.length)?($throwRuntimeError("index out of range"),undefined):l[r]=($shiftRightUint64(p,48).$low<<24>>>24)));(s=($imul(o,8))+2>>0,((s<0||s>=l.length)?($throwRuntimeError("index out of range"),undefined):l[s]=($shiftRightUint64(p,40).$low<<24>>>24)));(t=($imul(o,8))+3>>0,((t<0||t>=l.length)?($throwRuntimeError("index out of range"),undefined):l[t]=($shiftRightUint64(p,32).$low<<24>>>24)));(u=($imul(o,8))+4>>0,((u<0||u>=l.length)?($throwRuntimeError("index out of range"),undefined):l[u]=($shiftRightUint64(p,24).$low<<24>>>24)));(v=($imul(o,8))+5>>0,((v<0||v>=l.length)?($throwRuntimeError("index out of range"),undefined):l[v]=($shiftRightUint64(p,16).$low<<24>>>24)));(w=($imul(o,8))+6>>0,((w<0||w>=l.length)?($throwRuntimeError("index out of range"),undefined):l[w]=($shiftRightUint64(p,8).$low<<24>>>24)));(x=($imul(o,8))+7>>0,((x<0||x>=l.length)?($throwRuntimeError("index out of range"),undefined):l[x]=(p.$low<<24>>>24)));n++;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};I=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),7);b.Reset();c=b.Write(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;d=b.checkSum();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sum512=I;N=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=X.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=a.h[5];j=a.h[6];k=a.h[7];l=d;m=e;n=f;o=g;p=h;q=i;r=j;s=k;while(true){if(!(b.$length>=128)){break;}t=0;while(true){if(!(t<16)){break;}u=$imul(t,8);((t<0||t>=c.length)?($throwRuntimeError("index out of range"),undefined):c[t]=(v=(w=(x=(y=(z=(aa=(ab=$shiftLeft64(new $Uint64(0,((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u])),56),ac=$shiftLeft64(new $Uint64(0,(ad=u+1>>0,((ad<0||ad>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ad]))),48),new $Uint64(ab.$high|ac.$high,(ab.$low|ac.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(af=u+2>>0,((af<0||af>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+af]))),40),new $Uint64(aa.$high|ae.$high,(aa.$low|ae.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(ah=u+3>>0,((ah<0||ah>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ah]))),32),new $Uint64(z.$high|ag.$high,(z.$low|ag.$low)>>>0)),ai=$shiftLeft64(new $Uint64(0,(aj=u+4>>0,((aj<0||aj>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+aj]))),24),new $Uint64(y.$high|ai.$high,(y.$low|ai.$low)>>>0)),ak=$shiftLeft64(new $Uint64(0,(al=u+5>>0,((al<0||al>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+al]))),16),new $Uint64(x.$high|ak.$high,(x.$low|ak.$low)>>>0)),am=$shiftLeft64(new $Uint64(0,(an=u+6>>0,((an<0||an>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+an]))),8),new $Uint64(w.$high|am.$high,(w.$low|am.$low)>>>0)),ao=new $Uint64(0,(ap=u+7>>0,((ap<0||ap>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ap]))),new $Uint64(v.$high|ao.$high,(v.$low|ao.$low)>>>0)));t=t+(1)>>0;}aq=16;while(true){if(!(aq<80)){break;}as=(ar=aq-2>>0,((ar<0||ar>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ar]));bb=(at=(au=(av=$shiftRightUint64(as,19),aw=$shiftLeft64(as,45),new $Uint64(av.$high|aw.$high,(av.$low|aw.$low)>>>0)),ax=(ay=$shiftRightUint64(as,61),az=$shiftLeft64(as,3),new $Uint64(ay.$high|az.$high,(ay.$low|az.$low)>>>0)),new $Uint64(au.$high^ax.$high,(au.$low^ax.$low)>>>0)),ba=$shiftRightUint64(as,6),new $Uint64(at.$high^ba.$high,(at.$low^ba.$low)>>>0));bd=(bc=aq-15>>0,((bc<0||bc>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bc]));bm=(be=(bf=(bg=$shiftRightUint64(bd,1),bh=$shiftLeft64(bd,63),new $Uint64(bg.$high|bh.$high,(bg.$low|bh.$low)>>>0)),bi=(bj=$shiftRightUint64(bd,8),bk=$shiftLeft64(bd,56),new $Uint64(bj.$high|bk.$high,(bj.$low|bk.$low)>>>0)),new $Uint64(bf.$high^bi.$high,(bf.$low^bi.$low)>>>0)),bl=$shiftRightUint64(bd,7),new $Uint64(be.$high^bl.$high,(be.$low^bl.$low)>>>0));((aq<0||aq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aq]=(bn=(bo=(bp=(bq=aq-7>>0,((bq<0||bq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bq])),new $Uint64(bb.$high+bp.$high,bb.$low+bp.$low)),new $Uint64(bo.$high+bm.$high,bo.$low+bm.$low)),br=(bs=aq-16>>0,((bs<0||bs>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bs])),new $Uint64(bn.$high+br.$high,bn.$low+br.$low)));aq=aq+(1)>>0;}bt=l;bu=m;bv=n;bw=o;bx=p;by=q;bz=r;ca=s;cb=bt;cc=bu;cd=bv;ce=bw;cf=bx;cg=by;ch=bz;ci=ca;cj=0;while(true){if(!(cj<80)){break;}de=(ck=(cl=(cm=(cn=(co=(cp=(cq=$shiftRightUint64(cf,14),cr=$shiftLeft64(cf,50),new $Uint64(cq.$high|cr.$high,(cq.$low|cr.$low)>>>0)),cs=(ct=$shiftRightUint64(cf,18),cu=$shiftLeft64(cf,46),new $Uint64(ct.$high|cu.$high,(ct.$low|cu.$low)>>>0)),new $Uint64(cp.$high^cs.$high,(cp.$low^cs.$low)>>>0)),cv=(cw=$shiftRightUint64(cf,41),cx=$shiftLeft64(cf,23),new $Uint64(cw.$high|cx.$high,(cw.$low|cx.$low)>>>0)),new $Uint64(co.$high^cv.$high,(co.$low^cv.$low)>>>0)),new $Uint64(ci.$high+cn.$high,ci.$low+cn.$low)),cy=(cz=new $Uint64(cf.$high&cg.$high,(cf.$low&cg.$low)>>>0),da=(db=new $Uint64(~cf.$high,~cf.$low>>>0),new $Uint64(db.$high&ch.$high,(db.$low&ch.$low)>>>0)),new $Uint64(cz.$high^da.$high,(cz.$low^da.$low)>>>0)),new $Uint64(cm.$high+cy.$high,cm.$low+cy.$low)),dc=((cj<0||cj>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+cj]),new $Uint64(cl.$high+dc.$high,cl.$low+dc.$low)),dd=((cj<0||cj>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cj]),new $Uint64(ck.$high+dd.$high,ck.$low+dd.$low));dw=(df=(dg=(dh=(di=$shiftRightUint64(cb,28),dj=$shiftLeft64(cb,36),new $Uint64(di.$high|dj.$high,(di.$low|dj.$low)>>>0)),dk=(dl=$shiftRightUint64(cb,34),dm=$shiftLeft64(cb,30),new $Uint64(dl.$high|dm.$high,(dl.$low|dm.$low)>>>0)),new $Uint64(dh.$high^dk.$high,(dh.$low^dk.$low)>>>0)),dn=(dp=$shiftRightUint64(cb,39),dq=$shiftLeft64(cb,25),new $Uint64(dp.$high|dq.$high,(dp.$low|dq.$low)>>>0)),new $Uint64(dg.$high^dn.$high,(dg.$low^dn.$low)>>>0)),dr=(ds=(dt=new $Uint64(cb.$high&cc.$high,(cb.$low&cc.$low)>>>0),du=new $Uint64(cb.$high&cd.$high,(cb.$low&cd.$low)>>>0),new $Uint64(dt.$high^du.$high,(dt.$low^du.$low)>>>0)),dv=new $Uint64(cc.$high&cd.$high,(cc.$low&cd.$low)>>>0),new $Uint64(ds.$high^dv.$high,(ds.$low^dv.$low)>>>0)),new $Uint64(df.$high+dr.$high,df.$low+dr.$low));ci=ch;ch=cg;cg=cf;cf=new $Uint64(ce.$high+de.$high,ce.$low+de.$low);ce=cd;cd=cc;cc=cb;cb=new $Uint64(de.$high+dw.$high,de.$low+dw.$low);cj=cj+(1)>>0;}l=(dx=cb,new $Uint64(l.$high+dx.$high,l.$low+dx.$low));m=(dy=cc,new $Uint64(m.$high+dy.$high,m.$low+dy.$low));n=(dz=cd,new $Uint64(n.$high+dz.$high,n.$low+dz.$low));o=(ea=ce,new $Uint64(o.$high+ea.$high,o.$low+ea.$low));p=(eb=cf,new $Uint64(p.$high+eb.$high,p.$low+eb.$low));q=(ec=cg,new $Uint64(q.$high+ec.$high,q.$low+ec.$low));r=(ed=ch,new $Uint64(r.$high+ed.$high,r.$low+ed.$low));s=(ee=ci,new $Uint64(s.$high+ee.$high,s.$low+ee.$low));b=$subslice(b,128);}ef=l;eg=m;eh=n;ei=o;ej=p;ek=q;el=r;em=s;a.h[0]=ef;a.h[1]=eg;a.h[2]=eh;a.h[3]=ei;a.h[4]=ej;a.h[5]=ek;a.h[6]=el;a.h[7]=em;};Y.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([S],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([S],[S],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha512",typ:$funcType([],[T],false)}];D.init("crypto/sha512",[{prop:"h",name:"h",exported:false,typ:Q,tag:""},{prop:"x",name:"x",exported:false,typ:R,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""},{prop:"function$4",name:"function",exported:false,typ:A.Hash,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}M=new P([new $Uint64(1116352408,3609767458),new $Uint64(1899447441,602891725),new $Uint64(3049323471,3964484399),new $Uint64(3921009573,2173295548),new $Uint64(961987163,4081628472),new $Uint64(1508970993,3053834265),new $Uint64(2453635748,2937671579),new $Uint64(2870763221,3664609560),new $Uint64(3624381080,2734883394),new $Uint64(310598401,1164996542),new $Uint64(607225278,1323610764),new $Uint64(1426881987,3590304994),new $Uint64(1925078388,4068182383),new $Uint64(2162078206,991336113),new $Uint64(2614888103,633803317),new $Uint64(3248222580,3479774868),new $Uint64(3835390401,2666613458),new $Uint64(4022224774,944711139),new $Uint64(264347078,2341262773),new $Uint64(604807628,2007800933),new $Uint64(770255983,1495990901),new $Uint64(1249150122,1856431235),new $Uint64(1555081692,3175218132),new $Uint64(1996064986,2198950837),new $Uint64(2554220882,3999719339),new $Uint64(2821834349,766784016),new $Uint64(2952996808,2566594879),new $Uint64(3210313671,3203337956),new $Uint64(3336571891,1034457026),new $Uint64(3584528711,2466948901),new $Uint64(113926993,3758326383),new $Uint64(338241895,168717936),new $Uint64(666307205,1188179964),new $Uint64(773529912,1546045734),new $Uint64(1294757372,1522805485),new $Uint64(1396182291,2643833823),new $Uint64(1695183700,2343527390),new $Uint64(1986661051,1014477480),new $Uint64(2177026350,1206759142),new $Uint64(2456956037,344077627),new $Uint64(2730485921,1290863460),new $Uint64(2820302411,3158454273),new $Uint64(3259730800,3505952657),new $Uint64(3345764771,106217008),new $Uint64(3516065817,3606008344),new $Uint64(3600352804,1432725776),new $Uint64(4094571909,1467031594),new $Uint64(275423344,851169720),new $Uint64(430227734,3100823752),new $Uint64(506948616,1363258195),new $Uint64(659060556,3750685593),new $Uint64(883997877,3785050280),new $Uint64(958139571,3318307427),new $Uint64(1322822218,3812723403),new $Uint64(1537002063,2003034995),new $Uint64(1747873779,3602036899),new $Uint64(1955562222,1575990012),new $Uint64(2024104815,1125592928),new $Uint64(2227730452,2716904306),new $Uint64(2361852424,442776044),new $Uint64(2428436474,593698344),new $Uint64(2756734187,3733110249),new $Uint64(3204031479,2999351573),new $Uint64(3329325298,3815920427),new $Uint64(3391569614,3928383900),new $Uint64(3515267271,566280711),new $Uint64(3940187606,3454069534),new $Uint64(4118630271,4000239992),new $Uint64(116418474,1914138554),new $Uint64(174292421,2731055270),new $Uint64(289380356,3203993006),new $Uint64(460393269,320620315),new $Uint64(685471733,587496836),new $Uint64(852142971,1086792851),new $Uint64(1017036298,365543100),new $Uint64(1126000580,2618297676),new $Uint64(1288033470,3409855158),new $Uint64(1501505948,4234509866),new $Uint64(1607167915,987167468),new $Uint64(1816402316,1246189591)]);O=N;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/cipher/sha3"]=(function(){var $pkg={},$init,D,F,B,C,A,E,AG,AM,AO,AS,AT,AW,G,T,Z,H,I,J,K,L,M,N,O,U,V,AA,AH,AI,AJ,AK,AL;D=$packages["crypto"];F=$packages["encoding/binary"];B=$packages["gopkg.in/dedis/crypto.v0/abstract"];C=$packages["gopkg.in/dedis/crypto.v0/cipher"];A=$packages["hash"];E=$packages["io"];AG=$pkg.sponge=$newType(0,$kindStruct,"sha3.sponge",true,"gopkg.in/dedis/crypto.v0/cipher/sha3",false,function(a_,rate_){this.$val=this;if(arguments.length===0){this.a=AT.zero();this.rate=0;return;}this.a=a_;this.rate=rate_;});AM=$sliceType($emptyInterface);AO=$sliceType($Uint8);AS=$sliceType($Uint64);AT=$arrayType($Uint64,25);AW=$ptrType(AG);H=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=C.FromSponge(AI(),a,$appendSlice(G,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewCipher224=H;I=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=C.FromSponge(AJ(),a,$appendSlice(G,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewCipher256=I;J=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=C.FromSponge(AK(),a,$appendSlice(G,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewCipher384=J;K=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=C.FromSponge(AL(),a,$appendSlice(G,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:K};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewCipher512=K;L=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=C.NewHash(H,28);$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New224=L;M=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=C.NewHash(I,32);$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a;}return;}if($f===undefined){$f={$blk:M};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New256=M;N=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=C.NewHash(J,48);$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a;}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New384=N;O=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=C.NewHash(K,64);$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a;}return;}if($f===undefined){$f={$blk:O};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New512=O;U=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,ey,ez,f,fa,fb,fc,fd,fe,ff,fg,fh,fi,fj,fk,fl,fm,fn,fo,fp,fq,fr,fs,ft,fu,fv,fw,fx,fy,fz,g,ga,gb,gc,gd,ge,gf,gg,gh,gi,gj,gk,gl,gm,gn,go,gp,gq,gr,gs,gt,gu,gv,gw,gx,gy,gz,h,ha,hb,hc,hd,he,hf,hg,hh,hi,hj,hk,hl,hm,hn,ho,hp,hq,hr,hs,ht,hu,hv,hw,hx,hy,hz,i,ia,ib,ic,id,ie,ig,ih,ii,ij,ik,il,im,io,ip,iq,ir,is,it,iu,iv,iw,ix,iy,iz,j,ja,jb,jc,jd,je,jf,jg,jh,ji,jj,jk,jl,jm,jn,jo,jp,jq,jr,js,jt,ju,jv,jw,jx,jy,jz,k,ka,kb,kc,kd,ke,kf,kg,kh,ki,kj,kk,kl,km,kn,ko,kp,kq,kr,ks,kt,ku,kv,kw,kx,ky,kz,l,la,lb,lc,ld,le,lf,lg,lh,li,lj,lk,ll,lm,ln,lo,lp,lq,lr,ls,lt,lu,lv,lw,lx,ly,lz,m,ma,mb,mc,md,me,mf,mg,mh,mi,mj,mk,ml,mm,mn,mo,mp,mq,mr,ms,mt,mu,mv,mw,mx,my,mz,n,na,nb,nc,nd,ne,nf,ng,nh,ni,nj,nk,nl,nm,nn,no,np,nq,nr,ns,nt,nu,nv,nw,nx,ny,nz,o,oa,ob,oc,od,oe,of,og,oh,oi,oj,ok,ol,om,on,oo,op,oq,or,os,ot,ou,ov,ow,ox,oy,oz,p,pa,pb,pc,pd,pe,pf,pg,ph,pi,pj,pk,pl,pm,pn,po,pp,pq,pr,ps,pt,pu,pv,pw,px,py,pz,q,qa,qb,qc,qd,qe,qf,qg,qh,qi,qj,qk,ql,qm,qn,qo,qp,qq,qr,qs,qt,qu,qv,qw,qx,qy,qz,r,ra,rb,rc,rd,re,rf,rg,rh,ri,rj,rk,rl,rm,rn,ro,rp,rq,rr,rs,rt,ru,rv,rw,rx,ry,rz,s,sa,sb,sc,sd,se,sf,sg,sh,si,sj,sk,sl,sm,sn,so,sp,sq,sr,ss,st,su,sv,sw,sx,sy,sz,t,ta,tb,tc,td,te,tf,tg,th,ti,tj,tk,tl,tm,tn,to,tp,tq,tr,ts,tt,tu,tv,tw,tx,ty,tz,u,ua,ub,uc,ud,ue,uf,ug,uh,ui,uj,uk,ul,um,un,uo,up,uq,ur,us,ut,uu,uv,uw,ux,uy,uz,v,va,vb,vc,vd,ve,vf,vg,vh,vi,vj,vk,vl,vm,vn,vo,vp,vq,vr,vs,vt,vu,vv,vw,vx,vy,vz,w,wa,wb,wc,wd,we,wf,wg,wh,wi,wj,wk,wl,wm,wn,wo,wp,wq,wr,ws,wt,wu,wv,ww,wx,wy,wz,x,xa,xb,xc,xd,xe,xf,xg,xh,xi,xj,xk,xl,xm,xn,xo,xp,xq,xr,xs,xt,xu,xv,xw,xx,xy,xz,y,z;b=new $Uint64(0,0);c=new $Uint64(0,0);d=new $Uint64(0,0);e=new $Uint64(0,0);f=new $Uint64(0,0);g=new $Uint64(0,0);h=new $Uint64(0,0);i=new $Uint64(0,0);j=new $Uint64(0,0);k=new $Uint64(0,0);l=new $Uint64(0,0);m=b;n=c;o=d;p=e;q=f;r=g;s=h;t=i;u=j;v=k;w=l;x=0;while(true){if(!(x<24)){break;}n=(y=(z=(aa=(ab=(a.nilCheck,a[0]),ac=(a.nilCheck,a[5]),new $Uint64(ab.$high^ac.$high,(ab.$low^ac.$low)>>>0)),ad=(a.nilCheck,a[10]),new $Uint64(aa.$high^ad.$high,(aa.$low^ad.$low)>>>0)),ae=(a.nilCheck,a[15]),new $Uint64(z.$high^ae.$high,(z.$low^ae.$low)>>>0)),af=(a.nilCheck,a[20]),new $Uint64(y.$high^af.$high,(y.$low^af.$low)>>>0));o=(ag=(ah=(ai=(aj=(a.nilCheck,a[1]),ak=(a.nilCheck,a[6]),new $Uint64(aj.$high^ak.$high,(aj.$low^ak.$low)>>>0)),al=(a.nilCheck,a[11]),new $Uint64(ai.$high^al.$high,(ai.$low^al.$low)>>>0)),am=(a.nilCheck,a[16]),new $Uint64(ah.$high^am.$high,(ah.$low^am.$low)>>>0)),an=(a.nilCheck,a[21]),new $Uint64(ag.$high^an.$high,(ag.$low^an.$low)>>>0));p=(ao=(ap=(aq=(ar=(a.nilCheck,a[2]),as=(a.nilCheck,a[7]),new $Uint64(ar.$high^as.$high,(ar.$low^as.$low)>>>0)),at=(a.nilCheck,a[12]),new $Uint64(aq.$high^at.$high,(aq.$low^at.$low)>>>0)),au=(a.nilCheck,a[17]),new $Uint64(ap.$high^au.$high,(ap.$low^au.$low)>>>0)),av=(a.nilCheck,a[22]),new $Uint64(ao.$high^av.$high,(ao.$low^av.$low)>>>0));q=(aw=(ax=(ay=(az=(a.nilCheck,a[3]),ba=(a.nilCheck,a[8]),new $Uint64(az.$high^ba.$high,(az.$low^ba.$low)>>>0)),bb=(a.nilCheck,a[13]),new $Uint64(ay.$high^bb.$high,(ay.$low^bb.$low)>>>0)),bc=(a.nilCheck,a[18]),new $Uint64(ax.$high^bc.$high,(ax.$low^bc.$low)>>>0)),bd=(a.nilCheck,a[23]),new $Uint64(aw.$high^bd.$high,(aw.$low^bd.$low)>>>0));r=(be=(bf=(bg=(bh=(a.nilCheck,a[4]),bi=(a.nilCheck,a[9]),new $Uint64(bh.$high^bi.$high,(bh.$low^bi.$low)>>>0)),bj=(a.nilCheck,a[14]),new $Uint64(bg.$high^bj.$high,(bg.$low^bj.$low)>>>0)),bk=(a.nilCheck,a[19]),new $Uint64(bf.$high^bk.$high,(bf.$low^bk.$low)>>>0)),bl=(a.nilCheck,a[24]),new $Uint64(be.$high^bl.$high,(be.$low^bl.$low)>>>0));s=(bm=(bn=$shiftLeft64(o,1),bo=$shiftRightUint64(o,63),new $Uint64(bn.$high|bo.$high,(bn.$low|bo.$low)>>>0)),new $Uint64(r.$high^bm.$high,(r.$low^bm.$low)>>>0));t=(bp=(bq=$shiftLeft64(p,1),br=$shiftRightUint64(p,63),new $Uint64(bq.$high|br.$high,(bq.$low|br.$low)>>>0)),new $Uint64(n.$high^bp.$high,(n.$low^bp.$low)>>>0));u=(bs=(bt=$shiftLeft64(q,1),bu=$shiftRightUint64(q,63),new $Uint64(bt.$high|bu.$high,(bt.$low|bu.$low)>>>0)),new $Uint64(o.$high^bs.$high,(o.$low^bs.$low)>>>0));v=(bv=(bw=$shiftLeft64(r,1),bx=$shiftRightUint64(r,63),new $Uint64(bw.$high|bx.$high,(bw.$low|bx.$low)>>>0)),new $Uint64(p.$high^bv.$high,(p.$low^bv.$low)>>>0));w=(by=(bz=$shiftLeft64(n,1),ca=$shiftRightUint64(n,63),new $Uint64(bz.$high|ca.$high,(bz.$low|ca.$low)>>>0)),new $Uint64(q.$high^by.$high,(q.$low^by.$low)>>>0));n=(cb=(a.nilCheck,a[0]),new $Uint64(cb.$high^s.$high,(cb.$low^s.$low)>>>0));m=(cc=(a.nilCheck,a[6]),new $Uint64(cc.$high^t.$high,(cc.$low^t.$low)>>>0));o=(cd=$shiftLeft64(m,44),ce=$shiftRightUint64(m,20),new $Uint64(cd.$high|ce.$high,(cd.$low|ce.$low)>>>0));m=(cf=(a.nilCheck,a[12]),new $Uint64(cf.$high^u.$high,(cf.$low^u.$low)>>>0));p=(cg=$shiftLeft64(m,43),ch=$shiftRightUint64(m,21),new $Uint64(cg.$high|ch.$high,(cg.$low|ch.$low)>>>0));m=(ci=(a.nilCheck,a[18]),new $Uint64(ci.$high^v.$high,(ci.$low^v.$low)>>>0));q=(cj=$shiftLeft64(m,21),ck=$shiftRightUint64(m,43),new $Uint64(cj.$high|ck.$high,(cj.$low|ck.$low)>>>0));m=(cl=(a.nilCheck,a[24]),new $Uint64(cl.$high^w.$high,(cl.$low^w.$low)>>>0));r=(cm=$shiftLeft64(m,14),cn=$shiftRightUint64(m,50),new $Uint64(cm.$high|cn.$high,(cm.$low|cn.$low)>>>0));a.nilCheck,a[0]=(co=(cp=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^cp.$high,(n.$low^cp.$low)>>>0)),cq=((x<0||x>=T.length)?($throwRuntimeError("index out of range"),undefined):T[x]),new $Uint64(co.$high^cq.$high,(co.$low^cq.$low)>>>0));a.nilCheck,a[6]=(cr=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^cr.$high,(o.$low^cr.$low)>>>0));a.nilCheck,a[12]=(cs=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^cs.$high,(p.$low^cs.$low)>>>0));a.nilCheck,a[18]=(ct=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ct.$high,(q.$low^ct.$low)>>>0));a.nilCheck,a[24]=(cu=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^cu.$high,(r.$low^cu.$low)>>>0));m=(cv=(a.nilCheck,a[10]),new $Uint64(cv.$high^s.$high,(cv.$low^s.$low)>>>0));p=(cw=$shiftLeft64(m,3),cx=$shiftRightUint64(m,61),new $Uint64(cw.$high|cx.$high,(cw.$low|cx.$low)>>>0));m=(cy=(a.nilCheck,a[16]),new $Uint64(cy.$high^t.$high,(cy.$low^t.$low)>>>0));q=(cz=$shiftLeft64(m,45),da=$shiftRightUint64(m,19),new $Uint64(cz.$high|da.$high,(cz.$low|da.$low)>>>0));m=(db=(a.nilCheck,a[22]),new $Uint64(db.$high^u.$high,(db.$low^u.$low)>>>0));r=(dc=$shiftLeft64(m,61),dd=$shiftRightUint64(m,3),new $Uint64(dc.$high|dd.$high,(dc.$low|dd.$low)>>>0));m=(de=(a.nilCheck,a[3]),new $Uint64(de.$high^v.$high,(de.$low^v.$low)>>>0));n=(df=$shiftLeft64(m,28),dg=$shiftRightUint64(m,36),new $Uint64(df.$high|dg.$high,(df.$low|dg.$low)>>>0));m=(dh=(a.nilCheck,a[9]),new $Uint64(dh.$high^w.$high,(dh.$low^w.$low)>>>0));o=(di=$shiftLeft64(m,20),dj=$shiftRightUint64(m,44),new $Uint64(di.$high|dj.$high,(di.$low|dj.$low)>>>0));a.nilCheck,a[10]=(dk=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^dk.$high,(n.$low^dk.$low)>>>0));a.nilCheck,a[16]=(dl=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^dl.$high,(o.$low^dl.$low)>>>0));a.nilCheck,a[22]=(dm=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^dm.$high,(p.$low^dm.$low)>>>0));a.nilCheck,a[3]=(dn=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^dn.$high,(q.$low^dn.$low)>>>0));a.nilCheck,a[9]=(dp=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^dp.$high,(r.$low^dp.$low)>>>0));m=(dq=(a.nilCheck,a[20]),new $Uint64(dq.$high^s.$high,(dq.$low^s.$low)>>>0));r=(dr=$shiftLeft64(m,18),ds=$shiftRightUint64(m,46),new $Uint64(dr.$high|ds.$high,(dr.$low|ds.$low)>>>0));m=(dt=(a.nilCheck,a[1]),new $Uint64(dt.$high^t.$high,(dt.$low^t.$low)>>>0));n=(du=$shiftLeft64(m,1),dv=$shiftRightUint64(m,63),new $Uint64(du.$high|dv.$high,(du.$low|dv.$low)>>>0));m=(dw=(a.nilCheck,a[7]),new $Uint64(dw.$high^u.$high,(dw.$low^u.$low)>>>0));o=(dx=$shiftLeft64(m,6),dy=$shiftRightUint64(m,58),new $Uint64(dx.$high|dy.$high,(dx.$low|dy.$low)>>>0));m=(dz=(a.nilCheck,a[13]),new $Uint64(dz.$high^v.$high,(dz.$low^v.$low)>>>0));p=(ea=$shiftLeft64(m,25),eb=$shiftRightUint64(m,39),new $Uint64(ea.$high|eb.$high,(ea.$low|eb.$low)>>>0));m=(ec=(a.nilCheck,a[19]),new $Uint64(ec.$high^w.$high,(ec.$low^w.$low)>>>0));q=(ed=$shiftLeft64(m,8),ee=$shiftRightUint64(m,56),new $Uint64(ed.$high|ee.$high,(ed.$low|ee.$low)>>>0));a.nilCheck,a[20]=(ef=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ef.$high,(n.$low^ef.$low)>>>0));a.nilCheck,a[1]=(eg=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^eg.$high,(o.$low^eg.$low)>>>0));a.nilCheck,a[7]=(eh=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^eh.$high,(p.$low^eh.$low)>>>0));a.nilCheck,a[13]=(ei=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ei.$high,(q.$low^ei.$low)>>>0));a.nilCheck,a[19]=(ej=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ej.$high,(r.$low^ej.$low)>>>0));m=(ek=(a.nilCheck,a[5]),new $Uint64(ek.$high^s.$high,(ek.$low^s.$low)>>>0));o=(el=$shiftLeft64(m,36),em=$shiftRightUint64(m,28),new $Uint64(el.$high|em.$high,(el.$low|em.$low)>>>0));m=(en=(a.nilCheck,a[11]),new $Uint64(en.$high^t.$high,(en.$low^t.$low)>>>0));p=(eo=$shiftLeft64(m,10),ep=$shiftRightUint64(m,54),new $Uint64(eo.$high|ep.$high,(eo.$low|ep.$low)>>>0));m=(eq=(a.nilCheck,a[17]),new $Uint64(eq.$high^u.$high,(eq.$low^u.$low)>>>0));q=(er=$shiftLeft64(m,15),es=$shiftRightUint64(m,49),new $Uint64(er.$high|es.$high,(er.$low|es.$low)>>>0));m=(et=(a.nilCheck,a[23]),new $Uint64(et.$high^v.$high,(et.$low^v.$low)>>>0));r=(eu=$shiftLeft64(m,56),ev=$shiftRightUint64(m,8),new $Uint64(eu.$high|ev.$high,(eu.$low|ev.$low)>>>0));m=(ew=(a.nilCheck,a[4]),new $Uint64(ew.$high^w.$high,(ew.$low^w.$low)>>>0));n=(ex=$shiftLeft64(m,27),ey=$shiftRightUint64(m,37),new $Uint64(ex.$high|ey.$high,(ex.$low|ey.$low)>>>0));a.nilCheck,a[5]=(ez=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ez.$high,(n.$low^ez.$low)>>>0));a.nilCheck,a[11]=(fa=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^fa.$high,(o.$low^fa.$low)>>>0));a.nilCheck,a[17]=(fb=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^fb.$high,(p.$low^fb.$low)>>>0));a.nilCheck,a[23]=(fc=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^fc.$high,(q.$low^fc.$low)>>>0));a.nilCheck,a[4]=(fd=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^fd.$high,(r.$low^fd.$low)>>>0));m=(fe=(a.nilCheck,a[15]),new $Uint64(fe.$high^s.$high,(fe.$low^s.$low)>>>0));q=(ff=$shiftLeft64(m,41),fg=$shiftRightUint64(m,23),new $Uint64(ff.$high|fg.$high,(ff.$low|fg.$low)>>>0));m=(fh=(a.nilCheck,a[21]),new $Uint64(fh.$high^t.$high,(fh.$low^t.$low)>>>0));r=(fi=$shiftLeft64(m,2),fj=$shiftRightUint64(m,62),new $Uint64(fi.$high|fj.$high,(fi.$low|fj.$low)>>>0));m=(fk=(a.nilCheck,a[2]),new $Uint64(fk.$high^u.$high,(fk.$low^u.$low)>>>0));n=(fl=$shiftLeft64(m,62),fm=$shiftRightUint64(m,2),new $Uint64(fl.$high|fm.$high,(fl.$low|fm.$low)>>>0));m=(fn=(a.nilCheck,a[8]),new $Uint64(fn.$high^v.$high,(fn.$low^v.$low)>>>0));o=(fo=$shiftLeft64(m,55),fp=$shiftRightUint64(m,9),new $Uint64(fo.$high|fp.$high,(fo.$low|fp.$low)>>>0));m=(fq=(a.nilCheck,a[14]),new $Uint64(fq.$high^w.$high,(fq.$low^w.$low)>>>0));p=(fr=$shiftLeft64(m,39),fs=$shiftRightUint64(m,25),new $Uint64(fr.$high|fs.$high,(fr.$low|fs.$low)>>>0));a.nilCheck,a[15]=(ft=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ft.$high,(n.$low^ft.$low)>>>0));a.nilCheck,a[21]=(fu=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^fu.$high,(o.$low^fu.$low)>>>0));a.nilCheck,a[2]=(fv=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^fv.$high,(p.$low^fv.$low)>>>0));a.nilCheck,a[8]=(fw=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^fw.$high,(q.$low^fw.$low)>>>0));a.nilCheck,a[14]=(fx=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^fx.$high,(r.$low^fx.$low)>>>0));n=(fy=(fz=(ga=(gb=(a.nilCheck,a[0]),gc=(a.nilCheck,a[5]),new $Uint64(gb.$high^gc.$high,(gb.$low^gc.$low)>>>0)),gd=(a.nilCheck,a[10]),new $Uint64(ga.$high^gd.$high,(ga.$low^gd.$low)>>>0)),ge=(a.nilCheck,a[15]),new $Uint64(fz.$high^ge.$high,(fz.$low^ge.$low)>>>0)),gf=(a.nilCheck,a[20]),new $Uint64(fy.$high^gf.$high,(fy.$low^gf.$low)>>>0));o=(gg=(gh=(gi=(gj=(a.nilCheck,a[1]),gk=(a.nilCheck,a[6]),new $Uint64(gj.$high^gk.$high,(gj.$low^gk.$low)>>>0)),gl=(a.nilCheck,a[11]),new $Uint64(gi.$high^gl.$high,(gi.$low^gl.$low)>>>0)),gm=(a.nilCheck,a[16]),new $Uint64(gh.$high^gm.$high,(gh.$low^gm.$low)>>>0)),gn=(a.nilCheck,a[21]),new $Uint64(gg.$high^gn.$high,(gg.$low^gn.$low)>>>0));p=(go=(gp=(gq=(gr=(a.nilCheck,a[2]),gs=(a.nilCheck,a[7]),new $Uint64(gr.$high^gs.$high,(gr.$low^gs.$low)>>>0)),gt=(a.nilCheck,a[12]),new $Uint64(gq.$high^gt.$high,(gq.$low^gt.$low)>>>0)),gu=(a.nilCheck,a[17]),new $Uint64(gp.$high^gu.$high,(gp.$low^gu.$low)>>>0)),gv=(a.nilCheck,a[22]),new $Uint64(go.$high^gv.$high,(go.$low^gv.$low)>>>0));q=(gw=(gx=(gy=(gz=(a.nilCheck,a[3]),ha=(a.nilCheck,a[8]),new $Uint64(gz.$high^ha.$high,(gz.$low^ha.$low)>>>0)),hb=(a.nilCheck,a[13]),new $Uint64(gy.$high^hb.$high,(gy.$low^hb.$low)>>>0)),hc=(a.nilCheck,a[18]),new $Uint64(gx.$high^hc.$high,(gx.$low^hc.$low)>>>0)),hd=(a.nilCheck,a[23]),new $Uint64(gw.$high^hd.$high,(gw.$low^hd.$low)>>>0));r=(he=(hf=(hg=(hh=(a.nilCheck,a[4]),hi=(a.nilCheck,a[9]),new $Uint64(hh.$high^hi.$high,(hh.$low^hi.$low)>>>0)),hj=(a.nilCheck,a[14]),new $Uint64(hg.$high^hj.$high,(hg.$low^hj.$low)>>>0)),hk=(a.nilCheck,a[19]),new $Uint64(hf.$high^hk.$high,(hf.$low^hk.$low)>>>0)),hl=(a.nilCheck,a[24]),new $Uint64(he.$high^hl.$high,(he.$low^hl.$low)>>>0));s=(hm=(hn=$shiftLeft64(o,1),ho=$shiftRightUint64(o,63),new $Uint64(hn.$high|ho.$high,(hn.$low|ho.$low)>>>0)),new $Uint64(r.$high^hm.$high,(r.$low^hm.$low)>>>0));t=(hp=(hq=$shiftLeft64(p,1),hr=$shiftRightUint64(p,63),new $Uint64(hq.$high|hr.$high,(hq.$low|hr.$low)>>>0)),new $Uint64(n.$high^hp.$high,(n.$low^hp.$low)>>>0));u=(hs=(ht=$shiftLeft64(q,1),hu=$shiftRightUint64(q,63),new $Uint64(ht.$high|hu.$high,(ht.$low|hu.$low)>>>0)),new $Uint64(o.$high^hs.$high,(o.$low^hs.$low)>>>0));v=(hv=(hw=$shiftLeft64(r,1),hx=$shiftRightUint64(r,63),new $Uint64(hw.$high|hx.$high,(hw.$low|hx.$low)>>>0)),new $Uint64(p.$high^hv.$high,(p.$low^hv.$low)>>>0));w=(hy=(hz=$shiftLeft64(n,1),ia=$shiftRightUint64(n,63),new $Uint64(hz.$high|ia.$high,(hz.$low|ia.$low)>>>0)),new $Uint64(q.$high^hy.$high,(q.$low^hy.$low)>>>0));n=(ib=(a.nilCheck,a[0]),new $Uint64(ib.$high^s.$high,(ib.$low^s.$low)>>>0));m=(ic=(a.nilCheck,a[16]),new $Uint64(ic.$high^t.$high,(ic.$low^t.$low)>>>0));o=(id=$shiftLeft64(m,44),ie=$shiftRightUint64(m,20),new $Uint64(id.$high|ie.$high,(id.$low|ie.$low)>>>0));m=(ig=(a.nilCheck,a[7]),new $Uint64(ig.$high^u.$high,(ig.$low^u.$low)>>>0));p=(ih=$shiftLeft64(m,43),ii=$shiftRightUint64(m,21),new $Uint64(ih.$high|ii.$high,(ih.$low|ii.$low)>>>0));m=(ij=(a.nilCheck,a[23]),new $Uint64(ij.$high^v.$high,(ij.$low^v.$low)>>>0));q=(ik=$shiftLeft64(m,21),il=$shiftRightUint64(m,43),new $Uint64(ik.$high|il.$high,(ik.$low|il.$low)>>>0));m=(im=(a.nilCheck,a[14]),new $Uint64(im.$high^w.$high,(im.$low^w.$low)>>>0));r=(io=$shiftLeft64(m,14),ip=$shiftRightUint64(m,50),new $Uint64(io.$high|ip.$high,(io.$low|ip.$low)>>>0));a.nilCheck,a[0]=(iq=(ir=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ir.$high,(n.$low^ir.$low)>>>0)),is=(it=x+1>>0,((it<0||it>=T.length)?($throwRuntimeError("index out of range"),undefined):T[it])),new $Uint64(iq.$high^is.$high,(iq.$low^is.$low)>>>0));a.nilCheck,a[16]=(iu=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^iu.$high,(o.$low^iu.$low)>>>0));a.nilCheck,a[7]=(iv=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^iv.$high,(p.$low^iv.$low)>>>0));a.nilCheck,a[23]=(iw=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^iw.$high,(q.$low^iw.$low)>>>0));a.nilCheck,a[14]=(ix=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ix.$high,(r.$low^ix.$low)>>>0));m=(iy=(a.nilCheck,a[20]),new $Uint64(iy.$high^s.$high,(iy.$low^s.$low)>>>0));p=(iz=$shiftLeft64(m,3),ja=$shiftRightUint64(m,61),new $Uint64(iz.$high|ja.$high,(iz.$low|ja.$low)>>>0));m=(jb=(a.nilCheck,a[11]),new $Uint64(jb.$high^t.$high,(jb.$low^t.$low)>>>0));q=(jc=$shiftLeft64(m,45),jd=$shiftRightUint64(m,19),new $Uint64(jc.$high|jd.$high,(jc.$low|jd.$low)>>>0));m=(je=(a.nilCheck,a[2]),new $Uint64(je.$high^u.$high,(je.$low^u.$low)>>>0));r=(jf=$shiftLeft64(m,61),jg=$shiftRightUint64(m,3),new $Uint64(jf.$high|jg.$high,(jf.$low|jg.$low)>>>0));m=(jh=(a.nilCheck,a[18]),new $Uint64(jh.$high^v.$high,(jh.$low^v.$low)>>>0));n=(ji=$shiftLeft64(m,28),jj=$shiftRightUint64(m,36),new $Uint64(ji.$high|jj.$high,(ji.$low|jj.$low)>>>0));m=(jk=(a.nilCheck,a[9]),new $Uint64(jk.$high^w.$high,(jk.$low^w.$low)>>>0));o=(jl=$shiftLeft64(m,20),jm=$shiftRightUint64(m,44),new $Uint64(jl.$high|jm.$high,(jl.$low|jm.$low)>>>0));a.nilCheck,a[20]=(jn=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^jn.$high,(n.$low^jn.$low)>>>0));a.nilCheck,a[11]=(jo=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^jo.$high,(o.$low^jo.$low)>>>0));a.nilCheck,a[2]=(jp=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^jp.$high,(p.$low^jp.$low)>>>0));a.nilCheck,a[18]=(jq=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^jq.$high,(q.$low^jq.$low)>>>0));a.nilCheck,a[9]=(jr=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^jr.$high,(r.$low^jr.$low)>>>0));m=(js=(a.nilCheck,a[15]),new $Uint64(js.$high^s.$high,(js.$low^s.$low)>>>0));r=(jt=$shiftLeft64(m,18),ju=$shiftRightUint64(m,46),new $Uint64(jt.$high|ju.$high,(jt.$low|ju.$low)>>>0));m=(jv=(a.nilCheck,a[6]),new $Uint64(jv.$high^t.$high,(jv.$low^t.$low)>>>0));n=(jw=$shiftLeft64(m,1),jx=$shiftRightUint64(m,63),new $Uint64(jw.$high|jx.$high,(jw.$low|jx.$low)>>>0));m=(jy=(a.nilCheck,a[22]),new $Uint64(jy.$high^u.$high,(jy.$low^u.$low)>>>0));o=(jz=$shiftLeft64(m,6),ka=$shiftRightUint64(m,58),new $Uint64(jz.$high|ka.$high,(jz.$low|ka.$low)>>>0));m=(kb=(a.nilCheck,a[13]),new $Uint64(kb.$high^v.$high,(kb.$low^v.$low)>>>0));p=(kc=$shiftLeft64(m,25),kd=$shiftRightUint64(m,39),new $Uint64(kc.$high|kd.$high,(kc.$low|kd.$low)>>>0));m=(ke=(a.nilCheck,a[4]),new $Uint64(ke.$high^w.$high,(ke.$low^w.$low)>>>0));q=(kf=$shiftLeft64(m,8),kg=$shiftRightUint64(m,56),new $Uint64(kf.$high|kg.$high,(kf.$low|kg.$low)>>>0));a.nilCheck,a[15]=(kh=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^kh.$high,(n.$low^kh.$low)>>>0));a.nilCheck,a[6]=(ki=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^ki.$high,(o.$low^ki.$low)>>>0));a.nilCheck,a[22]=(kj=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^kj.$high,(p.$low^kj.$low)>>>0));a.nilCheck,a[13]=(kk=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^kk.$high,(q.$low^kk.$low)>>>0));a.nilCheck,a[4]=(kl=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^kl.$high,(r.$low^kl.$low)>>>0));m=(km=(a.nilCheck,a[10]),new $Uint64(km.$high^s.$high,(km.$low^s.$low)>>>0));o=(kn=$shiftLeft64(m,36),ko=$shiftRightUint64(m,28),new $Uint64(kn.$high|ko.$high,(kn.$low|ko.$low)>>>0));m=(kp=(a.nilCheck,a[1]),new $Uint64(kp.$high^t.$high,(kp.$low^t.$low)>>>0));p=(kq=$shiftLeft64(m,10),kr=$shiftRightUint64(m,54),new $Uint64(kq.$high|kr.$high,(kq.$low|kr.$low)>>>0));m=(ks=(a.nilCheck,a[17]),new $Uint64(ks.$high^u.$high,(ks.$low^u.$low)>>>0));q=(kt=$shiftLeft64(m,15),ku=$shiftRightUint64(m,49),new $Uint64(kt.$high|ku.$high,(kt.$low|ku.$low)>>>0));m=(kv=(a.nilCheck,a[8]),new $Uint64(kv.$high^v.$high,(kv.$low^v.$low)>>>0));r=(kw=$shiftLeft64(m,56),kx=$shiftRightUint64(m,8),new $Uint64(kw.$high|kx.$high,(kw.$low|kx.$low)>>>0));m=(ky=(a.nilCheck,a[24]),new $Uint64(ky.$high^w.$high,(ky.$low^w.$low)>>>0));n=(kz=$shiftLeft64(m,27),la=$shiftRightUint64(m,37),new $Uint64(kz.$high|la.$high,(kz.$low|la.$low)>>>0));a.nilCheck,a[10]=(lb=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^lb.$high,(n.$low^lb.$low)>>>0));a.nilCheck,a[1]=(lc=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^lc.$high,(o.$low^lc.$low)>>>0));a.nilCheck,a[17]=(ld=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^ld.$high,(p.$low^ld.$low)>>>0));a.nilCheck,a[8]=(le=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^le.$high,(q.$low^le.$low)>>>0));a.nilCheck,a[24]=(lf=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^lf.$high,(r.$low^lf.$low)>>>0));m=(lg=(a.nilCheck,a[5]),new $Uint64(lg.$high^s.$high,(lg.$low^s.$low)>>>0));q=(lh=$shiftLeft64(m,41),li=$shiftRightUint64(m,23),new $Uint64(lh.$high|li.$high,(lh.$low|li.$low)>>>0));m=(lj=(a.nilCheck,a[21]),new $Uint64(lj.$high^t.$high,(lj.$low^t.$low)>>>0));r=(lk=$shiftLeft64(m,2),ll=$shiftRightUint64(m,62),new $Uint64(lk.$high|ll.$high,(lk.$low|ll.$low)>>>0));m=(lm=(a.nilCheck,a[12]),new $Uint64(lm.$high^u.$high,(lm.$low^u.$low)>>>0));n=(ln=$shiftLeft64(m,62),lo=$shiftRightUint64(m,2),new $Uint64(ln.$high|lo.$high,(ln.$low|lo.$low)>>>0));m=(lp=(a.nilCheck,a[3]),new $Uint64(lp.$high^v.$high,(lp.$low^v.$low)>>>0));o=(lq=$shiftLeft64(m,55),lr=$shiftRightUint64(m,9),new $Uint64(lq.$high|lr.$high,(lq.$low|lr.$low)>>>0));m=(ls=(a.nilCheck,a[19]),new $Uint64(ls.$high^w.$high,(ls.$low^w.$low)>>>0));p=(lt=$shiftLeft64(m,39),lu=$shiftRightUint64(m,25),new $Uint64(lt.$high|lu.$high,(lt.$low|lu.$low)>>>0));a.nilCheck,a[5]=(lv=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^lv.$high,(n.$low^lv.$low)>>>0));a.nilCheck,a[21]=(lw=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^lw.$high,(o.$low^lw.$low)>>>0));a.nilCheck,a[12]=(lx=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^lx.$high,(p.$low^lx.$low)>>>0));a.nilCheck,a[3]=(ly=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ly.$high,(q.$low^ly.$low)>>>0));a.nilCheck,a[19]=(lz=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^lz.$high,(r.$low^lz.$low)>>>0));n=(ma=(mb=(mc=(md=(a.nilCheck,a[0]),me=(a.nilCheck,a[5]),new $Uint64(md.$high^me.$high,(md.$low^me.$low)>>>0)),mf=(a.nilCheck,a[10]),new $Uint64(mc.$high^mf.$high,(mc.$low^mf.$low)>>>0)),mg=(a.nilCheck,a[15]),new $Uint64(mb.$high^mg.$high,(mb.$low^mg.$low)>>>0)),mh=(a.nilCheck,a[20]),new $Uint64(ma.$high^mh.$high,(ma.$low^mh.$low)>>>0));o=(mi=(mj=(mk=(ml=(a.nilCheck,a[1]),mm=(a.nilCheck,a[6]),new $Uint64(ml.$high^mm.$high,(ml.$low^mm.$low)>>>0)),mn=(a.nilCheck,a[11]),new $Uint64(mk.$high^mn.$high,(mk.$low^mn.$low)>>>0)),mo=(a.nilCheck,a[16]),new $Uint64(mj.$high^mo.$high,(mj.$low^mo.$low)>>>0)),mp=(a.nilCheck,a[21]),new $Uint64(mi.$high^mp.$high,(mi.$low^mp.$low)>>>0));p=(mq=(mr=(ms=(mt=(a.nilCheck,a[2]),mu=(a.nilCheck,a[7]),new $Uint64(mt.$high^mu.$high,(mt.$low^mu.$low)>>>0)),mv=(a.nilCheck,a[12]),new $Uint64(ms.$high^mv.$high,(ms.$low^mv.$low)>>>0)),mw=(a.nilCheck,a[17]),new $Uint64(mr.$high^mw.$high,(mr.$low^mw.$low)>>>0)),mx=(a.nilCheck,a[22]),new $Uint64(mq.$high^mx.$high,(mq.$low^mx.$low)>>>0));q=(my=(mz=(na=(nb=(a.nilCheck,a[3]),nc=(a.nilCheck,a[8]),new $Uint64(nb.$high^nc.$high,(nb.$low^nc.$low)>>>0)),nd=(a.nilCheck,a[13]),new $Uint64(na.$high^nd.$high,(na.$low^nd.$low)>>>0)),ne=(a.nilCheck,a[18]),new $Uint64(mz.$high^ne.$high,(mz.$low^ne.$low)>>>0)),nf=(a.nilCheck,a[23]),new $Uint64(my.$high^nf.$high,(my.$low^nf.$low)>>>0));r=(ng=(nh=(ni=(nj=(a.nilCheck,a[4]),nk=(a.nilCheck,a[9]),new $Uint64(nj.$high^nk.$high,(nj.$low^nk.$low)>>>0)),nl=(a.nilCheck,a[14]),new $Uint64(ni.$high^nl.$high,(ni.$low^nl.$low)>>>0)),nm=(a.nilCheck,a[19]),new $Uint64(nh.$high^nm.$high,(nh.$low^nm.$low)>>>0)),nn=(a.nilCheck,a[24]),new $Uint64(ng.$high^nn.$high,(ng.$low^nn.$low)>>>0));s=(no=(np=$shiftLeft64(o,1),nq=$shiftRightUint64(o,63),new $Uint64(np.$high|nq.$high,(np.$low|nq.$low)>>>0)),new $Uint64(r.$high^no.$high,(r.$low^no.$low)>>>0));t=(nr=(ns=$shiftLeft64(p,1),nt=$shiftRightUint64(p,63),new $Uint64(ns.$high|nt.$high,(ns.$low|nt.$low)>>>0)),new $Uint64(n.$high^nr.$high,(n.$low^nr.$low)>>>0));u=(nu=(nv=$shiftLeft64(q,1),nw=$shiftRightUint64(q,63),new $Uint64(nv.$high|nw.$high,(nv.$low|nw.$low)>>>0)),new $Uint64(o.$high^nu.$high,(o.$low^nu.$low)>>>0));v=(nx=(ny=$shiftLeft64(r,1),nz=$shiftRightUint64(r,63),new $Uint64(ny.$high|nz.$high,(ny.$low|nz.$low)>>>0)),new $Uint64(p.$high^nx.$high,(p.$low^nx.$low)>>>0));w=(oa=(ob=$shiftLeft64(n,1),oc=$shiftRightUint64(n,63),new $Uint64(ob.$high|oc.$high,(ob.$low|oc.$low)>>>0)),new $Uint64(q.$high^oa.$high,(q.$low^oa.$low)>>>0));n=(od=(a.nilCheck,a[0]),new $Uint64(od.$high^s.$high,(od.$low^s.$low)>>>0));m=(oe=(a.nilCheck,a[11]),new $Uint64(oe.$high^t.$high,(oe.$low^t.$low)>>>0));o=(of=$shiftLeft64(m,44),og=$shiftRightUint64(m,20),new $Uint64(of.$high|og.$high,(of.$low|og.$low)>>>0));m=(oh=(a.nilCheck,a[22]),new $Uint64(oh.$high^u.$high,(oh.$low^u.$low)>>>0));p=(oi=$shiftLeft64(m,43),oj=$shiftRightUint64(m,21),new $Uint64(oi.$high|oj.$high,(oi.$low|oj.$low)>>>0));m=(ok=(a.nilCheck,a[8]),new $Uint64(ok.$high^v.$high,(ok.$low^v.$low)>>>0));q=(ol=$shiftLeft64(m,21),om=$shiftRightUint64(m,43),new $Uint64(ol.$high|om.$high,(ol.$low|om.$low)>>>0));m=(on=(a.nilCheck,a[19]),new $Uint64(on.$high^w.$high,(on.$low^w.$low)>>>0));r=(oo=$shiftLeft64(m,14),op=$shiftRightUint64(m,50),new $Uint64(oo.$high|op.$high,(oo.$low|op.$low)>>>0));a.nilCheck,a[0]=(oq=(or=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^or.$high,(n.$low^or.$low)>>>0)),os=(ot=x+2>>0,((ot<0||ot>=T.length)?($throwRuntimeError("index out of range"),undefined):T[ot])),new $Uint64(oq.$high^os.$high,(oq.$low^os.$low)>>>0));a.nilCheck,a[11]=(ou=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^ou.$high,(o.$low^ou.$low)>>>0));a.nilCheck,a[22]=(ov=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^ov.$high,(p.$low^ov.$low)>>>0));a.nilCheck,a[8]=(ow=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ow.$high,(q.$low^ow.$low)>>>0));a.nilCheck,a[19]=(ox=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ox.$high,(r.$low^ox.$low)>>>0));m=(oy=(a.nilCheck,a[15]),new $Uint64(oy.$high^s.$high,(oy.$low^s.$low)>>>0));p=(oz=$shiftLeft64(m,3),pa=$shiftRightUint64(m,61),new $Uint64(oz.$high|pa.$high,(oz.$low|pa.$low)>>>0));m=(pb=(a.nilCheck,a[1]),new $Uint64(pb.$high^t.$high,(pb.$low^t.$low)>>>0));q=(pc=$shiftLeft64(m,45),pd=$shiftRightUint64(m,19),new $Uint64(pc.$high|pd.$high,(pc.$low|pd.$low)>>>0));m=(pe=(a.nilCheck,a[12]),new $Uint64(pe.$high^u.$high,(pe.$low^u.$low)>>>0));r=(pf=$shiftLeft64(m,61),pg=$shiftRightUint64(m,3),new $Uint64(pf.$high|pg.$high,(pf.$low|pg.$low)>>>0));m=(ph=(a.nilCheck,a[23]),new $Uint64(ph.$high^v.$high,(ph.$low^v.$low)>>>0));n=(pi=$shiftLeft64(m,28),pj=$shiftRightUint64(m,36),new $Uint64(pi.$high|pj.$high,(pi.$low|pj.$low)>>>0));m=(pk=(a.nilCheck,a[9]),new $Uint64(pk.$high^w.$high,(pk.$low^w.$low)>>>0));o=(pl=$shiftLeft64(m,20),pm=$shiftRightUint64(m,44),new $Uint64(pl.$high|pm.$high,(pl.$low|pm.$low)>>>0));a.nilCheck,a[15]=(pn=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^pn.$high,(n.$low^pn.$low)>>>0));a.nilCheck,a[1]=(po=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^po.$high,(o.$low^po.$low)>>>0));a.nilCheck,a[12]=(pp=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^pp.$high,(p.$low^pp.$low)>>>0));a.nilCheck,a[23]=(pq=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^pq.$high,(q.$low^pq.$low)>>>0));a.nilCheck,a[9]=(pr=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^pr.$high,(r.$low^pr.$low)>>>0));m=(ps=(a.nilCheck,a[5]),new $Uint64(ps.$high^s.$high,(ps.$low^s.$low)>>>0));r=(pt=$shiftLeft64(m,18),pu=$shiftRightUint64(m,46),new $Uint64(pt.$high|pu.$high,(pt.$low|pu.$low)>>>0));m=(pv=(a.nilCheck,a[16]),new $Uint64(pv.$high^t.$high,(pv.$low^t.$low)>>>0));n=(pw=$shiftLeft64(m,1),px=$shiftRightUint64(m,63),new $Uint64(pw.$high|px.$high,(pw.$low|px.$low)>>>0));m=(py=(a.nilCheck,a[2]),new $Uint64(py.$high^u.$high,(py.$low^u.$low)>>>0));o=(pz=$shiftLeft64(m,6),qa=$shiftRightUint64(m,58),new $Uint64(pz.$high|qa.$high,(pz.$low|qa.$low)>>>0));m=(qb=(a.nilCheck,a[13]),new $Uint64(qb.$high^v.$high,(qb.$low^v.$low)>>>0));p=(qc=$shiftLeft64(m,25),qd=$shiftRightUint64(m,39),new $Uint64(qc.$high|qd.$high,(qc.$low|qd.$low)>>>0));m=(qe=(a.nilCheck,a[24]),new $Uint64(qe.$high^w.$high,(qe.$low^w.$low)>>>0));q=(qf=$shiftLeft64(m,8),qg=$shiftRightUint64(m,56),new $Uint64(qf.$high|qg.$high,(qf.$low|qg.$low)>>>0));a.nilCheck,a[5]=(qh=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^qh.$high,(n.$low^qh.$low)>>>0));a.nilCheck,a[16]=(qi=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^qi.$high,(o.$low^qi.$low)>>>0));a.nilCheck,a[2]=(qj=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^qj.$high,(p.$low^qj.$low)>>>0));a.nilCheck,a[13]=(qk=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^qk.$high,(q.$low^qk.$low)>>>0));a.nilCheck,a[24]=(ql=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ql.$high,(r.$low^ql.$low)>>>0));m=(qm=(a.nilCheck,a[20]),new $Uint64(qm.$high^s.$high,(qm.$low^s.$low)>>>0));o=(qn=$shiftLeft64(m,36),qo=$shiftRightUint64(m,28),new $Uint64(qn.$high|qo.$high,(qn.$low|qo.$low)>>>0));m=(qp=(a.nilCheck,a[6]),new $Uint64(qp.$high^t.$high,(qp.$low^t.$low)>>>0));p=(qq=$shiftLeft64(m,10),qr=$shiftRightUint64(m,54),new $Uint64(qq.$high|qr.$high,(qq.$low|qr.$low)>>>0));m=(qs=(a.nilCheck,a[17]),new $Uint64(qs.$high^u.$high,(qs.$low^u.$low)>>>0));q=(qt=$shiftLeft64(m,15),qu=$shiftRightUint64(m,49),new $Uint64(qt.$high|qu.$high,(qt.$low|qu.$low)>>>0));m=(qv=(a.nilCheck,a[3]),new $Uint64(qv.$high^v.$high,(qv.$low^v.$low)>>>0));r=(qw=$shiftLeft64(m,56),qx=$shiftRightUint64(m,8),new $Uint64(qw.$high|qx.$high,(qw.$low|qx.$low)>>>0));m=(qy=(a.nilCheck,a[14]),new $Uint64(qy.$high^w.$high,(qy.$low^w.$low)>>>0));n=(qz=$shiftLeft64(m,27),ra=$shiftRightUint64(m,37),new $Uint64(qz.$high|ra.$high,(qz.$low|ra.$low)>>>0));a.nilCheck,a[20]=(rb=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^rb.$high,(n.$low^rb.$low)>>>0));a.nilCheck,a[6]=(rc=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^rc.$high,(o.$low^rc.$low)>>>0));a.nilCheck,a[17]=(rd=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^rd.$high,(p.$low^rd.$low)>>>0));a.nilCheck,a[3]=(re=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^re.$high,(q.$low^re.$low)>>>0));a.nilCheck,a[14]=(rf=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^rf.$high,(r.$low^rf.$low)>>>0));m=(rg=(a.nilCheck,a[10]),new $Uint64(rg.$high^s.$high,(rg.$low^s.$low)>>>0));q=(rh=$shiftLeft64(m,41),ri=$shiftRightUint64(m,23),new $Uint64(rh.$high|ri.$high,(rh.$low|ri.$low)>>>0));m=(rj=(a.nilCheck,a[21]),new $Uint64(rj.$high^t.$high,(rj.$low^t.$low)>>>0));r=(rk=$shiftLeft64(m,2),rl=$shiftRightUint64(m,62),new $Uint64(rk.$high|rl.$high,(rk.$low|rl.$low)>>>0));m=(rm=(a.nilCheck,a[7]),new $Uint64(rm.$high^u.$high,(rm.$low^u.$low)>>>0));n=(rn=$shiftLeft64(m,62),ro=$shiftRightUint64(m,2),new $Uint64(rn.$high|ro.$high,(rn.$low|ro.$low)>>>0));m=(rp=(a.nilCheck,a[18]),new $Uint64(rp.$high^v.$high,(rp.$low^v.$low)>>>0));o=(rq=$shiftLeft64(m,55),rr=$shiftRightUint64(m,9),new $Uint64(rq.$high|rr.$high,(rq.$low|rr.$low)>>>0));m=(rs=(a.nilCheck,a[4]),new $Uint64(rs.$high^w.$high,(rs.$low^w.$low)>>>0));p=(rt=$shiftLeft64(m,39),ru=$shiftRightUint64(m,25),new $Uint64(rt.$high|ru.$high,(rt.$low|ru.$low)>>>0));a.nilCheck,a[10]=(rv=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^rv.$high,(n.$low^rv.$low)>>>0));a.nilCheck,a[21]=(rw=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^rw.$high,(o.$low^rw.$low)>>>0));a.nilCheck,a[7]=(rx=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^rx.$high,(p.$low^rx.$low)>>>0));a.nilCheck,a[18]=(ry=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ry.$high,(q.$low^ry.$low)>>>0));a.nilCheck,a[4]=(rz=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^rz.$high,(r.$low^rz.$low)>>>0));n=(sa=(sb=(sc=(sd=(a.nilCheck,a[0]),se=(a.nilCheck,a[5]),new $Uint64(sd.$high^se.$high,(sd.$low^se.$low)>>>0)),sf=(a.nilCheck,a[10]),new $Uint64(sc.$high^sf.$high,(sc.$low^sf.$low)>>>0)),sg=(a.nilCheck,a[15]),new $Uint64(sb.$high^sg.$high,(sb.$low^sg.$low)>>>0)),sh=(a.nilCheck,a[20]),new $Uint64(sa.$high^sh.$high,(sa.$low^sh.$low)>>>0));o=(si=(sj=(sk=(sl=(a.nilCheck,a[1]),sm=(a.nilCheck,a[6]),new $Uint64(sl.$high^sm.$high,(sl.$low^sm.$low)>>>0)),sn=(a.nilCheck,a[11]),new $Uint64(sk.$high^sn.$high,(sk.$low^sn.$low)>>>0)),so=(a.nilCheck,a[16]),new $Uint64(sj.$high^so.$high,(sj.$low^so.$low)>>>0)),sp=(a.nilCheck,a[21]),new $Uint64(si.$high^sp.$high,(si.$low^sp.$low)>>>0));p=(sq=(sr=(ss=(st=(a.nilCheck,a[2]),su=(a.nilCheck,a[7]),new $Uint64(st.$high^su.$high,(st.$low^su.$low)>>>0)),sv=(a.nilCheck,a[12]),new $Uint64(ss.$high^sv.$high,(ss.$low^sv.$low)>>>0)),sw=(a.nilCheck,a[17]),new $Uint64(sr.$high^sw.$high,(sr.$low^sw.$low)>>>0)),sx=(a.nilCheck,a[22]),new $Uint64(sq.$high^sx.$high,(sq.$low^sx.$low)>>>0));q=(sy=(sz=(ta=(tb=(a.nilCheck,a[3]),tc=(a.nilCheck,a[8]),new $Uint64(tb.$high^tc.$high,(tb.$low^tc.$low)>>>0)),td=(a.nilCheck,a[13]),new $Uint64(ta.$high^td.$high,(ta.$low^td.$low)>>>0)),te=(a.nilCheck,a[18]),new $Uint64(sz.$high^te.$high,(sz.$low^te.$low)>>>0)),tf=(a.nilCheck,a[23]),new $Uint64(sy.$high^tf.$high,(sy.$low^tf.$low)>>>0));r=(tg=(th=(ti=(tj=(a.nilCheck,a[4]),tk=(a.nilCheck,a[9]),new $Uint64(tj.$high^tk.$high,(tj.$low^tk.$low)>>>0)),tl=(a.nilCheck,a[14]),new $Uint64(ti.$high^tl.$high,(ti.$low^tl.$low)>>>0)),tm=(a.nilCheck,a[19]),new $Uint64(th.$high^tm.$high,(th.$low^tm.$low)>>>0)),tn=(a.nilCheck,a[24]),new $Uint64(tg.$high^tn.$high,(tg.$low^tn.$low)>>>0));s=(to=(tp=$shiftLeft64(o,1),tq=$shiftRightUint64(o,63),new $Uint64(tp.$high|tq.$high,(tp.$low|tq.$low)>>>0)),new $Uint64(r.$high^to.$high,(r.$low^to.$low)>>>0));t=(tr=(ts=$shiftLeft64(p,1),tt=$shiftRightUint64(p,63),new $Uint64(ts.$high|tt.$high,(ts.$low|tt.$low)>>>0)),new $Uint64(n.$high^tr.$high,(n.$low^tr.$low)>>>0));u=(tu=(tv=$shiftLeft64(q,1),tw=$shiftRightUint64(q,63),new $Uint64(tv.$high|tw.$high,(tv.$low|tw.$low)>>>0)),new $Uint64(o.$high^tu.$high,(o.$low^tu.$low)>>>0));v=(tx=(ty=$shiftLeft64(r,1),tz=$shiftRightUint64(r,63),new $Uint64(ty.$high|tz.$high,(ty.$low|tz.$low)>>>0)),new $Uint64(p.$high^tx.$high,(p.$low^tx.$low)>>>0));w=(ua=(ub=$shiftLeft64(n,1),uc=$shiftRightUint64(n,63),new $Uint64(ub.$high|uc.$high,(ub.$low|uc.$low)>>>0)),new $Uint64(q.$high^ua.$high,(q.$low^ua.$low)>>>0));n=(ud=(a.nilCheck,a[0]),new $Uint64(ud.$high^s.$high,(ud.$low^s.$low)>>>0));m=(ue=(a.nilCheck,a[1]),new $Uint64(ue.$high^t.$high,(ue.$low^t.$low)>>>0));o=(uf=$shiftLeft64(m,44),ug=$shiftRightUint64(m,20),new $Uint64(uf.$high|ug.$high,(uf.$low|ug.$low)>>>0));m=(uh=(a.nilCheck,a[2]),new $Uint64(uh.$high^u.$high,(uh.$low^u.$low)>>>0));p=(ui=$shiftLeft64(m,43),uj=$shiftRightUint64(m,21),new $Uint64(ui.$high|uj.$high,(ui.$low|uj.$low)>>>0));m=(uk=(a.nilCheck,a[3]),new $Uint64(uk.$high^v.$high,(uk.$low^v.$low)>>>0));q=(ul=$shiftLeft64(m,21),um=$shiftRightUint64(m,43),new $Uint64(ul.$high|um.$high,(ul.$low|um.$low)>>>0));m=(un=(a.nilCheck,a[4]),new $Uint64(un.$high^w.$high,(un.$low^w.$low)>>>0));r=(uo=$shiftLeft64(m,14),up=$shiftRightUint64(m,50),new $Uint64(uo.$high|up.$high,(uo.$low|up.$low)>>>0));a.nilCheck,a[0]=(uq=(ur=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ur.$high,(n.$low^ur.$low)>>>0)),us=(ut=x+3>>0,((ut<0||ut>=T.length)?($throwRuntimeError("index out of range"),undefined):T[ut])),new $Uint64(uq.$high^us.$high,(uq.$low^us.$low)>>>0));a.nilCheck,a[1]=(uu=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^uu.$high,(o.$low^uu.$low)>>>0));a.nilCheck,a[2]=(uv=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^uv.$high,(p.$low^uv.$low)>>>0));a.nilCheck,a[3]=(uw=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^uw.$high,(q.$low^uw.$low)>>>0));a.nilCheck,a[4]=(ux=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ux.$high,(r.$low^ux.$low)>>>0));m=(uy=(a.nilCheck,a[5]),new $Uint64(uy.$high^s.$high,(uy.$low^s.$low)>>>0));p=(uz=$shiftLeft64(m,3),va=$shiftRightUint64(m,61),new $Uint64(uz.$high|va.$high,(uz.$low|va.$low)>>>0));m=(vb=(a.nilCheck,a[6]),new $Uint64(vb.$high^t.$high,(vb.$low^t.$low)>>>0));q=(vc=$shiftLeft64(m,45),vd=$shiftRightUint64(m,19),new $Uint64(vc.$high|vd.$high,(vc.$low|vd.$low)>>>0));m=(ve=(a.nilCheck,a[7]),new $Uint64(ve.$high^u.$high,(ve.$low^u.$low)>>>0));r=(vf=$shiftLeft64(m,61),vg=$shiftRightUint64(m,3),new $Uint64(vf.$high|vg.$high,(vf.$low|vg.$low)>>>0));m=(vh=(a.nilCheck,a[8]),new $Uint64(vh.$high^v.$high,(vh.$low^v.$low)>>>0));n=(vi=$shiftLeft64(m,28),vj=$shiftRightUint64(m,36),new $Uint64(vi.$high|vj.$high,(vi.$low|vj.$low)>>>0));m=(vk=(a.nilCheck,a[9]),new $Uint64(vk.$high^w.$high,(vk.$low^w.$low)>>>0));o=(vl=$shiftLeft64(m,20),vm=$shiftRightUint64(m,44),new $Uint64(vl.$high|vm.$high,(vl.$low|vm.$low)>>>0));a.nilCheck,a[5]=(vn=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^vn.$high,(n.$low^vn.$low)>>>0));a.nilCheck,a[6]=(vo=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^vo.$high,(o.$low^vo.$low)>>>0));a.nilCheck,a[7]=(vp=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^vp.$high,(p.$low^vp.$low)>>>0));a.nilCheck,a[8]=(vq=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^vq.$high,(q.$low^vq.$low)>>>0));a.nilCheck,a[9]=(vr=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^vr.$high,(r.$low^vr.$low)>>>0));m=(vs=(a.nilCheck,a[10]),new $Uint64(vs.$high^s.$high,(vs.$low^s.$low)>>>0));r=(vt=$shiftLeft64(m,18),vu=$shiftRightUint64(m,46),new $Uint64(vt.$high|vu.$high,(vt.$low|vu.$low)>>>0));m=(vv=(a.nilCheck,a[11]),new $Uint64(vv.$high^t.$high,(vv.$low^t.$low)>>>0));n=(vw=$shiftLeft64(m,1),vx=$shiftRightUint64(m,63),new $Uint64(vw.$high|vx.$high,(vw.$low|vx.$low)>>>0));m=(vy=(a.nilCheck,a[12]),new $Uint64(vy.$high^u.$high,(vy.$low^u.$low)>>>0));o=(vz=$shiftLeft64(m,6),wa=$shiftRightUint64(m,58),new $Uint64(vz.$high|wa.$high,(vz.$low|wa.$low)>>>0));m=(wb=(a.nilCheck,a[13]),new $Uint64(wb.$high^v.$high,(wb.$low^v.$low)>>>0));p=(wc=$shiftLeft64(m,25),wd=$shiftRightUint64(m,39),new $Uint64(wc.$high|wd.$high,(wc.$low|wd.$low)>>>0));m=(we=(a.nilCheck,a[14]),new $Uint64(we.$high^w.$high,(we.$low^w.$low)>>>0));q=(wf=$shiftLeft64(m,8),wg=$shiftRightUint64(m,56),new $Uint64(wf.$high|wg.$high,(wf.$low|wg.$low)>>>0));a.nilCheck,a[10]=(wh=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^wh.$high,(n.$low^wh.$low)>>>0));a.nilCheck,a[11]=(wi=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^wi.$high,(o.$low^wi.$low)>>>0));a.nilCheck,a[12]=(wj=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^wj.$high,(p.$low^wj.$low)>>>0));a.nilCheck,a[13]=(wk=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^wk.$high,(q.$low^wk.$low)>>>0));a.nilCheck,a[14]=(wl=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^wl.$high,(r.$low^wl.$low)>>>0));m=(wm=(a.nilCheck,a[15]),new $Uint64(wm.$high^s.$high,(wm.$low^s.$low)>>>0));o=(wn=$shiftLeft64(m,36),wo=$shiftRightUint64(m,28),new $Uint64(wn.$high|wo.$high,(wn.$low|wo.$low)>>>0));m=(wp=(a.nilCheck,a[16]),new $Uint64(wp.$high^t.$high,(wp.$low^t.$low)>>>0));p=(wq=$shiftLeft64(m,10),wr=$shiftRightUint64(m,54),new $Uint64(wq.$high|wr.$high,(wq.$low|wr.$low)>>>0));m=(ws=(a.nilCheck,a[17]),new $Uint64(ws.$high^u.$high,(ws.$low^u.$low)>>>0));q=(wt=$shiftLeft64(m,15),wu=$shiftRightUint64(m,49),new $Uint64(wt.$high|wu.$high,(wt.$low|wu.$low)>>>0));m=(wv=(a.nilCheck,a[18]),new $Uint64(wv.$high^v.$high,(wv.$low^v.$low)>>>0));r=(ww=$shiftLeft64(m,56),wx=$shiftRightUint64(m,8),new $Uint64(ww.$high|wx.$high,(ww.$low|wx.$low)>>>0));m=(wy=(a.nilCheck,a[19]),new $Uint64(wy.$high^w.$high,(wy.$low^w.$low)>>>0));n=(wz=$shiftLeft64(m,27),xa=$shiftRightUint64(m,37),new $Uint64(wz.$high|xa.$high,(wz.$low|xa.$low)>>>0));a.nilCheck,a[15]=(xb=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^xb.$high,(n.$low^xb.$low)>>>0));a.nilCheck,a[16]=(xc=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^xc.$high,(o.$low^xc.$low)>>>0));a.nilCheck,a[17]=(xd=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^xd.$high,(p.$low^xd.$low)>>>0));a.nilCheck,a[18]=(xe=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^xe.$high,(q.$low^xe.$low)>>>0));a.nilCheck,a[19]=(xf=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^xf.$high,(r.$low^xf.$low)>>>0));m=(xg=(a.nilCheck,a[20]),new $Uint64(xg.$high^s.$high,(xg.$low^s.$low)>>>0));q=(xh=$shiftLeft64(m,41),xi=$shiftRightUint64(m,23),new $Uint64(xh.$high|xi.$high,(xh.$low|xi.$low)>>>0));m=(xj=(a.nilCheck,a[21]),new $Uint64(xj.$high^t.$high,(xj.$low^t.$low)>>>0));r=(xk=$shiftLeft64(m,2),xl=$shiftRightUint64(m,62),new $Uint64(xk.$high|xl.$high,(xk.$low|xl.$low)>>>0));m=(xm=(a.nilCheck,a[22]),new $Uint64(xm.$high^u.$high,(xm.$low^u.$low)>>>0));n=(xn=$shiftLeft64(m,62),xo=$shiftRightUint64(m,2),new $Uint64(xn.$high|xo.$high,(xn.$low|xo.$low)>>>0));m=(xp=(a.nilCheck,a[23]),new $Uint64(xp.$high^v.$high,(xp.$low^v.$low)>>>0));o=(xq=$shiftLeft64(m,55),xr=$shiftRightUint64(m,9),new $Uint64(xq.$high|xr.$high,(xq.$low|xr.$low)>>>0));m=(xs=(a.nilCheck,a[24]),new $Uint64(xs.$high^w.$high,(xs.$low^w.$low)>>>0));p=(xt=$shiftLeft64(m,39),xu=$shiftRightUint64(m,25),new $Uint64(xt.$high|xu.$high,(xt.$low|xu.$low)>>>0));a.nilCheck,a[20]=(xv=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^xv.$high,(n.$low^xv.$low)>>>0));a.nilCheck,a[21]=(xw=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^xw.$high,(o.$low^xw.$low)>>>0));a.nilCheck,a[22]=(xx=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^xx.$high,(p.$low^xx.$low)>>>0));a.nilCheck,a[23]=(xy=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^xy.$high,(q.$low^xy.$low)>>>0));a.nilCheck,a[24]=(xz=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^xz.$high,(r.$low^xz.$low)>>>0));x=x+(4)>>0;}};V=function(){var $ptr;D.RegisterHash(10,L);D.RegisterHash(11,M);D.RegisterHash(12,N);D.RegisterHash(13,O);};AA=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=C.FromSponge(AH(),a,$appendSlice(Z,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewShakeCipher128=AA;AG.ptr.prototype.Rate=function(){var $ptr,a;a=this;return a.rate;};AG.prototype.Rate=function(){return this.$val.Rate();};AG.ptr.prototype.Capacity=function(){var $ptr,a;a=this;return 200-a.rate>>0;};AG.prototype.Capacity=function(){return this.$val.Capacity();};AG.ptr.prototype.Clone=function(){var $ptr,a,b;a=this;b=$clone(a,AG);return b;};AG.prototype.Clone=function(){return this.$val.Clone();};AG.ptr.prototype.Transform=function(a,b){var $ptr,a,b,c,d,e,f;c=this;d=new AS(c.a);while(true){if(!(b.$length>0)){break;}(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]=(e=(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]),f=$clone(F.LittleEndian,F.littleEndian).Uint64(b),new $Uint64(e.$high^f.$high,(e.$low^f.$low)>>>0)));b=$subslice(b,8);d=$subslice(d,1);}U(c.a);d=new AS(c.a);while(true){if(!(a.$length>0)){break;}$clone(F.LittleEndian,F.littleEndian).PutUint64(a,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]));d=$subslice(d,1);a=$subslice(a,8);}};AG.prototype.Transform=function(a,b){return this.$val.Transform(a,b);};AH=function(){var $ptr;return new AG.ptr(AT.zero(),168);};AI=function(){var $ptr;return new AG.ptr(AT.zero(),144);};AJ=function(){var $ptr;return new AG.ptr(AT.zero(),136);};AK=function(){var $ptr;return new AG.ptr(AT.zero(),104);};AL=function(){var $ptr;return new AG.ptr(AT.zero(),72);};AW.methods=[{prop:"Rate",name:"Rate",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Capacity",name:"Capacity",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[C.Sponge],false)},{prop:"Transform",name:"Transform",pkg:"",typ:$funcType([AO,AO],[],false)}];AG.init("gopkg.in/dedis/crypto.v0/cipher/sha3",[{prop:"a",name:"a",exported:false,typ:AT,tag:""},{prop:"rate",name:"rate",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=D.$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=A.$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=new AM([new C.Padding(6)]);T=$toNativeArray($kindUint64,[new $Uint64(0,1),new $Uint64(0,32898),new $Uint64(2147483648,32906),new $Uint64(2147483648,2147516416),new $Uint64(0,32907),new $Uint64(0,2147483649),new $Uint64(2147483648,2147516545),new $Uint64(2147483648,32777),new $Uint64(0,138),new $Uint64(0,136),new $Uint64(0,2147516425),new $Uint64(0,2147483658),new $Uint64(0,2147516555),new $Uint64(2147483648,139),new $Uint64(2147483648,32905),new $Uint64(2147483648,32771),new $Uint64(2147483648,32770),new $Uint64(2147483648,128),new $Uint64(0,32778),new $Uint64(2147483648,2147483658),new $Uint64(2147483648,2147516545),new $Uint64(2147483648,32896),new $Uint64(0,2147483649),new $Uint64(2147483648,2147516424)]);Z=new AM([new C.Padding(31)]);V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/group"]=(function(){var $pkg={},$init,A,C,B,H,D,E,F,G;A=$packages["crypto/cipher"];C=$packages["gopkg.in/dedis/crypto.v0/abstract"];B=$packages["io"];H=$sliceType($Uint8);D=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=a.MarshalBinary();$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))){$s=-1;return[0,f];}g=b.Write(e);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:D};}$f.$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.PointMarshalTo=D;E=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:c=$assertType(b,A.Stream,true);d=c[0];e=c[1];if(e){$s=1;continue;}$s=2;continue;case 1:f=a.Pick(H.nil,d);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return[-1,$ifaceNil];case 2:g=a.MarshalSize();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$makeSlice(H,g);j=B.ReadFull(b,h);$s=5;case 5: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))){$s=-1;return[k,l];}m=a.UnmarshalBinary(h);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=-1;return[k,m];}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};$pkg.PointUnmarshalFrom=E;F=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=a.MarshalBinary();$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))){$s=-1;return[0,f];}g=b.Write(e);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:F};}$f.$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.ScalarMarshalTo=F;G=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:c=$assertType(b,A.Stream,true);d=c[0];e=c[1];if(e){$s=1;continue;}$s=2;continue;case 1:f=a.Pick(d);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return[-1,$ifaceNil];case 2:g=a.MarshalSize();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$makeSlice(H,g);j=B.ReadFull(b,h);$s=5;case 5: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))){$s=-1;return[k,l];}m=a.UnmarshalBinary(h);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=-1;return[k,m];}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.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.ScalarUnmarshalFrom=G;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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=B.$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["crypto/dsa"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["io"];C=$packages["math/big"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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.ErrInvalidPublicKey=A.New("crypto/dsa: invalid public key");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/elliptic"]=(function(){var $pkg={},$init,A,B,C;A=$packages["io"];B=$packages["math/big"];C=$packages["sync"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["gopkg.in/dedis/crypto.v0/math"]=(function(){var $pkg={},$init,A,C,D,E,B,F;A=$packages["math/big"];B=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=new A.Int.ptr(false,A.nat.nil);g=new A.Int.ptr(false,A.nat.nil);h=new A.Int.ptr(false,A.nat.nil);c[0]=$clone(f,A.Int);d[0]=$clone(g,A.Int);e[0]=$clone(h,A.Int);c[0].Set(a);d[0].Set(b);i=1;case 1:if(c[0].Cmp(C)===0){$s=-1;return 0;}if(d[0].Cmp(D)===0){$s=-1;return i;}j=c[0].Mod(c[0],d[0]);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;k=0;while(true){if(!(c[0].Bit(k)===0)){break;}k=k+(1)>>0;}if(!(((k&1)===0))){m=((l=d[0].Bits(),(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]))&7)>>>0;if((m===3)||(m===5)){i=-i;}}e[0].Rsh(c[0],(k>>>0));if(((((n=d[0].Bits(),(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))&3)>>>0)===3)&&((((o=e[0].Bits(),(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))&3)>>>0)===3)){i=-i;}c[0].Set(d[0]);d[0].Set(e[0]);$s=1;continue;case 2:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:B};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.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.Jacobi=B;F=function(a,b,c){var $ptr,a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=[d];e=[e];f=[f];g=[g];h=[h];i=[i];if(b.Sign()===0){a.SetInt64(new $Int64(0,0));$s=-1;return true;}j=B(b,c);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(!((j===1))){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:g[0]=new A.Int.ptr(false,A.nat.nil);k=0;g[0].Sub(c,D);case 4:if(!(g[0].Bit(0)===0)){$s=5;continue;}l=g[0].Div(g[0],E);$s=6;case 6:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;k=k+(1)>>0;$s=4;continue;case 5:f[0]=new A.Int.ptr(false,A.nat.nil);f[0].SetInt64(new $Int64(0,2));case 7:m=B(f[0],c);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!(!((m===-1)))){$s=8;continue;}f[0].Add(f[0],D);$s=7;continue;case 8:n=new A.Int.ptr(false,A.nat.nil);o=new A.Int.ptr(false,A.nat.nil);p=new A.Int.ptr(false,A.nat.nil);q=new A.Int.ptr(false,A.nat.nil);i[0]=$clone(n,A.Int);d[0]=$clone(o,A.Int);e[0]=$clone(p,A.Int);h[0]=$clone(q,A.Int);r=i[0].Add(g[0],D).Div(i[0],E);$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r.Exp(b,i[0],c);$s=11;case 11:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;t=d[0].Exp(b,g[0],c);$s=12;case 12:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;u=e[0].Exp(f[0],g[0],c);$s=13;case 13:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;v=k;case 14:w=0;h[0].Set(d[0]);case 16:if(!(!((h[0].Cmp(D)===0)))){$s=17;continue;}x=h[0].Exp(h[0],E,c);$s=18;case 18:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;w=w+(1)>>0;$s=16;continue;case 17:if(w===0){a.Set(i[0]);$s=-1;return true;}y=h[0].SetInt64(new $Int64(0,0)).SetBit(h[0],(v-w>>0)-1>>0,1).Exp(e[0],h[0],c);$s=19;case 19:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;z=e[0].Mul(h[0],h[0]).Mod(e[0],c);$s=20;case 20:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;aa=i[0].Mul(i[0],h[0]).Mod(i[0],c);$s=21;case 21:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;ab=d[0].Mul(d[0],e[0]).Mod(d[0],c);$s=22;case 22:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;v=w;$s=14;continue;case 15:$s=-1;return false;}return;}if($f===undefined){$f={$blk:F};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sqrt=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;}C=A.NewInt(new $Int64(0,0));D=A.NewInt(new $Int64(0,1));E=A.NewInt(new $Int64(0,2));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/nist"]=(function(){var $pkg={},$init,D,P,E,L,I,A,Q,F,O,G,J,H,K,M,B,C,N,W,X,AN,AO,AP,AR,U,V,Z;D=$packages["crypto/cipher"];P=$packages["crypto/dsa"];E=$packages["crypto/elliptic"];L=$packages["crypto/sha256"];I=$packages["encoding/hex"];A=$packages["errors"];Q=$packages["fmt"];F=$packages["gopkg.in/dedis/crypto.v0/abstract"];O=$packages["gopkg.in/dedis/crypto.v0/cipher/sha3"];G=$packages["gopkg.in/dedis/crypto.v0/group"];J=$packages["gopkg.in/dedis/crypto.v0/math"];H=$packages["gopkg.in/dedis/crypto.v0/random"];K=$packages["gopkg.in/dedis/crypto.v0/util"];M=$packages["hash"];B=$packages["io"];C=$packages["math/big"];N=$packages["reflect"];W=$pkg.ByteOrder=$newType(1,$kindBool,"nist.ByteOrder",true,"gopkg.in/dedis/crypto.v0/nist",true,null);X=$pkg.Int=$newType(0,$kindStruct,"nist.Int",true,"gopkg.in/dedis/crypto.v0/nist",true,function(V_,M_,BO_){this.$val=this;if(arguments.length===0){this.V=new C.Int.ptr(false,C.nat.nil);this.M=AP.nil;this.BO=false;return;}this.V=V_;this.M=M_;this.BO=BO_;});AN=$sliceType($Uint8);AO=$ptrType(X);AP=$ptrType(C.Int);AR=$arrayType($Uint8,1);Z=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=new X.ptr(new C.Int.ptr(false,C.nat.nil),AP.nil,false).Init64(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:Z};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewInt64=Z;X.ptr.prototype.Init=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.M=b;c.BO=false;d=c.V.Set(a).Mod(c.V,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Init};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Init=function(a,b){return this.$val.Init(a,b);};X.ptr.prototype.Init64=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.M=b;c.BO=false;d=c.V.SetInt64(a).Mod(c.V,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Init64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Init64=function(a,b){return this.$val.Init64(a,b);};X.ptr.prototype.InitBytes=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.M=b;c.BO=false;d=c.V.SetBytes(a).Mod(c.V,c.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.InitBytes};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.InitBytes=function(a,b){return this.$val.InitBytes(a,b);};X.ptr.prototype.InitString=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:e=this;e.M=d;e.BO=false;g=e.SetString(a,b,c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];if(!h){$panic(new $String("InitString: invalid fraction representation"));}$s=-1;return e;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.InitString};}$f.$ptr=$ptr;$f.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;};X.prototype.InitString=function(a,b,c,d){return this.$val.InitString(a,b,c,d);};X.ptr.prototype.String=function(){var $ptr,a;a=this;return I.EncodeToString(a.V.Bytes());};X.prototype.String=function(){return this.$val.String();};X.ptr.prototype.SetString=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=[d];e=this;g=e.V.SetString(a,c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];if(!h){$s=-1;return[AO.nil,false];}if(!(b==="")){$s=2;continue;}$s=3;continue;case 2:d[0]=new X.ptr(new C.Int.ptr(false,C.nat.nil),AP.nil,false);d[0].M=e.M;j=d[0].SetString(b,"",c);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];if(!k){$s=-1;return[AO.nil,false];}l=e.Div(e,d[0]);$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;case 3:$s=-1;return[e,true];}return;}if($f===undefined){$f={$blk:X.ptr.prototype.SetString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.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;};X.prototype.SetString=function(a,b,c){return this.$val.SetString(a,b,c);};X.ptr.prototype.Cmp=function(a){var $ptr,a,b;b=this;return b.V.Cmp($assertType(a,AO).V);};X.prototype.Cmp=function(a){return this.$val.Cmp(a);};X.ptr.prototype.Equal=function(a){var $ptr,a,b;b=this;return b.V.Cmp($assertType(a,AO).V)===0;};X.prototype.Equal=function(a){return this.$val.Equal(a);};X.ptr.prototype.Nonzero=function(){var $ptr,a;a=this;return!((a.V.Sign()===0));};X.prototype.Nonzero=function(){return this.$val.Nonzero();};X.ptr.prototype.Set=function(a){var $ptr,a,b,c;b=this;c=$assertType(a,AO);b.V.Set(c.V);b.M=c.M;return b;};X.prototype.Set=function(a){return this.$val.Set(a);};X.ptr.prototype.Clone=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=new X.ptr(new C.Int.ptr(false,C.nat.nil),AP.nil,false).Init(a.V,a.M);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;c.BO=a.BO;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Clone};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Clone=function(){return this.$val.Clone();};X.ptr.prototype.Zero=function(){var $ptr,a;a=this;a.V.SetInt64(new $Int64(0,0));return a;};X.prototype.Zero=function(){return this.$val.Zero();};X.ptr.prototype.One=function(){var $ptr,a;a=this;a.V.SetInt64(new $Int64(0,1));return a;};X.prototype.One=function(){return this.$val.One();};X.ptr.prototype.SetInt64=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.V.SetInt64(a).Mod(b.V,b.M);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.SetInt64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.SetInt64=function(a){return this.$val.SetInt64(a);};X.ptr.prototype.Int64=function(){var $ptr,a;a=this;return a.V.Int64();};X.prototype.Int64=function(){return this.$val.Int64();};X.ptr.prototype.SetUint64=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.V.SetUint64(a).Mod(b.V,b.M);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.SetUint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.SetUint64=function(a){return this.$val.SetUint64(a);};X.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return a.V.Uint64();};X.prototype.Uint64=function(){return this.$val.Uint64();};X.ptr.prototype.Add=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=$assertType(a,AO);e=$assertType(b,AO);c.M=d.M;f=c.V.Add(d.V,e.V).Mod(c.V,c.M);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Add};}$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;};X.prototype.Add=function(a,b){return this.$val.Add(a,b);};X.ptr.prototype.Sub=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=$assertType(a,AO);e=$assertType(b,AO);c.M=d.M;f=c.V.Sub(d.V,e.V).Mod(c.V,c.M);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Sub};}$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;};X.prototype.Sub=function(a,b){return this.$val.Sub(a,b);};X.ptr.prototype.Neg=function(a){var $ptr,a,b,c;b=this;c=$assertType(a,AO);b.M=c.M;if(c.V.Sign()>0){b.V.Sub(b.M,c.V);}else{b.V.SetUint64(new $Uint64(0,0));}return b;};X.prototype.Neg=function(a){return this.$val.Neg(a);};X.ptr.prototype.Mul=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=$assertType(a,AO);e=$assertType(b,AO);c.M=d.M;f=c.V.Mul(d.V,e.V).Mod(c.V,c.M);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Mul};}$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;};X.prototype.Mul=function(a,b){return this.$val.Mul(a,b);};X.ptr.prototype.Div=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=$assertType(a,AO);e=$assertType(b,AO);f=new C.Int.ptr(false,C.nat.nil);c.M=d.M;g=d.V;h=f.ModInverse(e.V,c.M);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=c.V.Mul(g,i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;k=c.V.Mod(c.V,c.M);$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Div};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.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;};X.prototype.Div=function(a,b){return this.$val.Div(a,b);};X.ptr.prototype.Inv=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$assertType(a,AO);b.M=c.M;d=b.V.ModInverse($assertType(a,AO).V,b.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Inv};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Inv=function(a){return this.$val.Inv(a);};X.ptr.prototype.Exp=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=$assertType(a,AO);c.M=d.M;e=c.V.Exp(d.V,b,c.M);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Exp};}$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;};X.prototype.Exp=function(a,b){return this.$val.Exp(a,b);};X.ptr.prototype.Jacobi=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=$assertType(a,AO);b.M=c.M;d=J.Jacobi(c.V,b.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=b.V.SetInt64(new $Int64(0,d));$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Jacobi};}$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;};X.prototype.Jacobi=function(a){return this.$val.Jacobi(a);};X.ptr.prototype.Sqrt=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$assertType(a,AO);b.M=c.M;d=J.Sqrt(b.V,c.V,c.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Sqrt};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Sqrt=function(a){return this.$val.Sqrt(a);};X.ptr.prototype.Pick=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=H.Int(b.M,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.V.Set(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Pick};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Pick=function(a){return this.$val.Pick(a);};X.ptr.prototype.MarshalSize=function(){var $ptr,a,b;a=this;return(b=((a.M.BitLen()+7>>0))/8,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};X.prototype.MarshalSize=function(){return this.$val.MarshalSize();};X.ptr.prototype.MarshalBinary=function(){var $ptr,a,b,c,d,e;a=this;b=a.MarshalSize();c=a.V.Bytes();d=b-c.$length>>0;if(a.BO){return[a.LittleEndian(b,b),$ifaceNil];}if(!((d===0))){e=$makeSlice(AN,b);$copySlice($subslice(e,d),c);c=e;}return[c,$ifaceNil];};X.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};X.ptr.prototype.UnmarshalBinary=function(a){var $ptr,a,b;b=this;if(!((a.$length===b.MarshalSize()))){return A.New("Int.Decode: wrong size buffer");}if(b.BO){a=K.Reverse(AN.nil,a);}b.V.SetBytes(a);if(b.V.Cmp(b.M)>=0){return A.New("Int.Decode: value out of range");}return $ifaceNil;};X.prototype.UnmarshalBinary=function(a){return this.$val.UnmarshalBinary(a);};X.ptr.prototype.MarshalTo=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=G.ScalarMarshalTo(b,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.MarshalTo};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.MarshalTo=function(a){return this.$val.MarshalTo(a);};X.ptr.prototype.UnmarshalFrom=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=G.ScalarUnmarshalFrom(b,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.UnmarshalFrom};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.UnmarshalFrom=function(a){return this.$val.UnmarshalFrom(a);};X.ptr.prototype.BigEndian=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=this;d=c.MarshalSize();e=d;f=0;g=e;h=f;if(g<a){i=a;j=a-d>>0;g=i;h=j;}if(!((b===0))&&g>b){$panic(new $String("Int not representable in max bytes"));}k=$makeSlice(AN,g);$copySlice($subslice(k,h),c.V.Bytes());return k;};X.prototype.BigEndian=function(a,b){return this.$val.BigEndian(a,b);};X.ptr.prototype.SetBytes=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=a;if(b.BO){c=K.Reverse(AN.nil,a);}d=b.V.SetBytes(c).Mod(b.V,b.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.SetBytes=function(a){return this.$val.SetBytes(a);};X.ptr.prototype.Bytes=function(){var $ptr,a,b;a=this;b=a.V.Bytes();if(a.BO){b=K.Reverse(b,b);}return b;};X.prototype.Bytes=function(){return this.$val.Bytes();};X.ptr.prototype.LittleEndian=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;d=c.MarshalSize();e=c.V.Bytes();f=e.$length;if(f<d){d=f;}g=d;if(g<a){g=a;}if(!((b===0))&&g>b){$panic(new $String("Int not representable in max bytes"));}h=$makeSlice(AN,g);K.Reverse($subslice(h,0,d),e);return h;};X.prototype.LittleEndian=function(a,b){return this.$val.LittleEndian(a,b);};X.ptr.prototype.HideLen=function(){var $ptr,a;a=this;return a.MarshalSize();};X.prototype.HideLen=function(){return this.$val.HideLen();};X.ptr.prototype.HideEncode=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=[b];c=this;d=c.HideLen();e=((((c.M.BitLen()-1>>0))&7)>>>0);b[0]=new C.Int.ptr(false,C.nat.nil);case 1:f=AR.zero();$r=a.XORKeyStream(new AN(f),new AN(f));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=new $Int64(0,((g=e,g<32?(f[0]>>>g):0)<<24>>>24));b[0].SetInt64(h).Mul(c.V,b[0]);if(b[0].BitLen()<=($imul(d,8))){$s=2;continue;}$s=1;continue;case 2:i=b[0].Bytes();j=d-i.$length>>0;if(!((j===0))){i=$appendSlice($makeSlice(AN,j),i);}$s=-1;return i;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.HideEncode};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.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;};X.prototype.HideEncode=function(a){return this.$val.HideEncode(a);};X.ptr.prototype.HideDecode=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.$length===b.HideLen()))){$panic(new $String("Int.HideDecode: wrong size buffer"));}b.V.SetBytes(a);c=b.V.Mod(b.V,b.M);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.HideDecode};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.HideDecode=function(a){return this.$val.HideDecode(a);};AO.methods=[{prop:"Init",name:"Init",pkg:"",typ:$funcType([AP,AP],[AO],false)},{prop:"Init64",name:"Init64",pkg:"",typ:$funcType([$Int64,AP],[AO],false)},{prop:"InitBytes",name:"InitBytes",pkg:"",typ:$funcType([AN,AP],[AO],false)},{prop:"InitString",name:"InitString",pkg:"",typ:$funcType([$String,$String,$Int,AP],[AO],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String,$String,$Int],[AO,$Bool],false)},{prop:"Cmp",name:"Cmp",pkg:"",typ:$funcType([F.Scalar],[$Int],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([F.Scalar],[$Bool],false)},{prop:"Nonzero",name:"Nonzero",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([F.Scalar],[F.Scalar],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[F.Scalar],false)},{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[F.Scalar],false)},{prop:"One",name:"One",pkg:"",typ:$funcType([],[F.Scalar],false)},{prop:"SetInt64",name:"SetInt64",pkg:"",typ:$funcType([$Int64],[F.Scalar],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"SetUint64",name:"SetUint64",pkg:"",typ:$funcType([$Uint64],[F.Scalar],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([F.Scalar,F.Scalar],[F.Scalar],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([F.Scalar,F.Scalar],[F.Scalar],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([F.Scalar],[F.Scalar],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([F.Scalar,F.Scalar],[F.Scalar],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([F.Scalar,F.Scalar],[F.Scalar],false)},{prop:"Inv",name:"Inv",pkg:"",typ:$funcType([F.Scalar],[F.Scalar],false)},{prop:"Exp",name:"Exp",pkg:"",typ:$funcType([F.Scalar,AP],[F.Scalar],false)},{prop:"legendre",name:"legendre",pkg:"gopkg.in/dedis/crypto.v0/nist",typ:$funcType([],[$Int],false)},{prop:"Jacobi",name:"Jacobi",pkg:"",typ:$funcType([F.Scalar],[F.Scalar],false)},{prop:"Sqrt",name:"Sqrt",pkg:"",typ:$funcType([F.Scalar],[$Bool],false)},{prop:"Pick",name:"Pick",pkg:"",typ:$funcType([D.Stream],[F.Scalar],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AN,$error],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AN],[$error],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([B.Writer],[$Int,$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([B.Reader],[$Int,$error],false)},{prop:"BigEndian",name:"BigEndian",pkg:"",typ:$funcType([$Int,$Int],[AN],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([AN],[F.Scalar],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[AN],false)},{prop:"LittleEndian",name:"LittleEndian",pkg:"",typ:$funcType([$Int,$Int],[AN],false)},{prop:"HideLen",name:"HideLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"HideEncode",name:"HideEncode",pkg:"",typ:$funcType([D.Stream],[AN],false)},{prop:"HideDecode",name:"HideDecode",pkg:"",typ:$funcType([AN],[],false)}];X.init("",[{prop:"V",name:"V",exported:true,typ:C.Int,tag:""},{prop:"M",name:"M",exported:true,typ:AP,tag:""},{prop:"BO",name:"BO",exported:true,typ:W,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=P.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$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;}$r=Q.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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;}$r=J.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.NewInt(new $Int64(0,1));V=C.NewInt(new $Int64(0,2));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/ed25519"]=(function(){var $pkg={},$init,E,K,C,F,G,D,I,N,J,B,O,L,H,A,M,AM,BF,BG,BH,BI,BJ,BT,BU,BX,CG,CH,CI,CJ,CK,CL,CM,CN,CP,CQ,CR,CS,CV,CW,CX,CY,CZ,DA,DB,DC,DD,P,Q,R,S,T,U,BZ,V,CA,W,CB,Y,AA,a,b,c,d,e,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BM,BN,BO,BP,BQ,BR,BY;E=$packages["crypto/cipher"];K=$packages["crypto/sha256"];C=$packages["crypto/sha512"];F=$packages["encoding/hex"];G=$packages["errors"];D=$packages["fmt"];I=$packages["gopkg.in/dedis/crypto.v0/abstract"];N=$packages["gopkg.in/dedis/crypto.v0/cipher/sha3"];J=$packages["gopkg.in/dedis/crypto.v0/group"];B=$packages["gopkg.in/dedis/crypto.v0/nist"];O=$packages["gopkg.in/dedis/crypto.v0/random"];L=$packages["hash"];H=$packages["io"];A=$packages["math/big"];M=$packages["reflect"];AM=$pkg.fieldElement=$newType(40,$kindArray,"ed25519.fieldElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,null);BF=$pkg.projectiveGroupElement=$newType(0,$kindStruct,"ed25519.projectiveGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(X_,Y_,Z_){this.$val=this;if(arguments.length===0){this.X=CH.zero();this.Y=CH.zero();this.Z=CH.zero();return;}this.X=X_;this.Y=Y_;this.Z=Z_;});BG=$pkg.extendedGroupElement=$newType(0,$kindStruct,"ed25519.extendedGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(X_,Y_,Z_,T_){this.$val=this;if(arguments.length===0){this.X=CH.zero();this.Y=CH.zero();this.Z=CH.zero();this.T=CH.zero();return;}this.X=X_;this.Y=Y_;this.Z=Z_;this.T=T_;});BH=$pkg.completedGroupElement=$newType(0,$kindStruct,"ed25519.completedGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(X_,Y_,Z_,T_){this.$val=this;if(arguments.length===0){this.X=CH.zero();this.Y=CH.zero();this.Z=CH.zero();this.T=CH.zero();return;}this.X=X_;this.Y=Y_;this.Z=Z_;this.T=T_;});BI=$pkg.preComputedGroupElement=$newType(0,$kindStruct,"ed25519.preComputedGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(yPlusX_,yMinusX_,xy2d_){this.$val=this;if(arguments.length===0){this.yPlusX=CH.zero();this.yMinusX=CH.zero();this.xy2d=CH.zero();return;}this.yPlusX=yPlusX_;this.yMinusX=yMinusX_;this.xy2d=xy2d_;});BJ=$pkg.cachedGroupElement=$newType(0,$kindStruct,"ed25519.cachedGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(yPlusX_,yMinusX_,Z_,T2d_){this.$val=this;if(arguments.length===0){this.yPlusX=CH.zero();this.yMinusX=CH.zero();this.Z=CH.zero();this.T2d=CH.zero();return;}this.yPlusX=yPlusX_;this.yMinusX=yMinusX_;this.Z=Z_;this.T2d=T2d_;});BT=$pkg.point=$newType(0,$kindStruct,"ed25519.point",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(ge_){this.$val=this;if(arguments.length===0){this.ge=new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());return;}this.ge=ge_;});BU=$pkg.Curve=$newType(0,$kindStruct,"ed25519.Curve",true,"gopkg.in/dedis/crypto.v0/ed25519",true,function(){this.$val=this;if(arguments.length===0){return;}});BX=$pkg.suiteEd25519=$newType(0,$kindStruct,"ed25519.suiteEd25519",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(Curve_){this.$val=this;if(arguments.length===0){this.Curve=new BU.ptr();return;}this.Curve=Curve_;});CG=$ptrType(A.Int);CH=$arrayType($Int32,10);CI=$arrayType(BI,8);CJ=$sliceType($Uint8);CK=$arrayType($Uint8,32);CL=$arrayType($Int64,10);CM=$sliceType($emptyInterface);CN=$ptrType(AM);CP=$arrayType(BJ,8);CQ=$arrayType($Int8,64);CR=$ptrType(BT);CS=$ptrType(B.Int);CV=$arrayType($Uint8,64);CW=$ptrType(BH);CX=$ptrType(CK);CY=$ptrType(BF);CZ=$ptrType(BG);DA=$ptrType(BJ);DB=$ptrType(BI);DC=$ptrType(BU);DD=$ptrType(BX);AN=function(f){var $ptr,f,g,h,i;g=f;h=0;while(true){if(!(h<10)){break;}i=h;f.nilCheck,((i<0||i>=f.length)?($throwRuntimeError("index out of range"),undefined):f[i]=0);h++;}};AO=function(f){var $ptr,f;AN(f);f.nilCheck,f[0]=1;};AP=function(f,g,h){var $ptr,f,g,h,i,j,k;i=f;j=0;while(true){if(!(j<10)){break;}k=j;f.nilCheck,((k<0||k>=f.length)?($throwRuntimeError("index out of range"),undefined):f[k]=((g.nilCheck,((k<0||k>=g.length)?($throwRuntimeError("index out of range"),undefined):g[k]))+(h.nilCheck,((k<0||k>=h.length)?($throwRuntimeError("index out of range"),undefined):h[k]))>>0));j++;}};AQ=function(f,g,h){var $ptr,f,g,h,i,j,k;i=f;j=0;while(true){if(!(j<10)){break;}k=j;f.nilCheck,((k<0||k>=f.length)?($throwRuntimeError("index out of range"),undefined):f[k]=((g.nilCheck,((k<0||k>=g.length)?($throwRuntimeError("index out of range"),undefined):g[k]))-(h.nilCheck,((k<0||k>=h.length)?($throwRuntimeError("index out of range"),undefined):h[k]))>>0));j++;}};AR=function(f,g){var $ptr,f,g,h,i,j;h=f;i=0;while(true){if(!(i<10)){break;}j=i;f.nilCheck,((j<0||j>=f.length)?($throwRuntimeError("index out of range"),undefined):f[j]=(g.nilCheck,((j<0||j>=g.length)?($throwRuntimeError("index out of range"),undefined):g[j])));i++;}};AS=function(f,g,h){var $ptr,f,g,h,i,j,k,l,m,n,o;i=CH.zero();h=-h;j=i;k=0;while(true){if(!(k<10)){break;}l=k;((l<0||l>=i.length)?($throwRuntimeError("index out of range"),undefined):i[l]=(h&((((f.nilCheck,((l<0||l>=f.length)?($throwRuntimeError("index out of range"),undefined):f[l]))^(g.nilCheck,((l<0||l>=g.length)?($throwRuntimeError("index out of range"),undefined):g[l])))>>0))));k++;}m=f;n=0;while(true){if(!(n<10)){break;}o=n;f.nilCheck,((o<0||o>=f.length)?($throwRuntimeError("index out of range"),undefined):f[o]=(((f.nilCheck,((o<0||o>=f.length)?($throwRuntimeError("index out of range"),undefined):f[o]))^(((o<0||o>=i.length)?($throwRuntimeError("index out of range"),undefined):i[o])))>>0));n++;}};AT=function(f){var $ptr,f,g,h,i;g=new $Int64(0,0);g=new $Int64(0,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]));g=(h=$shiftLeft64(new $Int64(0,(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])),8),new $Int64(g.$high|h.$high,(g.$low|h.$low)>>>0));g=(i=$shiftLeft64(new $Int64(0,(2>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+2])),16),new $Int64(g.$high|i.$high,(g.$low|i.$low)>>>0));return g;};AU=function(f){var $ptr,f,g,h,i,j;g=new $Int64(0,0);g=new $Int64(0,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]));g=(h=$shiftLeft64(new $Int64(0,(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])),8),new $Int64(g.$high|h.$high,(g.$low|h.$low)>>>0));g=(i=$shiftLeft64(new $Int64(0,(2>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+2])),16),new $Int64(g.$high|i.$high,(g.$low|i.$low)>>>0));g=(j=$shiftLeft64(new $Int64(0,(3>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+3])),24),new $Int64(g.$high|j.$high,(g.$low|j.$low)>>>0));return g;};AV=function(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;h=AU(g);i=$shiftLeft64(AT($subslice(g,4)),6);j=$shiftLeft64(AT($subslice(g,7)),5);k=$shiftLeft64(AT($subslice(g,10)),3);l=$shiftLeft64(AT($subslice(g,13)),2);m=AU($subslice(g,16));n=$shiftLeft64(AT($subslice(g,20)),7);o=$shiftLeft64(AT($subslice(g,23)),5);p=$shiftLeft64(AT($subslice(g,26)),4);r=$shiftLeft64(((q=AT($subslice(g,29)),new $Int64(q.$high&0,(q.$low&8388607)>>>0))),2);s=CL.zero();s[9]=$shiftRightInt64((new $Int64(r.$high+0,r.$low+16777216)),25);h=(t=$mul64(s[9],new $Int64(0,19)),new $Int64(h.$high+t.$high,h.$low+t.$low));r=(u=$shiftLeft64(s[9],25),new $Int64(r.$high-u.$high,r.$low-u.$low));s[1]=$shiftRightInt64((new $Int64(i.$high+0,i.$low+16777216)),25);j=(v=s[1],new $Int64(j.$high+v.$high,j.$low+v.$low));i=(w=$shiftLeft64(s[1],25),new $Int64(i.$high-w.$high,i.$low-w.$low));s[3]=$shiftRightInt64((new $Int64(k.$high+0,k.$low+16777216)),25);l=(x=s[3],new $Int64(l.$high+x.$high,l.$low+x.$low));k=(y=$shiftLeft64(s[3],25),new $Int64(k.$high-y.$high,k.$low-y.$low));s[5]=$shiftRightInt64((new $Int64(m.$high+0,m.$low+16777216)),25);n=(z=s[5],new $Int64(n.$high+z.$high,n.$low+z.$low));m=(aa=$shiftLeft64(s[5],25),new $Int64(m.$high-aa.$high,m.$low-aa.$low));s[7]=$shiftRightInt64((new $Int64(o.$high+0,o.$low+16777216)),25);p=(ab=s[7],new $Int64(p.$high+ab.$high,p.$low+ab.$low));o=(ac=$shiftLeft64(s[7],25),new $Int64(o.$high-ac.$high,o.$low-ac.$low));s[0]=$shiftRightInt64((new $Int64(h.$high+0,h.$low+33554432)),26);i=(ad=s[0],new $Int64(i.$high+ad.$high,i.$low+ad.$low));h=(ae=$shiftLeft64(s[0],26),new $Int64(h.$high-ae.$high,h.$low-ae.$low));s[2]=$shiftRightInt64((new $Int64(j.$high+0,j.$low+33554432)),26);k=(af=s[2],new $Int64(k.$high+af.$high,k.$low+af.$low));j=(ag=$shiftLeft64(s[2],26),new $Int64(j.$high-ag.$high,j.$low-ag.$low));s[4]=$shiftRightInt64((new $Int64(l.$high+0,l.$low+33554432)),26);m=(ah=s[4],new $Int64(m.$high+ah.$high,m.$low+ah.$low));l=(ai=$shiftLeft64(s[4],26),new $Int64(l.$high-ai.$high,l.$low-ai.$low));s[6]=$shiftRightInt64((new $Int64(n.$high+0,n.$low+33554432)),26);o=(aj=s[6],new $Int64(o.$high+aj.$high,o.$low+aj.$low));n=(ak=$shiftLeft64(s[6],26),new $Int64(n.$high-ak.$high,n.$low-ak.$low));s[8]=$shiftRightInt64((new $Int64(p.$high+0,p.$low+33554432)),26);r=(al=s[8],new $Int64(r.$high+al.$high,r.$low+al.$low));p=(am=$shiftLeft64(s[8],26),new $Int64(p.$high-am.$high,p.$low-am.$low));f.nilCheck,f[0]=((h.$low+((h.$high>>31)*4294967296))>>0);f.nilCheck,f[1]=((i.$low+((i.$high>>31)*4294967296))>>0);f.nilCheck,f[2]=((j.$low+((j.$high>>31)*4294967296))>>0);f.nilCheck,f[3]=((k.$low+((k.$high>>31)*4294967296))>>0);f.nilCheck,f[4]=((l.$low+((l.$high>>31)*4294967296))>>0);f.nilCheck,f[5]=((m.$low+((m.$high>>31)*4294967296))>>0);f.nilCheck,f[6]=((n.$low+((n.$high>>31)*4294967296))>>0);f.nilCheck,f[7]=((o.$low+((o.$high>>31)*4294967296))>>0);f.nilCheck,f[8]=((p.$low+((p.$high>>31)*4294967296))>>0);f.nilCheck,f[9]=((r.$low+((r.$high>>31)*4294967296))>>0);};AW=function(f,g){var $ptr,f,g,h,i;h=CH.zero();i=((($imul(19,(g.nilCheck,g[9])))+16777216>>0))>>25>>0;i=(((g.nilCheck,g[0])+i>>0))>>26>>0;i=(((g.nilCheck,g[1])+i>>0))>>25>>0;i=(((g.nilCheck,g[2])+i>>0))>>26>>0;i=(((g.nilCheck,g[3])+i>>0))>>25>>0;i=(((g.nilCheck,g[4])+i>>0))>>26>>0;i=(((g.nilCheck,g[5])+i>>0))>>25>>0;i=(((g.nilCheck,g[6])+i>>0))>>26>>0;i=(((g.nilCheck,g[7])+i>>0))>>25>>0;i=(((g.nilCheck,g[8])+i>>0))>>26>>0;i=(((g.nilCheck,g[9])+i>>0))>>25>>0;g.nilCheck,g[0]=((g.nilCheck,g[0])+(($imul(19,i)))>>0);h[0]=((g.nilCheck,g[0])>>26>>0);g.nilCheck,g[1]=((g.nilCheck,g[1])+(h[0])>>0);g.nilCheck,g[0]=((g.nilCheck,g[0])-((h[0]<<26>>0))>>0);h[1]=((g.nilCheck,g[1])>>25>>0);g.nilCheck,g[2]=((g.nilCheck,g[2])+(h[1])>>0);g.nilCheck,g[1]=((g.nilCheck,g[1])-((h[1]<<25>>0))>>0);h[2]=((g.nilCheck,g[2])>>26>>0);g.nilCheck,g[3]=((g.nilCheck,g[3])+(h[2])>>0);g.nilCheck,g[2]=((g.nilCheck,g[2])-((h[2]<<26>>0))>>0);h[3]=((g.nilCheck,g[3])>>25>>0);g.nilCheck,g[4]=((g.nilCheck,g[4])+(h[3])>>0);g.nilCheck,g[3]=((g.nilCheck,g[3])-((h[3]<<25>>0))>>0);h[4]=((g.nilCheck,g[4])>>26>>0);g.nilCheck,g[5]=((g.nilCheck,g[5])+(h[4])>>0);g.nilCheck,g[4]=((g.nilCheck,g[4])-((h[4]<<26>>0))>>0);h[5]=((g.nilCheck,g[5])>>25>>0);g.nilCheck,g[6]=((g.nilCheck,g[6])+(h[5])>>0);g.nilCheck,g[5]=((g.nilCheck,g[5])-((h[5]<<25>>0))>>0);h[6]=((g.nilCheck,g[6])>>26>>0);g.nilCheck,g[7]=((g.nilCheck,g[7])+(h[6])>>0);g.nilCheck,g[6]=((g.nilCheck,g[6])-((h[6]<<26>>0))>>0);h[7]=((g.nilCheck,g[7])>>25>>0);g.nilCheck,g[8]=((g.nilCheck,g[8])+(h[7])>>0);g.nilCheck,g[7]=((g.nilCheck,g[7])-((h[7]<<25>>0))>>0);h[8]=((g.nilCheck,g[8])>>26>>0);g.nilCheck,g[9]=((g.nilCheck,g[9])+(h[8])>>0);g.nilCheck,g[8]=((g.nilCheck,g[8])-((h[8]<<26>>0))>>0);h[9]=((g.nilCheck,g[9])>>25>>0);g.nilCheck,g[9]=((g.nilCheck,g[9])-((h[9]<<25>>0))>>0);f.nilCheck,f[0]=(((g.nilCheck,g[0])>>0>>0)<<24>>>24);f.nilCheck,f[1]=(((g.nilCheck,g[0])>>8>>0)<<24>>>24);f.nilCheck,f[2]=(((g.nilCheck,g[0])>>16>>0)<<24>>>24);f.nilCheck,f[3]=(((((g.nilCheck,g[0])>>24>>0))|(((g.nilCheck,g[1])<<2>>0)))<<24>>>24);f.nilCheck,f[4]=(((g.nilCheck,g[1])>>6>>0)<<24>>>24);f.nilCheck,f[5]=(((g.nilCheck,g[1])>>14>>0)<<24>>>24);f.nilCheck,f[6]=(((((g.nilCheck,g[1])>>22>>0))|(((g.nilCheck,g[2])<<3>>0)))<<24>>>24);f.nilCheck,f[7]=(((g.nilCheck,g[2])>>5>>0)<<24>>>24);f.nilCheck,f[8]=(((g.nilCheck,g[2])>>13>>0)<<24>>>24);f.nilCheck,f[9]=(((((g.nilCheck,g[2])>>21>>0))|(((g.nilCheck,g[3])<<5>>0)))<<24>>>24);f.nilCheck,f[10]=(((g.nilCheck,g[3])>>3>>0)<<24>>>24);f.nilCheck,f[11]=(((g.nilCheck,g[3])>>11>>0)<<24>>>24);f.nilCheck,f[12]=(((((g.nilCheck,g[3])>>19>>0))|(((g.nilCheck,g[4])<<6>>0)))<<24>>>24);f.nilCheck,f[13]=(((g.nilCheck,g[4])>>2>>0)<<24>>>24);f.nilCheck,f[14]=(((g.nilCheck,g[4])>>10>>0)<<24>>>24);f.nilCheck,f[15]=(((g.nilCheck,g[4])>>18>>0)<<24>>>24);f.nilCheck,f[16]=(((g.nilCheck,g[5])>>0>>0)<<24>>>24);f.nilCheck,f[17]=(((g.nilCheck,g[5])>>8>>0)<<24>>>24);f.nilCheck,f[18]=(((g.nilCheck,g[5])>>16>>0)<<24>>>24);f.nilCheck,f[19]=(((((g.nilCheck,g[5])>>24>>0))|(((g.nilCheck,g[6])<<1>>0)))<<24>>>24);f.nilCheck,f[20]=(((g.nilCheck,g[6])>>7>>0)<<24>>>24);f.nilCheck,f[21]=(((g.nilCheck,g[6])>>15>>0)<<24>>>24);f.nilCheck,f[22]=(((((g.nilCheck,g[6])>>23>>0))|(((g.nilCheck,g[7])<<3>>0)))<<24>>>24);f.nilCheck,f[23]=(((g.nilCheck,g[7])>>5>>0)<<24>>>24);f.nilCheck,f[24]=(((g.nilCheck,g[7])>>13>>0)<<24>>>24);f.nilCheck,f[25]=(((((g.nilCheck,g[7])>>21>>0))|(((g.nilCheck,g[8])<<4>>0)))<<24>>>24);f.nilCheck,f[26]=(((g.nilCheck,g[8])>>4>>0)<<24>>>24);f.nilCheck,f[27]=(((g.nilCheck,g[8])>>12>>0)<<24>>>24);f.nilCheck,f[28]=(((((g.nilCheck,g[8])>>20>>0))|(((g.nilCheck,g[9])<<6>>0)))<<24>>>24);f.nilCheck,f[29]=(((g.nilCheck,g[9])>>2>>0)<<24>>>24);f.nilCheck,f[30]=(((g.nilCheck,g[9])>>10>>0)<<24>>>24);f.nilCheck,f[31]=(((g.nilCheck,g[9])>>18>>0)<<24>>>24);};AX=function(f){var $ptr,f,g;g=CK.zero();AW(g,f);return(g[0]&1)>>>0;};AY=function(f){var $ptr,f,g,h,i,j,k;g=CK.zero();AW(g,f);h=0;i=g;j=0;while(true){if(!(j<32)){break;}k=((j<0||j>=i.length)?($throwRuntimeError("index out of range"),undefined):i[j]);h=(h|(k))>>>0;j++;}h=(h|((h>>>4<<24>>>24)))>>>0;h=(h|((h>>>2<<24>>>24)))>>>0;h=(h|((h>>>1<<24>>>24)))>>>0;return(((h&1)>>>0)>>0);};AZ=function(f,g){var $ptr,f,g,h,i,j;h=f;i=0;while(true){if(!(i<10)){break;}j=i;f.nilCheck,((j<0||j>=f.length)?($throwRuntimeError("index out of range"),undefined):f[j]=-(g.nilCheck,((j<0||j>=g.length)?($throwRuntimeError("index out of range"),undefined):g[j])));i++;}};BA=function(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,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ey,ez,f,fa,fb,fc,fd,fe,ff,fg,fh,fi,fj,fk,fl,fm,fn,fo,fp,fq,fr,fs,ft,fu,fv,fw,fx,fy,fz,g,ga,gb,gc,gd,ge,gf,gg,gh,gi,gj,gk,gl,gm,gn,go,gp,gq,gr,gs,gt,gu,gv,gw,gx,gy,gz,h,ha,hb,hc,hd,he,hf,hg,hh,hi,hj,hk,hl,hm,hn,ho,hp,hq,hr,hs,ht,hu,hv,hw,hx,hy,hz,i,ia,ib,ic,id,ie,ig,ih,ii,ij,ik,il,im,io,ip,iq,ir,is,it,iu,iv,iw,ix,iy,iz,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;i=(g.nilCheck,g[0]);j=(g.nilCheck,g[1]);k=(g.nilCheck,g[2]);l=(g.nilCheck,g[3]);m=(g.nilCheck,g[4]);n=(g.nilCheck,g[5]);o=(g.nilCheck,g[6]);p=(g.nilCheck,g[7]);q=(g.nilCheck,g[8]);r=(g.nilCheck,g[9]);s=(h.nilCheck,h[0]);t=(h.nilCheck,h[1]);u=(h.nilCheck,h[2]);v=(h.nilCheck,h[3]);w=(h.nilCheck,h[4]);x=(h.nilCheck,h[5]);y=(h.nilCheck,h[6]);z=(h.nilCheck,h[7]);aa=(h.nilCheck,h[8]);ab=(h.nilCheck,h[9]);ac=$imul(19,t);ad=$imul(19,u);ae=$imul(19,v);af=$imul(19,w);ag=$imul(19,x);ah=$imul(19,y);ai=$imul(19,z);aj=$imul(19,aa);ak=$imul(19,ab);al=$imul(2,j);am=$imul(2,l);an=$imul(2,n);ao=$imul(2,p);ap=$imul(2,r);aq=$mul64(new $Int64(0,i),new $Int64(0,s));ar=$mul64(new $Int64(0,i),new $Int64(0,t));as=$mul64(new $Int64(0,i),new $Int64(0,u));at=$mul64(new $Int64(0,i),new $Int64(0,v));au=$mul64(new $Int64(0,i),new $Int64(0,w));av=$mul64(new $Int64(0,i),new $Int64(0,x));aw=$mul64(new $Int64(0,i),new $Int64(0,y));ax=$mul64(new $Int64(0,i),new $Int64(0,z));ay=$mul64(new $Int64(0,i),new $Int64(0,aa));az=$mul64(new $Int64(0,i),new $Int64(0,ab));ba=$mul64(new $Int64(0,j),new $Int64(0,s));bb=$mul64(new $Int64(0,al),new $Int64(0,t));bc=$mul64(new $Int64(0,j),new $Int64(0,u));bd=$mul64(new $Int64(0,al),new $Int64(0,v));be=$mul64(new $Int64(0,j),new $Int64(0,w));bf=$mul64(new $Int64(0,al),new $Int64(0,x));bg=$mul64(new $Int64(0,j),new $Int64(0,y));bh=$mul64(new $Int64(0,al),new $Int64(0,z));bi=$mul64(new $Int64(0,j),new $Int64(0,aa));bj=$mul64(new $Int64(0,al),new $Int64(0,ak));bk=$mul64(new $Int64(0,k),new $Int64(0,s));bl=$mul64(new $Int64(0,k),new $Int64(0,t));bm=$mul64(new $Int64(0,k),new $Int64(0,u));bn=$mul64(new $Int64(0,k),new $Int64(0,v));bo=$mul64(new $Int64(0,k),new $Int64(0,w));bp=$mul64(new $Int64(0,k),new $Int64(0,x));bq=$mul64(new $Int64(0,k),new $Int64(0,y));br=$mul64(new $Int64(0,k),new $Int64(0,z));bs=$mul64(new $Int64(0,k),new $Int64(0,aj));bt=$mul64(new $Int64(0,k),new $Int64(0,ak));bu=$mul64(new $Int64(0,l),new $Int64(0,s));bv=$mul64(new $Int64(0,am),new $Int64(0,t));bw=$mul64(new $Int64(0,l),new $Int64(0,u));bx=$mul64(new $Int64(0,am),new $Int64(0,v));by=$mul64(new $Int64(0,l),new $Int64(0,w));bz=$mul64(new $Int64(0,am),new $Int64(0,x));ca=$mul64(new $Int64(0,l),new $Int64(0,y));cb=$mul64(new $Int64(0,am),new $Int64(0,ai));cc=$mul64(new $Int64(0,l),new $Int64(0,aj));cd=$mul64(new $Int64(0,am),new $Int64(0,ak));ce=$mul64(new $Int64(0,m),new $Int64(0,s));cf=$mul64(new $Int64(0,m),new $Int64(0,t));cg=$mul64(new $Int64(0,m),new $Int64(0,u));ch=$mul64(new $Int64(0,m),new $Int64(0,v));ci=$mul64(new $Int64(0,m),new $Int64(0,w));cj=$mul64(new $Int64(0,m),new $Int64(0,x));ck=$mul64(new $Int64(0,m),new $Int64(0,ah));cl=$mul64(new $Int64(0,m),new $Int64(0,ai));cm=$mul64(new $Int64(0,m),new $Int64(0,aj));cn=$mul64(new $Int64(0,m),new $Int64(0,ak));co=$mul64(new $Int64(0,n),new $Int64(0,s));cp=$mul64(new $Int64(0,an),new $Int64(0,t));cq=$mul64(new $Int64(0,n),new $Int64(0,u));cr=$mul64(new $Int64(0,an),new $Int64(0,v));cs=$mul64(new $Int64(0,n),new $Int64(0,w));ct=$mul64(new $Int64(0,an),new $Int64(0,ag));cu=$mul64(new $Int64(0,n),new $Int64(0,ah));cv=$mul64(new $Int64(0,an),new $Int64(0,ai));cw=$mul64(new $Int64(0,n),new $Int64(0,aj));cx=$mul64(new $Int64(0,an),new $Int64(0,ak));cy=$mul64(new $Int64(0,o),new $Int64(0,s));cz=$mul64(new $Int64(0,o),new $Int64(0,t));da=$mul64(new $Int64(0,o),new $Int64(0,u));db=$mul64(new $Int64(0,o),new $Int64(0,v));dc=$mul64(new $Int64(0,o),new $Int64(0,af));dd=$mul64(new $Int64(0,o),new $Int64(0,ag));de=$mul64(new $Int64(0,o),new $Int64(0,ah));df=$mul64(new $Int64(0,o),new $Int64(0,ai));dg=$mul64(new $Int64(0,o),new $Int64(0,aj));dh=$mul64(new $Int64(0,o),new $Int64(0,ak));di=$mul64(new $Int64(0,p),new $Int64(0,s));dj=$mul64(new $Int64(0,ao),new $Int64(0,t));dk=$mul64(new $Int64(0,p),new $Int64(0,u));dl=$mul64(new $Int64(0,ao),new $Int64(0,ae));dm=$mul64(new $Int64(0,p),new $Int64(0,af));dn=$mul64(new $Int64(0,ao),new $Int64(0,ag));dp=$mul64(new $Int64(0,p),new $Int64(0,ah));dq=$mul64(new $Int64(0,ao),new $Int64(0,ai));dr=$mul64(new $Int64(0,p),new $Int64(0,aj));ds=$mul64(new $Int64(0,ao),new $Int64(0,ak));dt=$mul64(new $Int64(0,q),new $Int64(0,s));du=$mul64(new $Int64(0,q),new $Int64(0,t));dv=$mul64(new $Int64(0,q),new $Int64(0,ad));dw=$mul64(new $Int64(0,q),new $Int64(0,ae));dx=$mul64(new $Int64(0,q),new $Int64(0,af));dy=$mul64(new $Int64(0,q),new $Int64(0,ag));dz=$mul64(new $Int64(0,q),new $Int64(0,ah));ea=$mul64(new $Int64(0,q),new $Int64(0,ai));eb=$mul64(new $Int64(0,q),new $Int64(0,aj));ec=$mul64(new $Int64(0,q),new $Int64(0,ak));ed=$mul64(new $Int64(0,r),new $Int64(0,s));ee=$mul64(new $Int64(0,ap),new $Int64(0,ac));ef=$mul64(new $Int64(0,r),new $Int64(0,ad));eg=$mul64(new $Int64(0,ap),new $Int64(0,ae));eh=$mul64(new $Int64(0,r),new $Int64(0,af));ei=$mul64(new $Int64(0,ap),new $Int64(0,ag));ej=$mul64(new $Int64(0,r),new $Int64(0,ah));ek=$mul64(new $Int64(0,ap),new $Int64(0,ai));el=$mul64(new $Int64(0,r),new $Int64(0,aj));em=$mul64(new $Int64(0,ap),new $Int64(0,ak));ev=(en=(eo=(ep=(eq=(er=(es=(et=(eu=new $Int64(aq.$high+bj.$high,aq.$low+bj.$low),new $Int64(eu.$high+bs.$high,eu.$low+bs.$low)),new $Int64(et.$high+cb.$high,et.$low+cb.$low)),new $Int64(es.$high+ck.$high,es.$low+ck.$low)),new $Int64(er.$high+ct.$high,er.$low+ct.$low)),new $Int64(eq.$high+dc.$high,eq.$low+dc.$low)),new $Int64(ep.$high+dl.$high,ep.$low+dl.$low)),new $Int64(eo.$high+dv.$high,eo.$low+dv.$low)),new $Int64(en.$high+ee.$high,en.$low+ee.$low));fe=(ew=(ex=(ey=(ez=(fa=(fb=(fc=(fd=new $Int64(ar.$high+ba.$high,ar.$low+ba.$low),new $Int64(fd.$high+bt.$high,fd.$low+bt.$low)),new $Int64(fc.$high+cc.$high,fc.$low+cc.$low)),new $Int64(fb.$high+cl.$high,fb.$low+cl.$low)),new $Int64(fa.$high+cu.$high,fa.$low+cu.$low)),new $Int64(ez.$high+dd.$high,ez.$low+dd.$low)),new $Int64(ey.$high+dm.$high,ey.$low+dm.$low)),new $Int64(ex.$high+dw.$high,ex.$low+dw.$low)),new $Int64(ew.$high+ef.$high,ew.$low+ef.$low));fn=(ff=(fg=(fh=(fi=(fj=(fk=(fl=(fm=new $Int64(as.$high+bb.$high,as.$low+bb.$low),new $Int64(fm.$high+bk.$high,fm.$low+bk.$low)),new $Int64(fl.$high+cd.$high,fl.$low+cd.$low)),new $Int64(fk.$high+cm.$high,fk.$low+cm.$low)),new $Int64(fj.$high+cv.$high,fj.$low+cv.$low)),new $Int64(fi.$high+de.$high,fi.$low+de.$low)),new $Int64(fh.$high+dn.$high,fh.$low+dn.$low)),new $Int64(fg.$high+dx.$high,fg.$low+dx.$low)),new $Int64(ff.$high+eg.$high,ff.$low+eg.$low));fw=(fo=(fp=(fq=(fr=(fs=(ft=(fu=(fv=new $Int64(at.$high+bc.$high,at.$low+bc.$low),new $Int64(fv.$high+bl.$high,fv.$low+bl.$low)),new $Int64(fu.$high+bu.$high,fu.$low+bu.$low)),new $Int64(ft.$high+cn.$high,ft.$low+cn.$low)),new $Int64(fs.$high+cw.$high,fs.$low+cw.$low)),new $Int64(fr.$high+df.$high,fr.$low+df.$low)),new $Int64(fq.$high+dp.$high,fq.$low+dp.$low)),new $Int64(fp.$high+dy.$high,fp.$low+dy.$low)),new $Int64(fo.$high+eh.$high,fo.$low+eh.$low));gf=(fx=(fy=(fz=(ga=(gb=(gc=(gd=(ge=new $Int64(au.$high+bd.$high,au.$low+bd.$low),new $Int64(ge.$high+bm.$high,ge.$low+bm.$low)),new $Int64(gd.$high+bv.$high,gd.$low+bv.$low)),new $Int64(gc.$high+ce.$high,gc.$low+ce.$low)),new $Int64(gb.$high+cx.$high,gb.$low+cx.$low)),new $Int64(ga.$high+dg.$high,ga.$low+dg.$low)),new $Int64(fz.$high+dq.$high,fz.$low+dq.$low)),new $Int64(fy.$high+dz.$high,fy.$low+dz.$low)),new $Int64(fx.$high+ei.$high,fx.$low+ei.$low));go=(gg=(gh=(gi=(gj=(gk=(gl=(gm=(gn=new $Int64(av.$high+be.$high,av.$low+be.$low),new $Int64(gn.$high+bn.$high,gn.$low+bn.$low)),new $Int64(gm.$high+bw.$high,gm.$low+bw.$low)),new $Int64(gl.$high+cf.$high,gl.$low+cf.$low)),new $Int64(gk.$high+co.$high,gk.$low+co.$low)),new $Int64(gj.$high+dh.$high,gj.$low+dh.$low)),new $Int64(gi.$high+dr.$high,gi.$low+dr.$low)),new $Int64(gh.$high+ea.$high,gh.$low+ea.$low)),new $Int64(gg.$high+ej.$high,gg.$low+ej.$low));gx=(gp=(gq=(gr=(gs=(gt=(gu=(gv=(gw=new $Int64(aw.$high+bf.$high,aw.$low+bf.$low),new $Int64(gw.$high+bo.$high,gw.$low+bo.$low)),new $Int64(gv.$high+bx.$high,gv.$low+bx.$low)),new $Int64(gu.$high+cg.$high,gu.$low+cg.$low)),new $Int64(gt.$high+cp.$high,gt.$low+cp.$low)),new $Int64(gs.$high+cy.$high,gs.$low+cy.$low)),new $Int64(gr.$high+ds.$high,gr.$low+ds.$low)),new $Int64(gq.$high+eb.$high,gq.$low+eb.$low)),new $Int64(gp.$high+ek.$high,gp.$low+ek.$low));hg=(gy=(gz=(ha=(hb=(hc=(hd=(he=(hf=new $Int64(ax.$high+bg.$high,ax.$low+bg.$low),new $Int64(hf.$high+bp.$high,hf.$low+bp.$low)),new $Int64(he.$high+by.$high,he.$low+by.$low)),new $Int64(hd.$high+ch.$high,hd.$low+ch.$low)),new $Int64(hc.$high+cq.$high,hc.$low+cq.$low)),new $Int64(hb.$high+cz.$high,hb.$low+cz.$low)),new $Int64(ha.$high+di.$high,ha.$low+di.$low)),new $Int64(gz.$high+ec.$high,gz.$low+ec.$low)),new $Int64(gy.$high+el.$high,gy.$low+el.$low));hp=(hh=(hi=(hj=(hk=(hl=(hm=(hn=(ho=new $Int64(ay.$high+bh.$high,ay.$low+bh.$low),new $Int64(ho.$high+bq.$high,ho.$low+bq.$low)),new $Int64(hn.$high+bz.$high,hn.$low+bz.$low)),new $Int64(hm.$high+ci.$high,hm.$low+ci.$low)),new $Int64(hl.$high+cr.$high,hl.$low+cr.$low)),new $Int64(hk.$high+da.$high,hk.$low+da.$low)),new $Int64(hj.$high+dj.$high,hj.$low+dj.$low)),new $Int64(hi.$high+dt.$high,hi.$low+dt.$low)),new $Int64(hh.$high+em.$high,hh.$low+em.$low));hy=(hq=(hr=(hs=(ht=(hu=(hv=(hw=(hx=new $Int64(az.$high+bi.$high,az.$low+bi.$low),new $Int64(hx.$high+br.$high,hx.$low+br.$low)),new $Int64(hw.$high+ca.$high,hw.$low+ca.$low)),new $Int64(hv.$high+cj.$high,hv.$low+cj.$low)),new $Int64(hu.$high+cs.$high,hu.$low+cs.$low)),new $Int64(ht.$high+db.$high,ht.$low+db.$low)),new $Int64(hs.$high+dk.$high,hs.$low+dk.$low)),new $Int64(hr.$high+du.$high,hr.$low+du.$low)),new $Int64(hq.$high+ed.$high,hq.$low+ed.$low));hz=CL.zero();hz[0]=$shiftRightInt64((new $Int64(ev.$high+0,ev.$low+33554432)),26);fe=(ia=hz[0],new $Int64(fe.$high+ia.$high,fe.$low+ia.$low));ev=(ib=$shiftLeft64(hz[0],26),new $Int64(ev.$high-ib.$high,ev.$low-ib.$low));hz[4]=$shiftRightInt64((new $Int64(gf.$high+0,gf.$low+33554432)),26);go=(ic=hz[4],new $Int64(go.$high+ic.$high,go.$low+ic.$low));gf=(id=$shiftLeft64(hz[4],26),new $Int64(gf.$high-id.$high,gf.$low-id.$low));hz[1]=$shiftRightInt64((new $Int64(fe.$high+0,fe.$low+16777216)),25);fn=(ie=hz[1],new $Int64(fn.$high+ie.$high,fn.$low+ie.$low));fe=(ig=$shiftLeft64(hz[1],25),new $Int64(fe.$high-ig.$high,fe.$low-ig.$low));hz[5]=$shiftRightInt64((new $Int64(go.$high+0,go.$low+16777216)),25);gx=(ih=hz[5],new $Int64(gx.$high+ih.$high,gx.$low+ih.$low));go=(ii=$shiftLeft64(hz[5],25),new $Int64(go.$high-ii.$high,go.$low-ii.$low));hz[2]=$shiftRightInt64((new $Int64(fn.$high+0,fn.$low+33554432)),26);fw=(ij=hz[2],new $Int64(fw.$high+ij.$high,fw.$low+ij.$low));fn=(ik=$shiftLeft64(hz[2],26),new $Int64(fn.$high-ik.$high,fn.$low-ik.$low));hz[6]=$shiftRightInt64((new $Int64(gx.$high+0,gx.$low+33554432)),26);hg=(il=hz[6],new $Int64(hg.$high+il.$high,hg.$low+il.$low));gx=(im=$shiftLeft64(hz[6],26),new $Int64(gx.$high-im.$high,gx.$low-im.$low));hz[3]=$shiftRightInt64((new $Int64(fw.$high+0,fw.$low+16777216)),25);gf=(io=hz[3],new $Int64(gf.$high+io.$high,gf.$low+io.$low));fw=(ip=$shiftLeft64(hz[3],25),new $Int64(fw.$high-ip.$high,fw.$low-ip.$low));hz[7]=$shiftRightInt64((new $Int64(hg.$high+0,hg.$low+16777216)),25);hp=(iq=hz[7],new $Int64(hp.$high+iq.$high,hp.$low+iq.$low));hg=(ir=$shiftLeft64(hz[7],25),new $Int64(hg.$high-ir.$high,hg.$low-ir.$low));hz[4]=$shiftRightInt64((new $Int64(gf.$high+0,gf.$low+33554432)),26);go=(is=hz[4],new $Int64(go.$high+is.$high,go.$low+is.$low));gf=(it=$shiftLeft64(hz[4],26),new $Int64(gf.$high-it.$high,gf.$low-it.$low));hz[8]=$shiftRightInt64((new $Int64(hp.$high+0,hp.$low+33554432)),26);hy=(iu=hz[8],new $Int64(hy.$high+iu.$high,hy.$low+iu.$low));hp=(iv=$shiftLeft64(hz[8],26),new $Int64(hp.$high-iv.$high,hp.$low-iv.$low));hz[9]=$shiftRightInt64((new $Int64(hy.$high+0,hy.$low+16777216)),25);ev=(iw=$mul64(hz[9],new $Int64(0,19)),new $Int64(ev.$high+iw.$high,ev.$low+iw.$low));hy=(ix=$shiftLeft64(hz[9],25),new $Int64(hy.$high-ix.$high,hy.$low-ix.$low));hz[0]=$shiftRightInt64((new $Int64(ev.$high+0,ev.$low+33554432)),26);fe=(iy=hz[0],new $Int64(fe.$high+iy.$high,fe.$low+iy.$low));ev=(iz=$shiftLeft64(hz[0],26),new $Int64(ev.$high-iz.$high,ev.$low-iz.$low));f.nilCheck,f[0]=((ev.$low+((ev.$high>>31)*4294967296))>>0);f.nilCheck,f[1]=((fe.$low+((fe.$high>>31)*4294967296))>>0);f.nilCheck,f[2]=((fn.$low+((fn.$high>>31)*4294967296))>>0);f.nilCheck,f[3]=((fw.$low+((fw.$high>>31)*4294967296))>>0);f.nilCheck,f[4]=((gf.$low+((gf.$high>>31)*4294967296))>>0);f.nilCheck,f[5]=((go.$low+((go.$high>>31)*4294967296))>>0);f.nilCheck,f[6]=((gx.$low+((gx.$high>>31)*4294967296))>>0);f.nilCheck,f[7]=((hg.$low+((hg.$high>>31)*4294967296))>>0);f.nilCheck,f[8]=((hp.$low+((hp.$high>>31)*4294967296))>>0);f.nilCheck,f[9]=((hy.$low+((hy.$high>>31)*4294967296))>>0);};BB=function(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ey,ez,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;h=(g.nilCheck,g[0]);i=(g.nilCheck,g[1]);j=(g.nilCheck,g[2]);k=(g.nilCheck,g[3]);l=(g.nilCheck,g[4]);m=(g.nilCheck,g[5]);n=(g.nilCheck,g[6]);o=(g.nilCheck,g[7]);p=(g.nilCheck,g[8]);q=(g.nilCheck,g[9]);r=$imul(2,h);s=$imul(2,i);t=$imul(2,j);u=$imul(2,k);v=$imul(2,l);w=$imul(2,m);x=$imul(2,n);y=$imul(2,o);z=$imul(38,m);aa=$imul(19,n);ab=$imul(38,o);ac=$imul(19,p);ad=$imul(38,q);ae=$mul64(new $Int64(0,h),new $Int64(0,h));af=$mul64(new $Int64(0,r),new $Int64(0,i));ag=$mul64(new $Int64(0,r),new $Int64(0,j));ah=$mul64(new $Int64(0,r),new $Int64(0,k));ai=$mul64(new $Int64(0,r),new $Int64(0,l));aj=$mul64(new $Int64(0,r),new $Int64(0,m));ak=$mul64(new $Int64(0,r),new $Int64(0,n));al=$mul64(new $Int64(0,r),new $Int64(0,o));am=$mul64(new $Int64(0,r),new $Int64(0,p));an=$mul64(new $Int64(0,r),new $Int64(0,q));ao=$mul64(new $Int64(0,s),new $Int64(0,i));ap=$mul64(new $Int64(0,s),new $Int64(0,j));aq=$mul64(new $Int64(0,s),new $Int64(0,u));ar=$mul64(new $Int64(0,s),new $Int64(0,l));as=$mul64(new $Int64(0,s),new $Int64(0,w));at=$mul64(new $Int64(0,s),new $Int64(0,n));au=$mul64(new $Int64(0,s),new $Int64(0,y));av=$mul64(new $Int64(0,s),new $Int64(0,p));aw=$mul64(new $Int64(0,s),new $Int64(0,ad));ax=$mul64(new $Int64(0,j),new $Int64(0,j));ay=$mul64(new $Int64(0,t),new $Int64(0,k));az=$mul64(new $Int64(0,t),new $Int64(0,l));ba=$mul64(new $Int64(0,t),new $Int64(0,m));bb=$mul64(new $Int64(0,t),new $Int64(0,n));bc=$mul64(new $Int64(0,t),new $Int64(0,o));bd=$mul64(new $Int64(0,t),new $Int64(0,ac));be=$mul64(new $Int64(0,j),new $Int64(0,ad));bf=$mul64(new $Int64(0,u),new $Int64(0,k));bg=$mul64(new $Int64(0,u),new $Int64(0,l));bh=$mul64(new $Int64(0,u),new $Int64(0,w));bi=$mul64(new $Int64(0,u),new $Int64(0,n));bj=$mul64(new $Int64(0,u),new $Int64(0,ab));bk=$mul64(new $Int64(0,u),new $Int64(0,ac));bl=$mul64(new $Int64(0,u),new $Int64(0,ad));bm=$mul64(new $Int64(0,l),new $Int64(0,l));bn=$mul64(new $Int64(0,v),new $Int64(0,m));bo=$mul64(new $Int64(0,v),new $Int64(0,aa));bp=$mul64(new $Int64(0,l),new $Int64(0,ab));bq=$mul64(new $Int64(0,v),new $Int64(0,ac));br=$mul64(new $Int64(0,l),new $Int64(0,ad));bs=$mul64(new $Int64(0,m),new $Int64(0,z));bt=$mul64(new $Int64(0,w),new $Int64(0,aa));bu=$mul64(new $Int64(0,w),new $Int64(0,ab));bv=$mul64(new $Int64(0,w),new $Int64(0,ac));bw=$mul64(new $Int64(0,w),new $Int64(0,ad));bx=$mul64(new $Int64(0,n),new $Int64(0,aa));by=$mul64(new $Int64(0,n),new $Int64(0,ab));bz=$mul64(new $Int64(0,x),new $Int64(0,ac));ca=$mul64(new $Int64(0,n),new $Int64(0,ad));cb=$mul64(new $Int64(0,o),new $Int64(0,ab));cc=$mul64(new $Int64(0,y),new $Int64(0,ac));cd=$mul64(new $Int64(0,y),new $Int64(0,ad));ce=$mul64(new $Int64(0,p),new $Int64(0,ac));cf=$mul64(new $Int64(0,p),new $Int64(0,ad));cg=$mul64(new $Int64(0,q),new $Int64(0,ad));cl=(ch=(ci=(cj=(ck=new $Int64(ae.$high+aw.$high,ae.$low+aw.$low),new $Int64(ck.$high+bd.$high,ck.$low+bd.$low)),new $Int64(cj.$high+bj.$high,cj.$low+bj.$low)),new $Int64(ci.$high+bo.$high,ci.$low+bo.$low)),new $Int64(ch.$high+bs.$high,ch.$low+bs.$low));cp=(cm=(cn=(co=new $Int64(af.$high+be.$high,af.$low+be.$low),new $Int64(co.$high+bk.$high,co.$low+bk.$low)),new $Int64(cn.$high+bp.$high,cn.$low+bp.$low)),new $Int64(cm.$high+bt.$high,cm.$low+bt.$low));cu=(cq=(cr=(cs=(ct=new $Int64(ag.$high+ao.$high,ag.$low+ao.$low),new $Int64(ct.$high+bl.$high,ct.$low+bl.$low)),new $Int64(cs.$high+bq.$high,cs.$low+bq.$low)),new $Int64(cr.$high+bu.$high,cr.$low+bu.$low)),new $Int64(cq.$high+bx.$high,cq.$low+bx.$low));cy=(cv=(cw=(cx=new $Int64(ah.$high+ap.$high,ah.$low+ap.$low),new $Int64(cx.$high+br.$high,cx.$low+br.$low)),new $Int64(cw.$high+bv.$high,cw.$low+bv.$low)),new $Int64(cv.$high+by.$high,cv.$low+by.$low));dd=(cz=(da=(db=(dc=new $Int64(ai.$high+aq.$high,ai.$low+aq.$low),new $Int64(dc.$high+ax.$high,dc.$low+ax.$low)),new $Int64(db.$high+bw.$high,db.$low+bw.$low)),new $Int64(da.$high+bz.$high,da.$low+bz.$low)),new $Int64(cz.$high+cb.$high,cz.$low+cb.$low));dh=(de=(df=(dg=new $Int64(aj.$high+ar.$high,aj.$low+ar.$low),new $Int64(dg.$high+ay.$high,dg.$low+ay.$low)),new $Int64(df.$high+ca.$high,df.$low+ca.$low)),new $Int64(de.$high+cc.$high,de.$low+cc.$low));dm=(di=(dj=(dk=(dl=new $Int64(ak.$high+as.$high,ak.$low+as.$low),new $Int64(dl.$high+az.$high,dl.$low+az.$low)),new $Int64(dk.$high+bf.$high,dk.$low+bf.$low)),new $Int64(dj.$high+cd.$high,dj.$low+cd.$low)),new $Int64(di.$high+ce.$high,di.$low+ce.$low));dr=(dn=(dp=(dq=new $Int64(al.$high+at.$high,al.$low+at.$low),new $Int64(dq.$high+ba.$high,dq.$low+ba.$low)),new $Int64(dp.$high+bg.$high,dp.$low+bg.$low)),new $Int64(dn.$high+cf.$high,dn.$low+cf.$low));dw=(ds=(dt=(du=(dv=new $Int64(am.$high+au.$high,am.$low+au.$low),new $Int64(dv.$high+bb.$high,dv.$low+bb.$low)),new $Int64(du.$high+bh.$high,du.$low+bh.$low)),new $Int64(dt.$high+bm.$high,dt.$low+bm.$low)),new $Int64(ds.$high+cg.$high,ds.$low+cg.$low));ea=(dx=(dy=(dz=new $Int64(an.$high+av.$high,an.$low+av.$low),new $Int64(dz.$high+bc.$high,dz.$low+bc.$low)),new $Int64(dy.$high+bi.$high,dy.$low+bi.$low)),new $Int64(dx.$high+bn.$high,dx.$low+bn.$low));eb=CL.zero();eb[0]=$shiftRightInt64((new $Int64(cl.$high+0,cl.$low+33554432)),26);cp=(ec=eb[0],new $Int64(cp.$high+ec.$high,cp.$low+ec.$low));cl=(ed=$shiftLeft64(eb[0],26),new $Int64(cl.$high-ed.$high,cl.$low-ed.$low));eb[4]=$shiftRightInt64((new $Int64(dd.$high+0,dd.$low+33554432)),26);dh=(ee=eb[4],new $Int64(dh.$high+ee.$high,dh.$low+ee.$low));dd=(ef=$shiftLeft64(eb[4],26),new $Int64(dd.$high-ef.$high,dd.$low-ef.$low));eb[1]=$shiftRightInt64((new $Int64(cp.$high+0,cp.$low+16777216)),25);cu=(eg=eb[1],new $Int64(cu.$high+eg.$high,cu.$low+eg.$low));cp=(eh=$shiftLeft64(eb[1],25),new $Int64(cp.$high-eh.$high,cp.$low-eh.$low));eb[5]=$shiftRightInt64((new $Int64(dh.$high+0,dh.$low+16777216)),25);dm=(ei=eb[5],new $Int64(dm.$high+ei.$high,dm.$low+ei.$low));dh=(ej=$shiftLeft64(eb[5],25),new $Int64(dh.$high-ej.$high,dh.$low-ej.$low));eb[2]=$shiftRightInt64((new $Int64(cu.$high+0,cu.$low+33554432)),26);cy=(ek=eb[2],new $Int64(cy.$high+ek.$high,cy.$low+ek.$low));cu=(el=$shiftLeft64(eb[2],26),new $Int64(cu.$high-el.$high,cu.$low-el.$low));eb[6]=$shiftRightInt64((new $Int64(dm.$high+0,dm.$low+33554432)),26);dr=(em=eb[6],new $Int64(dr.$high+em.$high,dr.$low+em.$low));dm=(en=$shiftLeft64(eb[6],26),new $Int64(dm.$high-en.$high,dm.$low-en.$low));eb[3]=$shiftRightInt64((new $Int64(cy.$high+0,cy.$low+16777216)),25);dd=(eo=eb[3],new $Int64(dd.$high+eo.$high,dd.$low+eo.$low));cy=(ep=$shiftLeft64(eb[3],25),new $Int64(cy.$high-ep.$high,cy.$low-ep.$low));eb[7]=$shiftRightInt64((new $Int64(dr.$high+0,dr.$low+16777216)),25);dw=(eq=eb[7],new $Int64(dw.$high+eq.$high,dw.$low+eq.$low));dr=(er=$shiftLeft64(eb[7],25),new $Int64(dr.$high-er.$high,dr.$low-er.$low));eb[4]=$shiftRightInt64((new $Int64(dd.$high+0,dd.$low+33554432)),26);dh=(es=eb[4],new $Int64(dh.$high+es.$high,dh.$low+es.$low));dd=(et=$shiftLeft64(eb[4],26),new $Int64(dd.$high-et.$high,dd.$low-et.$low));eb[8]=$shiftRightInt64((new $Int64(dw.$high+0,dw.$low+33554432)),26);ea=(eu=eb[8],new $Int64(ea.$high+eu.$high,ea.$low+eu.$low));dw=(ev=$shiftLeft64(eb[8],26),new $Int64(dw.$high-ev.$high,dw.$low-ev.$low));eb[9]=$shiftRightInt64((new $Int64(ea.$high+0,ea.$low+16777216)),25);cl=(ew=$mul64(eb[9],new $Int64(0,19)),new $Int64(cl.$high+ew.$high,cl.$low+ew.$low));ea=(ex=$shiftLeft64(eb[9],25),new $Int64(ea.$high-ex.$high,ea.$low-ex.$low));eb[0]=$shiftRightInt64((new $Int64(cl.$high+0,cl.$low+33554432)),26);cp=(ey=eb[0],new $Int64(cp.$high+ey.$high,cp.$low+ey.$low));cl=(ez=$shiftLeft64(eb[0],26),new $Int64(cl.$high-ez.$high,cl.$low-ez.$low));f.nilCheck,f[0]=((cl.$low+((cl.$high>>31)*4294967296))>>0);f.nilCheck,f[1]=((cp.$low+((cp.$high>>31)*4294967296))>>0);f.nilCheck,f[2]=((cu.$low+((cu.$high>>31)*4294967296))>>0);f.nilCheck,f[3]=((cy.$low+((cy.$high>>31)*4294967296))>>0);f.nilCheck,f[4]=((dd.$low+((dd.$high>>31)*4294967296))>>0);f.nilCheck,f[5]=((dh.$low+((dh.$high>>31)*4294967296))>>0);f.nilCheck,f[6]=((dm.$low+((dm.$high>>31)*4294967296))>>0);f.nilCheck,f[7]=((dr.$low+((dr.$high>>31)*4294967296))>>0);f.nilCheck,f[8]=((dw.$low+((dw.$high>>31)*4294967296))>>0);f.nilCheck,f[9]=((ea.$low+((ea.$high>>31)*4294967296))>>0);};BC=function(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ey,ez,f,fa,fb,fc,fd,fe,ff,fg,fh,fi,fj,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;h=(g.nilCheck,g[0]);i=(g.nilCheck,g[1]);j=(g.nilCheck,g[2]);k=(g.nilCheck,g[3]);l=(g.nilCheck,g[4]);m=(g.nilCheck,g[5]);n=(g.nilCheck,g[6]);o=(g.nilCheck,g[7]);p=(g.nilCheck,g[8]);q=(g.nilCheck,g[9]);r=$imul(2,h);s=$imul(2,i);t=$imul(2,j);u=$imul(2,k);v=$imul(2,l);w=$imul(2,m);x=$imul(2,n);y=$imul(2,o);z=$imul(38,m);aa=$imul(19,n);ab=$imul(38,o);ac=$imul(19,p);ad=$imul(38,q);ae=$mul64(new $Int64(0,h),new $Int64(0,h));af=$mul64(new $Int64(0,r),new $Int64(0,i));ag=$mul64(new $Int64(0,r),new $Int64(0,j));ah=$mul64(new $Int64(0,r),new $Int64(0,k));ai=$mul64(new $Int64(0,r),new $Int64(0,l));aj=$mul64(new $Int64(0,r),new $Int64(0,m));ak=$mul64(new $Int64(0,r),new $Int64(0,n));al=$mul64(new $Int64(0,r),new $Int64(0,o));am=$mul64(new $Int64(0,r),new $Int64(0,p));an=$mul64(new $Int64(0,r),new $Int64(0,q));ao=$mul64(new $Int64(0,s),new $Int64(0,i));ap=$mul64(new $Int64(0,s),new $Int64(0,j));aq=$mul64(new $Int64(0,s),new $Int64(0,u));ar=$mul64(new $Int64(0,s),new $Int64(0,l));as=$mul64(new $Int64(0,s),new $Int64(0,w));at=$mul64(new $Int64(0,s),new $Int64(0,n));au=$mul64(new $Int64(0,s),new $Int64(0,y));av=$mul64(new $Int64(0,s),new $Int64(0,p));aw=$mul64(new $Int64(0,s),new $Int64(0,ad));ax=$mul64(new $Int64(0,j),new $Int64(0,j));ay=$mul64(new $Int64(0,t),new $Int64(0,k));az=$mul64(new $Int64(0,t),new $Int64(0,l));ba=$mul64(new $Int64(0,t),new $Int64(0,m));bb=$mul64(new $Int64(0,t),new $Int64(0,n));bc=$mul64(new $Int64(0,t),new $Int64(0,o));bd=$mul64(new $Int64(0,t),new $Int64(0,ac));be=$mul64(new $Int64(0,j),new $Int64(0,ad));bf=$mul64(new $Int64(0,u),new $Int64(0,k));bg=$mul64(new $Int64(0,u),new $Int64(0,l));bh=$mul64(new $Int64(0,u),new $Int64(0,w));bi=$mul64(new $Int64(0,u),new $Int64(0,n));bj=$mul64(new $Int64(0,u),new $Int64(0,ab));bk=$mul64(new $Int64(0,u),new $Int64(0,ac));bl=$mul64(new $Int64(0,u),new $Int64(0,ad));bm=$mul64(new $Int64(0,l),new $Int64(0,l));bn=$mul64(new $Int64(0,v),new $Int64(0,m));bo=$mul64(new $Int64(0,v),new $Int64(0,aa));bp=$mul64(new $Int64(0,l),new $Int64(0,ab));bq=$mul64(new $Int64(0,v),new $Int64(0,ac));br=$mul64(new $Int64(0,l),new $Int64(0,ad));bs=$mul64(new $Int64(0,m),new $Int64(0,z));bt=$mul64(new $Int64(0,w),new $Int64(0,aa));bu=$mul64(new $Int64(0,w),new $Int64(0,ab));bv=$mul64(new $Int64(0,w),new $Int64(0,ac));bw=$mul64(new $Int64(0,w),new $Int64(0,ad));bx=$mul64(new $Int64(0,n),new $Int64(0,aa));by=$mul64(new $Int64(0,n),new $Int64(0,ab));bz=$mul64(new $Int64(0,x),new $Int64(0,ac));ca=$mul64(new $Int64(0,n),new $Int64(0,ad));cb=$mul64(new $Int64(0,o),new $Int64(0,ab));cc=$mul64(new $Int64(0,y),new $Int64(0,ac));cd=$mul64(new $Int64(0,y),new $Int64(0,ad));ce=$mul64(new $Int64(0,p),new $Int64(0,ac));cf=$mul64(new $Int64(0,p),new $Int64(0,ad));cg=$mul64(new $Int64(0,q),new $Int64(0,ad));cl=(ch=(ci=(cj=(ck=new $Int64(ae.$high+aw.$high,ae.$low+aw.$low),new $Int64(ck.$high+bd.$high,ck.$low+bd.$low)),new $Int64(cj.$high+bj.$high,cj.$low+bj.$low)),new $Int64(ci.$high+bo.$high,ci.$low+bo.$low)),new $Int64(ch.$high+bs.$high,ch.$low+bs.$low));cp=(cm=(cn=(co=new $Int64(af.$high+be.$high,af.$low+be.$low),new $Int64(co.$high+bk.$high,co.$low+bk.$low)),new $Int64(cn.$high+bp.$high,cn.$low+bp.$low)),new $Int64(cm.$high+bt.$high,cm.$low+bt.$low));cu=(cq=(cr=(cs=(ct=new $Int64(ag.$high+ao.$high,ag.$low+ao.$low),new $Int64(ct.$high+bl.$high,ct.$low+bl.$low)),new $Int64(cs.$high+bq.$high,cs.$low+bq.$low)),new $Int64(cr.$high+bu.$high,cr.$low+bu.$low)),new $Int64(cq.$high+bx.$high,cq.$low+bx.$low));cy=(cv=(cw=(cx=new $Int64(ah.$high+ap.$high,ah.$low+ap.$low),new $Int64(cx.$high+br.$high,cx.$low+br.$low)),new $Int64(cw.$high+bv.$high,cw.$low+bv.$low)),new $Int64(cv.$high+by.$high,cv.$low+by.$low));dd=(cz=(da=(db=(dc=new $Int64(ai.$high+aq.$high,ai.$low+aq.$low),new $Int64(dc.$high+ax.$high,dc.$low+ax.$low)),new $Int64(db.$high+bw.$high,db.$low+bw.$low)),new $Int64(da.$high+bz.$high,da.$low+bz.$low)),new $Int64(cz.$high+cb.$high,cz.$low+cb.$low));dh=(de=(df=(dg=new $Int64(aj.$high+ar.$high,aj.$low+ar.$low),new $Int64(dg.$high+ay.$high,dg.$low+ay.$low)),new $Int64(df.$high+ca.$high,df.$low+ca.$low)),new $Int64(de.$high+cc.$high,de.$low+cc.$low));dm=(di=(dj=(dk=(dl=new $Int64(ak.$high+as.$high,ak.$low+as.$low),new $Int64(dl.$high+az.$high,dl.$low+az.$low)),new $Int64(dk.$high+bf.$high,dk.$low+bf.$low)),new $Int64(dj.$high+cd.$high,dj.$low+cd.$low)),new $Int64(di.$high+ce.$high,di.$low+ce.$low));dr=(dn=(dp=(dq=new $Int64(al.$high+at.$high,al.$low+at.$low),new $Int64(dq.$high+ba.$high,dq.$low+ba.$low)),new $Int64(dp.$high+bg.$high,dp.$low+bg.$low)),new $Int64(dn.$high+cf.$high,dn.$low+cf.$low));dw=(ds=(dt=(du=(dv=new $Int64(am.$high+au.$high,am.$low+au.$low),new $Int64(dv.$high+bb.$high,dv.$low+bb.$low)),new $Int64(du.$high+bh.$high,du.$low+bh.$low)),new $Int64(dt.$high+bm.$high,dt.$low+bm.$low)),new $Int64(ds.$high+cg.$high,ds.$low+cg.$low));ea=(dx=(dy=(dz=new $Int64(an.$high+av.$high,an.$low+av.$low),new $Int64(dz.$high+bc.$high,dz.$low+bc.$low)),new $Int64(dy.$high+bi.$high,dy.$low+bi.$low)),new $Int64(dx.$high+bn.$high,dx.$low+bn.$low));eb=CL.zero();cl=(ec=cl,new $Int64(cl.$high+ec.$high,cl.$low+ec.$low));cp=(ed=cp,new $Int64(cp.$high+ed.$high,cp.$low+ed.$low));cu=(ee=cu,new $Int64(cu.$high+ee.$high,cu.$low+ee.$low));cy=(ef=cy,new $Int64(cy.$high+ef.$high,cy.$low+ef.$low));dd=(eg=dd,new $Int64(dd.$high+eg.$high,dd.$low+eg.$low));dh=(eh=dh,new $Int64(dh.$high+eh.$high,dh.$low+eh.$low));dm=(ei=dm,new $Int64(dm.$high+ei.$high,dm.$low+ei.$low));dr=(ej=dr,new $Int64(dr.$high+ej.$high,dr.$low+ej.$low));dw=(ek=dw,new $Int64(dw.$high+ek.$high,dw.$low+ek.$low));ea=(el=ea,new $Int64(ea.$high+el.$high,ea.$low+el.$low));eb[0]=$shiftRightInt64((new $Int64(cl.$high+0,cl.$low+33554432)),26);cp=(em=eb[0],new $Int64(cp.$high+em.$high,cp.$low+em.$low));cl=(en=$shiftLeft64(eb[0],26),new $Int64(cl.$high-en.$high,cl.$low-en.$low));eb[4]=$shiftRightInt64((new $Int64(dd.$high+0,dd.$low+33554432)),26);dh=(eo=eb[4],new $Int64(dh.$high+eo.$high,dh.$low+eo.$low));dd=(ep=$shiftLeft64(eb[4],26),new $Int64(dd.$high-ep.$high,dd.$low-ep.$low));eb[1]=$shiftRightInt64((new $Int64(cp.$high+0,cp.$low+16777216)),25);cu=(eq=eb[1],new $Int64(cu.$high+eq.$high,cu.$low+eq.$low));cp=(er=$shiftLeft64(eb[1],25),new $Int64(cp.$high-er.$high,cp.$low-er.$low));eb[5]=$shiftRightInt64((new $Int64(dh.$high+0,dh.$low+16777216)),25);dm=(es=eb[5],new $Int64(dm.$high+es.$high,dm.$low+es.$low));dh=(et=$shiftLeft64(eb[5],25),new $Int64(dh.$high-et.$high,dh.$low-et.$low));eb[2]=$shiftRightInt64((new $Int64(cu.$high+0,cu.$low+33554432)),26);cy=(eu=eb[2],new $Int64(cy.$high+eu.$high,cy.$low+eu.$low));cu=(ev=$shiftLeft64(eb[2],26),new $Int64(cu.$high-ev.$high,cu.$low-ev.$low));eb[6]=$shiftRightInt64((new $Int64(dm.$high+0,dm.$low+33554432)),26);dr=(ew=eb[6],new $Int64(dr.$high+ew.$high,dr.$low+ew.$low));dm=(ex=$shiftLeft64(eb[6],26),new $Int64(dm.$high-ex.$high,dm.$low-ex.$low));eb[3]=$shiftRightInt64((new $Int64(cy.$high+0,cy.$low+16777216)),25);dd=(ey=eb[3],new $Int64(dd.$high+ey.$high,dd.$low+ey.$low));cy=(ez=$shiftLeft64(eb[3],25),new $Int64(cy.$high-ez.$high,cy.$low-ez.$low));eb[7]=$shiftRightInt64((new $Int64(dr.$high+0,dr.$low+16777216)),25);dw=(fa=eb[7],new $Int64(dw.$high+fa.$high,dw.$low+fa.$low));dr=(fb=$shiftLeft64(eb[7],25),new $Int64(dr.$high-fb.$high,dr.$low-fb.$low));eb[4]=$shiftRightInt64((new $Int64(dd.$high+0,dd.$low+33554432)),26);dh=(fc=eb[4],new $Int64(dh.$high+fc.$high,dh.$low+fc.$low));dd=(fd=$shiftLeft64(eb[4],26),new $Int64(dd.$high-fd.$high,dd.$low-fd.$low));eb[8]=$shiftRightInt64((new $Int64(dw.$high+0,dw.$low+33554432)),26);ea=(fe=eb[8],new $Int64(ea.$high+fe.$high,ea.$low+fe.$low));dw=(ff=$shiftLeft64(eb[8],26),new $Int64(dw.$high-ff.$high,dw.$low-ff.$low));eb[9]=$shiftRightInt64((new $Int64(ea.$high+0,ea.$low+16777216)),25);cl=(fg=$mul64(eb[9],new $Int64(0,19)),new $Int64(cl.$high+fg.$high,cl.$low+fg.$low));ea=(fh=$shiftLeft64(eb[9],25),new $Int64(ea.$high-fh.$high,ea.$low-fh.$low));eb[0]=$shiftRightInt64((new $Int64(cl.$high+0,cl.$low+33554432)),26);cp=(fi=eb[0],new $Int64(cp.$high+fi.$high,cp.$low+fi.$low));cl=(fj=$shiftLeft64(eb[0],26),new $Int64(cl.$high-fj.$high,cl.$low-fj.$low));f.nilCheck,f[0]=((cl.$low+((cl.$high>>31)*4294967296))>>0);f.nilCheck,f[1]=((cp.$low+((cp.$high>>31)*4294967296))>>0);f.nilCheck,f[2]=((cu.$low+((cu.$high>>31)*4294967296))>>0);f.nilCheck,f[3]=((cy.$low+((cy.$high>>31)*4294967296))>>0);f.nilCheck,f[4]=((dd.$low+((dd.$high>>31)*4294967296))>>0);f.nilCheck,f[5]=((dh.$low+((dh.$high>>31)*4294967296))>>0);f.nilCheck,f[6]=((dm.$low+((dm.$high>>31)*4294967296))>>0);f.nilCheck,f[7]=((dr.$low+((dr.$high>>31)*4294967296))>>0);f.nilCheck,f[8]=((dw.$low+((dw.$high>>31)*4294967296))>>0);f.nilCheck,f[9]=((ea.$low+((ea.$high>>31)*4294967296))>>0);};BD=function(f,g){var $ptr,f,g,h,i,j,k,l,m,n,o,p;h=CH.zero();i=CH.zero();j=CH.zero();k=CH.zero();l=$clone(h,AM);m=$clone(i,AM);n=$clone(j,AM);o=$clone(k,AM);p=0;BB(l,g);BB(m,l);p=1;while(true){if(!(p<2)){break;}BB(m,m);p=p+(1)>>0;}BA(m,g,m);BA(l,l,m);BB(n,l);BA(m,m,n);BB(n,m);p=1;while(true){if(!(p<5)){break;}BB(n,n);p=p+(1)>>0;}BA(m,n,m);BB(n,m);p=1;while(true){if(!(p<10)){break;}BB(n,n);p=p+(1)>>0;}BA(n,n,m);BB(o,n);p=1;while(true){if(!(p<20)){break;}BB(o,o);p=p+(1)>>0;}BA(n,o,n);BB(n,n);p=1;while(true){if(!(p<10)){break;}BB(n,n);p=p+(1)>>0;}BA(m,n,m);BB(n,m);p=1;while(true){if(!(p<50)){break;}BB(n,n);p=p+(1)>>0;}BA(n,n,m);BB(o,n);p=1;while(true){if(!(p<100)){break;}BB(o,o);p=p+(1)>>0;}BA(n,o,n);BB(n,n);p=1;while(true){if(!(p<50)){break;}BB(n,n);p=p+(1)>>0;}BA(m,n,m);BB(m,m);p=1;while(true){if(!(p<5)){break;}BB(m,m);p=p+(1)>>0;}BA(f,m,l);};BE=function(f,g){var $ptr,f,g,h,i,j,k,l,m,n;h=CH.zero();i=CH.zero();j=CH.zero();k=$clone(h,AM);l=$clone(i,AM);m=$clone(j,AM);n=0;BB(k,g);n=1;while(true){if(!(n<1)){break;}BB(k,k);n=n+(1)>>0;}BB(l,k);n=1;while(true){if(!(n<2)){break;}BB(l,l);n=n+(1)>>0;}BA(l,g,l);BA(k,k,l);BB(k,k);n=1;while(true){if(!(n<1)){break;}BB(k,k);n=n+(1)>>0;}BA(k,l,k);BB(l,k);n=1;while(true){if(!(n<5)){break;}BB(l,l);n=n+(1)>>0;}BA(k,l,k);BB(l,k);n=1;while(true){if(!(n<10)){break;}BB(l,l);n=n+(1)>>0;}BA(l,l,k);BB(m,l);n=1;while(true){if(!(n<20)){break;}BB(m,m);n=n+(1)>>0;}BA(l,m,l);BB(l,l);n=1;while(true){if(!(n<10)){break;}BB(l,l);n=n+(1)>>0;}BA(k,l,k);BB(l,k);n=1;while(true){if(!(n<50)){break;}BB(l,l);n=n+(1)>>0;}BA(l,l,k);BB(m,l);n=1;while(true){if(!(n<100)){break;}BB(m,m);n=n+(1)>>0;}BA(l,m,l);BB(l,l);n=1;while(true){if(!(n<50)){break;}BB(l,l);n=n+(1)>>0;}BA(k,l,k);BB(k,k);n=1;while(true){if(!(n<2)){break;}BB(k,k);n=n+(1)>>0;}BA(f,k,g);};AM.prototype.String=function(){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:f=this.$val;g="fieldElement{";h=f;i=0;case 1:if(!(i<10)){$s=2;continue;}j=i;if(j>0){g=g+(", ");}k=D.Sprintf("%d",new CM([new $Int32((f.nilCheck,((j<0||j>=f.length)?($throwRuntimeError("index out of range"),undefined):f[j])))]));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g=g+(k);i++;$s=1;continue;case 2:g=g+("}");$s=-1;return g;}return;}if($f===undefined){$f={$blk:AM.prototype.String};}$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;};$ptrType(AM).prototype.String=function(){return(new AM(this.$get())).String();};BF.ptr.prototype.Zero=function(){var $ptr,f;f=this;AN(f.X);AO(f.Y);AO(f.Z);};BF.prototype.Zero=function(){return this.$val.Zero();};BF.ptr.prototype.Double=function(f){var $ptr,f,g,h;g=this;h=CH.zero();BB(f.X,g.X);BB(f.Z,g.Y);BC(f.T,g.Z);AP(f.Y,g.X,g.Y);BB(h,f.Y);AP(f.Y,f.Z,f.X);AQ(f.Z,f.Z,f.X);AQ(f.X,h,f.Y);AQ(f.T,f.T,f.Z);};BF.prototype.Double=function(f){return this.$val.Double(f);};BF.ptr.prototype.ToBytes=function(f){var $ptr,f,g,h,i,j,k,l,m;g=this;h=CH.zero();i=CH.zero();j=CH.zero();k=$clone(h,AM);l=$clone(i,AM);m=$clone(j,AM);BD(k,g.Z);BA(l,g.X,k);BA(m,g.Y,k);AW(f,m);f.nilCheck,f[31]=(((f.nilCheck,f[31])^((AX(l)<<7<<24>>>24)))<<24>>>24);};BF.prototype.ToBytes=function(f){return this.$val.ToBytes(f);};BG.ptr.prototype.Zero=function(){var $ptr,f;f=this;AN(f.X);AO(f.Y);AO(f.Z);AN(f.T);};BG.prototype.Zero=function(){return this.$val.Zero();};BG.ptr.prototype.Neg=function(f){var $ptr,f,g;g=this;AZ(g.X,f.X);AR(g.Y,f.Y);AR(g.Z,f.Z);AZ(g.T,f.T);};BG.prototype.Neg=function(f){return this.$val.Neg(f);};BG.ptr.prototype.Double=function(f){var $ptr,f,g,h;g=this;h=new BF.ptr(CH.zero(),CH.zero(),CH.zero());g.ToProjective(h);h.Double(f);};BG.prototype.Double=function(f){return this.$val.Double(f);};BG.ptr.prototype.ToCached=function(f){var $ptr,f,g;g=this;AP(f.yPlusX,g.Y,g.X);AQ(f.yMinusX,g.Y,g.X);AR(f.Z,g.Z);BA(f.T2d,g.T,V);};BG.prototype.ToCached=function(f){return this.$val.ToCached(f);};BG.ptr.prototype.ToProjective=function(f){var $ptr,f,g;g=this;AR(f.X,g.X);AR(f.Y,g.Y);AR(f.Z,g.Z);};BG.prototype.ToProjective=function(f){return this.$val.ToProjective(f);};BG.ptr.prototype.ToBytes=function(f){var $ptr,f,g,h,i,j,k,l,m;g=this;h=CH.zero();i=CH.zero();j=CH.zero();k=$clone(h,AM);l=$clone(i,AM);m=$clone(j,AM);BD(k,g.Z);BA(l,g.X,k);BA(m,g.Y,k);AW(f,m);f.nilCheck,f[31]=(((f.nilCheck,f[31])^((AX(l)<<7<<24>>>24)))<<24>>>24);};BG.prototype.ToBytes=function(f){return this.$val.ToBytes(f);};BG.ptr.prototype.FromBytes=function(f){var $ptr,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;g=this;h=CH.zero();i=CH.zero();j=CH.zero();k=CH.zero();l=CH.zero();m=$clone(h,AM);n=$clone(i,AM);o=$clone(j,AM);p=$clone(k,AM);q=$clone(l,AM);if(!((f.$length===32))){return false;}AV(g.Y,f);AO(g.Z);BB(m,g.Y);BA(n,m,U);AQ(m,m,g.Z);AP(n,n,g.Z);BB(o,n);BA(o,o,n);BB(g.X,o);BA(g.X,g.X,n);BA(g.X,g.X,m);BE(g.X,g.X);BA(g.X,g.X,o);BA(g.X,g.X,m);r=CK.zero();s=CK.zero();t=$clone(r,CK);u=$clone(s,CK);BB(p,g.X);BA(p,p,n);AQ(q,p,m);if(AY(q)===1){AP(q,p,m);if(AY(q)===1){return false;}BA(g.X,g.X,W);AW(t,g.X);v=t;w=0;while(true){if(!(w<32)){break;}x=w;y=((w<0||w>=v.length)?($throwRuntimeError("index out of range"),undefined):v[w]);(z=31-x>>0,((z<0||z>=u.length)?($throwRuntimeError("index out of range"),undefined):u[z]=y));w++;}}if(!((AX(g.X)===(((31>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+31])>>>7<<24>>>24))))){AZ(g.X,g.X);}BA(g.T,g.X,g.Y);return true;};BG.prototype.FromBytes=function(f){return this.$val.FromBytes(f);};BG.ptr.prototype.String=function(){var $ptr,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;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=this;g=new CN(f.X).String();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=new CN(f.Y).String();$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=new CN(f.Z).String();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=new CN(f.T).String();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=-1;return"extendedGroupElement{\n\t"+g+",\n\t"+h+",\n\t"+i+",\n\t"+j+",\n}";}return;}if($f===undefined){$f={$blk:BG.ptr.prototype.String};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BG.prototype.String=function(){return this.$val.String();};BH.ptr.prototype.ToProjective=function(f){var $ptr,f,g;g=this;BA(f.X,g.X,g.T);BA(f.Y,g.Y,g.Z);BA(f.Z,g.Z,g.T);};BH.prototype.ToProjective=function(f){return this.$val.ToProjective(f);};BH.ptr.prototype.ToExtended=function(f){var $ptr,f,g;g=this;BA(f.X,g.X,g.T);BA(f.Y,g.Y,g.Z);BA(f.Z,g.Z,g.T);BA(f.T,g.X,g.Y);};BH.prototype.ToExtended=function(f){return this.$val.ToExtended(f);};BI.ptr.prototype.Zero=function(){var $ptr,f;f=this;AO(f.yPlusX);AO(f.yMinusX);AN(f.xy2d);};BI.prototype.Zero=function(){return this.$val.Zero();};BH.ptr.prototype.Add=function(f,g){var $ptr,f,g,h,i;h=this;i=CH.zero();AP(h.X,f.Y,f.X);AQ(h.Y,f.Y,f.X);BA(h.Z,h.X,g.yPlusX);BA(h.Y,h.Y,g.yMinusX);BA(h.T,g.T2d,f.T);BA(h.X,f.Z,g.Z);AP(i,h.X,h.X);AQ(h.X,h.Z,h.Y);AP(h.Y,h.Z,h.Y);AP(h.Z,i,h.T);AQ(h.T,i,h.T);};BH.prototype.Add=function(f,g){return this.$val.Add(f,g);};BH.ptr.prototype.Sub=function(f,g){var $ptr,f,g,h,i;h=this;i=CH.zero();AP(h.X,f.Y,f.X);AQ(h.Y,f.Y,f.X);BA(h.Z,h.X,g.yMinusX);BA(h.Y,h.Y,g.yPlusX);BA(h.T,g.T2d,f.T);BA(h.X,f.Z,g.Z);AP(i,h.X,h.X);AQ(h.X,h.Z,h.Y);AP(h.Y,h.Z,h.Y);AQ(h.Z,i,h.T);AP(h.T,i,h.T);};BH.prototype.Sub=function(f,g){return this.$val.Sub(f,g);};BH.ptr.prototype.MixedAdd=function(f,g){var $ptr,f,g,h,i;h=this;i=CH.zero();AP(h.X,f.Y,f.X);AQ(h.Y,f.Y,f.X);BA(h.Z,h.X,g.yPlusX);BA(h.Y,h.Y,g.yMinusX);BA(h.T,g.xy2d,f.T);AP(i,f.Z,f.Z);AQ(h.X,h.Z,h.Y);AP(h.Y,h.Z,h.Y);AP(h.Z,i,h.T);AQ(h.T,i,h.T);};BH.prototype.MixedAdd=function(f,g){return this.$val.MixedAdd(f,g);};BH.ptr.prototype.MixedSub=function(f,g){var $ptr,f,g,h,i;h=this;i=CH.zero();AP(h.X,f.Y,f.X);AQ(h.Y,f.Y,f.X);BA(h.Z,h.X,g.yMinusX);BA(h.Y,h.Y,g.yPlusX);BA(h.T,g.xy2d,f.T);AP(i,f.Z,f.Z);AQ(h.X,h.Z,h.Y);AP(h.Y,h.Z,h.Y);AQ(h.Z,i,h.T);AP(h.T,i,h.T);};BH.prototype.MixedSub=function(f,g){return this.$val.MixedSub(f,g);};BI.ptr.prototype.CMove=function(f,g){var $ptr,f,g,h;h=this;AS(h.yPlusX,f.yPlusX,g);AS(h.yMinusX,f.yMinusX,g);AS(h.xy2d,f.xy2d,g);};BI.prototype.CMove=function(f,g){return this.$val.CMove(f,g);};BI.ptr.prototype.Neg=function(f){var $ptr,f,g;g=this;AR(g.yPlusX,f.yMinusX);AR(g.yMinusX,f.yPlusX);AZ(g.xy2d,f.xy2d);};BI.prototype.Neg=function(f){return this.$val.Neg(f);};BJ.ptr.prototype.Zero=function(){var $ptr,f;f=this;AO(f.yPlusX);AO(f.yMinusX);AO(f.Z);AN(f.T2d);};BJ.prototype.Zero=function(){return this.$val.Zero();};BJ.ptr.prototype.CMove=function(f,g){var $ptr,f,g,h;h=this;AS(h.yPlusX,f.yPlusX,g);AS(h.yMinusX,f.yMinusX,g);AS(h.Z,f.Z,g);AS(h.T2d,f.T2d,g);};BJ.prototype.CMove=function(f,g){return this.$val.CMove(f,g);};BJ.ptr.prototype.Neg=function(f){var $ptr,f,g;g=this;AR(g.yPlusX,f.yMinusX);AR(g.yMinusX,f.yPlusX);AR(g.Z,f.Z);AZ(g.T2d,f.T2d);};BJ.prototype.Neg=function(f){return this.$val.Neg(f);};BM=function(f,g){var $ptr,f,g,h;h=(((f^g)>>0)>>>0);h=h-(1)>>>0;return((h>>>31>>>0)>>0);};BN=function(f){var $ptr,f;return((f>>31>>0))&1;};BO=function(f,g,h){var $ptr,f,g,h,i,j,k,l,m;i=new BI.ptr(CH.zero(),CH.zero(),CH.zero());j=BN(h);k=h-(((((-j)&h))<<1>>0))>>0;f.Zero();l=0;while(true){if(!(l<8)){break;}f.CMove((m=((g<0||g>=AA.length)?($throwRuntimeError("index out of range"),undefined):AA[g]),((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l])),BM(k,l+1>>0));l=l+(1)>>0;}i.Neg(f);f.CMove(i,j);};BP=function(f,g){var $ptr,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;h=CQ.zero();i=g;j=0;while(true){if(!(j<32)){break;}k=j;l=(i.nilCheck,((j<0||j>=i.length)?($throwRuntimeError("index out of range"),undefined):i[j]));(m=$imul(2,k),((m<0||m>=h.length)?($throwRuntimeError("index out of range"),undefined):h[m]=(((l&15)>>>0)<<24>>24)));(n=($imul(2,k))+1>>0,((n<0||n>=h.length)?($throwRuntimeError("index out of range"),undefined):h[n]=(((((l>>>4<<24>>>24))&15)>>>0)<<24>>24)));j++;}o=0;p=0;while(true){if(!(p<63)){break;}((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p]=(((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p])+(o)<<24>>24));o=((((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p])+8<<24>>24))>>4<<24>>24;((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p]=(((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p])-((o<<4<<24>>24))<<24>>24));p=p+(1)>>0;}h[63]=(h[63]+(o)<<24>>24);f.Zero();q=new BI.ptr(CH.zero(),CH.zero(),CH.zero());r=new BH.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());s=1;while(true){if(!(s<64)){break;}BO(q,(t=s/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero")),(((s<0||s>=h.length)?($throwRuntimeError("index out of range"),undefined):h[s])>>0));r.MixedAdd(f,q);r.ToExtended(f);s=s+(2)>>0;}u=new BF.ptr(CH.zero(),CH.zero(),CH.zero());f.Double(r);r.ToProjective(u);u.Double(r);r.ToProjective(u);u.Double(r);r.ToProjective(u);u.Double(r);r.ToExtended(f);v=0;while(true){if(!(v<64)){break;}BO(q,(w=v/2,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero")),(((v<0||v>=h.length)?($throwRuntimeError("index out of range"),undefined):h[v])>>0));r.MixedAdd(f,q);r.ToExtended(f);v=v+(2)>>0;}};BQ=function(f,g,h){var $ptr,f,g,h,i,j,k,l;i=BN(h);j=h-(((((-i)&h))<<1>>0))>>0;f.Zero();k=0;while(true){if(!(k<8)){break;}f.CMove((g.nilCheck,((k<0||k>=g.length)?($throwRuntimeError("index out of range"),undefined):g[k])),BM(j,k+1>>0));k=k+(1)>>0;}l=new BJ.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());l.Neg(f);f.CMove(l,i);};BR=function(f,g,h){var $ptr,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;i=new BH.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());j=new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());k=new BF.ptr(CH.zero(),CH.zero(),CH.zero());l=new BJ.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());m=0;n=CQ.zero();o=g;p=0;while(true){if(!(p<32)){break;}q=p;r=(o.nilCheck,((p<0||p>=o.length)?($throwRuntimeError("index out of range"),undefined):o[p]));(s=$imul(2,q),((s<0||s>=n.length)?($throwRuntimeError("index out of range"),undefined):n[s]=(((r&15)>>>0)<<24>>24)));(t=($imul(2,q))+1>>0,((t<0||t>=n.length)?($throwRuntimeError("index out of range"),undefined):n[t]=(((((r>>>4<<24>>>24))&15)>>>0)<<24>>24)));p++;}u=0;v=0;while(true){if(!(v<63)){break;}((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v]=(((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v])+(u)<<24>>24));u=((((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v])+8<<24>>24))>>4<<24>>24;((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v]=(((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v])-((u<<4<<24>>24))<<24>>24));v=v+(1)>>0;}n[63]=(n[63]+(u)<<24>>24);w=CP.zero();h.ToCached(w[0]);x=0;while(true){if(!(x<7)){break;}i.Add(h,((x<0||x>=w.length)?($throwRuntimeError("index out of range"),undefined):w[x]));i.ToExtended(j);j.ToCached((y=x+1>>0,((y<0||y>=w.length)?($throwRuntimeError("index out of range"),undefined):w[y])));x=x+(1)>>0;}j.Zero();BQ(l,w,(n[63]>>0));i.Add(j,l);m=62;while(true){if(!(m>=0)){break;}i.ToProjective(k);k.Double(i);i.ToProjective(k);k.Double(i);i.ToProjective(k);k.Double(i);i.ToProjective(k);k.Double(i);i.ToExtended(j);BQ(l,w,(((m<0||m>=n.length)?($throwRuntimeError("index out of range"),undefined):n[m])>>0));i.Add(j,l);m=m-(1)>>0;}i.ToExtended(f);};BT.ptr.prototype.String=function(){var $ptr,f,g;f=this;g=CK.zero();f.ge.ToBytes(g);return F.EncodeToString(new CJ(g));};BT.prototype.String=function(){return this.$val.String();};BT.ptr.prototype.MarshalSize=function(){var $ptr,f;f=this;return 32;};BT.prototype.MarshalSize=function(){return this.$val.MarshalSize();};BT.ptr.prototype.MarshalBinary=function(){var $ptr,f,g;f=this;g=CK.zero();f.ge.ToBytes(g);return[new CJ(g),$ifaceNil];};BT.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BT.ptr.prototype.UnmarshalBinary=function(f){var $ptr,f,g;g=this;if(!g.ge.FromBytes(f)){return G.New("invalid Ed25519 curve point");}return $ifaceNil;};BT.prototype.UnmarshalBinary=function(f){return this.$val.UnmarshalBinary(f);};BT.ptr.prototype.MarshalTo=function(f){var $ptr,f,g,h,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=J.PointMarshalTo(g,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.MarshalTo};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.MarshalTo=function(f){return this.$val.MarshalTo(f);};BT.ptr.prototype.UnmarshalFrom=function(f){var $ptr,f,g,h,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=J.PointUnmarshalFrom(g,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnmarshalFrom};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnmarshalFrom=function(f){return this.$val.UnmarshalFrom(f);};BT.ptr.prototype.Equal=function(f){var $ptr,f,g,h,i,j,k,l,m,n;g=this;h=CK.zero();i=CK.zero();j=$clone(h,CK);k=$clone(i,CK);g.ge.ToBytes(j);$assertType(f,CR).ge.ToBytes(k);l=j;m=0;while(true){if(!(m<32)){break;}n=m;if(!((((n<0||n>=j.length)?($throwRuntimeError("index out of range"),undefined):j[n])===((n<0||n>=k.length)?($throwRuntimeError("index out of range"),undefined):k[n])))){return false;}m++;}return true;};BT.prototype.Equal=function(f){return this.$val.Equal(f);};BT.ptr.prototype.Set=function(f){var $ptr,f,g;g=this;BG.copy(g.ge,$assertType(f,CR).ge);return g;};BT.prototype.Set=function(f){return this.$val.Set(f);};BT.ptr.prototype.Clone=function(){var $ptr,f;f=this;return new BT.ptr($clone(f.ge,BG));};BT.prototype.Clone=function(){return this.$val.Clone();};BT.ptr.prototype.Null=function(){var $ptr,f;f=this;f.ge.Zero();return f;};BT.prototype.Null=function(){return this.$val.Null();};BT.ptr.prototype.Base=function(){var $ptr,f;f=this;BG.copy(f.ge,Y);return f;};BT.prototype.Base=function(){return this.$val.Base();};BT.ptr.prototype.PickLen=function(){var $ptr,f;f=this;return 29;};BT.prototype.PickLen=function(){return this.$val.PickLen();};BT.ptr.prototype.Pick=function(f,g){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:h=this;i=h.PickLen();if(i>f.$length){i=f.$length;}case 1:j=CK.zero();$r=g.XORKeyStream(new CJ(j),new CJ(j));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(f===CJ.nil)){j[0]=(i<<24>>>24);$copySlice($subslice(new CJ(j),1,(1+i>>0)),f);}if(!h.ge.FromBytes(new CJ(j))){$s=1;continue;}if(f===CJ.nil){h.Mul(h,R);if(h.Equal(T)){$s=1;continue;}$s=-1;return[h,$subslice(f,i)];}k=new BT.ptr(new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero()));k.Mul(h,Q);if(k.Equal(T)){$s=-1;return[h,$subslice(f,i)];}$s=1;continue;case 2:$s=-1;return[$ifaceNil,CJ.nil];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.Pick};}$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;};BT.prototype.Pick=function(f,g){return this.$val.Pick(f,g);};BT.ptr.prototype.Data=function(){var $ptr,f,g,h;f=this;g=CK.zero();f.ge.ToBytes(g);h=(g[0]>>0);if(h>f.PickLen()){return[CJ.nil,G.New("invalid embedded data length")];}return[$subslice(new CJ(g),1,(1+h>>0)),$ifaceNil];};BT.prototype.Data=function(){return this.$val.Data();};BT.ptr.prototype.Add=function(f,g){var $ptr,f,g,h,i,j,k,l;h=this;i=$assertType(f,CR);j=$assertType(g,CR);k=new BJ.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());l=new BH.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());j.ge.ToCached(k);l.Add(i.ge,k);l.ToExtended(h.ge);return h;};BT.prototype.Add=function(f,g){return this.$val.Add(f,g);};BT.ptr.prototype.Sub=function(f,g){var $ptr,f,g,h,i,j,k,l;h=this;i=$assertType(f,CR);j=$assertType(g,CR);k=new BJ.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());l=new BH.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());j.ge.ToCached(k);l.Sub(i.ge,k);l.ToExtended(h.ge);return h;};BT.prototype.Sub=function(f,g){return this.$val.Sub(f,g);};BT.ptr.prototype.Neg=function(f){var $ptr,f,g;g=this;g.ge.Neg($assertType(f,CR).ge);return g;};BT.prototype.Neg=function(f){return this.$val.Neg(f);};BT.ptr.prototype.Mul=function(f,g){var $ptr,f,g,h,i,j,k,l,m,n,o;h=this;i=$assertType(g,CS).V.Bytes();j=i.$length-1>>0;k=CK.zero();l=i;m=0;while(true){if(!(m<l.$length)){break;}n=m;(o=j-n>>0,((o<0||o>=k.length)?($throwRuntimeError("index out of range"),undefined):k[o]=((n<0||n>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+n])));m++;}if($interfaceIsEqual(f,$ifaceNil)){BP(h.ge,k);}else{BR(h.ge,k,$assertType(f,CR).ge);}return h;};BT.prototype.Mul=function(f,g){return this.$val.Mul(f,g);};BU.ptr.prototype.PrimeOrder=function(){var $ptr,f;f=this;return true;};BU.prototype.PrimeOrder=function(){return this.$val.PrimeOrder();};BU.ptr.prototype.String=function(){var $ptr,f;f=this;return"Ed25519";};BU.prototype.String=function(){return this.$val.String();};BU.ptr.prototype.ScalarLen=function(){var $ptr,f;f=this;return 32;};BU.prototype.ScalarLen=function(){return this.$val.ScalarLen();};BU.ptr.prototype.Scalar=function(){var $ptr,f,g,h,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;g=B.NewInt64(new $Int64(0,0),Q.V);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;h.BO=true;$s=-1;return h;}return;}if($f===undefined){$f={$blk:BU.ptr.prototype.Scalar};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};BU.prototype.Scalar=function(){return this.$val.Scalar();};BU.ptr.prototype.PointLen=function(){var $ptr,f;f=this;return 32;};BU.prototype.PointLen=function(){return this.$val.PointLen();};BU.ptr.prototype.Point=function(){var $ptr,f,g;f=this;g=new BT.ptr(new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero()));return g;};BU.prototype.Point=function(){return this.$val.Point();};BX.ptr.prototype.Hash=function(){var $ptr,f;f=this;return K.New();};BX.prototype.Hash=function(){return this.$val.Hash();};BX.ptr.prototype.Cipher=function(f,g){var $ptr,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;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=this;i=N.NewShakeCipher128(f,g);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.Cipher};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BX.prototype.Cipher=function(f,g){return this.$val.Cipher(f,g);};BX.ptr.prototype.Read=function(f,g){var $ptr,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;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=this;i=I.SuiteRead(h,f,new CM([g]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.Read};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BX.prototype.Read=function(f,g){return this.$val.Read(f,g);};BX.ptr.prototype.Write=function(f,g){var $ptr,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;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=this;i=I.SuiteWrite(h,f,new CM([g]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.Write};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BX.prototype.Write=function(f,g){return this.$val.Write(f,g);};BX.ptr.prototype.New=function(f){var $ptr,f,g,h,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=I.SuiteNew(g,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.New};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};BX.prototype.New=function(f){return this.$val.New(f);};BX.ptr.prototype.NewKey=function(f){var $ptr,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;f=$f.f;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:g=this;if($interfaceIsEqual(f,$ifaceNil)){f=O.Stream;}h=O.NonZeroBytes(32,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=C.Sum512(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone(j,CV);k[0]=((k[0]&(248))>>>0);k[31]=((k[31]&(63))>>>0);k[31]=((k[31]|(64))>>>0);l=g.Curve.Scalar();$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l.SetBytes($subslice(new CJ(k),0,32));$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$s=-1;return n;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.NewKey};}$f.$ptr=$ptr;$f.f=f;$f.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;};BX.prototype.NewKey=function(f){return this.$val.NewKey(f);};BY=function(f){var $ptr,f,g;g=new BX.ptr(new BU.ptr());return g;};$pkg.NewAES128SHA256Ed25519=BY;CN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CY.methods=[{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[],false)},{prop:"Double",name:"Double",pkg:"",typ:$funcType([CW],[],false)},{prop:"ToBytes",name:"ToBytes",pkg:"",typ:$funcType([CX],[],false)}];CZ.methods=[{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([CZ],[],false)},{prop:"Double",name:"Double",pkg:"",typ:$funcType([CW],[],false)},{prop:"ToCached",name:"ToCached",pkg:"",typ:$funcType([DA],[],false)},{prop:"ToProjective",name:"ToProjective",pkg:"",typ:$funcType([CY],[],false)},{prop:"ToBytes",name:"ToBytes",pkg:"",typ:$funcType([CX],[],false)},{prop:"FromBytes",name:"FromBytes",pkg:"",typ:$funcType([CJ],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CW.methods=[{prop:"ToProjective",name:"ToProjective",pkg:"",typ:$funcType([CY],[],false)},{prop:"ToExtended",name:"ToExtended",pkg:"",typ:$funcType([CZ],[],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([CZ,DA],[],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([CZ,DA],[],false)},{prop:"MixedAdd",name:"MixedAdd",pkg:"",typ:$funcType([CZ,DB],[],false)},{prop:"MixedSub",name:"MixedSub",pkg:"",typ:$funcType([CZ,DB],[],false)}];DB.methods=[{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[],false)},{prop:"CMove",name:"CMove",pkg:"",typ:$funcType([DB,$Int32],[],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([DB],[],false)}];DA.methods=[{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[],false)},{prop:"CMove",name:"CMove",pkg:"",typ:$funcType([DA,$Int32],[],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([DA],[],false)}];CR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[CJ,$error],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([CJ],[$error],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([H.Writer],[$Int,$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([H.Reader],[$Int,$error],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([I.Point],[$Bool],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([I.Point],[I.Point],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[I.Point],false)},{prop:"Null",name:"Null",pkg:"",typ:$funcType([],[I.Point],false)},{prop:"Base",name:"Base",pkg:"",typ:$funcType([],[I.Point],false)},{prop:"PickLen",name:"PickLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Pick",name:"Pick",pkg:"",typ:$funcType([CJ,E.Stream],[I.Point,CJ],false)},{prop:"Data",name:"Data",pkg:"",typ:$funcType([],[CJ,$error],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([I.Point,I.Point],[I.Point],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([I.Point,I.Point],[I.Point],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([I.Point],[I.Point],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([I.Point,I.Scalar],[I.Point],false)}];DC.methods=[{prop:"PrimeOrder",name:"PrimeOrder",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"ScalarLen",name:"ScalarLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Scalar",name:"Scalar",pkg:"",typ:$funcType([],[I.Scalar],false)},{prop:"PointLen",name:"PointLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Point",name:"Point",pkg:"",typ:$funcType([],[I.Point],false)}];DD.methods=[{prop:"Hash",name:"Hash",pkg:"",typ:$funcType([],[L.Hash],false)},{prop:"Cipher",name:"Cipher",pkg:"",typ:$funcType([CJ,CM],[I.Cipher],true)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([H.Reader,CM],[$error],true)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([H.Writer,CM],[$error],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([M.Type],[$emptyInterface],false)},{prop:"NewKey",name:"NewKey",pkg:"",typ:$funcType([E.Stream],[I.Scalar],false)}];AM.init($Int32,10);BF.init("",[{prop:"X",name:"X",exported:true,typ:AM,tag:""},{prop:"Y",name:"Y",exported:true,typ:AM,tag:""},{prop:"Z",name:"Z",exported:true,typ:AM,tag:""}]);BG.init("",[{prop:"X",name:"X",exported:true,typ:AM,tag:""},{prop:"Y",name:"Y",exported:true,typ:AM,tag:""},{prop:"Z",name:"Z",exported:true,typ:AM,tag:""},{prop:"T",name:"T",exported:true,typ:AM,tag:""}]);BH.init("",[{prop:"X",name:"X",exported:true,typ:AM,tag:""},{prop:"Y",name:"Y",exported:true,typ:AM,tag:""},{prop:"Z",name:"Z",exported:true,typ:AM,tag:""},{prop:"T",name:"T",exported:true,typ:AM,tag:""}]);BI.init("gopkg.in/dedis/crypto.v0/ed25519",[{prop:"yPlusX",name:"yPlusX",exported:false,typ:AM,tag:""},{prop:"yMinusX",name:"yMinusX",exported:false,typ:AM,tag:""},{prop:"xy2d",name:"xy2d",exported:false,typ:AM,tag:""}]);BJ.init("gopkg.in/dedis/crypto.v0/ed25519",[{prop:"yPlusX",name:"yPlusX",exported:false,typ:AM,tag:""},{prop:"yMinusX",name:"yMinusX",exported:false,typ:AM,tag:""},{prop:"Z",name:"Z",exported:true,typ:AM,tag:""},{prop:"T2d",name:"T2d",exported:true,typ:AM,tag:""}]);BT.init("gopkg.in/dedis/crypto.v0/ed25519",[{prop:"ge",name:"ge",exported:false,typ:BG,tag:""}]);BU.init("",[]);BX.init("",[{prop:"Curve",name:"",exported:true,typ:BU,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=K.$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=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$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=B.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=new A.Int.ptr(false,A.nat.nil).SetString("57896044618658097711785492504343953926634992332820282019728792003956564819949",10);$s=16;case 16:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;P=a[0];d=new B.Int.ptr(new A.Int.ptr(false,A.nat.nil),CG.nil,false).SetString("7237005577332262213973186563042994240857116359379907606001950938285454250989","",10);$s=17;case 17:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;Q=c[0];e=B.NewInt64(new $Int64(0,8),Q.V);$s=18;case 18:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}R=e;S=new A.Int.ptr(false,A.nat.nil).Mul(Q.V,R.V);T=new BT.ptr(new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero())).Null();U=$toNativeArray($kindInt32,[-10913610,13857413,-15372611,6949391,114729,-8787816,-6275908,-3247719,-18696448,-12055116]);V=$toNativeArray($kindInt32,[-21827239,-5839606,-30745221,13898782,229458,15978800,-12551817,-6495438,29715968,9444199]);W=$toNativeArray($kindInt32,[-32595792,-7943725,9377950,3500415,12389472,-272473,-25146209,-2005654,326686,11406482]);Y=new BG.ptr($toNativeArray($kindInt32,[25485296,5318399,8791791,-8299916,-14349720,6939349,-3324311,-7717049,7287234,-6577708]),$toNativeArray($kindInt32,[-758052,-1832720,13046421,-4857925,6576754,14371947,-13139572,6845540,-2198883,-4003719]),$toNativeArray($kindInt32,[-947565,6097708,-469190,10704810,-8556274,-15589498,-16424464,-16608899,14028613,-5004649]),$toNativeArray($kindInt32,[6966464,-2456167,7033433,6781840,28785542,12262365,-2659449,13959020,-21013759,-5262166]));AA=$toNativeArray($kindArray,[$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[25967493,-14356035,29566456,3660896,-12694345,4014787,27544626,-11754271,-6079156,2047605]),$toNativeArray($kindInt32,[-12545711,934262,-2722910,3049990,-727428,9406986,12720692,5043384,19500929,-15469378]),$toNativeArray($kindInt32,[-8738181,4489570,9688441,-14785194,10184609,-12363380,29287919,11864899,-24514362,-4438546])),new BI.ptr($toNativeArray($kindInt32,[-12815894,-12976347,-21581243,11784320,-25355658,-2750717,-11717903,-3814571,-358445,-10211303]),$toNativeArray($kindInt32,[-21703237,6903825,27185491,6451973,-29577724,-9554005,-15616551,11189268,-26829678,-5319081]),$toNativeArray($kindInt32,[26966642,11152617,32442495,15396054,14353839,-12752335,-3128826,-9541118,-15472047,-4166697])),new BI.ptr($toNativeArray($kindInt32,[15636291,-9688557,24204773,-7912398,616977,-16685262,27787600,-14772189,28944400,-1550024]),$toNativeArray($kindInt32,[16568933,4717097,-11556148,-1102322,15682896,-11807043,16354577,-11775962,7689662,11199574]),$toNativeArray($kindInt32,[30464156,-5976125,-11779434,-15670865,23220365,15915852,7512774,10017326,-17749093,-9920357])),new BI.ptr($toNativeArray($kindInt32,[-17036878,13921892,10945806,-6033431,27105052,-16084379,-28926210,15006023,3284568,-6276540]),$toNativeArray($kindInt32,[23599295,-8306047,-11193664,-7687416,13236774,10506355,7464579,9656445,13059162,10374397]),$toNativeArray($kindInt32,[7798556,16710257,3033922,2874086,28997861,2835604,32406664,-3839045,-641708,-101325])),new BI.ptr($toNativeArray($kindInt32,[10861363,11473154,27284546,1981175,-30064349,12577861,32867885,14515107,-15438304,10819380]),$toNativeArray($kindInt32,[4708026,6336745,20377586,9066809,-11272109,6594696,-25653668,12483688,-12668491,5581306]),$toNativeArray($kindInt32,[19563160,16186464,-29386857,4097519,10237984,-4348115,28542350,13850243,-23678021,-15815942])),new BI.ptr($toNativeArray($kindInt32,[-15371964,-12862754,32573250,4720197,-26436522,5875511,-19188627,-15224819,-9818940,-12085777]),$toNativeArray($kindInt32,[-8549212,109983,15149363,2178705,22900618,4543417,3044240,-15689887,1762328,14866737]),$toNativeArray($kindInt32,[-18199695,-15951423,-10473290,1707278,-17185920,3916101,-28236412,3959421,27914454,4383652])),new BI.ptr($toNativeArray($kindInt32,[5153746,9909285,1723747,-2777874,30523605,5516873,19480852,5230134,-23952439,-15175766]),$toNativeArray($kindInt32,[-30269007,-3463509,7665486,10083793,28475525,1649722,20654025,16520125,30598449,7715701]),$toNativeArray($kindInt32,[28881845,14381568,9657904,3680757,-20181635,7843316,-31400660,1370708,29794553,-1409300])),new BI.ptr($toNativeArray($kindInt32,[14499471,-2729599,-33191113,-4254652,28494862,14271267,30290735,10876454,-33154098,2381726]),$toNativeArray($kindInt32,[-7195431,-2655363,-14730155,462251,-27724326,3941372,-6236617,3696005,-32300832,15351955]),$toNativeArray($kindInt32,[27431194,8222322,16448760,-3907995,-18707002,11938355,-32961401,-2970515,29551813,10109425]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-13657040,-13155431,-31283750,11777098,21447386,6519384,-2378284,-1627556,10092783,-4764171]),$toNativeArray($kindInt32,[27939166,14210322,4677035,16277044,-22964462,-12398139,-32508754,12005538,-17810127,12803510]),$toNativeArray($kindInt32,[17228999,-15661624,-1233527,300140,-1224870,-11714777,30364213,-9038194,18016357,4397660])),new BI.ptr($toNativeArray($kindInt32,[-10958843,-7690207,4776341,-14954238,27850028,-15602212,-26619106,14544525,-17477504,982639]),$toNativeArray($kindInt32,[29253598,15796703,-2863982,-9908884,10057023,3163536,7332899,-4120128,-21047696,9934963]),$toNativeArray($kindInt32,[5793303,16271923,-24131614,-10116404,29188560,1206517,-14747930,4559895,-30123922,-10897950])),new BI.ptr($toNativeArray($kindInt32,[-27643952,-11493006,16282657,-11036493,28414021,-15012264,24191034,4541697,-13338309,5500568]),$toNativeArray($kindInt32,[12650548,-1497113,9052871,11355358,-17680037,-8400164,-17430592,12264343,10874051,13524335]),$toNativeArray($kindInt32,[25556948,-3045990,714651,2510400,23394682,-10415330,33119038,5080568,-22528059,5376628])),new BI.ptr($toNativeArray($kindInt32,[-26088264,-4011052,-17013699,-3537628,-6726793,1920897,-22321305,-9447443,4535768,1569007]),$toNativeArray($kindInt32,[-2255422,14606630,-21692440,-8039818,28430649,8775819,-30494562,3044290,31848280,12543772]),$toNativeArray($kindInt32,[-22028579,2943893,-31857513,6777306,13784462,-4292203,-27377195,-2062731,7718482,14474653])),new BI.ptr($toNativeArray($kindInt32,[2385315,2454213,-22631320,46603,-4437935,-15680415,656965,-7236665,24316168,-5253567]),$toNativeArray($kindInt32,[13741529,10911568,-33233417,-8603737,-20177830,-1033297,33040651,-13424532,-20729456,8321686]),$toNativeArray($kindInt32,[21060490,-2212744,15712757,-4336099,1639040,10656336,23845965,-11874838,-9984458,608372])),new BI.ptr($toNativeArray($kindInt32,[-13672732,-15087586,-10889693,-7557059,-6036909,11305547,1123968,-6780577,27229399,23887]),$toNativeArray($kindInt32,[-23244140,-294205,-11744728,14712571,-29465699,-2029617,12797024,-6440308,-1633405,16678954]),$toNativeArray($kindInt32,[-29500620,4770662,-16054387,14001338,7830047,9564805,-1508144,-4795045,-17169265,4904953])),new BI.ptr($toNativeArray($kindInt32,[24059557,14617003,19037157,-15039908,19766093,-14906429,5169211,16191880,2128236,-4326833]),$toNativeArray($kindInt32,[-16981152,4124966,-8540610,-10653797,30336522,-14105247,-29806336,916033,-6882542,-2986532]),$toNativeArray($kindInt32,[-22630907,12419372,-7134229,-7473371,-16478904,16739175,285431,2763829,15736322,4143876])),new BI.ptr($toNativeArray($kindInt32,[2379352,11839345,-4110402,-5988665,11274298,794957,212801,-14594663,23527084,-16458268]),$toNativeArray($kindInt32,[33431127,-11130478,-17838966,-15626900,8909499,8376530,-32625340,4087881,-15188911,-14416214]),$toNativeArray($kindInt32,[1767683,7197987,-13205226,-2022635,-13091350,448826,5799055,4357868,-4774191,-16323038]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[6721966,13833823,-23523388,-1551314,26354293,-11863321,23365147,-3949732,7390890,2759800]),$toNativeArray($kindInt32,[4409041,2052381,23373853,10530217,7676779,-12885954,21302353,-4264057,1244380,-12919645]),$toNativeArray($kindInt32,[-4421239,7169619,4982368,-2957590,30256825,-2777540,14086413,9208236,15886429,16489664])),new BI.ptr($toNativeArray($kindInt32,[1996075,10375649,14346367,13311202,-6874135,-16438411,-13693198,398369,-30606455,-712933]),$toNativeArray($kindInt32,[-25307465,9795880,-2777414,14878809,-33531835,14780363,13348553,12076947,-30836462,5113182]),$toNativeArray($kindInt32,[-17770784,11797796,31950843,13929123,-25888302,12288344,-30341101,-7336386,13847711,5387222])),new BI.ptr($toNativeArray($kindInt32,[-18582163,-3416217,17824843,-2340966,22744343,-10442611,8763061,3617786,-19600662,10370991]),$toNativeArray($kindInt32,[20246567,-14369378,22358229,-543712,18507283,-10413996,14554437,-8746092,32232924,16763880]),$toNativeArray($kindInt32,[9648505,10094563,26416693,14745928,-30374318,-6472621,11094161,15689506,3140038,-16510092])),new BI.ptr($toNativeArray($kindInt32,[-16160072,5472695,31895588,4744994,8823515,10365685,-27224800,9448613,-28774454,366295]),$toNativeArray($kindInt32,[19153450,11523972,-11096490,-6503142,-24647631,5420647,28344573,8041113,719605,11671788]),$toNativeArray($kindInt32,[8678025,2694440,-6808014,2517372,4964326,11152271,-15432916,-15266516,27000813,-10195553])),new BI.ptr($toNativeArray($kindInt32,[-15157904,7134312,8639287,-2814877,-7235688,10421742,564065,5336097,6750977,-14521026]),$toNativeArray($kindInt32,[11836410,-3979488,26297894,16080799,23455045,15735944,1695823,-8819122,8169720,16220347]),$toNativeArray($kindInt32,[-18115838,8653647,17578566,-6092619,-8025777,-16012763,-11144307,-2627664,-5990708,-14166033])),new BI.ptr($toNativeArray($kindInt32,[-23308498,-10968312,15213228,-10081214,-30853605,-11050004,27884329,2847284,2655861,1738395]),$toNativeArray($kindInt32,[-27537433,-14253021,-25336301,-8002780,-9370762,8129821,21651608,-3239336,-19087449,-11005278]),$toNativeArray($kindInt32,[1533110,3437855,23735889,459276,29970501,11335377,26030092,5821408,10478196,8544890])),new BI.ptr($toNativeArray($kindInt32,[32173121,-16129311,24896207,3921497,22579056,-3410854,19270449,12217473,17789017,-3395995]),$toNativeArray($kindInt32,[-30552961,-2228401,-15578829,-10147201,13243889,517024,15479401,-3853233,30460520,1052596]),$toNativeArray($kindInt32,[-11614875,13323618,32618793,8175907,-15230173,12596687,27491595,-4612359,3179268,-9478891])),new BI.ptr($toNativeArray($kindInt32,[31947069,-14366651,-4640583,-15339921,-15125977,-6039709,-14756777,-16411740,19072640,-9511060]),$toNativeArray($kindInt32,[11685058,11822410,3158003,-13952594,33402194,-4165066,5977896,-5215017,473099,5040608]),$toNativeArray($kindInt32,[-20290863,8198642,-27410132,11602123,1290375,-2799760,28326862,1721092,-19558642,-3131606]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[7881532,10687937,7578723,7738378,-18951012,-2553952,21820786,8076149,-27868496,11538389]),$toNativeArray($kindInt32,[-19935666,3899861,18283497,-6801568,-15728660,-11249211,8754525,7446702,-5676054,5797016]),$toNativeArray($kindInt32,[-11295600,-3793569,-15782110,-7964573,12708869,-8456199,2014099,-9050574,-2369172,-5877341])),new BI.ptr($toNativeArray($kindInt32,[-22472376,-11568741,-27682020,1146375,18956691,16640559,1192730,-3714199,15123619,10811505]),$toNativeArray($kindInt32,[14352098,-3419715,-18942044,10822655,32750596,4699007,-70363,15776356,-28886779,-11974553]),$toNativeArray($kindInt32,[-28241164,-8072475,-4978962,-5315317,29416931,1847569,-20654173,-16484855,4714547,-9600655])),new BI.ptr($toNativeArray($kindInt32,[15200332,8368572,19679101,15970074,-31872674,1959451,24611599,-4543832,-11745876,12340220]),$toNativeArray($kindInt32,[12876937,-10480056,33134381,6590940,-6307776,14872440,9613953,8241152,15370987,9608631]),$toNativeArray($kindInt32,[-4143277,-12014408,8446281,-391603,4407738,13629032,-7724868,15866074,-28210621,-8814099])),new BI.ptr($toNativeArray($kindInt32,[26660628,-15677655,8393734,358047,-7401291,992988,-23904233,858697,20571223,8420556]),$toNativeArray($kindInt32,[14620715,13067227,-15447274,8264467,14106269,15080814,33531827,12516406,-21574435,-12476749]),$toNativeArray($kindInt32,[236881,10476226,57258,-14677024,6472998,2466984,17258519,7256740,8791136,15069930])),new BI.ptr($toNativeArray($kindInt32,[1276410,-9371918,22949635,-16322807,-23493039,-5702186,14711875,4874229,-30663140,-2331391]),$toNativeArray($kindInt32,[5855666,4990204,-13711848,7294284,-7804282,1924647,-1423175,-7912378,-33069337,9234253]),$toNativeArray($kindInt32,[20590503,-9018988,31529744,-7352666,-2706834,10650548,31559055,-11609587,18979186,13396066])),new BI.ptr($toNativeArray($kindInt32,[24474287,4968103,22267082,4407354,24063882,-8325180,-18816887,13594782,33514650,7021958]),$toNativeArray($kindInt32,[-11566906,-6565505,-21365085,15928892,-26158305,4315421,-25948728,-3916677,-21480480,12868082]),$toNativeArray($kindInt32,[-28635013,13504661,19988037,-2132761,21078225,6443208,-21446107,2244500,-12455797,-8089383])),new BI.ptr($toNativeArray($kindInt32,[-30595528,13793479,-5852820,319136,-25723172,-6263899,33086546,8957937,-15233648,5540521]),$toNativeArray($kindInt32,[-11630176,-11503902,-8119500,-7643073,2620056,1022908,-23710744,-1568984,-16128528,-14962807]),$toNativeArray($kindInt32,[23152971,775386,27395463,14006635,-9701118,4649512,1689819,892185,-11513277,-15205948])),new BI.ptr($toNativeArray($kindInt32,[9770129,9586738,26496094,4324120,1556511,-3550024,27453819,4763127,-19179614,5867134]),$toNativeArray($kindInt32,[-32765025,1927590,31726409,-4753295,23962434,-16019500,27846559,5931263,-29749703,-16108455]),$toNativeArray($kindInt32,[27461885,-2977536,22380810,1815854,-23033753,-3031938,7283490,-15148073,-19526700,7734629]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-8010264,-9590817,-11120403,6196038,29344158,-13430885,7585295,-3176626,18549497,15302069]),$toNativeArray($kindInt32,[-32658337,-6171222,-7672793,-11051681,6258878,13504381,10458790,-6418461,-8872242,8424746]),$toNativeArray($kindInt32,[24687205,8613276,-30667046,-3233545,1863892,-1830544,19206234,7134917,-11284482,-828919])),new BI.ptr($toNativeArray($kindInt32,[11334899,-9218022,8025293,12707519,17523892,-10476071,10243738,-14685461,-5066034,16498837]),$toNativeArray($kindInt32,[8911542,6887158,-9584260,-6958590,11145641,-9543680,17303925,-14124238,6536641,10543906]),$toNativeArray($kindInt32,[-28946384,15479763,-17466835,568876,-1497683,11223454,-2669190,-16625574,-27235709,8876771])),new BI.ptr($toNativeArray($kindInt32,[-25742899,-12566864,-15649966,-846607,-33026686,-796288,-33481822,15824474,-604426,-9039817]),$toNativeArray($kindInt32,[10330056,70051,7957388,-9002667,9764902,15609756,27698697,-4890037,1657394,3084098]),$toNativeArray($kindInt32,[10477963,-7470260,12119566,-13250805,29016247,-5365589,31280319,14396151,-30233575,15272409])),new BI.ptr($toNativeArray($kindInt32,[-12288309,3169463,28813183,16658753,25116432,-5630466,-25173957,-12636138,-25014757,1950504]),$toNativeArray($kindInt32,[-26180358,9489187,11053416,-14746161,-31053720,5825630,-8384306,-8767532,15341279,8373727]),$toNativeArray($kindInt32,[28685821,7759505,-14378516,-12002860,-31971820,4079242,298136,-10232602,-2878207,15190420])),new BI.ptr($toNativeArray($kindInt32,[-32932876,13806336,-14337485,-15794431,-24004620,10940928,8669718,2742393,-26033313,-6875003]),$toNativeArray($kindInt32,[-1580388,-11729417,-25979658,-11445023,-17411874,-10912854,9291594,-16247779,-12154742,6048605]),$toNativeArray($kindInt32,[-30305315,14843444,1539301,11864366,20201677,1900163,13934231,5128323,11213262,9168384])),new BI.ptr($toNativeArray($kindInt32,[-26280513,11007847,19408960,-940758,-18592965,-4328580,-5088060,-11105150,20470157,-16398701]),$toNativeArray($kindInt32,[-23136053,9282192,14855179,-15390078,-7362815,-14408560,-22783952,14461608,14042978,5230683]),$toNativeArray($kindInt32,[29969567,-2741594,-16711867,-8552442,9175486,-2468974,21556951,3506042,-5933891,-12449708])),new BI.ptr($toNativeArray($kindInt32,[-3144746,8744661,19704003,4581278,-20430686,6830683,-21284170,8971513,-28539189,15326563]),$toNativeArray($kindInt32,[-19464629,10110288,-17262528,-3503892,-23500387,1355669,-15523050,15300988,-20514118,9168260]),$toNativeArray($kindInt32,[-5353335,4488613,-23803248,16314347,7780487,-15638939,-28948358,9601605,33087103,-9011387])),new BI.ptr($toNativeArray($kindInt32,[-19443170,-15512900,-20797467,-12445323,-29824447,10229461,-27444329,-15000531,-5996870,15664672]),$toNativeArray($kindInt32,[23294591,-16632613,-22650781,-8470978,27844204,11461195,13099750,-2460356,18151676,13417686]),$toNativeArray($kindInt32,[-24722913,-4176517,-31150679,5988919,-26858785,6685065,1661597,-12551441,15271676,-15452665]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[11433042,-13228665,8239631,-5279517,-1985436,-725718,-18698764,2167544,-6921301,-13440182]),$toNativeArray($kindInt32,[-31436171,15575146,30436815,12192228,-22463353,9395379,-9917708,-8638997,12215110,12028277]),$toNativeArray($kindInt32,[14098400,6555944,23007258,5757252,-15427832,-12950502,30123440,4617780,-16900089,-655628])),new BI.ptr($toNativeArray($kindInt32,[-4026201,-15240835,11893168,13718664,-14809462,1847385,-15819999,10154009,23973261,-12684474]),$toNativeArray($kindInt32,[-26531820,-3695990,-1908898,2534301,-31870557,-16550355,18341390,-11419951,32013174,-10103539]),$toNativeArray($kindInt32,[-25479301,10876443,-11771086,-14625140,-12369567,1838104,21911214,6354752,4425632,-837822])),new BI.ptr($toNativeArray($kindInt32,[-10433389,-14612966,22229858,-3091047,-13191166,776729,-17415375,-12020462,4725005,14044970]),$toNativeArray($kindInt32,[19268650,-7304421,1555349,8692754,-21474059,-9910664,6347390,-1411784,-19522291,-16109756]),$toNativeArray($kindInt32,[-24864089,12986008,-10898878,-5558584,-11312371,-148526,19541418,8180106,9282262,10282508])),new BI.ptr($toNativeArray($kindInt32,[-26205082,4428547,-8661196,-13194263,4098402,-14165257,15522535,8372215,5542595,-10702683]),$toNativeArray($kindInt32,[-10562541,14895633,26814552,-16673850,-17480754,-2489360,-2781891,6993761,-18093885,10114655]),$toNativeArray($kindInt32,[-20107055,-929418,31422704,10427861,-7110749,6150669,-29091755,-11529146,25953725,-106158])),new BI.ptr($toNativeArray($kindInt32,[-4234397,-8039292,-9119125,3046000,2101609,-12607294,19390020,6094296,-3315279,12831125]),$toNativeArray($kindInt32,[-15998678,7578152,5310217,14408357,-33548620,-224739,31575954,6326196,7381791,-2421839]),$toNativeArray($kindInt32,[-20902779,3296811,24736065,-16328389,18374254,7318640,6295303,8082724,-15362489,12339664])),new BI.ptr($toNativeArray($kindInt32,[27724736,2291157,6088201,-14184798,1792727,5857634,13848414,15768922,25091167,14856294]),$toNativeArray($kindInt32,[-18866652,8331043,24373479,8541013,-701998,-9269457,12927300,-12695493,-22182473,-9012899]),$toNativeArray($kindInt32,[-11423429,-5421590,11632845,3405020,30536730,-11674039,-27260765,13866390,30146206,9142070])),new BI.ptr($toNativeArray($kindInt32,[3924129,-15307516,-13817122,-10054960,12291820,-668366,-27702774,9326384,-8237858,4171294]),$toNativeArray($kindInt32,[-15921940,16037937,6713787,16606682,-21612135,2790944,26396185,3731949,345228,-5462949]),$toNativeArray($kindInt32,[-21327538,13448259,25284571,1143661,20614966,-8849387,2031539,-12391231,-16253183,-13582083])),new BI.ptr($toNativeArray($kindInt32,[31016211,-16722429,26371392,-14451233,-5027349,14854137,17477601,3842657,28012650,-16405420]),$toNativeArray($kindInt32,[-5075835,9368966,-8562079,-4600902,-15249953,6970560,-9189873,16292057,-8867157,3507940]),$toNativeArray($kindInt32,[29439664,3537914,23333589,6997794,-17555561,-11018068,-15209202,-15051267,-9164929,6580396]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-12185861,-7679788,16438269,10826160,-8696817,-6235611,17860444,-9273846,-2095802,9304567]),$toNativeArray($kindInt32,[20714564,-4336911,29088195,7406487,11426967,-5095705,14792667,-14608617,5289421,-477127]),$toNativeArray($kindInt32,[-16665533,-10650790,-6160345,-13305760,9192020,-1802462,17271490,12349094,26939669,-3752294])),new BI.ptr($toNativeArray($kindInt32,[-12889898,9373458,31595848,16374215,21471720,13221525,-27283495,-12348559,-3698806,117887]),$toNativeArray($kindInt32,[22263325,-6560050,3984570,-11174646,-15114008,-566785,28311253,5358056,-23319780,541964]),$toNativeArray($kindInt32,[16259219,3261970,2309254,-15534474,-16885711,-4581916,24134070,-16705829,-13337066,-13552195])),new BI.ptr($toNativeArray($kindInt32,[9378160,-13140186,-22845982,-12745264,28198281,-7244098,-2399684,-717351,690426,14876244]),$toNativeArray($kindInt32,[24977353,-314384,-8223969,-13465086,28432343,-1176353,-13068804,-12297348,-22380984,6618999]),$toNativeArray($kindInt32,[-1538174,11685646,12944378,13682314,-24389511,-14413193,8044829,-13817328,32239829,-5652762])),new BI.ptr($toNativeArray($kindInt32,[-18603066,4762990,-926250,8885304,-28412480,-3187315,9781647,-10350059,32779359,5095274]),$toNativeArray($kindInt32,[-33008130,-5214506,-32264887,-3685216,9460461,-9327423,-24601656,14506724,21639561,-2630236]),$toNativeArray($kindInt32,[-16400943,-13112215,25239338,15531969,3987758,-4499318,-1289502,-6863535,17874574,558605])),new BI.ptr($toNativeArray($kindInt32,[-13600129,10240081,9171883,16131053,-20869254,9599700,33499487,5080151,2085892,5119761]),$toNativeArray($kindInt32,[-22205145,-2519528,-16381601,414691,-25019550,2170430,30634760,-8363614,-31999993,-5759884]),$toNativeArray($kindInt32,[-6845704,15791202,8550074,-1312654,29928809,-12092256,27534430,-7192145,-22351378,12961482])),new BI.ptr($toNativeArray($kindInt32,[-24492060,-9570771,10368194,11582341,-23397293,-2245287,16533930,8206996,-30194652,-5159638]),$toNativeArray($kindInt32,[-11121496,-3382234,2307366,6362031,-135455,8868177,-16835630,7031275,7589640,8945490]),$toNativeArray($kindInt32,[-32152748,8917967,6661220,-11677616,-1192060,-15793393,7251489,-11182180,24099109,-14456170])),new BI.ptr($toNativeArray($kindInt32,[5019558,-7907470,4244127,-14714356,-26933272,6453165,-19118182,-13289025,-6231896,-10280736]),$toNativeArray($kindInt32,[10853594,10721687,26480089,5861829,-22995819,1972175,-1866647,-10557898,-3363451,-6441124]),$toNativeArray($kindInt32,[-17002408,5906790,221599,-6563147,7828208,-13248918,24362661,-2008168,-13866408,7421392])),new BI.ptr($toNativeArray($kindInt32,[8139927,-6546497,32257646,-5890546,30375719,1886181,-21175108,15441252,28826358,-4123029]),$toNativeArray($kindInt32,[6267086,9695052,7709135,-16603597,-32869068,-1886135,14795160,-7840124,13746021,-1742048]),$toNativeArray($kindInt32,[28584902,7787108,-6732942,-15050729,22846041,-7571236,-3181936,-363524,4771362,-8419958]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[24949256,6376279,-27466481,-8174608,-18646154,-9930606,33543569,-12141695,3569627,11342593]),$toNativeArray($kindInt32,[26514989,4740088,27912651,3697550,19331575,-11472339,6809886,4608608,7325975,-14801071]),$toNativeArray($kindInt32,[-11618399,-14554430,-24321212,7655128,-1369274,5214312,-27400540,10258390,-17646694,-8186692])),new BI.ptr($toNativeArray($kindInt32,[11431204,15823007,26570245,14329124,18029990,4796082,-31446179,15580664,9280358,-3973687]),$toNativeArray($kindInt32,[-160783,-10326257,-22855316,-4304997,-20861367,-13621002,-32810901,-11181622,-15545091,4387441]),$toNativeArray($kindInt32,[-20799378,12194512,3937617,-5805892,-27154820,9340370,-24513992,8548137,20617071,-7482001])),new BI.ptr($toNativeArray($kindInt32,[-938825,-3930586,-8714311,16124718,24603125,-6225393,-13775352,-11875822,24345683,10325460]),$toNativeArray($kindInt32,[-19855277,-1568885,-22202708,8714034,14007766,6928528,16318175,-1010689,4766743,3552007]),$toNativeArray($kindInt32,[-21751364,-16730916,1351763,-803421,-4009670,3950935,3217514,14481909,10988822,-3994762])),new BI.ptr($toNativeArray($kindInt32,[15564307,-14311570,3101243,5684148,30446780,-8051356,12677127,-6505343,-8295852,13296005]),$toNativeArray($kindInt32,[-9442290,6624296,-30298964,-11913677,-4670981,-2057379,31521204,9614054,-30000824,12074674]),$toNativeArray($kindInt32,[4771191,-135239,14290749,-13089852,27992298,14998318,-1413936,-1556716,29832613,-16391035])),new BI.ptr($toNativeArray($kindInt32,[7064884,-7541174,-19161962,-5067537,-18891269,-2912736,25825242,5293297,-27122660,13101590]),$toNativeArray($kindInt32,[-2298563,2439670,-7466610,1719965,-27267541,-16328445,32512469,-5317593,-30356070,-4190957]),$toNativeArray($kindInt32,[-30006540,10162316,-33180176,3981723,-16482138,-13070044,14413974,9515896,19568978,9628812])),new BI.ptr($toNativeArray($kindInt32,[33053803,199357,15894591,1583059,27380243,-4580435,-17838894,-6106839,-6291786,3437740]),$toNativeArray($kindInt32,[-18978877,3884493,19469877,12726490,15913552,13614290,-22961733,70104,7463304,4176122]),$toNativeArray($kindInt32,[-27124001,10659917,11482427,-16070381,12771467,-6635117,-32719404,-5322751,24216882,5944158])),new BI.ptr($toNativeArray($kindInt32,[8894125,7450974,-2664149,-9765752,-28080517,-12389115,19345746,14680796,11632993,5847885]),$toNativeArray($kindInt32,[26942781,-2315317,9129564,-4906607,26024105,11769399,-11518837,6367194,-9727230,4782140]),$toNativeArray($kindInt32,[19916461,-4828410,-22910704,-11414391,25606324,-5972441,33253853,8220911,6358847,-1873857])),new BI.ptr($toNativeArray($kindInt32,[801428,-2081702,16569428,11065167,29875704,96627,7908388,-4480480,-13538503,1387155]),$toNativeArray($kindInt32,[19646058,5720633,-11416706,12814209,11607948,12749789,14147075,15156355,-21866831,11835260]),$toNativeArray($kindInt32,[19299512,1155910,28703737,14890794,2925026,7269399,26121523,15467869,-26560550,5052483]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-3017432,10058206,1980837,3964243,22160966,12322533,-6431123,-12618185,12228557,-7003677]),$toNativeArray($kindInt32,[32944382,14922211,-22844894,5188528,21913450,-8719943,4001465,13238564,-6114803,8653815]),$toNativeArray($kindInt32,[22865569,-4652735,27603668,-12545395,14348958,8234005,24808405,5719875,28483275,2841751])),new BI.ptr($toNativeArray($kindInt32,[-16420968,-1113305,-327719,-12107856,21886282,-15552774,-1887966,-315658,19932058,-12739203]),$toNativeArray($kindInt32,[-11656086,10087521,-8864888,-5536143,-19278573,-3055912,3999228,13239134,-4777469,-13910208]),$toNativeArray($kindInt32,[1382174,-11694719,17266790,9194690,-13324356,9720081,20403944,11284705,-14013818,3093230])),new BI.ptr($toNativeArray($kindInt32,[16650921,-11037932,-1064178,1570629,-8329746,7352753,-302424,16271225,-24049421,-6691850]),$toNativeArray($kindInt32,[-21911077,-5927941,-4611316,-5560156,-31744103,-10785293,24123614,15193618,-21652117,-16739389]),$toNativeArray($kindInt32,[-9935934,-4289447,-25279823,4372842,2087473,10399484,31870908,14690798,17361620,11864968])),new BI.ptr($toNativeArray($kindInt32,[-11307610,6210372,13206574,5806320,-29017692,-13967200,-12331205,-7486601,-25578460,-16240689]),$toNativeArray($kindInt32,[14668462,-12270235,26039039,15305210,25515617,4542480,10453892,6577524,9145645,-6443880]),$toNativeArray($kindInt32,[5974874,3053895,-9433049,-10385191,-31865124,3225009,-7972642,3936128,-5652273,-3050304])),new BI.ptr($toNativeArray($kindInt32,[30625386,-4729400,-25555961,-12792866,-20484575,7695099,17097188,-16303496,-27999779,1803632]),$toNativeArray($kindInt32,[-3553091,9865099,-5228566,4272701,-5673832,-16689700,14911344,12196514,-21405489,7047412]),$toNativeArray($kindInt32,[20093277,9920966,-11138194,-5343857,13161587,12044805,-32856851,4124601,-32343828,-10257566])),new BI.ptr($toNativeArray($kindInt32,[-20788824,14084654,-13531713,7842147,19119038,-13822605,4752377,-8714640,-21679658,2288038]),$toNativeArray($kindInt32,[-26819236,-3283715,29965059,3039786,-14473765,2540457,29457502,14625692,-24819617,12570232]),$toNativeArray($kindInt32,[-1063558,-11551823,16920318,12494842,1278292,-5869109,-21159943,-3498680,-11974704,4724943])),new BI.ptr($toNativeArray($kindInt32,[17960970,-11775534,-4140968,-9702530,-8876562,-1410617,-12907383,-8659932,-29576300,1903856]),$toNativeArray($kindInt32,[23134274,-14279132,-10681997,-1611936,20684485,15770816,-12989750,3190296,26955097,14109738]),$toNativeArray($kindInt32,[15308788,5320727,-30113809,-14318877,22902008,7767164,29425325,-11277562,31960942,11934971])),new BI.ptr($toNativeArray($kindInt32,[-27395711,8435796,4109644,12222639,-24627868,14818669,20638173,4875028,10491392,1379718]),$toNativeArray($kindInt32,[-13159415,9197841,3875503,-8936108,-1383712,-5879801,33518459,16176658,21432314,12180697]),$toNativeArray($kindInt32,[-11787308,11500838,13787581,-13832590,-22430679,10140205,1465425,12689540,-10301319,-13872883]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[5414091,-15386041,-21007664,9643570,12834970,1186149,-2622916,-1342231,26128231,6032912]),$toNativeArray($kindInt32,[-26337395,-13766162,32496025,-13653919,17847801,-12669156,3604025,8316894,-25875034,-10437358]),$toNativeArray($kindInt32,[3296484,6223048,24680646,-12246460,-23052020,5903205,-8862297,-4639164,12376617,3188849])),new BI.ptr($toNativeArray($kindInt32,[29190488,-14659046,27549113,-1183516,3520066,-10697301,32049515,-7309113,-16109234,-9852307]),$toNativeArray($kindInt32,[-14744486,-9309156,735818,-598978,-20407687,-5057904,25246078,-15795669,18640741,-960977]),$toNativeArray($kindInt32,[-6928835,-16430795,10361374,5642961,4910474,12345252,-31638386,-494430,10530747,1053335])),new BI.ptr($toNativeArray($kindInt32,[-29265967,-14186805,-13538216,-12117373,-19457059,-10655384,-31462369,-2948985,24018831,15026644]),$toNativeArray($kindInt32,[-22592535,-3145277,-2289276,5953843,-13440189,9425631,25310643,13003497,-2314791,-15145616]),$toNativeArray($kindInt32,[-27419985,-603321,-8043984,-1669117,-26092265,13987819,-27297622,187899,-23166419,-2531735])),new BI.ptr($toNativeArray($kindInt32,[-21744398,-13810475,1844840,5021428,-10434399,-15911473,9716667,16266922,-5070217,726099]),$toNativeArray($kindInt32,[29370922,-6053998,7334071,-15342259,9385287,2247707,-13661962,-4839461,30007388,-15823341]),$toNativeArray($kindInt32,[-936379,16086691,23751945,-543318,-1167538,-5189036,9137109,730663,9835848,4555336])),new BI.ptr($toNativeArray($kindInt32,[-23376435,1410446,-22253753,-12899614,30867635,15826977,17693930,544696,-11985298,12422646]),$toNativeArray($kindInt32,[31117226,-12215734,-13502838,6561947,-9876867,-12757670,-5118685,-4096706,29120153,13924425]),$toNativeArray($kindInt32,[-17400879,-14233209,19675799,-2734756,-11006962,-5858820,-9383939,-11317700,7240931,-237388])),new BI.ptr($toNativeArray($kindInt32,[-31361739,-11346780,-15007447,-5856218,-22453340,-12152771,1222336,4389483,3293637,-15551743]),$toNativeArray($kindInt32,[-16684801,-14444245,11038544,11054958,-13801175,-3338533,-24319580,7733547,12796905,-6335822]),$toNativeArray($kindInt32,[-8759414,-10817836,-25418864,10783769,-30615557,-9746811,-28253339,3647836,3222231,-11160462])),new BI.ptr($toNativeArray($kindInt32,[18606113,1693100,-25448386,-15170272,4112353,10045021,23603893,-2048234,-7550776,2484985]),$toNativeArray($kindInt32,[9255317,-3131197,-12156162,-1004256,13098013,-9214866,16377220,-2102812,-19802075,-3034702]),$toNativeArray($kindInt32,[-22729289,7496160,-5742199,11329249,19991973,-3347502,-31718148,9936966,-30097688,-10618797])),new BI.ptr($toNativeArray($kindInt32,[21878590,-5001297,4338336,13643897,-3036865,13160960,19708896,5415497,-7360503,-4109293]),$toNativeArray($kindInt32,[27736861,10103576,12500508,8502413,-3413016,-9633558,10436918,-1550276,-23659143,-8132100]),$toNativeArray($kindInt32,[19492550,-12104365,-29681976,-852630,-3208171,12403437,30066266,8367329,13243957,8709688]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[12015105,2801261,28198131,10151021,24818120,-4743133,-11194191,-5645734,5150968,7274186]),$toNativeArray($kindInt32,[2831366,-12492146,1478975,6122054,23825128,-12733586,31097299,6083058,31021603,-9793610]),$toNativeArray($kindInt32,[-2529932,-2229646,445613,10720828,-13849527,-11505937,-23507731,16354465,15067285,-14147707])),new BI.ptr($toNativeArray($kindInt32,[7840942,14037873,-33364863,15934016,-728213,-3642706,21403988,1057586,-19379462,-12403220]),$toNativeArray($kindInt32,[915865,-16469274,15608285,-8789130,-24357026,6060030,-17371319,8410997,-7220461,16527025]),$toNativeArray($kindInt32,[32922597,-556987,20336074,-16184568,10903705,-5384487,16957574,52992,23834301,6588044])),new BI.ptr($toNativeArray($kindInt32,[32752030,11232950,3381995,-8714866,22652988,-10744103,17159699,16689107,-20314580,-1305992]),$toNativeArray($kindInt32,[-4689649,9166776,-25710296,-10847306,11576752,12733943,7924251,-2752281,1976123,-7249027]),$toNativeArray($kindInt32,[21251222,16309901,-2983015,-6783122,30810597,12967303,156041,-3371252,12331345,-8237197])),new BI.ptr($toNativeArray($kindInt32,[8651614,-4477032,-16085636,-4996994,13002507,2950805,29054427,-5106970,10008136,-4667901]),$toNativeArray($kindInt32,[31486080,15114593,-14261250,12951354,14369431,-7387845,16347321,-13662089,8684155,-10532952]),$toNativeArray($kindInt32,[19443825,11385320,24468943,-9659068,-23919258,2187569,-26263207,-6086921,31316348,14219878])),new BI.ptr($toNativeArray($kindInt32,[-28594490,1193785,32245219,11392485,31092169,15722801,27146014,6992409,29126555,9207390]),$toNativeArray($kindInt32,[32382935,1110093,18477781,11028262,-27411763,-7548111,-4980517,10843782,-7957600,-14435730]),$toNativeArray($kindInt32,[2814918,7836403,27519878,-7868156,-20894015,-11553689,-21494559,8550130,28346258,1994730])),new BI.ptr($toNativeArray($kindInt32,[-19578299,8085545,-14000519,-3948622,2785838,-16231307,-19516951,7174894,22628102,8115180]),$toNativeArray($kindInt32,[-30405132,955511,-11133838,-15078069,-32447087,-13278079,-25651578,3317160,-9943017,930272]),$toNativeArray($kindInt32,[-15303681,-6833769,28856490,1357446,23421993,1057177,24091212,-1388970,-22765376,-10650715])),new BI.ptr($toNativeArray($kindInt32,[-22751231,-5303997,-12907607,-12768866,-15811511,-7797053,-14839018,-16554220,-1867018,8398970]),$toNativeArray($kindInt32,[-31969310,2106403,-4736360,1362501,12813763,16200670,22981545,-6291273,18009408,-15772772]),$toNativeArray($kindInt32,[-17220923,-9545221,-27784654,14166835,29815394,7444469,29551787,-3727419,19288549,1325865])),new BI.ptr($toNativeArray($kindInt32,[15100157,-15835752,-23923978,-1005098,-26450192,15509408,12376730,-3479146,33166107,-8042750]),$toNativeArray($kindInt32,[20909231,13023121,-9209752,16251778,-5778415,-8094914,12412151,10018715,2213263,-13878373]),$toNativeArray($kindInt32,[32529814,-11074689,30361439,-16689753,-9135940,1513226,22922121,6382134,-5766928,8371348]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[9923462,11271500,12616794,3544722,-29998368,-1721626,12891687,-8193132,-26442943,10486144]),$toNativeArray($kindInt32,[-22597207,-7012665,8587003,-8257861,4084309,-12970062,361726,2610596,-23921530,-11455195]),$toNativeArray($kindInt32,[5408411,-1136691,-4969122,10561668,24145918,14240566,31319731,-4235541,19985175,-3436086])),new BI.ptr($toNativeArray($kindInt32,[-13994457,16616821,14549246,3341099,32155958,13648976,-17577068,8849297,65030,8370684]),$toNativeArray($kindInt32,[-8320926,-12049626,31204563,5839400,-20627288,-1057277,-19442942,6922164,12743482,-9800518]),$toNativeArray($kindInt32,[-2361371,12678785,28815050,4759974,-23893047,4884717,23783145,11038569,18800704,255233])),new BI.ptr($toNativeArray($kindInt32,[-5269658,-1773886,13957886,7990715,23132995,728773,13393847,9066957,19258688,-14753793]),$toNativeArray($kindInt32,[-2936654,-10827535,-10432089,14516793,-3640786,4372541,-31934921,2209390,-1524053,2055794]),$toNativeArray($kindInt32,[580882,16705327,5468415,-2683018,-30926419,-14696000,-7203346,-8994389,-30021019,7394435])),new BI.ptr($toNativeArray($kindInt32,[23838809,1822728,-15738443,15242727,8318092,-3733104,-21672180,-3492205,-4821741,14799921]),$toNativeArray($kindInt32,[13345610,9759151,3371034,-16137791,16353039,8577942,31129804,13496856,-9056018,7402518]),$toNativeArray($kindInt32,[2286874,-4435931,-20042458,-2008336,-13696227,5038122,11006906,-15760352,8205061,1607563])),new BI.ptr($toNativeArray($kindInt32,[14414086,-8002132,3331830,-3208217,22249151,-5594188,18364661,-2906958,30019587,-9029278]),$toNativeArray($kindInt32,[-27688051,1585953,-10775053,931069,-29120221,-11002319,-14410829,12029093,9944378,8024]),$toNativeArray($kindInt32,[4368715,-3709630,29874200,-15022983,-20230386,-11410704,-16114594,-999085,-8142388,5640030])),new BI.ptr($toNativeArray($kindInt32,[10299610,13746483,11661824,16234854,7630238,5998374,9809887,-16694564,15219798,-14327783]),$toNativeArray($kindInt32,[27425505,-5719081,3055006,10660664,23458024,595578,-15398605,-1173195,-18342183,9742717]),$toNativeArray($kindInt32,[6744077,2427284,26042789,2720740,-847906,1118974,32324614,7406442,12420155,1994844])),new BI.ptr($toNativeArray($kindInt32,[14012521,-5024720,-18384453,-9578469,-26485342,-3936439,-13033478,-10909803,24319929,-6446333]),$toNativeArray($kindInt32,[16412690,-4507367,10772641,15929391,-17068788,-4658621,10555945,-10484049,-30102368,-4739048]),$toNativeArray($kindInt32,[22397382,-7767684,-9293161,-12792868,17166287,-9755136,-27333065,6199366,21880021,-12250760])),new BI.ptr($toNativeArray($kindInt32,[-4283307,5368523,-31117018,8163389,-30323063,3209128,16557151,8890729,8840445,4957760]),$toNativeArray($kindInt32,[-15447727,709327,-6919446,-10870178,-29777922,6522332,-21720181,12130072,-14796503,5005757]),$toNativeArray($kindInt32,[-2114751,-14308128,23019042,15765735,-25269683,6002752,10183197,-13239326,-16395286,-2176112]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-19025756,1632005,13466291,-7995100,-23640451,16573537,-32013908,-3057104,22208662,2000468]),$toNativeArray($kindInt32,[3065073,-1412761,-25598674,-361432,-17683065,-5703415,-8164212,11248527,-3691214,-7414184]),$toNativeArray($kindInt32,[10379208,-6045554,8877319,1473647,-29291284,-12507580,16690915,2553332,-3132688,16400289])),new BI.ptr($toNativeArray($kindInt32,[15716668,1254266,-18472690,7446274,-8448918,6344164,-22097271,-7285580,26894937,9132066]),$toNativeArray($kindInt32,[24158887,12938817,11085297,-8177598,-28063478,-4457083,-30576463,64452,-6817084,-2692882]),$toNativeArray($kindInt32,[13488534,7794716,22236231,5989356,25426474,-12578208,2350710,-3418511,-4688006,2364226])),new BI.ptr($toNativeArray($kindInt32,[16335052,9132434,25640582,6678888,1725628,8517937,-11807024,-11697457,15445875,-7798101]),$toNativeArray($kindInt32,[29004207,-7867081,28661402,-640412,-12794003,-7943086,31863255,-4135540,-278050,-15759279]),$toNativeArray($kindInt32,[-6122061,-14866665,-28614905,14569919,-10857999,-3591829,10343412,-6976290,-29828287,-10815811])),new BI.ptr($toNativeArray($kindInt32,[27081650,3463984,14099042,-4517604,1616303,-6205604,29542636,15372179,17293797,960709]),$toNativeArray($kindInt32,[20263915,11434237,-5765435,11236810,13505955,-10857102,-16111345,6493122,-19384511,7639714]),$toNativeArray($kindInt32,[-2830798,-14839232,25403038,-8215196,-8317012,-16173699,18006287,-16043750,29994677,-15808121])),new BI.ptr($toNativeArray($kindInt32,[9769828,5202651,-24157398,-13631392,-28051003,-11561624,-24613141,-13860782,-31184575,709464]),$toNativeArray($kindInt32,[12286395,13076066,-21775189,-1176622,-25003198,4057652,-32018128,-8890874,16102007,13205847]),$toNativeArray($kindInt32,[13733362,5599946,10557076,3195751,-5557991,8536970,-25540170,8525972,10151379,10394400])),new BI.ptr($toNativeArray($kindInt32,[4024660,-16137551,22436262,12276534,-9099015,-2686099,19698229,11743039,-33302334,8934414]),$toNativeArray($kindInt32,[-15879800,-4525240,-8580747,-2934061,14634845,-698278,-9449077,3137094,-11536886,11721158]),$toNativeArray($kindInt32,[17555939,-5013938,8268606,2331751,-22738815,9761013,9319229,8835153,-9205489,-1280045])),new BI.ptr($toNativeArray($kindInt32,[-461409,-7830014,20614118,16688288,-7514766,-4807119,22300304,505429,6108462,-6183415]),$toNativeArray($kindInt32,[-5070281,12367917,-30663534,3234473,32617080,-8422642,29880583,-13483331,-26898490,-7867459]),$toNativeArray($kindInt32,[-31975283,5726539,26934134,10237677,-3173717,-605053,24199304,3795095,7592688,-14992079])),new BI.ptr($toNativeArray($kindInt32,[21594432,-14964228,17466408,-4077222,32537084,2739898,6407723,12018833,-28256052,4298412]),$toNativeArray($kindInt32,[-20650503,-11961496,-27236275,570498,3767144,-1717540,13891942,-1569194,13717174,10805743]),$toNativeArray($kindInt32,[-14676630,-15644296,15287174,11927123,24177847,-8175568,-796431,14860609,-26938930,-5863836]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[12962541,5311799,-10060768,11658280,18855286,-7954201,13286263,-12808704,-4381056,9882022]),$toNativeArray($kindInt32,[18512079,11319350,-20123124,15090309,18818594,5271736,-22727904,3666879,-23967430,-3299429]),$toNativeArray($kindInt32,[-6789020,-3146043,16192429,13241070,15898607,-14206114,-10084880,-6661110,-2403099,5276065])),new BI.ptr($toNativeArray($kindInt32,[30169808,-5317648,26306206,-11750859,27814964,7069267,7152851,3684982,1449224,13082861]),$toNativeArray($kindInt32,[10342826,3098505,2119311,193222,25702612,12233820,23697382,15056736,-21016438,-8202000]),$toNativeArray($kindInt32,[-33150110,3261608,22745853,7948688,19370557,-15177665,-26171976,6482814,-10300080,-11060101])),new BI.ptr($toNativeArray($kindInt32,[32869458,-5408545,25609743,15678670,-10687769,-15471071,26112421,2521008,-22664288,6904815]),$toNativeArray($kindInt32,[29506923,4457497,3377935,-9796444,-30510046,12935080,1561737,3841096,-29003639,-6657642]),$toNativeArray($kindInt32,[10340844,-6630377,-18656632,-2278430,12621151,-13339055,30878497,-11824370,-25584551,5181966])),new BI.ptr($toNativeArray($kindInt32,[25940115,-12658025,17324188,-10307374,-8671468,15029094,24396252,-16450922,-2322852,-12388574]),$toNativeArray($kindInt32,[-21765684,9916823,-1300409,4079498,-1028346,11909559,1782390,12641087,20603771,-6561742]),$toNativeArray($kindInt32,[-18882287,-11673380,24849422,11501709,13161720,-4768874,1925523,11914390,4662781,7820689])),new BI.ptr($toNativeArray($kindInt32,[12241050,-425982,8132691,9393934,32846760,-1599620,29749456,12172924,16136752,15264020]),$toNativeArray($kindInt32,[-10349955,-14680563,-8211979,2330220,-17662549,-14545780,10658213,6671822,19012087,3772772]),$toNativeArray($kindInt32,[3753511,-3421066,10617074,2028709,14841030,-6721664,28718732,-15762884,20527771,12988982])),new BI.ptr($toNativeArray($kindInt32,[-14822485,-5797269,-3707987,12689773,-898983,-10914866,-24183046,-10564943,3299665,-12424953]),$toNativeArray($kindInt32,[-16777703,-15253301,-9642417,4978983,3308785,8755439,6943197,6461331,-25583147,8991218]),$toNativeArray($kindInt32,[-17226263,1816362,-1673288,-6086439,31783888,-8175991,-32948145,7417950,-30242287,1507265])),new BI.ptr($toNativeArray($kindInt32,[29692663,6829891,-10498800,4334896,20945975,-11906496,-28887608,8209391,14606362,-10647073]),$toNativeArray($kindInt32,[-3481570,8707081,32188102,5672294,22096700,1711240,-33020695,9761487,4170404,-2085325]),$toNativeArray($kindInt32,[-11587470,14855945,-4127778,-1531857,-26649089,15084046,22186522,16002000,-14276837,-8400798])),new BI.ptr($toNativeArray($kindInt32,[-4811456,13761029,-31703877,-2483919,-3312471,7869047,-7113572,-9620092,13240845,10965870]),$toNativeArray($kindInt32,[-7742563,-8256762,-14768334,-13656260,-23232383,12387166,4498947,14147411,29514390,4302863]),$toNativeArray($kindInt32,[-13413405,-12407859,20757302,-13801832,14785143,8976368,-5061276,-2144373,17846988,-13971927]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-2244452,-754728,-4597030,-1066309,-6247172,1455299,-21647728,-9214789,-5222701,12650267]),$toNativeArray($kindInt32,[-9906797,-16070310,21134160,12198166,-27064575,708126,387813,13770293,-19134326,10958663]),$toNativeArray($kindInt32,[22470984,12369526,23446014,-5441109,-21520802,-9698723,-11772496,-11574455,-25083830,4271862])),new BI.ptr($toNativeArray($kindInt32,[-25169565,-10053642,-19909332,15361595,-5984358,2159192,75375,-4278529,-32526221,8469673]),$toNativeArray($kindInt32,[15854970,4148314,-8893890,7259002,11666551,13824734,-30531198,2697372,24154791,-9460943]),$toNativeArray($kindInt32,[15446137,-15806644,29759747,14019369,30811221,-9610191,-31582008,12840104,24913809,9815020])),new BI.ptr($toNativeArray($kindInt32,[-4709286,-5614269,-31841498,-12288893,-14443537,10799414,-9103676,13438769,18735128,9466238]),$toNativeArray($kindInt32,[11933045,9281483,5081055,-5183824,-2628162,-4905629,-7727821,-10896103,-22728655,16199064]),$toNativeArray($kindInt32,[14576810,379472,-26786533,-8317236,-29426508,-10812974,-102766,1876699,30801119,2164795])),new BI.ptr($toNativeArray($kindInt32,[15995086,3199873,13672555,13712240,-19378835,-4647646,-13081610,-15496269,-13492807,1268052]),$toNativeArray($kindInt32,[-10290614,-3659039,-3286592,10948818,23037027,3794475,-3470338,-12600221,-17055369,3565904]),$toNativeArray($kindInt32,[29210088,-9419337,-5919792,-4952785,10834811,-13327726,-16512102,-10820713,-27162222,-14030531])),new BI.ptr($toNativeArray($kindInt32,[-13161890,15508588,16663704,-8156150,-28349942,9019123,-29183421,-3769423,2244111,-14001979]),$toNativeArray($kindInt32,[-5152875,-3800936,-9306475,-6071583,16243069,14684434,-25673088,-16180800,13491506,4641841]),$toNativeArray($kindInt32,[10813417,643330,-19188515,-728916,30292062,-16600078,27548447,-7721242,14476989,-12767431])),new BI.ptr($toNativeArray($kindInt32,[10292079,9984945,6481436,8279905,-7251514,7032743,27282937,-1644259,-27912810,12651324]),$toNativeArray($kindInt32,[-31185513,-813383,22271204,11835308,10201545,15351028,17099662,3988035,21721536,-3148940]),$toNativeArray($kindInt32,[10202177,-6545839,-31373232,-9574638,-32150642,-8119683,-12906320,3852694,13216206,14842320])),new BI.ptr($toNativeArray($kindInt32,[-15815640,-10601066,-6538952,-7258995,-6984659,-6581778,-31500847,13765824,-27434397,9900184]),$toNativeArray($kindInt32,[14465505,-13833331,-32133984,-14738873,-27443187,12990492,33046193,15796406,-7051866,-8040114]),$toNativeArray($kindInt32,[30924417,-8279620,6359016,-12816335,16508377,9071735,-25488601,15413635,9524356,-7018878])),new BI.ptr($toNativeArray($kindInt32,[12274201,-13175547,32627641,-1785326,6736625,13267305,5237659,-5109483,15663516,4035784]),$toNativeArray($kindInt32,[-2951309,8903985,17349946,601635,-16432815,-4612556,-13732739,-15889334,-22258478,4659091]),$toNativeArray($kindInt32,[-16916263,-4952973,-30393711,-15158821,20774812,15897498,5736189,15026997,-2178256,-13455585]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-8858980,-2219056,28571666,-10155518,-474467,-10105698,-3801496,278095,23440562,-290208]),$toNativeArray($kindInt32,[10226241,-5928702,15139956,120818,-14867693,5218603,32937275,11551483,-16571960,-7442864]),$toNativeArray($kindInt32,[17932739,-12437276,-24039557,10749060,11316803,7535897,22503767,5561594,-3646624,3898661])),new BI.ptr($toNativeArray($kindInt32,[7749907,-969567,-16339731,-16464,-25018111,15122143,-1573531,7152530,21831162,1245233]),$toNativeArray($kindInt32,[26958459,-14658026,4314586,8346991,-5677764,11960072,-32589295,-620035,-30402091,-16716212]),$toNativeArray($kindInt32,[-12165896,9166947,33491384,13673479,29787085,13096535,6280834,14587357,-22338025,13987525])),new BI.ptr($toNativeArray($kindInt32,[-24349909,7778775,21116000,15572597,-4833266,-5357778,-4300898,-5124639,-7469781,-2858068]),$toNativeArray($kindInt32,[9681908,-6737123,-31951644,13591838,-6883821,386950,31622781,6439245,-14581012,4091397]),$toNativeArray($kindInt32,[-8426427,1470727,-28109679,-1596990,3978627,-5123623,-19622683,12092163,29077877,-14741988])),new BI.ptr($toNativeArray($kindInt32,[5269168,-6859726,-13230211,-8020715,25932563,1763552,-5606110,-5505881,-20017847,2357889]),$toNativeArray($kindInt32,[32264008,-15407652,-5387735,-1160093,-2091322,-3946900,23104804,-12869908,5727338,189038]),$toNativeArray($kindInt32,[14609123,-8954470,-6000566,-16622781,-14577387,-7743898,-26745169,10942115,-25888931,-14884697])),new BI.ptr($toNativeArray($kindInt32,[20513500,5557931,-15604613,7829531,26413943,-2019404,-21378968,7471781,13913677,-5137875]),$toNativeArray($kindInt32,[-25574376,11967826,29233242,12948236,-6754465,4713227,-8940970,14059180,12878652,8511905]),$toNativeArray($kindInt32,[-25656801,3393631,-2955415,-7075526,-2250709,9366908,-30223418,6812974,5568676,-3127656])),new BI.ptr($toNativeArray($kindInt32,[11630004,12144454,2116339,13606037,27378885,15676917,-17408753,-13504373,-14395196,8070818]),$toNativeArray($kindInt32,[27117696,-10007378,-31282771,-5570088,1127282,12772488,-29845906,10483306,-11552749,-1028714]),$toNativeArray($kindInt32,[10637467,-5688064,5674781,1072708,-26343588,-6982302,-1683975,9177853,-27493162,15431203])),new BI.ptr($toNativeArray($kindInt32,[20525145,10892566,-12742472,12779443,-29493034,16150075,-28240519,14943142,-15056790,-7935931]),$toNativeArray($kindInt32,[-30024462,5626926,-551567,-9981087,753598,11981191,25244767,-3239766,-3356550,9594024]),$toNativeArray($kindInt32,[-23752644,2636870,-5163910,-10103818,585134,7877383,11345683,-6492290,13352335,-10977084])),new BI.ptr($toNativeArray($kindInt32,[-1931799,-5407458,3304649,-12884869,17015806,-4877091,-29783850,-7752482,-13215537,-319204]),$toNativeArray($kindInt32,[20239939,6607058,6203985,3483793,-18386976,-779229,-20723742,15077870,-22750759,14523817]),$toNativeArray($kindInt32,[27406042,-6041657,27423596,-4497394,4996214,10002360,-28842031,-4545494,-30172742,-4805667]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[11374242,12660715,17861383,-12540833,10935568,1099227,-13886076,-9091740,-27727044,11358504]),$toNativeArray($kindInt32,[-12730809,10311867,1510375,10778093,-2119455,-9145702,32676003,11149336,-26123651,4985768]),$toNativeArray($kindInt32,[-19096303,341147,-6197485,-239033,15756973,-8796662,-983043,13794114,-19414307,-15621255])),new BI.ptr($toNativeArray($kindInt32,[6490081,11940286,25495923,-7726360,8668373,-8751316,3367603,6970005,-1691065,-9004790]),$toNativeArray($kindInt32,[1656497,13457317,15370807,6364910,13605745,8362338,-19174622,-5475723,-16796596,-5031438]),$toNativeArray($kindInt32,[-22273315,-13524424,-64685,-4334223,-18605636,-10921968,-20571065,-7007978,-99853,-10237333])),new BI.ptr($toNativeArray($kindInt32,[17747465,10039260,19368299,-4050591,-20630635,-16041286,31992683,-15857976,-29260363,-5511971]),$toNativeArray($kindInt32,[31932027,-4986141,-19612382,16366580,22023614,88450,11371999,-3744247,4882242,-10626905]),$toNativeArray($kindInt32,[29796507,37186,19818052,10115756,-11829032,3352736,18551198,3272828,-5190932,-4162409])),new BI.ptr($toNativeArray($kindInt32,[12501286,4044383,-8612957,-13392385,-32430052,5136599,-19230378,-3529697,330070,-3659409]),$toNativeArray($kindInt32,[6384877,2899513,17807477,7663917,-2358888,12363165,25366522,-8573892,-271295,12071499]),$toNativeArray($kindInt32,[-8365515,-4042521,25133448,-4517355,-6211027,2265927,-32769618,1936675,-5159697,3829363])),new BI.ptr($toNativeArray($kindInt32,[28425966,-5835433,-577090,-4697198,-14217555,6870930,7921550,-6567787,26333140,14267664]),$toNativeArray($kindInt32,[-11067219,11871231,27385719,-10559544,-4585914,-11189312,10004786,-8709488,-21761224,8930324]),$toNativeArray($kindInt32,[-21197785,-16396035,25654216,-1725397,12282012,11008919,1541940,4757911,-26491501,-16408940])),new BI.ptr($toNativeArray($kindInt32,[13537262,-7759490,-20604840,10961927,-5922820,-13218065,-13156584,6217254,-15943699,13814990]),$toNativeArray($kindInt32,[-17422573,15157790,18705543,29619,24409717,-260476,27361681,9257833,-1956526,-1776914]),$toNativeArray($kindInt32,[-25045300,-10191966,15366585,15166509,-13105086,8423556,-29171540,12361135,-18685978,4578290])),new BI.ptr($toNativeArray($kindInt32,[24579768,3711570,1342322,-11180126,-27005135,14124956,-22544529,14074919,21964432,8235257]),$toNativeArray($kindInt32,[-6528613,-2411497,9442966,-5925588,12025640,-1487420,-2981514,-1669206,13006806,2355433]),$toNativeArray($kindInt32,[-16304899,-13605259,-6632427,-5142349,16974359,-10911083,27202044,1719366,1141648,-12796236])),new BI.ptr($toNativeArray($kindInt32,[-12863944,-13219986,-8318266,-11018091,-6810145,-4843894,13475066,-3133972,32674895,13715045]),$toNativeArray($kindInt32,[11423335,-5468059,32344216,8962751,24989809,9241752,-13265253,16086212,-28740881,-15642093]),$toNativeArray($kindInt32,[-1409668,12530728,-6368726,10847387,19531186,-14132160,-11709148,7791794,-27245943,4383347]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-28970898,5271447,-1266009,-9736989,-12455236,16732599,-4862407,-4906449,27193557,6245191]),$toNativeArray($kindInt32,[-15193956,5362278,-1783893,2695834,4960227,12840725,23061898,3260492,22510453,8577507]),$toNativeArray($kindInt32,[-12632451,11257346,-32692994,13548177,-721004,10879011,31168030,13952092,-29571492,-3635906])),new BI.ptr($toNativeArray($kindInt32,[3877321,-9572739,32416692,5405324,-11004407,-13656635,3759769,11935320,5611860,8164018]),$toNativeArray($kindInt32,[-16275802,14667797,15906460,12155291,-22111149,-9039718,32003002,-8832289,5773085,-8422109]),$toNativeArray($kindInt32,[-23788118,-8254300,1950875,8937633,18686727,16459170,-905725,12376320,31632953,190926])),new BI.ptr($toNativeArray($kindInt32,[-24593607,-16138885,-8423991,13378746,14162407,6901328,-8288749,4508564,-25341555,-3627528]),$toNativeArray($kindInt32,[8884438,-5884009,6023974,10104341,-6881569,-4941533,18722941,-14786005,-1672488,827625]),$toNativeArray($kindInt32,[-32720583,-16289296,-32503547,7101210,13354605,2659080,-1800575,-14108036,-24878478,1541286])),new BI.ptr($toNativeArray($kindInt32,[2901347,-1117687,3880376,-10059388,-17620940,-3612781,-21802117,-3567481,20456845,-1885033]),$toNativeArray($kindInt32,[27019610,12299467,-13658288,-1603234,-12861660,-4861471,-19540150,-5016058,29439641,15138866]),$toNativeArray($kindInt32,[21536104,-6626420,-32447818,-10690208,-22408077,5175814,-5420040,-16361163,7779328,109896])),new BI.ptr($toNativeArray($kindInt32,[30279744,14648750,-8044871,6425558,13639621,-743509,28698390,12180118,23177719,-554075]),$toNativeArray($kindInt32,[26572847,3405927,-31701700,12890905,-19265668,5335866,-6493768,2378492,4439158,-13279347]),$toNativeArray($kindInt32,[-22716706,3489070,-9225266,-332753,18875722,-1140095,14819434,-12731527,-17717757,-5461437])),new BI.ptr($toNativeArray($kindInt32,[-5056483,16566551,15953661,3767752,-10436499,15627060,-820954,2177225,8550082,-15114165]),$toNativeArray($kindInt32,[-18473302,16596775,-381660,15663611,22860960,15585581,-27844109,-3582739,-23260460,-8428588]),$toNativeArray($kindInt32,[-32480551,15707275,-8205912,-5652081,29464558,2713815,-22725137,15860482,-21902570,1494193])),new BI.ptr($toNativeArray($kindInt32,[-19562091,-14087393,-25583872,-9299552,13127842,759709,21923482,16529112,8742704,12967017]),$toNativeArray($kindInt32,[-28464899,1553205,32536856,-10473729,-24691605,-406174,-8914625,-2933896,-29903758,15553883]),$toNativeArray($kindInt32,[21877909,3230008,9881174,10539357,-4797115,2841332,11543572,14513274,19375923,-12647961])),new BI.ptr($toNativeArray($kindInt32,[8832269,-14495485,13253511,5137575,5037871,4078777,24880818,-6222716,2862653,9455043]),$toNativeArray($kindInt32,[29306751,5123106,20245049,-14149889,9592566,8447059,-2077124,-2990080,15511449,4789663]),$toNativeArray($kindInt32,[-20679756,7004547,8824831,-9434977,-4045704,-3750736,-5754762,108893,23513200,16652362]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-33256173,4144782,-4476029,-6579123,10770039,-7155542,-6650416,-12936300,-18319198,10212860]),$toNativeArray($kindInt32,[2756081,8598110,7383731,-6859892,22312759,-1105012,21179801,2600940,-9988298,-12506466]),$toNativeArray($kindInt32,[-24645692,13317462,-30449259,-15653928,21365574,-10869657,11344424,864440,-2499677,-16710063])),new BI.ptr($toNativeArray($kindInt32,[-26432803,6148329,-17184412,-14474154,18782929,-275997,-22561534,211300,2719757,4940997]),$toNativeArray($kindInt32,[-1323882,3911313,-6948744,14759765,-30027150,7851207,21690126,8518463,26699843,5276295]),$toNativeArray($kindInt32,[-13149873,-6429067,9396249,365013,24703301,-10488939,1321586,149635,-15452774,7159369])),new BI.ptr($toNativeArray($kindInt32,[9987780,-3404759,17507962,9505530,9731535,-2165514,22356009,8312176,22477218,-8403385]),$toNativeArray($kindInt32,[18155857,-16504990,19744716,9006923,15154154,-10538976,24256460,-4864995,-22548173,9334109]),$toNativeArray($kindInt32,[2986088,-4911893,10776628,-3473844,10620590,-7083203,-21413845,14253545,-22587149,536906])),new BI.ptr($toNativeArray($kindInt32,[4377756,8115836,24567078,15495314,11625074,13064599,7390551,10589625,10838060,-15420424]),$toNativeArray($kindInt32,[-19342404,867880,9277171,-3218459,-14431572,-1986443,19295826,-15796950,6378260,699185]),$toNativeArray($kindInt32,[7895026,4057113,-7081772,-13077756,-17886831,-323126,-716039,15693155,-5045064,-13373962])),new BI.ptr($toNativeArray($kindInt32,[-7737563,-5869402,-14566319,-7406919,11385654,13201616,31730678,-10962840,-3918636,-9669325]),$toNativeArray($kindInt32,[10188286,-15770834,-7336361,13427543,22223443,14896287,30743455,7116568,-21786507,5427593]),$toNativeArray($kindInt32,[696102,13206899,27047647,-10632082,15285305,-9853179,10798490,-4578720,19236243,12477404])),new BI.ptr($toNativeArray($kindInt32,[-11229439,11243796,-17054270,-8040865,-788228,-8167967,-3897669,11180504,-23169516,7733644]),$toNativeArray($kindInt32,[17800790,-14036179,-27000429,-11766671,23887827,3149671,23466177,-10538171,10322027,15313801]),$toNativeArray($kindInt32,[26246234,11968874,32263343,-5468728,6830755,-13323031,-15794704,-101982,-24449242,10890804])),new BI.ptr($toNativeArray($kindInt32,[-31365647,10271363,-12660625,-6267268,16690207,-13062544,-14982212,16484931,25180797,-5334884]),$toNativeArray($kindInt32,[-586574,10376444,-32586414,-11286356,19801893,10997610,2276632,9482883,316878,13820577]),$toNativeArray($kindInt32,[-9882808,-4510367,-2115506,16457136,-11100081,11674996,30756178,-7515054,30696930,-3712849])),new BI.ptr($toNativeArray($kindInt32,[32988917,-9603412,12499366,7910787,-10617257,-11931514,-7342816,-9985397,-32349517,7392473]),$toNativeArray($kindInt32,[-8855661,15927861,9866406,-3649411,-2396914,-16655781,-30409476,-9134995,25112947,-2926644]),$toNativeArray($kindInt32,[-2504044,-436966,25621774,-5678772,15085042,-5479877,-24884878,-13526194,5537438,-13914319]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-11225584,2320285,-9584280,10149187,-33444663,5808648,-14876251,-1729667,31234590,6090599]),$toNativeArray($kindInt32,[-9633316,116426,26083934,2897444,-6364437,-2688086,609721,15878753,-6970405,-9034768]),$toNativeArray($kindInt32,[-27757857,247744,-15194774,-9002551,23288161,-10011936,-23869595,6503646,20650474,1804084])),new BI.ptr($toNativeArray($kindInt32,[-27589786,15456424,8972517,8469608,15640622,4439847,3121995,-10329713,27842616,-202328]),$toNativeArray($kindInt32,[-15306973,2839644,22530074,10026331,4602058,5048462,28248656,5031932,-11375082,12714369]),$toNativeArray($kindInt32,[20807691,-7270825,29286141,11421711,-27876523,-13868230,-21227475,1035546,-19733229,12796920])),new BI.ptr($toNativeArray($kindInt32,[12076899,-14301286,-8785001,-11848922,-25012791,16400684,-17591495,-12899438,3480665,-15182815]),$toNativeArray($kindInt32,[-32361549,5457597,28548107,7833186,7303070,-11953545,-24363064,-15921875,-33374054,2771025]),$toNativeArray($kindInt32,[-21389266,421932,26597266,6860826,22486084,-6737172,-17137485,-4210226,-24552282,15673397])),new BI.ptr($toNativeArray($kindInt32,[-20184622,2338216,19788685,-9620956,-4001265,-8740893,-20271184,4733254,3727144,-12934448]),$toNativeArray($kindInt32,[6120119,814863,-11794402,-622716,6812205,-15747771,2019594,7975683,31123697,-10958981]),$toNativeArray($kindInt32,[30069250,-11435332,30434654,2958439,18399564,-976289,12296869,9204260,-16432438,9648165])),new BI.ptr($toNativeArray($kindInt32,[32705432,-1550977,30705658,7451065,-11805606,9631813,3305266,5248604,-26008332,-11377501]),$toNativeArray($kindInt32,[17219865,2375039,-31570947,-5575615,-19459679,9219903,294711,15298639,2662509,-16297073]),$toNativeArray($kindInt32,[-1172927,-7558695,-4366770,-4287744,-21346413,-8434326,32087529,-1222777,32247248,-14389861])),new BI.ptr($toNativeArray($kindInt32,[14312628,1221556,17395390,-8700143,-4945741,-8684635,-28197744,-9637817,-16027623,-13378845]),$toNativeArray($kindInt32,[-1428825,-9678990,-9235681,6549687,-7383069,-468664,23046502,9803137,17597934,2346211]),$toNativeArray($kindInt32,[18510800,15337574,26171504,981392,-22241552,7827556,-23491134,-11323352,3059833,-11782870])),new BI.ptr($toNativeArray($kindInt32,[10141598,6082907,17829293,-1947643,9830092,13613136,-25556636,-5544586,-33502212,3592096]),$toNativeArray($kindInt32,[33114168,-15889352,-26525686,-13343397,33076705,8716171,1151462,1521897,-982665,-6837803]),$toNativeArray($kindInt32,[-32939165,-4255815,23947181,-324178,-33072974,-12305637,-16637686,3891704,26353178,693168])),new BI.ptr($toNativeArray($kindInt32,[30374239,1595580,-16884039,13186931,4600344,406904,9585294,-400668,31375464,14369965]),$toNativeArray($kindInt32,[-14370654,-7772529,1510301,6434173,-18784789,-6262728,32732230,-13108839,17901441,16011505]),$toNativeArray($kindInt32,[18171223,-11934626,-12500402,15197122,-11038147,-15230035,-19172240,-16046376,8764035,12309598]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[5975908,-5243188,-19459362,-9681747,-11541277,14015782,-23665757,1228319,17544096,-10593782]),$toNativeArray($kindInt32,[5811932,-1715293,3442887,-2269310,-18367348,-8359541,-18044043,-15410127,-5565381,12348900]),$toNativeArray($kindInt32,[-31399660,11407555,25755363,6891399,-3256938,14872274,-24849353,8141295,-10632534,-585479])),new BI.ptr($toNativeArray($kindInt32,[-12675304,694026,-5076145,13300344,14015258,-14451394,-9698672,-11329050,30944593,1130208]),$toNativeArray($kindInt32,[8247766,-6710942,-26562381,-7709309,-14401939,-14648910,4652152,2488540,23550156,-271232]),$toNativeArray($kindInt32,[17294316,-3788438,7026748,15626851,22990044,113481,2267737,-5908146,-408818,-137719])),new BI.ptr($toNativeArray($kindInt32,[16091085,-16253926,18599252,7340678,2137637,-1221657,-3364161,14550936,3260525,-7166271]),$toNativeArray($kindInt32,[-4910104,-13332887,18550887,10864893,-16459325,-7291596,-23028869,-13204905,-12748722,2701326]),$toNativeArray($kindInt32,[-8574695,16099415,4629974,-16340524,-20786213,-6005432,-10018363,9276971,11329923,1862132])),new BI.ptr($toNativeArray($kindInt32,[14763076,-15903608,-30918270,3689867,3511892,10313526,-21951088,12219231,-9037963,-940300]),$toNativeArray($kindInt32,[8894987,-3446094,6150753,3013931,301220,15693451,-31981216,-2909717,-15438168,11595570]),$toNativeArray($kindInt32,[15214962,3537601,-26238722,-14058872,4418657,-15230761,13947276,10730794,-13489462,-4363670])),new BI.ptr($toNativeArray($kindInt32,[-2538306,7682793,32759013,263109,-29984731,-7955452,-22332124,-10188635,977108,699994]),$toNativeArray($kindInt32,[-12466472,4195084,-9211532,550904,-15565337,12917920,19118110,-439841,-30534533,-14337913]),$toNativeArray($kindInt32,[31788461,-14507657,4799989,7372237,8808585,-14747943,9408237,-10051775,12493932,-5409317])),new BI.ptr($toNativeArray($kindInt32,[-25680606,5260744,-19235809,-6284470,-3695942,16566087,27218280,2607121,29375955,6024730]),$toNativeArray($kindInt32,[842132,-2794693,-4763381,-8722815,26332018,-12405641,11831880,6985184,-9940361,2854096]),$toNativeArray($kindInt32,[-4847262,-7969331,2516242,-5847713,9695691,-7221186,16512645,960770,12121869,16648078])),new BI.ptr($toNativeArray($kindInt32,[-15218652,14667096,-13336229,2013717,30598287,-464137,-31504922,-7882064,20237806,2838411]),$toNativeArray($kindInt32,[-19288047,4453152,15298546,-16178388,22115043,-15972604,12544294,-13470457,1068881,-12499905]),$toNativeArray($kindInt32,[-9558883,-16518835,33238498,13506958,30505848,-1114596,-8486907,-2630053,12521378,4845654])),new BI.ptr($toNativeArray($kindInt32,[-28198521,10744108,-2958380,10199664,7759311,-13088600,3409348,-873400,-6482306,-12885870]),$toNativeArray($kindInt32,[-23561822,6230156,-20382013,10655314,-24040585,-11621172,10477734,-1240216,-3113227,13974498]),$toNativeArray($kindInt32,[12966261,15550616,-32038948,-1615346,21025980,-629444,5642325,7188737,18895762,12629579]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[14741879,-14946887,22177208,-11721237,1279741,8058600,11758140,789443,32195181,3895677]),$toNativeArray($kindInt32,[10758205,15755439,-4509950,9243698,-4879422,6879879,-2204575,-3566119,-8982069,4429647]),$toNativeArray($kindInt32,[-2453894,15725973,-20436342,-10410672,-5803908,-11040220,-7135870,-11642895,18047436,-15281743])),new BI.ptr($toNativeArray($kindInt32,[-25173001,-11307165,29759956,11776784,-22262383,-15820455,10993114,-12850837,-17620701,-9408468]),$toNativeArray($kindInt32,[21987233,700364,-24505048,14972008,-7774265,-5718395,32155026,2581431,-29958985,8773375]),$toNativeArray($kindInt32,[-25568350,454463,-13211935,16126715,25240068,8594567,20656846,12017935,-7874389,-13920155])),new BI.ptr($toNativeArray($kindInt32,[6028182,6263078,-31011806,-11301710,-818919,2461772,-31841174,-5468042,-1721788,-2776725]),$toNativeArray($kindInt32,[-12278994,16624277,987579,-5922598,32908203,1248608,7719845,-4166698,28408820,6816612]),$toNativeArray($kindInt32,[-10358094,-8237829,19549651,-12169222,22082623,16147817,20613181,13982702,-10339570,5067943])),new BI.ptr($toNativeArray($kindInt32,[-30505967,-3821767,12074681,13582412,-19877972,2443951,-19719286,12746132,5331210,-10105944]),$toNativeArray($kindInt32,[30528811,3601899,-1957090,4619785,-27361822,-15436388,24180793,-12570394,27679908,-1648928]),$toNativeArray($kindInt32,[9402404,-13957065,32834043,10838634,-26580150,-13237195,26653274,-8685565,22611444,-12715406])),new BI.ptr($toNativeArray($kindInt32,[22190590,1118029,22736441,15130463,-30460692,-5991321,19189625,-4648942,4854859,6622139]),$toNativeArray($kindInt32,[-8310738,-2953450,-8262579,-3388049,-10401731,-271929,13424426,-3567227,26404409,13001963]),$toNativeArray($kindInt32,[-31241838,-15415700,-2994250,8939346,11562230,-12840670,-26064365,-11621720,-15405155,11020693])),new BI.ptr($toNativeArray($kindInt32,[1866042,-7949489,-7898649,-10301010,12483315,13477547,3175636,-12424163,28761762,1406734]),$toNativeArray($kindInt32,[-448555,-1777666,13018551,3194501,-9580420,-11161737,24760585,-4347088,25577411,-13378680]),$toNativeArray($kindInt32,[-24290378,4759345,-690653,-1852816,2066747,10693769,-29595790,9884936,-9368926,4745410])),new BI.ptr($toNativeArray($kindInt32,[-9141284,6049714,-19531061,-4341411,-31260798,9944276,-15462008,-11311852,10931924,-11931931]),$toNativeArray($kindInt32,[-16561513,14112680,-8012645,4817318,-8040464,-11414606,-22853429,10856641,-20470770,13434654]),$toNativeArray($kindInt32,[22759489,-10073434,-16766264,-1871422,13637442,-10168091,1765144,-12654326,28445307,-5364710])),new BI.ptr($toNativeArray($kindInt32,[29875063,12493613,2795536,-3786330,1710620,15181182,-10195717,-8788675,9074234,1167180]),$toNativeArray($kindInt32,[-26205683,11014233,-9842651,-2635485,-26908120,7532294,-18716888,-9535498,3843903,9367684]),$toNativeArray($kindInt32,[-10969595,-6403711,9591134,9582310,11349256,108879,16235123,8601684,-139197,4242895]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[22092954,-13191123,-2042793,-11968512,32186753,-11517388,-6574341,2470660,-27417366,16625501]),$toNativeArray($kindInt32,[-11057722,3042016,13770083,-9257922,584236,-544855,-7770857,2602725,-27351616,14247413]),$toNativeArray($kindInt32,[6314175,-10264892,-32772502,15957557,-10157730,168750,-8618807,14290061,27108877,-1180880])),new BI.ptr($toNativeArray($kindInt32,[-8586597,-7170966,13241782,10960156,-32991015,-13794596,33547976,-11058889,-27148451,981874]),$toNativeArray($kindInt32,[22833440,9293594,-32649448,-13618667,-9136966,14756819,-22928859,-13970780,-10479804,-16197962]),$toNativeArray($kindInt32,[-7768587,3326786,-28111797,10783824,19178761,14905060,22680049,13906969,-15933690,3797899])),new BI.ptr($toNativeArray($kindInt32,[21721356,-4212746,-12206123,9310182,-3882239,-13653110,23740224,-2709232,20491983,-8042152]),$toNativeArray($kindInt32,[9209270,-15135055,-13256557,-6167798,-731016,15289673,25947805,15286587,30997318,-6703063]),$toNativeArray($kindInt32,[7392032,16618386,23946583,-8039892,-13265164,-1533858,-14197445,-2321576,17649998,-250080])),new BI.ptr($toNativeArray($kindInt32,[-9301088,-14193827,30609526,-3049543,-25175069,-1283752,-15241566,-9525724,-2233253,7662146]),$toNativeArray($kindInt32,[-17558673,1763594,-33114336,15908610,-30040870,-12174295,7335080,-8472199,-3174674,3440183]),$toNativeArray($kindInt32,[-19889700,-5977008,-24111293,-9688870,10799743,-16571957,40450,-4431835,4862400,1133])),new BI.ptr($toNativeArray($kindInt32,[-32856209,-7873957,-5422389,14860950,-16319031,7956142,7258061,311861,-30594991,-7379421]),$toNativeArray($kindInt32,[-3773428,-1565936,28985340,7499440,24445838,9325937,29727763,16527196,18278453,15405622]),$toNativeArray($kindInt32,[-4381906,8508652,-19898366,-3674424,-5984453,15149970,-13313598,843523,-21875062,13626197])),new BI.ptr($toNativeArray($kindInt32,[2281448,-13487055,-10915418,-2609910,1879358,16164207,-10783882,3953792,13340839,15928663]),$toNativeArray($kindInt32,[31727126,-7179855,-18437503,-8283652,2875793,-16390330,-25269894,-7014826,-23452306,5964753]),$toNativeArray($kindInt32,[4100420,-5959452,-17179337,6017714,-18705837,12227141,-26684835,11344144,2538215,-7570755])),new BI.ptr($toNativeArray($kindInt32,[-9433605,6123113,11159803,-2156608,30016280,14966241,-20474983,1485421,-629256,-15958862]),$toNativeArray($kindInt32,[-26804558,4260919,11851389,9658551,-32017107,16367492,-20205425,-13191288,11659922,-11115118]),$toNativeArray($kindInt32,[26180396,10015009,-30844224,-8581293,5418197,9480663,2231568,-10170080,33100372,-1306171])),new BI.ptr($toNativeArray($kindInt32,[15121113,-5201871,-10389905,15427821,-27509937,-15992507,21670947,4486675,-5931810,-14466380]),$toNativeArray($kindInt32,[16166486,-9483733,-11104130,6023908,-31926798,-1364923,2340060,-16254968,-10735770,-10039824]),$toNativeArray($kindInt32,[28042865,-3557089,-12126526,12259706,-3717498,-6945899,6766453,-8689599,18036436,5803270]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-817581,6763912,11803561,1585585,10958447,-2671165,23855391,4598332,-6159431,-14117438]),$toNativeArray($kindInt32,[-31031306,-14256194,17332029,-2383520,31312682,-5967183,696309,50292,-20095739,11763584]),$toNativeArray($kindInt32,[-594563,-2514283,-32234153,12643980,12650761,14811489,665117,-12613632,-19773211,-10713562])),new BI.ptr($toNativeArray($kindInt32,[30464590,-11262872,-4127476,-12734478,19835327,-7105613,-24396175,2075773,-17020157,992471]),$toNativeArray($kindInt32,[18357185,-6994433,7766382,16342475,-29324918,411174,14578841,8080033,-11574335,-10601610]),$toNativeArray($kindInt32,[19598397,10334610,12555054,2555664,18821899,-10339780,21873263,16014234,26224780,16452269])),new BI.ptr($toNativeArray($kindInt32,[-30223925,5145196,5944548,16385966,3976735,2009897,-11377804,-7618186,-20533829,3698650]),$toNativeArray($kindInt32,[14187449,3448569,-10636236,-10810935,-22663880,-3433596,7268410,-10890444,27394301,12015369]),$toNativeArray($kindInt32,[19695761,16087646,28032085,12999827,6817792,11427614,20244189,-1312777,-13259127,-3402461])),new BI.ptr($toNativeArray($kindInt32,[30860103,12735208,-1888245,-4699734,-16974906,2256940,-8166013,12298312,-8550524,-10393462]),$toNativeArray($kindInt32,[-5719826,-11245325,-1910649,15569035,26642876,-7587760,-5789354,-15118654,-4976164,12651793]),$toNativeArray($kindInt32,[-2848395,9953421,11531313,-5282879,26895123,-12697089,-13118820,-16517902,9768698,-2533218])),new BI.ptr($toNativeArray($kindInt32,[-24719459,1894651,-287698,-4704085,15348719,-8156530,32767513,12765450,4940095,10678226]),$toNativeArray($kindInt32,[18860224,15980149,-18987240,-1562570,-26233012,-11071856,-7843882,13944024,-24372348,16582019]),$toNativeArray($kindInt32,[-15504260,4970268,-29893044,4175593,-20993212,-2199756,-11704054,15444560,-11003761,7989037])),new BI.ptr($toNativeArray($kindInt32,[31490452,5568061,-2412803,2182383,-32336847,4531686,-32078269,6200206,-19686113,-14800171]),$toNativeArray($kindInt32,[-17308668,-15879940,-31522777,-2831,-32887382,16375549,8680158,-16371713,28550068,-6857132]),$toNativeArray($kindInt32,[-28126887,-5688091,16837845,-1820458,-6850681,12700016,-30039981,4364038,1155602,5988841])),new BI.ptr($toNativeArray($kindInt32,[21890435,-13272907,-12624011,12154349,-7831873,15300496,23148983,-4470481,24618407,8283181]),$toNativeArray($kindInt32,[-33136107,-10512751,9975416,6841041,-31559793,16356536,3070187,-7025928,1466169,10740210]),$toNativeArray($kindInt32,[-1509399,-15488185,-13503385,-10655916,32799044,909394,-13938903,-5779719,-32164649,-15327040])),new BI.ptr($toNativeArray($kindInt32,[3960823,-14267803,-28026090,-15918051,-19404858,13146868,15567327,951507,-3260321,-573935]),$toNativeArray($kindInt32,[24740841,5052253,-30094131,8961361,25877428,6165135,-24368180,14397372,-7380369,-6144105]),$toNativeArray($kindInt32,[-28888365,3510803,-28103278,-1158478,-11238128,-10631454,-15441463,-14453128,-1625486,-6494814]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[793299,-9230478,8836302,-6235707,-27360908,-2369593,33152843,-4885251,-9906200,-621852]),$toNativeArray($kindInt32,[5666233,525582,20782575,-8038419,-24538499,14657740,16099374,1468826,-6171428,-15186581]),$toNativeArray($kindInt32,[-4859255,-3779343,-2917758,-6748019,7778750,11688288,-30404353,-9871238,-1558923,-9863646])),new BI.ptr($toNativeArray($kindInt32,[10896332,-7719704,824275,472601,-19460308,3009587,25248958,14783338,-30581476,-15757844]),$toNativeArray($kindInt32,[10566929,12612572,-31944212,11118703,-12633376,12362879,21752402,8822496,24003793,14264025]),$toNativeArray($kindInt32,[27713862,-7355973,-11008240,9227530,27050101,2504721,23886875,-13117525,13958495,-5732453])),new BI.ptr($toNativeArray($kindInt32,[-23481610,4867226,-27247128,3900521,29838369,-8212291,-31889399,-10041781,7340521,-15410068]),$toNativeArray($kindInt32,[4646514,-8011124,-22766023,-11532654,23184553,8566613,31366726,-1381061,-15066784,-10375192]),$toNativeArray($kindInt32,[-17270517,12723032,-16993061,14878794,21619651,-6197576,27584817,3093888,-8843694,3849921])),new BI.ptr($toNativeArray($kindInt32,[-9064912,2103172,25561640,-15125738,-5239824,9582958,32477045,-9017955,5002294,-15550259]),$toNativeArray($kindInt32,[-12057553,-11177906,21115585,-13365155,8808712,-12030708,16489530,13378448,-25845716,12741426]),$toNativeArray($kindInt32,[-5946367,10645103,-30911586,15390284,-3286982,-7118677,24306472,15852464,28834118,-7646072])),new BI.ptr($toNativeArray($kindInt32,[-17335748,-9107057,-24531279,9434953,-8472084,-583362,-13090771,455841,20461858,5491305]),$toNativeArray($kindInt32,[13669248,-16095482,-12481974,-10203039,-14569770,-11893198,-24995986,11293807,-28588204,-9421832]),$toNativeArray($kindInt32,[28497928,6272777,-33022994,14470570,8906179,-1225630,18504674,-14165166,29867745,-8795943])),new BI.ptr($toNativeArray($kindInt32,[-16207023,13517196,-27799630,-13697798,24009064,-6373891,-6367600,-13175392,22853429,-4012011]),$toNativeArray($kindInt32,[24191378,16712145,-13931797,15217831,14542237,1646131,18603514,-11037887,12876623,-2112447]),$toNativeArray($kindInt32,[17902668,4518229,-411702,-2829247,26878217,5258055,-12860753,608397,16031844,3723494])),new BI.ptr($toNativeArray($kindInt32,[-28632773,12763728,-20446446,7577504,33001348,-13017745,17558842,-7872890,23896954,-4314245]),$toNativeArray($kindInt32,[-20005381,-12011952,31520464,605201,2543521,5991821,-2945064,7229064,-9919646,-8826859]),$toNativeArray($kindInt32,[28816045,298879,-28165016,-15920938,19000928,-1665890,-12680833,-2949325,-18051778,-2082915])),new BI.ptr($toNativeArray($kindInt32,[16000882,-344896,3493092,-11447198,-29504595,-13159789,12577740,16041268,-19715240,7847707]),$toNativeArray($kindInt32,[10151868,10572098,27312476,7922682,14825339,4723128,-32855931,-6519018,-10020567,3852848]),$toNativeArray($kindInt32,[-11430470,15697596,-21121557,-4420647,5386314,15063598,16514493,-15932110,29330899,-15076224]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-25499735,-4378794,-15222908,-6901211,16615731,2051784,3303702,15490,-27548796,12314391]),$toNativeArray($kindInt32,[15683520,-6003043,18109120,-9980648,15337968,-5997823,-16717435,15921866,16103996,-3731215]),$toNativeArray($kindInt32,[-23169824,-10781249,13588192,-1628807,-3798557,-1074929,-19273607,5402699,-29815713,-9841101])),new BI.ptr($toNativeArray($kindInt32,[23190676,2384583,-32714340,3462154,-29903655,-1529132,-11266856,8911517,-25205859,2739713]),$toNativeArray($kindInt32,[21374101,-3554250,-33524649,9874411,15377179,11831242,-33529904,6134907,4931255,11987849]),$toNativeArray($kindInt32,[-7732,-2978858,-16223486,7277597,105524,-322051,-31480539,13861388,-30076310,10117930])),new BI.ptr($toNativeArray($kindInt32,[-29501170,-10744872,-26163768,13051539,-25625564,5089643,-6325503,6704079,12890019,15728940]),$toNativeArray($kindInt32,[-21972360,-11771379,-951059,-4418840,14704840,2695116,903376,-10428139,12885167,8311031]),$toNativeArray($kindInt32,[-17516482,5352194,10384213,-13811658,7506451,13453191,26423267,4384730,1888765,-5435404])),new BI.ptr($toNativeArray($kindInt32,[-25817338,-3107312,-13494599,-3182506,30896459,-13921729,-32251644,-12707869,-19464434,-3340243]),$toNativeArray($kindInt32,[-23607977,-2665774,-526091,4651136,5765089,4618330,6092245,14845197,17151279,-9854116]),$toNativeArray($kindInt32,[-24830458,-12733720,-15165978,10367250,-29530908,-265356,22825805,-7087279,-16866484,16176525])),new BI.ptr($toNativeArray($kindInt32,[-23583256,6564961,20063689,3798228,-4740178,7359225,2006182,-10363426,-28746253,-10197509]),$toNativeArray($kindInt32,[-10626600,-4486402,-13320562,-5125317,3432136,-6393229,23632037,-1940610,32808310,1099883]),$toNativeArray($kindInt32,[15030977,5768825,-27451236,-2887299,-6427378,-15361371,-15277896,-6809350,2051441,-15225865])),new BI.ptr($toNativeArray($kindInt32,[-3362323,-7239372,7517890,9824992,23555850,295369,5148398,-14154188,-22686354,16633660]),$toNativeArray($kindInt32,[4577086,-16752288,13249841,-15304328,19958763,-14537274,18559670,-10759549,8402478,-9864273]),$toNativeArray($kindInt32,[-28406330,-1051581,-26790155,-907698,-17212414,-11030789,9453451,-14980072,17983010,9967138])),new BI.ptr($toNativeArray($kindInt32,[-25762494,6524722,26585488,9969270,24709298,1220360,-1677990,7806337,17507396,3651560]),$toNativeArray($kindInt32,[-10420457,-4118111,14584639,15971087,-15768321,8861010,26556809,-5574557,-18553322,-11357135]),$toNativeArray($kindInt32,[2839101,14284142,4029895,3472686,14402957,12689363,-26642121,8459447,-5605463,-7621941])),new BI.ptr($toNativeArray($kindInt32,[-4839289,-3535444,9744961,2871048,25113978,3187018,-25110813,-849066,17258084,-7977739]),$toNativeArray($kindInt32,[18164541,-10595176,-17154882,-1542417,19237078,-9745295,23357533,-15217008,26908270,12150756]),$toNativeArray($kindInt32,[-30264870,-7647865,5112249,-7036672,-1499807,-6974257,43168,-5537701,-32302074,16215819]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-6898905,9824394,-12304779,-4401089,-31397141,-6276835,32574489,12532905,-7503072,-8675347]),$toNativeArray($kindInt32,[-27343522,-16515468,-27151524,-10722951,946346,16291093,254968,7168080,21676107,-1943028]),$toNativeArray($kindInt32,[21260961,-8424752,-16831886,-11920822,-23677961,3968121,-3651949,-6215466,-3556191,-7913075])),new BI.ptr($toNativeArray($kindInt32,[16544754,13250366,-16804428,15546242,-4583003,12757258,-2462308,-8680336,-18907032,-9662799]),$toNativeArray($kindInt32,[-2415239,-15577728,18312303,4964443,-15272530,-12653564,26820651,16690659,25459437,-4564609]),$toNativeArray($kindInt32,[-25144690,11425020,28423002,-11020557,-6144921,-15826224,9142795,-2391602,-6432418,-1644817])),new BI.ptr($toNativeArray($kindInt32,[-23104652,6253476,16964147,-3768872,-25113972,-12296437,-27457225,-16344658,6335692,7249989]),$toNativeArray($kindInt32,[-30333227,13979675,7503222,-12368314,-11956721,-4621693,-30272269,2682242,25993170,-12478523]),$toNativeArray($kindInt32,[4364628,5930691,32304656,-10044554,-8054781,15091131,22857016,-10598955,31820368,15075278])),new BI.ptr($toNativeArray($kindInt32,[31879134,-8918693,17258761,90626,-8041836,-4917709,24162788,-9650886,-17970238,12833045]),$toNativeArray($kindInt32,[19073683,14851414,-24403169,-11860168,7625278,11091125,-19619190,2074449,-9413939,14905377]),$toNativeArray($kindInt32,[24483667,-11935567,-2518866,-11547418,-1553130,15355506,-25282080,9253129,27628530,-7555480])),new BI.ptr($toNativeArray($kindInt32,[17597607,8340603,19355617,552187,26198470,-3176583,4593324,-9157582,-14110875,15297016]),$toNativeArray($kindInt32,[510886,14337390,-31785257,16638632,6328095,2713355,-20217417,-11864220,8683221,2921426]),$toNativeArray($kindInt32,[18606791,11874196,27155355,-5281482,-24031742,6265446,-25178240,-1278924,4674690,13890525])),new BI.ptr($toNativeArray($kindInt32,[13609624,13069022,-27372361,-13055908,24360586,9592974,14977157,9835105,4389687,288396]),$toNativeArray($kindInt32,[9922506,-519394,13613107,5883594,-18758345,-434263,-12304062,8317628,23388070,16052080]),$toNativeArray($kindInt32,[12720016,11937594,-31970060,-5028689,26900120,8561328,-20155687,-11632979,-14754271,-10812892])),new BI.ptr($toNativeArray($kindInt32,[15961858,14150409,26716931,-665832,-22794328,13603569,11829573,7467844,-28822128,929275]),$toNativeArray($kindInt32,[11038231,-11582396,-27310482,-7316562,-10498527,-16307831,-23479533,-9371869,-21393143,2465074]),$toNativeArray($kindInt32,[20017163,-4323226,27915242,1529148,12396362,15675764,13817261,-9658066,2463391,-4622140])),new BI.ptr($toNativeArray($kindInt32,[-16358878,-12663911,-12065183,4996454,-1256422,1073572,9583558,12851107,4003896,12673717]),$toNativeArray($kindInt32,[-1731589,-15155870,-3262930,16143082,19294135,13385325,14741514,-9103726,7903886,2348101]),$toNativeArray($kindInt32,[24536016,-16515207,12715592,-3862155,1511293,10047386,-3842346,-7129159,-28377538,10048127]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-12622226,-6204820,30718825,2591312,-10617028,12192840,18873298,-7297090,-32297756,15221632]),$toNativeArray($kindInt32,[-26478122,-11103864,11546244,-1852483,9180880,7656409,-21343950,2095755,29769758,6593415]),$toNativeArray($kindInt32,[-31994208,-2907461,4176912,3264766,12538965,-868111,26312345,-6118678,30958054,8292160])),new BI.ptr($toNativeArray($kindInt32,[31429822,-13959116,29173532,15632448,12174511,-2760094,32808831,3977186,26143136,-3148876]),$toNativeArray($kindInt32,[22648901,1402143,-22799984,13746059,7936347,365344,-8668633,-1674433,-3758243,-2304625]),$toNativeArray($kindInt32,[-15491917,8012313,-2514730,-12702462,-23965846,-10254029,-1612713,-1535569,-16664475,8194478])),new BI.ptr($toNativeArray($kindInt32,[27338066,-7507420,-7414224,10140405,-19026427,-6589889,27277191,8855376,28572286,3005164]),$toNativeArray($kindInt32,[26287124,4821776,25476601,-4145903,-3764513,-15788984,-18008582,1182479,-26094821,-13079595]),$toNativeArray($kindInt32,[-7171154,3178080,23970071,6201893,-17195577,-4489192,-21876275,-13982627,32208683,-1198248])),new BI.ptr($toNativeArray($kindInt32,[-16657702,2817643,-10286362,14811298,6024667,13349505,-27315504,-10497842,-27672585,-11539858]),$toNativeArray($kindInt32,[15941029,-9405932,-21367050,8062055,31876073,-238629,-15278393,-1444429,15397331,-4130193]),$toNativeArray($kindInt32,[8934485,-13485467,-23286397,-13423241,-32446090,14047986,31170398,-1441021,-27505566,15087184])),new BI.ptr($toNativeArray($kindInt32,[-18357243,-2156491,24524913,-16677868,15520427,-6360776,-15502406,11461896,16788528,-5868942]),$toNativeArray($kindInt32,[-1947386,16013773,21750665,3714552,-17401782,-16055433,-3770287,-10323320,31322514,-11615635]),$toNativeArray($kindInt32,[21426655,-5650218,-13648287,-5347537,-28812189,-4920970,-18275391,-14621414,13040862,-12112948])),new BI.ptr($toNativeArray($kindInt32,[11293895,12478086,-27136401,15083750,-29307421,14748872,14555558,-13417103,1613711,4896935]),$toNativeArray($kindInt32,[-25894883,15323294,-8489791,-8057900,25967126,-13425460,2825960,-4897045,-23971776,-11267415]),$toNativeArray($kindInt32,[-15924766,-5229880,-17443532,6410664,3622847,10243618,20615400,12405433,-23753030,-8436416])),new BI.ptr($toNativeArray($kindInt32,[-7091295,12556208,-20191352,9025187,-17072479,4333801,4378436,2432030,23097949,-566018]),$toNativeArray($kindInt32,[4565804,-16025654,20084412,-7842817,1724999,189254,24767264,10103221,-18512313,2424778]),$toNativeArray($kindInt32,[366633,-11976806,8173090,-6890119,30788634,5745705,-7168678,1344109,-3642553,12412659])),new BI.ptr($toNativeArray($kindInt32,[-24001791,7690286,14929416,-168257,-32210835,-13412986,24162697,-15326504,-3141501,11179385]),$toNativeArray($kindInt32,[18289522,-14724954,8056945,16430056,-21729724,7842514,-6001441,-1486897,-18684645,-11443503]),$toNativeArray($kindInt32,[476239,6601091,-6152790,-9723375,17503545,-4863900,27672959,13403813,11052904,5219329]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[20678546,-8375738,-32671898,8849123,-5009758,14574752,31186971,-3973730,9014762,-8579056]),$toNativeArray($kindInt32,[-13644050,-10350239,-15962508,5075808,-1514661,-11534600,-33102500,9160280,8473550,-3256838]),$toNativeArray($kindInt32,[24900749,14435722,17209120,-15292541,-22592275,9878983,-7689309,-16335821,-24568481,11788948])),new BI.ptr($toNativeArray($kindInt32,[-3118155,-11395194,-13802089,14797441,9652448,-6845904,-20037437,10410733,-24568470,-1458691]),$toNativeArray($kindInt32,[-15659161,16736706,-22467150,10215878,-9097177,7563911,11871841,-12505194,-18513325,8464118]),$toNativeArray($kindInt32,[-23400612,8348507,-14585951,-861714,-3950205,-6373419,14325289,8628612,33313881,-8370517])),new BI.ptr($toNativeArray($kindInt32,[-20186973,-4967935,22367356,5271547,-1097117,-4788838,-24805667,-10236854,-8940735,-5818269]),$toNativeArray($kindInt32,[-6948785,-1795212,-32625683,-16021179,32635414,-7374245,15989197,-12838188,28358192,-4253904]),$toNativeArray($kindInt32,[-23561781,-2799059,-32351682,-1661963,-9147719,10429267,-16637684,4072016,-5351664,5596589])),new BI.ptr($toNativeArray($kindInt32,[-28236598,-3390048,12312896,6213178,3117142,16078565,29266239,2557221,1768301,15373193]),$toNativeArray($kindInt32,[-7243358,-3246960,-4593467,-7553353,-127927,-912245,-1090902,-4504991,-24660491,3442910]),$toNativeArray($kindInt32,[-30210571,5124043,14181784,8197961,18964734,-11939093,22597931,7176455,-18585478,13365930])),new BI.ptr($toNativeArray($kindInt32,[-7877390,-1499958,8324673,4690079,6261860,890446,24538107,-8570186,-9689599,-3031667]),$toNativeArray($kindInt32,[25008904,-10771599,-4305031,-9638010,16265036,15721635,683793,-11823784,15723479,-15163481]),$toNativeArray($kindInt32,[-9660625,12374379,-27006999,-7026148,-7724114,-12314514,11879682,5400171,519526,-1235876])),new BI.ptr($toNativeArray($kindInt32,[22258397,-16332233,-7869817,14613016,-22520255,-2950923,-20353881,7315967,16648397,7605640]),$toNativeArray($kindInt32,[-8081308,-8464597,-8223311,9719710,19259459,-15348212,23994942,-5281555,-9468848,4763278]),$toNativeArray($kindInt32,[-21699244,9220969,-15730624,1084137,-25476107,-2852390,31088447,-7764523,-11356529,728112])),new BI.ptr($toNativeArray($kindInt32,[26047220,-11751471,-6900323,-16521798,24092068,9158119,-4273545,-12555558,-29365436,-5498272]),$toNativeArray($kindInt32,[17510331,-322857,5854289,8403524,17133918,-3112612,-28111007,12327945,10750447,10014012]),$toNativeArray($kindInt32,[-10312768,3936952,9156313,-8897683,16498692,-994647,-27481051,-666732,3424691,7540221])),new BI.ptr($toNativeArray($kindInt32,[30322361,-6964110,11361005,-4143317,7433304,4989748,-7071422,-16317219,-9244265,15258046]),$toNativeArray($kindInt32,[13054562,-2779497,19155474,469045,-12482797,4566042,5631406,2711395,1062915,-5136345]),$toNativeArray($kindInt32,[-19240248,-11254599,-29509029,-7499965,-5835763,13005411,-6066489,12194497,32960380,1459310]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[19852034,7027924,23669353,10020366,8586503,-6657907,394197,-6101885,18638003,-11174937]),$toNativeArray($kindInt32,[31395534,15098109,26581030,8030562,-16527914,-5007134,9012486,-7584354,-6643087,-5442636]),$toNativeArray($kindInt32,[-9192165,-2347377,-1997099,4529534,25766844,607986,-13222,9677543,-32294889,-6456008])),new BI.ptr($toNativeArray($kindInt32,[-2444496,-149937,29348902,8186665,1873760,12489863,-30934579,-7839692,-7852844,-8138429]),$toNativeArray($kindInt32,[-15236356,-15433509,7766470,746860,26346930,-10221762,-27333451,10754588,-9431476,5203576]),$toNativeArray($kindInt32,[31834314,14135496,-770007,5159118,20917671,-16768096,-7467973,-7337524,31809243,7347066])),new BI.ptr($toNativeArray($kindInt32,[-9606723,-11874240,20414459,13033986,13716524,-11691881,19797970,-12211255,15192876,-2087490]),$toNativeArray($kindInt32,[-12663563,-2181719,1168162,-3804809,26747877,-14138091,10609330,12694420,33473243,-13382104]),$toNativeArray($kindInt32,[33184999,11180355,15832085,-11385430,-1633671,225884,15089336,-11023903,-6135662,14480053])),new BI.ptr($toNativeArray($kindInt32,[31308717,-5619998,31030840,-1897099,15674547,-6582883,5496208,13685227,27595050,8737275]),$toNativeArray($kindInt32,[-20318852,-15150239,10933843,-16178022,8335352,-7546022,-31008351,-12610604,26498114,66511]),$toNativeArray($kindInt32,[22644454,-8761729,-16671776,4884562,-3105614,-13559366,30540766,-4286747,-13327787,-7515095])),new BI.ptr($toNativeArray($kindInt32,[-28017847,9834845,18617207,-2681312,-3401956,-13307506,8205540,13585437,-17127465,15115439]),$toNativeArray($kindInt32,[23711543,-672915,31206561,-8362711,6164647,-9709987,-33535882,-1426096,8236921,16492939]),$toNativeArray($kindInt32,[-23910559,-13515526,-26299483,-4503841,25005590,-7687270,19574902,10071562,6708380,-6222424])),new BI.ptr($toNativeArray($kindInt32,[2101391,-4930054,19702731,2367575,-15427167,1047675,5301017,9328700,29955601,-11678310]),$toNativeArray($kindInt32,[3096359,9271816,-21620864,-15521844,-14847996,-7592937,-25892142,-12635595,-9917575,6216608]),$toNativeArray($kindInt32,[-32615849,338663,-25195611,2510422,-29213566,-13820213,24822830,-6146567,-26767480,7525079])),new BI.ptr($toNativeArray($kindInt32,[-23066649,-13985623,16133487,-7896178,-3389565,778788,-910336,-2782495,-19386633,11994101]),$toNativeArray($kindInt32,[21691500,-13624626,-641331,-14367021,3285881,-3483596,-25064666,9718258,-7477437,13381418]),$toNativeArray($kindInt32,[18445390,-4202236,14979846,11622458,-1727110,-3582980,23111648,-6375247,28535282,15779576])),new BI.ptr($toNativeArray($kindInt32,[30098053,3089662,-9234387,16662135,-21306940,11308411,-14068454,12021730,9955285,-16303356]),$toNativeArray($kindInt32,[9734894,-14576830,-7473633,-9138735,2060392,11313496,-18426029,9924399,20194861,13380996]),$toNativeArray($kindInt32,[-26378102,-7965207,-22167821,15789297,-18055342,-6168792,-1984914,15707771,26342023,10146099]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-26016874,-219943,21339191,-41388,19745256,-2878700,-29637280,2227040,21612326,-545728]),$toNativeArray($kindInt32,[-13077387,1184228,23562814,-5970442,-20351244,-6348714,25764461,12243797,-20856566,11649658]),$toNativeArray($kindInt32,[-10031494,11262626,27384172,2271902,26947504,-15997771,39944,6114064,33514190,2333242])),new BI.ptr($toNativeArray($kindInt32,[-21433588,-12421821,8119782,7219913,-21830522,-9016134,-6679750,-12670638,24350578,-13450001]),$toNativeArray($kindInt32,[-4116307,-11271533,-23886186,4843615,-30088339,690623,-31536088,-10406836,8317860,12352766]),$toNativeArray($kindInt32,[18200138,-14475911,-33087759,-2696619,-23702521,-9102511,-23552096,-2287550,20712163,6719373])),new BI.ptr($toNativeArray($kindInt32,[26656208,6075253,-7858556,1886072,-28344043,4262326,11117530,-3763210,26224235,-3297458]),$toNativeArray($kindInt32,[-17168938,-14854097,-3395676,-16369877,-19954045,14050420,21728352,9493610,18620611,-16428628]),$toNativeArray($kindInt32,[-13323321,13325349,11432106,5964811,18609221,6062965,-5269471,-9725556,-30701573,-16479657])),new BI.ptr($toNativeArray($kindInt32,[-23860538,-11233159,26961357,1640861,-32413112,-16737940,12248509,-5240639,13735342,1934062]),$toNativeArray($kindInt32,[25089769,6742589,17081145,-13406266,21909293,-16067981,-15136294,-3765346,-21277997,5473616]),$toNativeArray($kindInt32,[31883677,-7961101,1083432,-11572403,22828471,13290673,-7125085,12469656,29111212,-5451014])),new BI.ptr($toNativeArray($kindInt32,[24244947,-15050407,-26262976,2791540,-14997599,16666678,24367466,6388839,-10295587,452383]),$toNativeArray($kindInt32,[-25640782,-3417841,5217916,16224624,19987036,-4082269,-24236251,-5915248,15766062,8407814]),$toNativeArray($kindInt32,[-20406999,13990231,15495425,16395525,5377168,15166495,-8917023,-4388953,-8067909,2276718])),new BI.ptr($toNativeArray($kindInt32,[30157918,12924066,-17712050,9245753,19895028,3368142,-23827587,5096219,22740376,-7303417]),$toNativeArray($kindInt32,[2041139,-14256350,7783687,13876377,-25946985,-13352459,24051124,13742383,-15637599,13295222]),$toNativeArray($kindInt32,[33338237,-8505733,12532113,7977527,9106186,-1715251,-17720195,-4612972,-4451357,-14669444])),new BI.ptr($toNativeArray($kindInt32,[-20045281,5454097,-14346548,6447146,28862071,1883651,-2469266,-4141880,7770569,9620597]),$toNativeArray($kindInt32,[23208068,7979712,33071466,8149229,1758231,-10834995,30945528,-1694323,-33502340,-14767970]),$toNativeArray($kindInt32,[1439958,-16270480,-1079989,-793782,4625402,10647766,-5043801,1220118,30494170,-11440799])),new BI.ptr($toNativeArray($kindInt32,[-5037580,-13028295,-2970559,-3061767,15640974,-6701666,-26739026,926050,-1684339,-13333647]),$toNativeArray($kindInt32,[13908495,-3549272,30919928,-6273825,-21521863,7989039,9021034,9078865,3353509,4033511]),$toNativeArray($kindInt32,[-29663431,-15113610,32259991,-344482,24295849,-12912123,23161163,8839127,27485041,7356032]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[9661027,705443,11980065,-5370154,-1628543,14661173,-6346142,2625015,28431036,-16771834]),$toNativeArray($kindInt32,[-23839233,-8311415,-25945511,7480958,-17681669,-8354183,-22545972,14150565,15970762,4099461]),$toNativeArray($kindInt32,[29262576,16756590,26350592,-8793563,8529671,-11208050,13617293,-9937143,11465739,8317062])),new BI.ptr($toNativeArray($kindInt32,[-25493081,-6962928,32500200,-9419051,-23038724,-2302222,14898637,3848455,20969334,-5157516]),$toNativeArray($kindInt32,[-20384450,-14347713,-18336405,13884722,-33039454,2842114,-21610826,-3649888,11177095,14989547]),$toNativeArray($kindInt32,[-24496721,-11716016,16959896,2278463,12066309,10137771,13515641,2581286,-28487508,9930240])),new BI.ptr($toNativeArray($kindInt32,[-17751622,-2097826,16544300,-13009300,-15914807,-14949081,18345767,-13403753,16291481,-5314038]),$toNativeArray($kindInt32,[-33229194,2553288,32678213,9875984,8534129,6889387,-9676774,6957617,4368891,9788741]),$toNativeArray($kindInt32,[16660756,7281060,-10830758,12911820,20108584,-8101676,-21722536,-8613148,16250552,-11111103])),new BI.ptr($toNativeArray($kindInt32,[-19765507,2390526,-16551031,14161980,1905286,6414907,4689584,10604807,-30190403,4782747]),$toNativeArray($kindInt32,[-1354539,14736941,-7367442,-13292886,7710542,-14155590,-9981571,4383045,22546403,437323]),$toNativeArray($kindInt32,[31665577,-12180464,-16186830,1491339,-18368625,3294682,27343084,2786261,-30633590,-14097016])),new BI.ptr($toNativeArray($kindInt32,[-14467279,-683715,-33374107,7448552,19294360,14334329,-19690631,2355319,-19284671,-6114373]),$toNativeArray($kindInt32,[15121312,-15796162,6377020,-6031361,-10798111,-12957845,18952177,15496498,-29380133,11754228]),$toNativeArray($kindInt32,[-2637277,-13483075,8488727,-14303896,12728761,-1622493,7141596,11724556,22761615,-10134141])),new BI.ptr($toNativeArray($kindInt32,[16918416,11729663,-18083579,3022987,-31015732,-13339659,-28741185,-12227393,32851222,11717399]),$toNativeArray($kindInt32,[11166634,7338049,-6722523,4531520,-29468672,-7302055,31474879,3483633,-1193175,-4030831]),$toNativeArray($kindInt32,[-185635,9921305,31456609,-13536438,-12013818,13348923,33142652,6546660,-19985279,-3948376])),new BI.ptr($toNativeArray($kindInt32,[-32460596,11266712,-11197107,-7899103,31703694,3855903,-8537131,-12833048,-30772034,-15486313]),$toNativeArray($kindInt32,[-18006477,12709068,3991746,-6479188,-21491523,-10550425,-31135347,-16049879,10928917,3011958]),$toNativeArray($kindInt32,[-6957757,-15594337,31696059,334240,29576716,14796075,-30831056,-12805180,18008031,10258577])),new BI.ptr($toNativeArray($kindInt32,[-22448644,15655569,7018479,-4410003,-30314266,-1201591,-1853465,1367120,25127874,6671743]),$toNativeArray($kindInt32,[29701166,-14373934,-10878120,9279288,-17568,13127210,21382910,11042292,25838796,4642684]),$toNativeArray($kindInt32,[-20430234,14955537,-24126347,8124619,-5369288,-5990470,30468147,-13900640,18423289,4177476]))])]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["encoding/base64"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,K,L,M,N,O,P,Q,R,S,T,U,D,F,J;A=$packages["io"];B=$packages["strconv"];C=$pkg.Encoding=$newType(0,$kindStruct,"base64.Encoding",true,"encoding/base64",true,function(encode_,decodeMap_,padChar_,strict_){this.$val=this;if(arguments.length===0){this.encode=K.zero();this.decodeMap=L.zero();this.padChar=0;this.strict=false;return;}this.encode=encode_;this.decodeMap=decodeMap_;this.padChar=padChar_;this.strict=strict_;});E=$pkg.encoder=$newType(0,$kindStruct,"base64.encoder",true,"encoding/base64",false,function(err_,enc_,w_,buf_,nbuf_,out_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.enc=N.nil;this.w=$ifaceNil;this.buf=O.zero();this.nbuf=0;this.out=P.zero();return;}this.err=err_;this.enc=enc_;this.w=w_;this.buf=buf_;this.nbuf=nbuf_;this.out=out_;});G=$pkg.CorruptInputError=$newType(8,$kindInt64,"base64.CorruptInputError",true,"encoding/base64",true,null);H=$pkg.decoder=$newType(0,$kindStruct,"base64.decoder",true,"encoding/base64",false,function(err_,readErr_,enc_,r_,end_,buf_,nbuf_,out_,outbuf_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.readErr=$ifaceNil;this.enc=N.nil;this.r=$ifaceNil;this.end=false;this.buf=P.zero();this.nbuf=0;this.out=M.nil;this.outbuf=R.zero();return;}this.err=err_;this.readErr=readErr_;this.enc=enc_;this.r=r_;this.end=end_;this.buf=buf_;this.nbuf=nbuf_;this.out=out_;this.outbuf=outbuf_;});I=$pkg.newlineFilteringReader=$newType(0,$kindStruct,"base64.newlineFilteringReader",true,"encoding/base64",false,function(wrapped_){this.$val=this;if(arguments.length===0){this.wrapped=$ifaceNil;return;}this.wrapped=wrapped_;});K=$arrayType($Uint8,64);L=$arrayType($Uint8,256);M=$sliceType($Uint8);N=$ptrType(C);O=$arrayType($Uint8,3);P=$arrayType($Uint8,1024);Q=$arrayType($Uint8,4);R=$arrayType($Uint8,768);S=$ptrType(E);T=$ptrType(H);U=$ptrType(I);D=function(a){var $ptr,a,b,c,d,e,f,g;if(!((a.length===64))){$panic(new $String("encoding alphabet is not 64-bytes long"));}b=new C.ptr(K.zero(),L.zero(),0,false);b.padChar=61;$copyString(new M(b.encode),a);c=0;while(true){if(!(c<256)){break;}(d=b.decodeMap,((c<0||c>=d.length)?($throwRuntimeError("index out of range"),undefined):d[c]=255));c=c+(1)>>0;}e=0;while(true){if(!(e<a.length)){break;}(f=b.decodeMap,g=a.charCodeAt(e),((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g]=(e<<24>>>24)));e=e+(1)>>0;}return b;};$pkg.NewEncoding=D;C.ptr.prototype.WithPadding=function(a){var $ptr,a,b;b=this;b.padChar=a;return b;};C.prototype.WithPadding=function(a){return this.$val.WithPadding(a);};C.ptr.prototype.Strict=function(){var $ptr,a;a=this;a.strict=true;return a;};C.prototype.Strict=function(){return this.$val.Strict();};C.ptr.prototype.Encode=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if(b.$length===0){return;}d=0;e=0;f=d;g=e;i=$imul(((h=b.$length/3,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))),3);while(true){if(!(g<i)){break;}m=((((((j=g+0>>0,((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))>>>0)<<16>>>0)|(((k=g+1>>0,((k<0||k>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+k]))>>>0)<<8>>>0))>>>0)|((l=g+2>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]))>>>0))>>>0;(p=f+0>>0,((p<0||p>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+p]=(n=c.encode,o=((m>>>18>>>0)&63)>>>0,((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]))));(s=f+1>>0,((s<0||s>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+s]=(q=c.encode,r=((m>>>12>>>0)&63)>>>0,((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]))));(v=f+2>>0,((v<0||v>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+v]=(t=c.encode,u=((m>>>6>>>0)&63)>>>0,((u<0||u>=t.length)?($throwRuntimeError("index out of range"),undefined):t[u]))));(y=f+3>>0,((y<0||y>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+y]=(w=c.encode,x=(m&63)>>>0,((x<0||x>=w.length)?($throwRuntimeError("index out of range"),undefined):w[x]))));g=g+(3)>>0;f=f+(4)>>0;}z=b.$length-g>>0;if(z===0){return;}ab=((aa=g+0>>0,((aa<0||aa>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+aa]))>>>0)<<16>>>0;if(z===2){ab=(ab|((((ac=g+1>>0,((ac<0||ac>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ac]))>>>0)<<8>>>0)))>>>0;}(af=f+0>>0,((af<0||af>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+af]=(ad=c.encode,ae=((ab>>>18>>>0)&63)>>>0,((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]))));(ai=f+1>>0,((ai<0||ai>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ai]=(ag=c.encode,ah=((ab>>>12>>>0)&63)>>>0,((ah<0||ah>=ag.length)?($throwRuntimeError("index out of range"),undefined):ag[ah]))));aj=z;if(aj===(2)){(am=f+2>>0,((am<0||am>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+am]=(ak=c.encode,al=((ab>>>6>>>0)&63)>>>0,((al<0||al>=ak.length)?($throwRuntimeError("index out of range"),undefined):ak[al]))));if(!((c.padChar===-1))){(an=f+3>>0,((an<0||an>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+an]=(c.padChar<<24>>>24)));}}else if(aj===(1)){if(!((c.padChar===-1))){(ao=f+2>>0,((ao<0||ao>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ao]=(c.padChar<<24>>>24)));(ap=f+3>>0,((ap<0||ap>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ap]=(c.padChar<<24>>>24)));}}};C.prototype.Encode=function(a,b){return this.$val.Encode(a,b);};C.ptr.prototype.EncodeToString=function(a){var $ptr,a,b,c;b=this;c=$makeSlice(M,b.EncodedLen(a.$length));b.Encode(c,a);return $bytesToString(c);};C.prototype.EncodeToString=function(a){return this.$val.EncodeToString(a);};E.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;$s=-1;return[b,c];}if(d.nbuf>0){$s=1;continue;}$s=2;continue;case 1:g=0;g=0;while(true){if(!(g<a.$length&&d.nbuf<3)){break;}(h=d.buf,i=d.nbuf,((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])));d.nbuf=d.nbuf+(1)>>0;g=g+(1)>>0;}b=b+(g)>>0;a=$subslice(a,g);if(d.nbuf<3){$s=-1;return[b,c];}d.enc.Encode(new M(d.out),new M(d.buf));k=d.w.Write($subslice(new M(d.out),0,4));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;d.err=j[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){l=b;m=d.err;b=l;c=m;$s=-1;return[b,c];}d.nbuf=0;case 2:case 4:if(!(a.$length>=3)){$s=5;continue;}n=768;if(n>a.$length){n=a.$length;n=n-((o=n%3,o===o?o:$throwRuntimeError("integer divide by zero")))>>0;}d.enc.Encode(new M(d.out),$subslice(a,0,n));r=d.w.Write($subslice(new M(d.out),0,($imul((q=n/3,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero")),4))));$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;d.err=p[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){s=b;t=d.err;b=s;c=t;$s=-1;return[b,c];}b=b+(n)>>0;a=$subslice(a,n);$s=4;continue;case 5:u=0;while(true){if(!(u<a.$length)){break;}(v=d.buf,((u<0||u>=v.length)?($throwRuntimeError("index out of range"),undefined):v[u]=((u<0||u>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+u])));u=u+(1)>>0;}d.nbuf=a.$length;b=b+(a.$length)>>0;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Write=function(a){return this.$val.Write(a);};E.ptr.prototype.Close=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if($interfaceIsEqual(a.err,$ifaceNil)&&a.nbuf>0){$s=1;continue;}$s=2;continue;case 1:a.enc.Encode(new M(a.out),$subslice(new M(a.buf),0,a.nbuf));c=a.w.Write($subslice(new M(a.out),0,a.enc.EncodedLen(a.nbuf)));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;a.err=b[1];a.nbuf=0;case 2:$s=-1;return a.err;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Close=function(){return this.$val.Close();};F=function(a,b){var $ptr,a,b;return new E.ptr($ifaceNil,a,b,O.zero(),0,P.zero());};$pkg.NewEncoder=F;C.ptr.prototype.EncodedLen=function(a){var $ptr,a,b,c,d;b=this;if(b.padChar===-1){return(c=((($imul(a,8))+5>>0))/6,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=((a+2>>0))/3,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),4);};C.prototype.EncodedLen=function(a){return this.$val.EncodedLen(a);};G.prototype.Error=function(){var $ptr,a;a=this;return"illegal base64 data at input byte "+B.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(G).prototype.Error=function(){return this.$get().Error();};C.ptr.prototype.decode=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=0;d=false;e=$ifaceNil;f=this;g=0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}while(true){if(!(g<b.$length&&!d)){break;}h=Q.zero();i=3;j=4;k=i;l=j;m=h;n=0;while(true){if(!(n<4)){break;}o=n;if(b.$length===g){if(!((f.padChar===-1))||o<2){p=c;q=false;r=new G(0,(g-o>>0));c=p;d=q;e=r;return[c,d,e];}s=o-1>>0;t=o;u=true;k=s;l=t;d=u;break;}v=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);g=g+(1)>>0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}if((v>>0)===f.padChar){w=o;if((w===(0))||(w===(1))){x=c;y=false;z=new G(0,(g-1>>0));c=x;d=y;e=z;return[c,d,e];}else if(w===(2)){if(g===b.$length){aa=c;ab=false;ac=new G(0,b.$length);c=aa;d=ab;e=ac;return[c,d,e];}if(!(((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])>>0)===f.padChar))){ad=c;ae=false;af=new G(0,(g-1>>0));c=ad;d=ae;e=af;return[c,d,e];}g=g+(1)>>0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}}if(g<b.$length){e=new G(0,g);}ag=3;ah=o;ai=true;k=ag;l=ah;d=ai;break;}((o<0||o>=h.length)?($throwRuntimeError("index out of range"),undefined):h[o]=(aj=f.decodeMap,((v<0||v>=aj.length)?($throwRuntimeError("index out of range"),undefined):aj[v])));if(((o<0||o>=h.length)?($throwRuntimeError("index out of range"),undefined):h[o])===255){ak=c;al=false;am=new G(0,(g-1>>0));c=ak;d=al;e=am;return[c,d,e];}n++;}an=(((((((h[0]>>>0)<<18>>>0)|((h[1]>>>0)<<12>>>0))>>>0)|((h[2]>>>0)<<6>>>0))>>>0)|(h[3]>>>0))>>>0;ao=((an>>>0>>>0)<<24>>>24);ap=((an>>>8>>>0)<<24>>>24);aq=((an>>>16>>>0)<<24>>>24);h[2]=ao;h[1]=ap;h[0]=aq;ar=l;if(ar===(4)){(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=h[2]);h[2]=0;(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(f.strict&&!((h[2]===0))){as=c;at=d;au=new G(0,(g-1>>0));c=as;d=at;e=au;return[c,d,e];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){av=c;aw=d;ax=new G(0,(g-2>>0));c=av;d=aw;e=ax;return[c,d,e];}}else if(ar===(3)){(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(f.strict&&!((h[2]===0))){ay=c;az=d;ba=new G(0,(g-1>>0));c=ay;d=az;e=ba;return[c,d,e];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){bb=c;bc=d;bd=new G(0,(g-2>>0));c=bb;d=bc;e=bd;return[c,d,e];}}else if(ar===(2)){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){be=c;bf=d;bg=new G(0,(g-2>>0));c=be;d=bf;e=bg;return[c,d,e];}}a=$subslice(a,k);c=c+((l-1>>0))>>0;}bh=c;bi=d;bj=e;c=bh;d=bi;e=bj;return[c,d,e];};C.prototype.decode=function(a,b){return this.$val.decode(a,b);};C.ptr.prototype.Decode=function(a,b){var $ptr,a,b,c,d,e,f;c=0;d=$ifaceNil;e=this;f=e.decode(a,b);c=f[0];d=f[2];return[c,d];};C.prototype.Decode=function(a,b){return this.$val.Decode(a,b);};C.ptr.prototype.DecodeString=function(a){var $ptr,a,b,c,d,e,f;b=this;c=$makeSlice(M,b.DecodedLen(a.length));d=b.decode(c,new M($stringToBytes(a)));e=d[0];f=d[2];return[$subslice(c,0,e),f];};C.prototype.DecodeString=function(a){return this.$val.DecodeString(a);};H.ptr.prototype.Read=function(a){var $ptr,a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(d.out.$length>0){b=$copySlice(a,d.out);d.out=$subslice(d.out,b);e=b;f=$ifaceNil;b=e;c=f;$s=-1;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.err;b=g;c=h;$s=-1;return[b,c];}case 1:if(!(d.nbuf<4&&$interfaceIsEqual(d.readErr,$ifaceNil))){$s=2;continue;}j=$imul((i=a.$length/3,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")),4);if(j<4){j=4;}if(j>1024){j=1024;}l=d.r.Read($subslice(new M(d.buf),d.nbuf,j));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;j=k[0];d.readErr=k[1];d.nbuf=d.nbuf+(j)>>0;$s=1;continue;case 2:if(d.nbuf<4){if((d.enc.padChar===-1)&&d.nbuf>0){m=0;n=d.enc.decode(new M(d.outbuf),$subslice(new M(d.buf),0,d.nbuf));m=n[0];d.err=n[2];d.nbuf=0;d.end=true;d.out=$subslice(new M(d.outbuf),0,m);b=$copySlice(a,d.out);d.out=$subslice(d.out,b);if(b>0||(a.$length===0)&&d.out.$length>0){o=b;p=$ifaceNil;b=o;c=p;$s=-1;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){q=0;r=d.err;b=q;c=r;$s=-1;return[b,c];}}d.err=d.readErr;if($interfaceIsEqual(d.err,A.EOF)&&d.nbuf>0){d.err=A.ErrUnexpectedEOF;}s=0;t=d.err;b=s;c=t;$s=-1;return[b,c];}v=$imul((u=d.nbuf/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero")),4);x=$imul((w=d.nbuf/4,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero")),3);if(x>a.$length){y=d.enc.decode(new M(d.outbuf),$subslice(new M(d.buf),0,v));x=y[0];d.end=y[1];d.err=y[2];d.out=$subslice(new M(d.outbuf),0,x);b=$copySlice(a,d.out);d.out=$subslice(d.out,b);}else{z=d.enc.decode(a,$subslice(new M(d.buf),0,v));b=z[0];d.end=z[1];d.err=z[2];}d.nbuf=d.nbuf-(v)>>0;$copySlice($subslice(new M(d.buf),0,d.nbuf),$subslice(new M(d.buf),v));aa=b;ab=d.err;b=aa;c=ab;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Read=function(a){return this.$val.Read(a);};I.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=b.wrapped.Read(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];case 2:if(!(e>0)){$s=3;continue;}g=0;h=$subslice(a,0,e);i=0;while(true){if(!(i<h.$length)){break;}j=i;k=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if(!((k===13))&&!((k===10))){if(!((j===g))){((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=k);}g=g+(1)>>0;}i++;}if(g>0){$s=-1;return[g,f];}m=b.wrapped.Read(a);$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;e=l[0];f=l[1];$s=2;continue;case 3:$s=-1;return[e,f];}return;}if($f===undefined){$f={$blk:I.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I.prototype.Read=function(a){return this.$val.Read(a);};J=function(a,b){var $ptr,a,b;return new H.ptr($ifaceNil,$ifaceNil,a,new I.ptr(b),false,P.zero(),0,M.nil,R.zero());};$pkg.NewDecoder=J;C.ptr.prototype.DecodedLen=function(a){var $ptr,a,b,c,d;b=this;if(b.padChar===-1){return(c=($imul(a,6))/8,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=a/4,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),3);};C.prototype.DecodedLen=function(a){return this.$val.DecodedLen(a);};C.methods=[{prop:"WithPadding",name:"WithPadding",pkg:"",typ:$funcType([$Int32],[N],false)},{prop:"Strict",name:"Strict",pkg:"",typ:$funcType([],[N],false)}];N.methods=[{prop:"Encode",name:"Encode",pkg:"",typ:$funcType([M,M],[],false)},{prop:"EncodeToString",name:"EncodeToString",pkg:"",typ:$funcType([M],[$String],false)},{prop:"EncodedLen",name:"EncodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"decode",name:"decode",pkg:"encoding/base64",typ:$funcType([M,M],[$Int,$Bool,$error],false)},{prop:"Decode",name:"Decode",pkg:"",typ:$funcType([M,M],[$Int,$error],false)},{prop:"DecodeString",name:"DecodeString",pkg:"",typ:$funcType([$String],[M,$error],false)},{prop:"DecodedLen",name:"DecodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)}];S.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([M],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];G.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([M],[$Int,$error],false)}];U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([M],[$Int,$error],false)}];C.init("encoding/base64",[{prop:"encode",name:"encode",exported:false,typ:K,tag:""},{prop:"decodeMap",name:"decodeMap",exported:false,typ:L,tag:""},{prop:"padChar",name:"padChar",exported:false,typ:$Int32,tag:""},{prop:"strict",name:"strict",exported:false,typ:$Bool,tag:""}]);E.init("encoding/base64",[{prop:"err",name:"err",exported:false,typ:$error,tag:""},{prop:"enc",name:"enc",exported:false,typ:N,tag:""},{prop:"w",name:"w",exported:false,typ:A.Writer,tag:""},{prop:"buf",name:"buf",exported:false,typ:O,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:P,tag:""}]);H.init("encoding/base64",[{prop:"err",name:"err",exported:false,typ:$error,tag:""},{prop:"readErr",name:"readErr",exported:false,typ:$error,tag:""},{prop:"enc",name:"enc",exported:false,typ:N,tag:""},{prop:"r",name:"r",exported:false,typ:A.Reader,tag:""},{prop:"end",name:"end",exported:false,typ:$Bool,tag:""},{prop:"buf",name:"buf",exported:false,typ:P,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:M,tag:""},{prop:"outbuf",name:"outbuf",exported:false,typ:R,tag:""}]);I.init("encoding/base64",[{prop:"wrapped",name:"wrapped",exported:false,typ:A.Reader,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.StdEncoding=D("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");$pkg.URLEncoding=D("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_");$pkg.RawStdEncoding=$clone($pkg.StdEncoding,C).WithPadding(-1);$pkg.RawURLEncoding=$clone($pkg.URLEncoding,C).WithPadding(-1);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/onet.v1/crypto"]=(function(){var $pkg={},$init,A,F,J,K,B,H,M,I,C,D,E,G,L,AW,AY,Z,AA,AP;A=$packages["bytes"];F=$packages["encoding"];J=$packages["encoding/base64"];K=$packages["encoding/hex"];B=$packages["errors"];H=$packages["gopkg.in/dedis/crypto.v0/abstract"];M=$packages["gopkg.in/dedis/crypto.v0/random"];I=$packages["gopkg.in/dedis/onet.v1/log"];C=$packages["hash"];D=$packages["io"];E=$packages["os"];G=$packages["reflect"];L=$packages["strings"];AW=$sliceType($emptyInterface);AY=$ptrType(H.Point);Z=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=a.Point();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c[0]=d;e=J.NewDecoder(J.StdEncoding,b);f=a.Read(e,new AW([(c.$ptr||(c.$ptr=new AY(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c)))]));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=-1;return[c[0],g];}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.$s=$s;$f.$r=$r;return $f;};$pkg.Read64Pub=Z;AA=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=J.NewEncoder(J.StdEncoding,b);e=AP(a,d,new AW([c]));$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AA};}$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.Write64Pub=AA;AP=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=a.Write(b,new AW([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=-1;return e;}f=b.Close();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AP};}$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;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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=F.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$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=H.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$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=C.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/onet.v1/network"]=(function(){var $pkg={},$init,G,H,E,I,K,L,M,N,Q,O,R,A,J,B,C,D,F,P,S,T,AD,AE,AO,AS,AV,AX,BJ,BP,BQ,BR,BS,BV,CG,CH,CK,CL,CM,CN,CO,CP,CR,CS,CT,CU,DH,DI,DJ,DK,DL,DM,DN,DQ,DR,AF,AN,AU,a,b,U,AG,AH,AI,AJ,AK,AM,AP,AT;G=$packages["bytes"];H=$packages["encoding/binary"];E=$packages["errors"];I=$packages["fmt"];K=$packages["github.com/dedis/protobuf"];L=$packages["github.com/satori/go.uuid"];M=$packages["gopkg.in/dedis/crypto.v0/abstract"];N=$packages["gopkg.in/dedis/crypto.v0/ed25519"];Q=$packages["gopkg.in/dedis/onet.v1/crypto"];O=$packages["gopkg.in/dedis/onet.v1/log"];R=$packages["io"];A=$packages["net"];J=$packages["reflect"];B=$packages["regexp"];C=$packages["strconv"];D=$packages["strings"];F=$packages["sync"];P=$packages["time"];S=$pkg.ConnType=$newType(8,$kindString,"network.ConnType",true,"gopkg.in/dedis/onet.v1/network",true,null);T=$pkg.Address=$newType(8,$kindString,"network.Address",true,"gopkg.in/dedis/onet.v1/network",true,null);AD=$pkg.Message=$newType(8,$kindInterface,"network.Message",true,"gopkg.in/dedis/onet.v1/network",true,null);AE=$pkg.MessageTypeID=$newType(16,$kindArray,"network.MessageTypeID",true,"gopkg.in/dedis/onet.v1/network",true,null);AO=$pkg.typeRegistry=$newType(0,$kindStruct,"network.typeRegistry",true,"gopkg.in/dedis/onet.v1/network",false,function(types_,lock_){this.$val=this;if(arguments.length===0){this.types=false;this.lock=new F.Mutex.ptr(0,0);return;}this.types=types_;this.lock=lock_;});AS=$pkg.LocalManager=$newType(0,$kindStruct,"network.LocalManager",true,"gopkg.in/dedis/onet.v1/network",true,function(conns_,Mutex_,listening_,counter_){this.$val=this;if(arguments.length===0){this.conns=false;this.Mutex=new F.Mutex.ptr(0,0);this.listening=false;this.counter=new $Uint64(0,0);return;}this.conns=conns_;this.Mutex=Mutex_;this.listening=listening_;this.counter=counter_;});AV=$pkg.endpoint=$newType(0,$kindStruct,"network.endpoint",true,"gopkg.in/dedis/onet.v1/network",false,function(addr_,uid_){this.$val=this;if(arguments.length===0){this.addr="";this.uid=new $Uint64(0,0);return;}this.addr=addr_;this.uid=uid_;});AX=$pkg.LocalConn=$newType(0,$kindStruct,"network.LocalConn",true,"gopkg.in/dedis/onet.v1/network",true,function(local_,remote_,incomingQueue_,outgoingQueue_,closeCh_,closeConfirm_,counterSafe_,manager_){this.$val=this;if(arguments.length===0){this.local=new AV.ptr("",new $Uint64(0,0));this.remote=new AV.ptr("",new $Uint64(0,0));this.incomingQueue=$chanNil;this.outgoingQueue=$chanNil;this.closeCh=$chanNil;this.closeConfirm=$chanNil;this.counterSafe=new BV.ptr(new $Uint64(0,0),new $Uint64(0,0),new F.Mutex.ptr(0,0));this.manager=CS.nil;return;}this.local=local_;this.remote=remote_;this.incomingQueue=incomingQueue_;this.outgoingQueue=outgoingQueue_;this.closeCh=closeCh_;this.closeConfirm=closeConfirm_;this.counterSafe=counterSafe_;this.manager=manager_;});BJ=$pkg.Conn=$newType(8,$kindInterface,"network.Conn",true,"gopkg.in/dedis/onet.v1/network",true,null);BP=$pkg.Envelope=$newType(0,$kindStruct,"network.Envelope",true,"gopkg.in/dedis/onet.v1/network",true,function(ServerIdentity_,MsgType_,Msg_,Constructors_,err_){this.$val=this;if(arguments.length===0){this.ServerIdentity=CU.nil;this.MsgType=CG.zero();this.Msg=$ifaceNil;this.Constructors=false;this.err=$ifaceNil;return;}this.ServerIdentity=ServerIdentity_;this.MsgType=MsgType_;this.Msg=Msg_;this.Constructors=Constructors_;this.err=err_;});BQ=$pkg.ServerIdentity=$newType(0,$kindStruct,"network.ServerIdentity",true,"gopkg.in/dedis/onet.v1/network",true,function(Public_,ID_,Address_,Description_){this.$val=this;if(arguments.length===0){this.Public=$ifaceNil;this.ID=CG.zero();this.Address="";this.Description="";return;}this.Public=Public_;this.ID=ID_;this.Address=Address_;this.Description=Description_;});BR=$pkg.ServerIdentityID=$newType(16,$kindArray,"network.ServerIdentityID",true,"gopkg.in/dedis/onet.v1/network",true,null);BS=$pkg.ServerIdentityToml=$newType(0,$kindStruct,"network.ServerIdentityToml",true,"gopkg.in/dedis/onet.v1/network",true,function(Public_,Address_){this.$val=this;if(arguments.length===0){this.Public="";this.Address="";return;}this.Public=Public_;this.Address=Address_;});BV=$pkg.counterSafe=$newType(0,$kindStruct,"network.counterSafe",true,"gopkg.in/dedis/onet.v1/network",false,function(tx_,rx_,Mutex_){this.$val=this;if(arguments.length===0){this.tx=new $Uint64(0,0);this.rx=new $Uint64(0,0);this.Mutex=new F.Mutex.ptr(0,0);return;}this.tx=tx_;this.rx=rx_;this.Mutex=Mutex_;});CG=$arrayType($Uint8,16);CH=$sliceType(S);CK=$sliceType($emptyInterface);CL=$sliceType($Uint8);CM=$arrayType($Uint8,64);CN=$ptrType(AE);CO=$ptrType(M.Point);CP=$ptrType(M.Scalar);CR=$ptrType(AX);CS=$ptrType(AS);CT=$ptrType(BP);CU=$ptrType(BQ);DH=$ptrType(AO);DI=$mapType(AE,J.Type);DJ=$funcType([BJ],[],false);DK=$mapType(AV,CR);DL=$mapType(T,DJ);DM=$chanType(CL,false,false);DN=$chanType($Bool,false,false);DQ=$ptrType(BS);DR=$ptrType(BV);U=function(c){var $ptr,c,d,e,f,g,h;d=c;e=new CH(["tcp","tls","purb","local"]);f=e;g=0;while(true){if(!(g<f.$length)){break;}h=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(h===d){return d;}g++;}return"wrong";};T.prototype.ConnType=function(){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this.$val;d=new T(c).Valid();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(!d){$s=1;continue;}$s=2;continue;case 1:$s=-1;return"wrong";case 2:e=D.Split(c,"://");$s=-1;return U((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]));}return;}if($f===undefined){$f={$blk:T.prototype.ConnType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(T).prototype.ConnType=function(){return new T(this.$get()).ConnType();};T.prototype.NetworkAddress=function(){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this.$val;d=new T(c).Valid();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(!d){$s=1;continue;}$s=2;continue;case 1:$s=-1;return"";case 2:e=D.Split(c,"://");$s=-1;return(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]);}return;}if($f===undefined){$f={$blk:T.prototype.NetworkAddress};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(T).prototype.NetworkAddress=function(){return new T(this.$get()).NetworkAddress();};T.prototype.Valid=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this.$val;d=D.Split(c,"://");if(!((d.$length===2))){$s=-1;return false;}if(U((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))==="wrong"){$s=-1;return false;}f=A.SplitHostPort((1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1]));$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];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return false;}j=C.Atoi(h);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))||k<0||k>65535){$s=-1;return false;}if(g==="localhost"){$s=-1;return true;}else if(A.ParseIP(g)===A.IP.nil){$s=-1;return false;}$s=-1;return true;}return;}if($f===undefined){$f={$blk:T.prototype.Valid};}$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;};$ptrType(T).prototype.Valid=function(){return new T(this.$get()).Valid();};T.prototype.String=function(){var $ptr,c;c=this.$val;return c;};$ptrType(T).prototype.String=function(){return new T(this.$get()).String();};T.prototype.Host=function(){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:c=this.$val;d=new T(c).NetworkAddress();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===""){$s=-1;return"";}g=new T(c).NetworkAddress();$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.SplitHostPort(g);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;i=f[0];j=f[2];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return"";}if(i==="::"){i="[::]";}$s=-1;return i;}return;}if($f===undefined){$f={$blk:T.prototype.Host};}$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;};$ptrType(T).prototype.Host=function(){return new T(this.$get()).Host();};T.prototype.Port=function(){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:c=this.$val;d=new T(c).NetworkAddress();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===""){$s=-1;return"";}g=A.SplitHostPort(e);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];i=f[2];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return"";}$s=-1;return h;}return;}if($f===undefined){$f={$blk:T.prototype.Port};}$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;};$ptrType(T).prototype.Port=function(){return new T(this.$get()).Port();};T.prototype.Public=function(){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=this.$val;e=new T(c).NetworkAddress();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=B.MatchString("(^127\\.)|(^10\\.)|(^172\\.1[6-9]\\.)|(^172\\.2[0-9]\\.)|(^172\\.3[0-1]\\.)|(^192\\.168\\.)|(^169\\.254)|(^\\[::\\])",f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}d=g;h=d[0];i=d[1];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return false;}if(!(!h)){j=false;$s=3;continue s;}k=new T(c).Valid();$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 3:$s=-1;return j;}return;}if($f===undefined){$f={$blk:T.prototype.Public};}$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;};$ptrType(T).prototype.Public=function(){return new T(this.$get()).Public();};AE.prototype.String=function(){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=this.$val;e=AN.get($clone(c,AE));$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(g){$s=2;continue;}$s=3;continue;case 2:h=f.String();$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=new $String(h);j=new L.UUID($clone($clone(c,L.UUID),L.UUID)).Bytes();k=I.Sprintf("PTID(%s:%x)",new CK([i,j]));$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;case 3:$s=-1;return new L.UUID($clone($clone(c,L.UUID),L.UUID)).String();}return;}if($f===undefined){$f={$blk:AE.prototype.String};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AE).prototype.String=function(){return new AE(this.$get()).String();};AE.prototype.Equal=function(c){var $ptr,c,d;d=this.$val;return G.Compare(new L.UUID($clone($clone(d,L.UUID),L.UUID)).Bytes(),new L.UUID($clone($clone(c,L.UUID),L.UUID)).Bytes())===0;};$ptrType(AE).prototype.Equal=function(c){return new AE(this.$get()).Equal(c);};AG=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=AH(c);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,AE);f=J.ValueOf(c);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if($clone(g,J.Value).Kind()===22){$s=3;continue;}$s=4;continue;case 3:h=$clone(g,J.Value).Elem();$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 4:i=$clone(g,J.Value).Type();$r=AN.put($clone(e,AE),i);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AG};}$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;};$pkg.RegisterMessage=AG;AH=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=J.ValueOf(c);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if($clone(e,J.Value).Kind()===22){$s=2;continue;}$s=3;continue;case 2:f=$clone(e,J.Value).Elem();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 3:g=$clone(e,J.Value).Type().String();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h="https://dedis.epfl.ch//protocolType/"+g;i=L.NewV5($clone(L.NamespaceURL,L.UUID),h);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$clone(i,L.UUID);$s=-1;return $clone(j,AE);}return;}if($f===undefined){$f={$blk:AH};}$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;};AI=function(c){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:d=AH(c);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,AE);g=AN.get($clone(e,AE));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];if(!h){$s=-1;return $pkg.ErrorType;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AI};}$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;};$pkg.MessageType=AI;AJ=function(c){var $ptr,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;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;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:d=CG.zero();e=AI(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}AE.copy(d,e);if($equal(d,$pkg.ErrorType,AE)){$s=2;continue;}$s=3;continue;case 2:f=I.Errorf("type of message %s not registered to the network library",new CK([J.TypeOf(c)]));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return[CL.nil,f];case 3:g=new G.Buffer.ptr(CL.nil,0,CM.zero(),0);h=H.Write(g,new AF.constructor.elem(AF),new AE(d));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return[CL.nil,i];}j=CL.nil;k=$ifaceNil;m=K.Encode(c);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;j=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:$r=O.Errorf("Error for protobuf encoding: %s %+v",new CK([k,c]));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=O.DebugVisible();$s=12;case 12:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}if(n>0){$s=10;continue;}$s=11;continue;case 10:$r=O.Error(new CK([new $String(O.Stack())]));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:$s=-1;return[CL.nil,k];case 8:o=g.Write(j);k=o[1];$s=-1;return[g.Bytes(),k];}return;}if($f===undefined){$f={$blk:AJ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Marshal=AJ;AK=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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=[d];e=G.NewBuffer(c);d[0]=CG.zero();f=H.Read(e,new AF.constructor.elem(AF),new CN(d[0]));$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=-1;return[$pkg.ErrorType,$ifaceNil,g];}i=AN.get($clone(d[0],AE));$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];if(!k){$s=3;continue;}$s=4;continue;case 3:l=new AE($clone(d[0],AE)).String();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=new $String(l);n=I.Errorf("type %s not registered",new CK([m]));$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return[$pkg.ErrorType,$ifaceNil,n];case 4:o=J.New(j);$s=7;case 7:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=$clone(p,J.Value).Interface();$s=8;case 8:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=AM($pkg.Suite);$s=9;case 9:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;u=K.DecodeWithConstructors(e.Bytes(),r,t);$s=10;case 10:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=u;if(!($interfaceIsEqual(v,$ifaceNil))){$s=-1;return[$pkg.ErrorType,$ifaceNil,v];}w=$clone(p,J.Value).Interface();$s=11;case 11:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=-1;return[d[0],w,$ifaceNil];}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Unmarshal=AK;AM=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:c=[c];d=[d];e=[e];f={};d[0]=$ifaceNil;e[0]=$ifaceNil;h=J.TypeOf((d.$ptr||(d.$ptr=new CO(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d)))).Elem();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;(f||$throwRuntimeError("assignment to entry in nil map"))[J.Type.keyFor(g)]={k:g,v:(function(c,d,e){return function $b(){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=c[0].Point();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};})(c,d,e)};j=J.TypeOf((e.$ptr||(e.$ptr=new CP(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e)))).Elem();$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;(f||$throwRuntimeError("assignment to entry in nil map"))[J.Type.keyFor(i)]={k:i,v:(function(c,d,e){return function $b(){var $ptr,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=c[0].Scalar();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};})(c,d,e)};$s=-1;return f;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DefaultConstructors=AM;AP=function(){var $ptr;return new AO.ptr({},new F.Mutex.ptr(0,0));};AO.ptr.prototype.get=function(c){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);d=this;$r=d.lock.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(d.lock,"Unlock"),[]]);e=(f=d.types[AE.keyFor(c)],f!==undefined?[f.v,true]:[$ifaceNil,false]);g=e[0];h=e[1];$s=-1;return[g,h];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,false];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AO.ptr.prototype.get};}$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;}}};AO.prototype.get=function(c){return this.$val.get(c);};AO.ptr.prototype.put=function(c,d){var $ptr,c,d,e,f,$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;$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=this;$r=e.lock.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(e.lock,"Unlock"),[]]);f=$clone(c,AE);(e.types||$throwRuntimeError("assignment to entry in nil map"))[AE.keyFor(f)]={k:f,v:d};$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AO.ptr.prototype.put};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AO.prototype.put=function(c,d){return this.$val.put(c,d);};AT=function(){var $ptr;return new AS.ptr({},new F.Mutex.ptr(0,0),{},new $Uint64(0,0));};$pkg.NewLocalManager=AT;AS.ptr.prototype.send=function(c,d){var $ptr,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;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);e=this;$r=e.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(e.Mutex,"Unlock"),[]]);f=(g=e.conns[AV.keyFor(c)],g!==undefined?[g.v,true]:[CR.nil,false]);h=f[0];i=f[1];if(!i){$s=-1;return $pkg.ErrClosed;}$r=$send(h.incomingQueue,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AS.ptr.prototype.send};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AS.prototype.send=function(c,d){return this.$val.send(c,d);};AS.ptr.prototype.close=function(c){var $ptr,c,d,e,f,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;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;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=this;$r=d.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(d.Mutex,"Unlock"),[]]);e=(f=d.conns[AV.keyFor(c.local)],f!==undefined?[f.v,true]:[CR.nil,false]);g=e[1];if(!g){$s=-1;return $pkg.ErrClosed;}delete d.conns[AV.keyFor(c.local)];$r=c.closeChannels();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=(i=d.conns[AV.keyFor(c.remote)],i!==undefined?[i.v,true]:[CR.nil,false]);j=h[0];g=h[1];if(!g){$s=-1;return $ifaceNil;}delete d.conns[AV.keyFor(c.remote)];$r=j.closeChannels();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AS.ptr.prototype.close};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AS.prototype.close=function(c){return this.$val.close(c);};AX.ptr.prototype.Send=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;f=AJ(c);$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];if(!($interfaceIsEqual(h,$ifaceNil))){$s=-1;return h;}$r=d.counterSafe.updateTx(new $Uint64(0,g.$length));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=d.manager.send($clone(d.remote,AV),g);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:AX.ptr.prototype.Send};}$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;};AX.prototype.Send=function(c){return this.$val.Send(c);};AX.ptr.prototype.Receive=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;e=$recv(c.outgoingQueue);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(!g){$s=-1;return[CT.nil,$pkg.ErrClosed];}$r=c.counterSafe.updateRx(new $Uint64(0,f.$length));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=AK(f);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=$clone(h[0],AE);k=h[1];l=h[2];$s=-1;return[new BP.ptr(CU.nil,$clone(j,AE),k,false,$ifaceNil),l];}return;}if($f===undefined){$f={$blk:AX.ptr.prototype.Receive};}$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;};AX.prototype.Receive=function(){return this.$val.Receive();};AX.ptr.prototype.Local=function(){var $ptr,c;c=this;return c.local.addr;};AX.prototype.Local=function(){return this.$val.Local();};AX.ptr.prototype.Remote=function(){var $ptr,c;c=this;return c.remote.addr;};AX.prototype.Remote=function(){return this.$val.Remote();};AX.ptr.prototype.Close=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=$select([[c.closeCh],[]]);if(d[0]===0){e=d[1];f=e[1];if(!f){$s=-1;return $pkg.ErrClosed;}}else if(d[0]===1){}g=c.manager.close(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:AX.ptr.prototype.Close};}$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;};AX.prototype.Close=function(){return this.$val.Close();};AX.ptr.prototype.closeChannels=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;$close(c.closeCh);d=$recv(c.closeConfirm);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$close(c.closeConfirm);$s=-1;return;}return;}if($f===undefined){$f={$blk:AX.ptr.prototype.closeChannels};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AX.prototype.closeChannels=function(){return this.$val.closeChannels();};AX.ptr.prototype.Type=function(){var $ptr,c;c=this;return"local";};AX.prototype.Type=function(){return this.$val.Type();};BR.prototype.Equal=function(c){var $ptr,c,d;d=this.$val;return L.Equal($clone($clone(d,L.UUID),L.UUID),$clone($clone(c,L.UUID),L.UUID));};$ptrType(BR).prototype.Equal=function(c){return new BR(this.$get()).Equal(c);};BQ.ptr.prototype.String=function(){var $ptr,c;c=this;return new T(c.Address).String();};BQ.prototype.String=function(){return this.$val.String();};BQ.ptr.prototype.Equal=function(c){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=d.Public.Equal(c.Public);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:BQ.ptr.prototype.Equal};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};BQ.prototype.Equal=function(c){return this.$val.Equal(c);};BQ.ptr.prototype.Toml=function(c){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:d=[d];e=this;d[0]=new G.Buffer.ptr(CL.nil,0,CM.zero(),0);f=Q.Write64Pub(c,d[0],e.Public);$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:$r=O.Error(new CK([new $String("Error while writing public key:"),g]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return new BS.ptr(d[0].String(),e.Address);}return;}if($f===undefined){$f={$blk:BQ.ptr.prototype.Toml};}$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;};BQ.prototype.Toml=function(c){return this.$val.Toml(c);};BS.ptr.prototype.ServerIdentity=function(c){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:d=this;f=Q.Read64Pub(c,D.NewReader(d.Public));$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];if(!($interfaceIsEqual(h,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=O.Error(new CK([new $String("Error while reading public key:"),h]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return new BQ.ptr(g,CG.zero(),d.Address,"");}return;}if($f===undefined){$f={$blk:BS.ptr.prototype.ServerIdentity};}$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;};BS.prototype.ServerIdentity=function(c){return this.$val.ServerIdentity(c);};BV.ptr.prototype.Rx=function(){var $ptr,c,$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;$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;$r=c.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(c.Mutex,"Unlock"),[]]);$s=-1;return c.rx;}return;}}catch(err){$err=err;$s=-1;return new $Uint64(0,0);}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV.ptr.prototype.Rx};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BV.prototype.Rx=function(){return this.$val.Rx();};BV.ptr.prototype.Tx=function(){var $ptr,c,$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;$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;$r=c.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(c.Mutex,"Unlock"),[]]);$s=-1;return c.tx;}return;}}catch(err){$err=err;$s=-1;return new $Uint64(0,0);}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV.ptr.prototype.Tx};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BV.prototype.Tx=function(){return this.$val.Tx();};BV.ptr.prototype.updateRx=function(c){var $ptr,c,d,e,f,$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;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=this;$r=d.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(d.Mutex,"Unlock"),[]]);d.rx=(e=d.rx,f=c,new $Uint64(e.$high+f.$high,e.$low+f.$low));$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV.ptr.prototype.updateRx};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BV.prototype.updateRx=function(c){return this.$val.updateRx(c);};BV.ptr.prototype.updateTx=function(c){var $ptr,c,d,e,f,$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;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=this;$r=d.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(d.Mutex,"Unlock"),[]]);d.tx=(e=d.tx,f=c,new $Uint64(e.$high+f.$high,e.$low+f.$low));$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV.ptr.prototype.updateTx};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BV.prototype.updateTx=function(c){return this.$val.updateTx(c);};T.methods=[{prop:"ConnType",name:"ConnType",pkg:"",typ:$funcType([],[S],false)},{prop:"NetworkAddress",name:"NetworkAddress",pkg:"",typ:$funcType([],[$String],false)},{prop:"Valid",name:"Valid",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Host",name:"Host",pkg:"",typ:$funcType([],[$String],false)},{prop:"Port",name:"Port",pkg:"",typ:$funcType([],[$String],false)},{prop:"Public",name:"Public",pkg:"",typ:$funcType([],[$Bool],false)}];AE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([AE],[$Bool],false)}];DH.methods=[{prop:"get",name:"get",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([AE],[J.Type,$Bool],false)},{prop:"put",name:"put",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([AE,J.Type],[],false)}];CS.methods=[{prop:"isListening",name:"isListening",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([T],[$Bool],false)},{prop:"setListening",name:"setListening",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([T,DJ],[],false)},{prop:"unsetListening",name:"unsetListening",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([T],[],false)},{prop:"connect",name:"connect",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([T,T],[CR,$error],false)},{prop:"send",name:"send",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([AV,CL],[$error],false)},{prop:"close",name:"close",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([CR],[$error],false)},{prop:"len",name:"len",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([],[$Int],false)}];CR.methods=[{prop:"start",name:"start",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([],[],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([AD],[$error],false)},{prop:"Receive",name:"Receive",pkg:"",typ:$funcType([],[CT,$error],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[T],false)},{prop:"Remote",name:"Remote",pkg:"",typ:$funcType([],[T],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"closeChannels",name:"closeChannels",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([],[],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[S],false)}];CU.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([CU],[$Bool],false)},{prop:"Toml",name:"Toml",pkg:"",typ:$funcType([M.Suite],[DQ],false)}];BR.methods=[{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BR],[$Bool],false)}];DQ.methods=[{prop:"ServerIdentity",name:"ServerIdentity",pkg:"",typ:$funcType([M.Suite],[CU],false)}];DR.methods=[{prop:"Rx",name:"Rx",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Tx",name:"Tx",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"updateRx",name:"updateRx",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([$Uint64],[],false)},{prop:"updateTx",name:"updateTx",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([$Uint64],[],false)}];AD.init([]);AE.init($Uint8,16);AO.init("gopkg.in/dedis/onet.v1/network",[{prop:"types",name:"types",exported:false,typ:DI,tag:""},{prop:"lock",name:"lock",exported:false,typ:F.Mutex,tag:""}]);AS.init("gopkg.in/dedis/onet.v1/network",[{prop:"conns",name:"conns",exported:false,typ:DK,tag:""},{prop:"Mutex",name:"",exported:true,typ:F.Mutex,tag:""},{prop:"listening",name:"listening",exported:false,typ:DL,tag:""},{prop:"counter",name:"counter",exported:false,typ:$Uint64,tag:""}]);AV.init("gopkg.in/dedis/onet.v1/network",[{prop:"addr",name:"addr",exported:false,typ:T,tag:""},{prop:"uid",name:"uid",exported:false,typ:$Uint64,tag:""}]);AX.init("gopkg.in/dedis/onet.v1/network",[{prop:"local",name:"local",exported:false,typ:AV,tag:""},{prop:"remote",name:"remote",exported:false,typ:AV,tag:""},{prop:"incomingQueue",name:"incomingQueue",exported:false,typ:DM,tag:""},{prop:"outgoingQueue",name:"outgoingQueue",exported:false,typ:DM,tag:""},{prop:"closeCh",name:"closeCh",exported:false,typ:DN,tag:""},{prop:"closeConfirm",name:"closeConfirm",exported:false,typ:DN,tag:""},{prop:"counterSafe",name:"",exported:false,typ:BV,tag:""},{prop:"manager",name:"manager",exported:false,typ:CS,tag:""}]);BJ.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[T],false)},{prop:"Receive",name:"Receive",pkg:"",typ:$funcType([],[CT,$error],false)},{prop:"Remote",name:"Remote",pkg:"",typ:$funcType([],[T],false)},{prop:"Rx",name:"Rx",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([AD],[$error],false)},{prop:"Tx",name:"Tx",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[S],false)}]);BP.init("gopkg.in/dedis/onet.v1/network",[{prop:"ServerIdentity",name:"ServerIdentity",exported:true,typ:CU,tag:""},{prop:"MsgType",name:"MsgType",exported:true,typ:AE,tag:""},{prop:"Msg",name:"Msg",exported:true,typ:AD,tag:""},{prop:"Constructors",name:"Constructors",exported:true,typ:K.Constructors,tag:""},{prop:"err",name:"err",exported:false,typ:$error,tag:""}]);BQ.init("",[{prop:"Public",name:"Public",exported:true,typ:M.Point,tag:""},{prop:"ID",name:"ID",exported:true,typ:BR,tag:""},{prop:"Address",name:"Address",exported:true,typ:T,tag:""},{prop:"Description",name:"Description",exported:true,typ:$String,tag:""}]);BR.init($Uint8,16);BS.init("",[{prop:"Public",name:"Public",exported:true,typ:$String,tag:""},{prop:"Address",name:"Address",exported:true,typ:T,tag:""}]);BV.init("gopkg.in/dedis/onet.v1/network",[{prop:"tx",name:"tx",exported:false,typ:$Uint64,tag:""},{prop:"rx",name:"rx",exported:false,typ:$Uint64,tag:""},{prop:"Mutex",name:"",exported:true,typ:F.Mutex,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=H.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=Q.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=R.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Suite=N.NewAES128SHA256Ed25519(false);$pkg.ErrorType=$clone($clone(L.Nil,AE),AE);AF=$clone(H.BigEndian,H.bigEndian);AN=AP();AU=AT();$pkg.ErrClosed=E.New("Connection Closed");$pkg.ErrEOF=E.New("EOF");$pkg.ErrCanceled=E.New("Operation Canceled");$pkg.ErrTimeout=E.New("Timeout Error");$pkg.ErrUnknown=E.New("Unknown Error");b=AG((a=new BQ.ptr($ifaceNil,CG.zero(),"",""),new a.constructor.elem(a)));$s=19;case 19:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$pkg.ServerIdentityType=$clone(b,AE);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["unicode/utf16"]=(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["encoding/json"]=(function(){var $pkg={},$init,A,B,C,D,E,O,Q,L,F,G,M,H,N,P,I,J,K,W,AK,EZ,FA,FB,FC,Z,AC,AD,AZ,BA,a,b,c;A=$packages["bytes"];B=$packages["encoding"];C=$packages["encoding/base64"];D=$packages["errors"];E=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/nosync"];Q=$packages["io"];L=$packages["math"];F=$packages["reflect"];G=$packages["runtime"];M=$packages["sort"];H=$packages["strconv"];N=$packages["strings"];P=$packages["sync/atomic"];I=$packages["unicode"];J=$packages["unicode/utf16"];K=$packages["unicode/utf8"];W=$pkg.Number=$newType(8,$kindString,"json.Number",true,"encoding/json",true,null);AK=$pkg.Marshaler=$newType(8,$kindInterface,"json.Marshaler",true,"encoding/json",true,null);EZ=$sliceType($Uint8);FA=$ptrType(B.TextUnmarshaler);FB=$ptrType(AK);FC=$ptrType(B.TextMarshaler);W.prototype.String=function(){var $ptr,d;d=this.$val;return d;};$ptrType(W).prototype.String=function(){return new W(this.$get()).String();};W.prototype.Float64=function(){var $ptr,d;d=this.$val;return H.ParseFloat(d,64);};$ptrType(W).prototype.Float64=function(){return new W(this.$get()).Float64();};W.prototype.Int64=function(){var $ptr,d;d=this.$val;return H.ParseInt(d,10,64);};$ptrType(W).prototype.Int64=function(){return new W(this.$get()).Int64();};W.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Float64",name:"Float64",pkg:"",typ:$funcType([],[$Float64,$error],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64,$error],false)}];AK.init([{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[EZ,$error],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=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=O.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=Q.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$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;}$r=M.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Z=D.New("JSON decoder out of sync - data changing underfoot?");a=F.TypeOf($newDataPointer($ifaceNil,FA)).Elem();$s=18;case 18:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}AC=a;AD=F.TypeOf(new W(""));b=F.TypeOf($newDataPointer($ifaceNil,FB)).Elem();$s=19;case 19:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AZ=b;c=F.TypeOf($newDataPointer($ifaceNil,FC)).Elem();$s=20;case 20:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}BA=c;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/montanaflynn/stats"]=(function(){var $pkg={},$init,A,D,E,B,C;A=$packages["math"];D=$packages["math/rand"];E=$packages["sort"];B=$packages["strconv"];C=$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=E.$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=C.$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["gopkg.in/dedis/onet.v1/simul/monitor"]=(function(){var $pkg={},$init,A,B,C,O,F,G,L,D,M,N,H,I,J,K,E,AO,AP;A=$packages["encoding/json"];B=$packages["errors"];C=$packages["fmt"];O=$packages["github.com/montanaflynn/stats"];F=$packages["gopkg.in/dedis/onet.v1/log"];G=$packages["io"];L=$packages["math"];D=$packages["net"];M=$packages["regexp"];N=$packages["sort"];H=$packages["strconv"];I=$packages["strings"];J=$packages["sync"];K=$packages["syscall"];E=$packages["time"];AP=function(){var $ptr;AO=new $Chan($Bool,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;}$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=O.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$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=L.$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=M.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AO=$chanNil;AP();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/JoaoAndreSa/MedCo/lib"]=(function(){var $pkg={},$init,C,I,E,O,L,F,M,G,H,B,J,K,N,D,A,W,EF,EH,ET,T,U,V,AE,AG,AH,AL,AO,AP,AR;C=$packages["fmt"];I=$packages["github.com/r0fls/gostats"];E=$packages["gopkg.in/dedis/crypto.v0/abstract"];O=$packages["gopkg.in/dedis/crypto.v0/cipher"];L=$packages["gopkg.in/dedis/crypto.v0/proof"];F=$packages["gopkg.in/dedis/crypto.v0/random"];M=$packages["gopkg.in/dedis/crypto.v0/shuffle"];G=$packages["gopkg.in/dedis/onet.v1/log"];H=$packages["gopkg.in/dedis/onet.v1/network"];B=$packages["gopkg.in/dedis/onet.v1/simul/monitor"];J=$packages["math"];K=$packages["reflect"];N=$packages["strconv"];D=$packages["strings"];A=$packages["sync"];W=$pkg.CipherText=$newType(0,$kindStruct,"lib.CipherText",true,"github.com/JoaoAndreSa/MedCo/lib",true,function(K_,C_){this.$val=this;if(arguments.length===0){this.K=$ifaceNil;this.C=$ifaceNil;return;}this.K=K_;this.C=C_;});EF=$sliceType($emptyInterface);EH=$sliceType($Uint8);ET=$ptrType(W);AE=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=$ifaceNil;b=$ifaceNil;c=V.Scalar();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Pick(F.Stream);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;e=V.Point();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=V.Point();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Base();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=e.Mul(g,a);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}b=h;$s=-1;return[a,b];}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};$pkg.GenKey=AE;AG=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=V.Point();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Base();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=V.Scalar();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Pick(F.Stream);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=V.Point();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i.Mul(e,h);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=V.Point();$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l.Mul(a,h);$s=8;case 8:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=n.Add(n,b);$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;$s=-1;return new W.ptr(k,p);}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.h=h;$f.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;};AH=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=V.Point();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b.Base();$s=2;case 2:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=V.Scalar();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e.SetInt64(a);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=V.Point();$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h.Mul(d,g);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=-1;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;};$pkg.IntToPoint=AH;AL=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=a;d=AH(b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=AG(c,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}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.$s=$s;$f.$r=$r;return $f;};$pkg.EncryptInt=AL;AO=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=V.Point();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Mul(b.K,a);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=V.Point();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Sub(b.C,e);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return h;}return;}if($f===undefined){$f={$blk:AO};}$f.$ptr=$ptr;$f.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;};AP=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=AO(a,$clone(b,W));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=AR(d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AP};}$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.DecryptInt=AP;AR=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=V.Point();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b.Base();$s=2;case 2:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=$ifaceNil;f=new $Int64(0,0);g=false;i=a.String();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=(j=$pkg.PointToInt[$String.keyFor(i)],j!==undefined?[j.v,true]:[new $Int64(0,0),false]);f=h[0];g=h[1];if(g){$s=-1;return f;}if((U.$high===0&&U.$low===0)){$s=4;continue;}$s=5;continue;case 4:k=V.Point();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Null();$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}T=l;case 5:m=T;n=U;e=m;f=n;case 8:o=e.Equal(a);$s=10;case 10:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}if(!(!o&&(f.$high<0||(f.$high===0&&f.$low<100000)))){$s=9;continue;}q=e.String();$s=11;case 11:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;($pkg.PointToInt||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(p)]={k:p,v:f};s=e.Add(e,d);$s=12;case 12:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=new $Int64(f.$high+0,f.$low+1);e=r;f=t;$s=8;continue;case 9:T=e;v=e.String();$s=13;case 13:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;($pkg.PointToInt||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(u)]={k:u,v:f};U=f;$s=-1;return f;}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.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;};W.ptr.prototype.DeterministicTagging=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=this;e=V.Point();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e.Mul(a.K,c);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d.K=f;g=V.Point();$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g.Mul(a.K,b);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=V.Point();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j.Sub(a.C,i);$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}d.C=k;l=V.Point();$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l.Mul(d.C,c);$s=8;case 8:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}d.C=m;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.DeterministicTagging};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.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.prototype.DeterministicTagging=function(a,b,c){return this.$val.DeterministicTagging(a,b,c);};W.ptr.prototype.ReplaceContribution=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=this;e=d.C.Sub(a.C,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;f=d.C.Add(d.C,c);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.ReplaceContribution};}$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;};W.prototype.ReplaceContribution=function(a,b,c){return this.$val.ReplaceContribution(a,b,c);};W.ptr.prototype.KeySwitching=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;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:e=this;f=V.Scalar();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Pick(F.Stream);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=V.Point();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i.Mul(b,d);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=V.Point();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l.Mul(c,h);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=V.Point();$s=7;case 7:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=V.Point();$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p.Base();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=o.Mul(q,h);$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;$r=e.ReplaceContribution($clone(a,W),k,n);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}t=e.K.Add(a.K,s);$s=12;case 12:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;$s=-1;return h;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.KeySwitching};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.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;};W.prototype.KeySwitching=function(a,b,c,d){return this.$val.KeySwitching(a,b,c,d);};W.ptr.prototype.Add=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.C.Add(a.C,b.C);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=c.K.Add(a.K,b.K);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Add};}$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;};W.prototype.Add=function(a,b){return this.$val.Add(a,b);};W.ptr.prototype.MulCipherTextbyScalar=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=V.Point();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Mul(a.C,b);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}c.C=e;f=V.Point();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Mul(a.K,b);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}c.K=g;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.MulCipherTextbyScalar};}$f.$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;};W.prototype.MulCipherTextbyScalar=function(a,b){return this.$val.MulCipherTextbyScalar(a,b);};W.ptr.prototype.Sub=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.C.Sub(a.C,b.C);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=c.K.Sub(a.K,b.K);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Sub};}$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;};W.prototype.Sub=function(a,b){return this.$val.Sub(a,b);};W.ptr.prototype.String=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;b="nil";c=b;if(!($interfaceIsEqual((a).C,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:d=(a).C.String();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=$substring(d,1,7);case 2:if(!($interfaceIsEqual((a).K,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:e=(a).K.String();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}c=$substring(e,1,7);case 5:f=C.Sprintf("CipherText{%s,%s}",new EF([new $String(c),new $String(b)]));$s=7;case 7:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.String};}$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;};W.prototype.String=function(){return this.$val.String();};W.ptr.prototype.ToBytes=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=(a).K.MarshalBinary();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[0];e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=G.Fatal(new EF([e]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:g=(a).C.MarshalBinary();$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];if(!($interfaceIsEqual(i,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:$r=G.Fatal(new EF([i]));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:j=$appendSlice(d,h);$s=-1;return j;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.ToBytes};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.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;};W.prototype.ToBytes=function(){return this.$val.ToBytes();};W.ptr.prototype.FromBytes=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=V.Point();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b.K=c;d=V.Point();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b.C=d;e=(b).K.UnmarshalBinary($subslice(a,0,32));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;f=(b).C.UnmarshalBinary($subslice(a,32));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.FromBytes};}$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;};W.prototype.FromBytes=function(a){return this.$val.FromBytes(a);};ET.methods=[{prop:"DeterministicTagging",name:"DeterministicTagging",pkg:"",typ:$funcType([ET,E.Scalar,E.Scalar],[],false)},{prop:"ReplaceContribution",name:"ReplaceContribution",pkg:"",typ:$funcType([W,E.Point,E.Point],[],false)},{prop:"KeySwitching",name:"KeySwitching",pkg:"",typ:$funcType([W,E.Point,E.Point,E.Scalar],[E.Scalar],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([W,W],[],false)},{prop:"MulCipherTextbyScalar",name:"MulCipherTextbyScalar",pkg:"",typ:$funcType([W,E.Scalar],[],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([W,W],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"ToBytes",name:"ToBytes",pkg:"",typ:$funcType([],[EH],false)},{prop:"FromBytes",name:"FromBytes",pkg:"",typ:$funcType([EH],[],false)}];W.init("",[{prop:"K",name:"K",exported:true,typ:E.Point,tag:""},{prop:"C",name:"C",exported:true,typ:E.Point,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=I.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$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=B.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$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;}$r=N.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}T=$ifaceNil;U=new $Int64(0,0);$pkg.PointToInt={};V=H.Suite;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["main"]=(function(){var $pkg={},$init,B,A,D,E,F,G,H,C;B=$packages["github.com/JoaoAndreSa/MedCo/lib"];A=$packages["github.com/gopherjs/gopherjs/js"];D=$funcType([$Int64],[$packages["gopkg.in/dedis/crypto.v0/abstract"].Point],false);E=$ptrType(B.CipherText);F=$funcType([$packages["gopkg.in/dedis/crypto.v0/abstract"].Point,$Int64],[E],false);G=$funcType([],[$packages["gopkg.in/dedis/crypto.v0/abstract"].Scalar,$packages["gopkg.in/dedis/crypto.v0/abstract"].Point],false);H=$mapType($String,$emptyInterface);C=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:$global.cryptoJSmedcotest=$externalize($makeMap($String.keyFor,[{k:"IntToPoint",v:new D(B.IntToPoint)},{k:"EncryptInt",v:new F(B.EncryptInt)},{k:"GenKey",v:new G(B.GenKey)}]),H);$global.document.getElementById($externalize("testtext",$String)).innerHTML=$externalize("modif from go",$String);a=new $Int64(0,88);$global.document.getElementById($externalize("testtext",$String)).innerHTML=$externalize("generating keys...",$String);c=B.GenKey();$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];$global.document.getElementById($externalize("testtext",$String)).innerHTML=$externalize("keys gen, encrypting...",$String);f=B.EncryptInt(e,a);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$global.document.getElementById($externalize("testtext",$String)).innerHTML=$externalize("encrypted, decrypting...",$String);h=B.DecryptInt(d,$clone(g,B.CipherText));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$global.document.getElementById($externalize("testtext",$String)).innerHTML=$externalize(i,$Int64);$s=-1;return;}return;}if($f===undefined){$f={$blk:C};}$f.$ptr=$ptr;$f.a=a;$f.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;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;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;}if($pkg===$mainPkg){$s=3;continue;}$s=4;continue;case 3:$r=C();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$mainFinished=true;case 4:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$synthesizeMethods();
+var $mainPkg = $packages["main"];
+$packages["runtime"].$init();
+$go($mainPkg.$init, []);
+$flushConsole();
+
+}).call(this);
+//# sourceMappingURL=main.js.map
diff --git a/shrine-webclient/src/main/gopherjs/main.js.map b/shrine-webclient/src/main/gopherjs/main.js.map
new file mode 100644
index 000000000..3abefc93e
--- /dev/null
+++ b/shrine-webclient/src/main/gopherjs/main.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"main.js","sources":["/github.com/gopherjs/gopherjs/js/js.go","runtime.go","/runtime/error.go","/errors/errors.go","atomic.go","pool.go","sync.go","/sync/mutex.go","/sync/once.go","/sync/pool.go","/sync/runtime.go","/sync/rwmutex.go","/io/io.go","math.go","/math/abs.go","/math/frexp.go","/math/log10.go","/math/pow10.go","syscall.go","syscall_unix.go","/syscall/dirent.go","/syscall/env_unix.go","/syscall/exec_unix.go","/syscall/netlink_linux.go","/syscall/str.go","/syscall/syscall.go","/syscall/syscall_linux.go","/syscall/syscall_unix.go","/syscall/zsyscall_linux_amd64.go","/github.com/gopherjs/gopherjs/nosync/mutex.go","/github.com/gopherjs/gopherjs/nosync/once.go","/github.com/gopherjs/gopherjs/nosync/pool.go","time.go","/time/format.go","/time/time.go","/time/zoneinfo.go","os.go","/os/dir.go","/os/dir_unix.go","/os/env.go","/os/error.go","/os/error_unix.go","/os/file.go","/os/file_posix.go","/os/file_unix.go","/os/path_unix.go","/os/proc.go","/os/stat_linux.go","/os/stat_unix.go","/os/types.go","/os/types_unix.go","/unicode/utf8/utf8.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","reflect.go","/reflect/type.go","/reflect/value.go","/fmt/format.go","/fmt/print.go","/fmt/scan.go","/math/rand/exp.go","/math/rand/normal.go","/math/rand/rand.go","/math/rand/rng.go","/sort/search.go","/sort/sort.go","/crypto/subtle/constant_time.go","/encoding/binary/binary.go","/encoding/binary/varint.go","/gopkg.in/dedis/crypto.v0/subtle/ctime.go","unicode.go","/unicode/digit.go","/unicode/graphic.go","/unicode/letter.go","bytes.go","/bytes/buffer.go","/bytes/bytes.go","/bytes/bytes_generic.go","strings.go","/strings/reader.go","/strings/strings.go","/io/ioutil/ioutil.go","/gopkg.in/dedis/crypto.v0/util/grow.go","/gopkg.in/dedis/crypto.v0/util/reverse.go","/gopkg.in/dedis/crypto.v0/abstract/cipher.go","/gopkg.in/dedis/crypto.v0/abstract/encoding.go","/gopkg.in/dedis/crypto.v0/ints/ints.go","/math/big/arith.go","/math/big/int.go","/math/big/intconv.go","/math/big/intmarsh.go","/math/big/nat.go","/math/big/natconv.go","/math/big/prime.go","rand.go","/gopkg.in/dedis/crypto.v0/random/rand.go","/log/log.go","/gopkg.in/dedis/crypto.v0/cipher/hash.go","/gopkg.in/dedis/crypto.v0/cipher/sponge.go","/flag/flag.go","/github.com/daviddengcn/go-colortext/ct.go","/github.com/daviddengcn/go-colortext/ct_ansi.go","/regexp/syntax/compile.go","/regexp/syntax/parse.go","/regexp/syntax/prog.go","/regexp/syntax/regexp.go","/regexp/syntax/simplify.go","/regexp/backtrack.go","/regexp/exec.go","/regexp/onepass.go","/regexp/regexp.go","/runtime/debug/stack.go","/gopkg.in/dedis/onet.v1/log/log.go","/gopkg.in/dedis/onet.v1/log/lvl.go","/gopkg.in/dedis/onet.v1/log/testutil.go","/gopkg.in/dedis/onet.v1/log/ui.go","/net/url/url.go","/text/template/exec.go","/text/template/funcs.go","/github.com/dedis/protobuf/decode.go","/github.com/dedis/protobuf/encode.go","/github.com/dedis/protobuf/field.go","/crypto/crypto.go","/crypto/md5/md5.go","/crypto/md5/md5block.go","/crypto/sha1/sha1.go","/crypto/sha1/sha1block.go","/context/context.go","/encoding/hex/hex.go","net.go","/net/addrselect.go","/net/cgo_stub.go","/net/dnsmsg.go","/net/interface.go","/net/interface_linux.go","/net/ip.go","/net/iprawsock.go","/net/ipsock.go","/net/mac.go","/net/net.go","/net/parse.go","/net/hook.go","/github.com/satori/go.uuid/uuid.go","/crypto/sha256/sha256.go","/crypto/sha256/sha256block.go","/crypto/sha512/sha512.go","/crypto/sha512/sha512block.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/hashes.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/keccakf.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/register.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/shake.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/sponge.go","/gopkg.in/dedis/crypto.v0/group/encoding.go","/gopkg.in/dedis/crypto.v0/math/jacobi.go","/gopkg.in/dedis/crypto.v0/math/sqrt.go","/gopkg.in/dedis/crypto.v0/nist/int.go","/gopkg.in/dedis/crypto.v0/ed25519/fe.go","/gopkg.in/dedis/crypto.v0/ed25519/ge.go","/gopkg.in/dedis/crypto.v0/ed25519/point.go","/gopkg.in/dedis/crypto.v0/ed25519/suite.go","/encoding/base64/base64.go","/gopkg.in/dedis/onet.v1/crypto/key.go","/gopkg.in/dedis/onet.v1/network/address.go","/gopkg.in/dedis/onet.v1/network/encoding.go","/gopkg.in/dedis/onet.v1/network/local.go","/gopkg.in/dedis/onet.v1/network/struct.go","/encoding/json/decode.go","/gopkg.in/dedis/onet.v1/simul/monitor/proxy.go","/github.com/JoaoAndreSa/MedCo/lib/crypto.go","main.go"],"mappings":";;;;mlBA+B4C,yC,gHAGW,kE,mHAGhB,yC,kHAGN,kC,kHAGQ,mB,yHAGc,4C,iIAGY,yE,qHAGX,mD,kHAGH,kG,0GAGrB,mB,4GAGI,sC,6GAGN,8B,yGAGI,qC,8GAGE,sC,+GAGA,6B,iHAGQ,8C,sHAGP,gB,+GASnC,kE,6GAKA,4C,mFAsBA,oB,0CAkDA,kBACA,W,wqD;;w9BC5IA,qEACA,0BACA,wBACA,2CACC,kB,GAGG,YACJ,0BACA,W,4EAoBA,yE,kB,qD,CAIA,6J,6F,sCAYA,4CACA,a,yCAIA,S,iD,gEA6E6D,S,2H,6B,2GAEA,S,iFAG7D,c,kDAcA,6B,kBAEC,S,CAED,iH,iE,+HCpJA,oB,WAEC,c,C,0BAGA,kE,C,yBAGA,mF,CAGD,gH,uH,kJAUA,0B,6sC,4F,4F;sQCxCA,oB,gEASA,W;gG,0C,0C,4C,uC,6C,gD;wJ,mBC8BC,YACA,Y,CAED,a,iEA4CA,mBACA,YACA,U,6CAoCA,iB,sDAwBA,Y,sM;48FC9IA,qD,OACC,kE,OACC,oG,OAED,uB,OAED,sIACA,oDACA,e,iP,mCAKC,O,CAED,2B,iF,6NCvBA,8C,OACC,qBACA,4IACA,2F,O,yB,+V,yBAaD,+C,kBAEC,a,CAGD,4FACA,iBACA,sF,kBAEC,uB,C,gG,6J,2BASD,a,uU,oJ,UCQE,a,CAED,a,CAGD,QACA,IACA,OACC,UACA,MACA,gD,O,S,2LAOG,O,CAED,KACA,WACA,c,CAED,S,O,M,cAMC,oC,CAED,c,CAED,iL,O,cAEE,c,CAED,sMACA,OACA,I,O,qB,UAKD,a,C,ib,UAYA,iBACA,a,CAID,sI,uBAEC,oC,CAGD,IACA,O,oCAIE,a,CAGD,eACA,iL,OACC,sMACA,a,OAED,U,qB,sjB,uIC5FA,a,CAGD,6FACA,8CACA,4C,OACC,qJACA,sF,O,kVC8KD,sJACC,2GACI,iDACH,gBACA,sBACA,yDACC,wH,KAED,gBANiC,W,CAQlC,UACA,c,KAED,c,yBASA,K,kCAIA,wG,2BClMI,wBACJ,M,+S,UCbC,mBACA,Y,CAED,8L,OAEC,0N,O,UAGA,WACA,gJ,C,mZ,UAUA,mBACA,qJACA,Y,CAEE,8JAAH,qC,O,6CAEE,WACA,uC,CAGD,6L,OAEC,0N,O,O,UAID,W,C,6Z,UASA,mBACA,Y,CAGD,6FAEA,qLAEA,6M,OACC,0N,O,UAGA,WACA,gJACA,gJ,C,+Z,UAYA,mBACA,gJACA,gJACA,Y,CAID,sK,kBAEC,WACA,sC,CAGG,0CACH,0NADuB,W,qBAIxB,+F,UAEC,W,C,6PAOD,wC,gRAK4B,2H,sYACA,6H,6yG,4F,4F,sG,K,I,K;+4BCoJzB,sCAAH,mC,O,kI,O,oJ,gd,gB,oD,CAiBA,iEACK,IACJ,sHACA,W,qB,SAGA,Y,6CAEA,wB,CAED,kB,ma,kI,mgC,4F,4F,wC,0C,sB,8C,wE,iC,iC;+hBCpQA,8B,2D,0C,0C,UA0BC,S,MAEA,S,C,8C,WAMA,a,C,WAGA,a,CAED,a,sD,0B,0C,iBAsBC,S,CAED,8B,yCAYA,c,sCA2BA,S,wCAwDA,+BACA,4CACA,8CACA,8C,8BAIA,sBACA,yB,kDAIA,qBACA,0B,4DAIA,sBACA,gJ,kDAIA,gCACA,sDACA,0B,sD,SC5NC,U,C,WAGA,S,CAED,U,sE,mC,6D,C,qC,yE,a,qC,yB,qC,CCIA,4BACA,UACA,+GACA,yFACA,uFACA,UACA,c,uCCZA,2B,aAIC,gB,CAED,mC,qCCQA,QACA,SACI,qCACH,+FACA,0QAF8B,a,C,kL,sJ,e,I,M,O,M,K;ulSCrB/B,mC,uBAEE,6DACA,S,C,G,wB,OAOD,yJ,CAED,O,+BAIA,2B,qBAEC,KACA,O,CAGD,oBACA,YACC,U,WAEC,M,CAED,4EACA,wB,C,2B,uCAUD,qJ,UAEE,S,C,KAGF,S,oCC9CA,kB,kBAEC,c,CAED,QACA,yBACA,qCACI,oDACH,6BACA,wJAFiC,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,WAIA,W,CAED,I,iD,oGAKG,gB,gBACF,mB,iH,C,iBAIA,I,C,6C,yFAME,e,gBACF,a,iH,CAGD,I,6C,uDAcA,yCACA,6K,UAEE,0B,CAED,O,KAED,cACA,oB,uG,6B,+C,C,U,iD,C,iD,oF,I,YCzFC,gH,kBAEA,mGACA,+R,kBAEA,mGACA,ioB,kBAEA,mGACA,01C,MAGA,8D,C,oF,I,YAOA,gH,kBAEA,mGACA,+R,kBAEA,mGACA,ioB,kBAEA,mGACA,01C,MAGA,8D,C,mHASD,YACA,IACA,kDACC,sB,2F,sC,CAIA,+BACA,6BACA,sB,OAEC,M,C,8BAGA,S,CAGD,uB,wIAEC,M,CAED,kEACA,mK,WAEE,sBACA,M,C,M,wDAKD,S,CAED,WACA,WACA,gC,C,yD,gEC9DD,MACA,sJACK,yC,yBAEF,oBACG,sE,OACF,4F,MAMA,uG,CAED,M,CAZsB,W,C,K,gfAiCzB,4F,iB,uC,CAKA,6FACA,8CAEA,6E,O,uC,CAIA,sGACI,yC,yB,0D,CAAoB,W,C,uC,gZCWE,U,oD,gC,4BCnF1B,2B,4BAMA,2B,+DAWA,8BACA,mDACA,oDACA,qDACA,oDACA,qDACA,0GACA,S,6GAIA,kDACA,gBACA,2BACA,mBACA,qBACA,2BACA,wB,smBAMA,2B,sCAEC,uB,CAED,yBACA,2CACG,yF,sCACF,uB,CAED,YACG,6F,sCACF,uB,CAEG,SACJ,sBAEA,iBACC,IACA,0B,sCAEC,uB,C,SAGA,gC,CAED,mBACA,oBACA,uB,sCAEC,uB,CAED,wKACC,2B,uCAEC,wB,CAED,M,+B,W,wDAGE,gC,C,M,MAGD,gC,C,uBAGA,W,C,uBAGA,gC,C,M,CAIH,0B,qfAYI,SACJ,wCACC,oC,sCAEC,iB,CAED,6DACA,eACA,iB,CAED,oB,kEAIA,6NACA,iB,+BAEC,mC,CAED,sC,8CAaI,S,gB,2BAGH,uB,iCAEA,sB,iCAEA,uB,MAEA,0B,CAEG,SACJ,uCACC,oC,sCAEC,iB,CAED,4DACA,eACA,iB,CAED,oB,kEAIA,sI,uCAEC,mC,CAED,kD,4B,QCzKC,uB,CAED,mB,oCAII,YACJ,KACA,gCACC,iKACA,WACA,2F,CAED,qGACA,8C,iG,qC,gHCoEA,oG,oN,0B,wE,6C,sF,2BCkLC,uB,CAED,eACA,6HACA,0CACA,kCACI,kCACH,wLAD6B,W,CAG9B,4C,wI,2BAKC,uB,CAED,gBACA,6HACA,0CACA,kCACA,wBACI,mCACH,wLAD6B,W,CAG9B,4C,wIAIA,SACA,W,WAEC,uB,CAED,eACI,kCACH,wHADkB,W,CAInB,I,QAEC,0B,C,uBAGA,gBAEA,Y,CAGD,4C,oI,sCAeC,uB,CAED,gBACA,0BACA,6BACA,sBACA,wBACA,oBACI,kCACH,wLAD6B,W,CAG9B,4C,8HAYA,gBACA,gBACA,gBACA,sBACA,4C,+O,gB,aAMC,ycACA,0CACA,kBACA,YACA,YACA,kBACA,oB,mBAGA,knBACA,oEACA,sBACA,yBACA,kBACA,oBACA,gBACI,oCACH,gMAD6B,a,CAG9B,oB,kBAGA,gfACA,0C,mBAOC,c,CAQD,KACA,4IACC,a,CAED,0DACA,2BACA,qB,kBAGA,snBACA,+DACA,uHACA,qEACI,oCACH,kMAD6B,a,CAG9B,qB,mBAGA,ulBACA,2DACA,uHACA,qEACA,sBACI,qCACH,kMAD6B,a,CAG9B,qB,CAED,6B,gEAqCI,gDACA,MACD,qE,sCACF,Y,C,kC,0E,oC,+CAqSD,gB,4BAIA,iB,kCAIA,sB,OAEC,+B,CAED,8C,ylB,S,gD,CCxtBA,yH,sC,uC,CAMI,uBAOJ,OAGA,uDACA,iGACA,kDACA,iG,8C,s6B,kD,4B,CAUA,sDACA,iGACA,kDACA,sD,2F,4B,CAMG,4H,sC,mB,CAGH,8B,2B,8a,0BAeC,mF,cAEC,S,C,CAGF,0B,wIAIA,mE,8IAIA,oC,+G,I,YAgBC,iB,mBAEA,U,mBAEA,U,kBAEA,U,CAED,iB,sDAoBA,wB,U,QAGE,iC,C,mCAGA,0E,C,C,eAID,uB,CAED,Y,mE,UAKC,+E,CAED,wB,eAEC,gC,C,eAGA,uB,CAED,Y,4QA8BA,mH,sC,mB,C,2B,iOAgCI,gDACA,MACD,uF,sCACF,c,C,2BAGA,sB,CAED,c,qSAIA,mH,sC,mB,C,+B,+N,qC,sC,CAgDA,0BACA,Y,qFCpRI,SACJ,qB,sCAEC,Y,CAED,qDACA,KACA,S,eAEC,Q,CAED,Y,8CA0PA,0B,eAEC,Q,CAED,S,0CA4EA,mBACA,O,2DAgCA,2B,eAEC,Q,CAED,S,iEAMA,iC,eAEC,Q,CAED,S,6EAMI,SACJ,qB,sCAEC,S,CAED,8CACA,K,eAEC,Q,CAED,S,+EAsBA,8CACA,S,eAEC,Q,CAED,Y,8CA0BA,2B,eAEC,Q,CAED,S,0EAMI,I,gBAEH,mB,MAEA,oB,CAED,iDACA,S,eAEC,Q,CAED,Y,6EAwQI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,4DA8QI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,kDAsCA,qB,eAEC,Q,CAED,S,sDAoGA,uC,eAEC,Q,CAED,S,uEAMA,umC,eAEC,Q,CAED,S,gEAgBA,sC,eAEC,Q,CAED,S,qDAsBA,sBACA,SACA,S,kDAgBA,sBACA,SACA,S,2EA+DI,SACJ,qB,sCAEC,S,CAED,imCACA,K,eAEC,Q,CAED,S,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,iEACA,S,eAEC,Q,CAED,Y,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,iEACA,S,eAEC,Q,CAED,Y,2FAMA,kDACA,2C,eAEC,Q,CAED,Y,yEAuHI,SACJ,qB,sCAEC,S,CAED,imCACA,K,eAEC,Q,CAED,S,mEAsEA,iC,eAEC,Q,CAED,S,8DAyDA,8CACA,S,eAEC,Q,CAED,Y,4DA0BA,gT,eAEC,Q,CAED,S,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,iVACA,S,eAEC,Q,CAED,Y,gEAMI,I,gBAEH,mB,MAEA,oB,CAED,2D,eAEC,Q,CAED,S,0EA4BA,8DACA,I,eAEC,Q,CAED,Y,2rO,4F,4F,4F,kQ,Q,Q,K,O,a,c,c,c,c,a,ozG,6C;k9B,aC3tDC,uD,CAED,c,4G,cAMC,wD,CAED,e,sb,cCOC,a,C,eAGA,kD,CAED,gBACA,wDACC,iBACA,e,aAED,sF,2hBCQA,qD,OACC,kE,OACC,oG,OAED,uB,OAED,sIACA,oDACA,e,iP,mCAMC,O,CAED,2B;4+EC/CI,6C,gCAcJ,sBACA,0BACA,UACA,U,uBAEC,cACA,O,CAED,iCACA,6F,wBAIA,wF,0DAIA,M,oJ,+BAsDA,+D,6B,iBCgCC,a,CAED,kBACA,qB,+TAMI,yCACI,uB,I,a,yD,6D,6E,C,+B,6E,C,C,mB,uB,qC,4D,iF,C,+B,mF,C,C,qC,kF,C,C,mB,+E,yM,C,mB,sD,mF,C,mF,mB,0D,mF,C,mF,mB,sD,iE,0F,C,mF,C,mB,mF,mB,mF,mB,mF,mB,sD,mF,C,oB,uD,mF,C,mB,6D,kF,C,+D,kF,C,2D,kF,C,4D,kF,C,yD,kF,C,mB,6D,kF,C,+D,kF,C,2D,kF,C,4D,kF,C,yD,kF,C,mB,sFA2GL,0BACA,UACA,+DACC,a,C,cAIA,M,gCAEC,M,CAED,sC,4E,C,C,CAvHyB,W,C,6C,qCAuLzB,yCACH,kBACA,kB,eAGC,eACA,e,4BAEC,a,C,CARsB,W,CAYzB,Y,uCAIA,qJ,sDAEE,2C,C,KAGF,gB,gDAOA,U,QAEC,gBACA,W,CAIG,YACJ,KACA,gCACC,WACA,yFACA,sHACA,I,CAED,WACA,qGAGI,wCACH,gBADiC,W,CAIlC,8C,gEAQA,Q,gEAEC,uBACA,kB,CAED,6BACA,2C,iD,6B,C,MAKC,K,C,oC,oDAQD,IACI,YACA,kCACH,WACA,iKACA,2F,C,QAIA,I,C,MAGA,gIACC,W,C,UAGA,S,C,CAGF,gBACA,gD,8NAMA,2J,obAqBI,SACJ,iB,SAEK,YACJ,2B,MAEA,qB,CAED,gHACA,+B,80BAOC,4HAEA,KACA,IACA,IACA,KACA,IACA,IAGD,oCACC,mC,eAEC,qB,C,WAGA,M,CAED,K,2BAIC,sC,C,2BAKA,iC,CAGD,kB,Y,eAEC,K,SAEC,O,CAED,8E,qBAEA,Y,qBAEA,qD,qBAEA,sBACA,qB,qBAEA,iB,qBAEA,iB,qBAEA,yD,qBAEA,0BACA,qB,qBAEA,Y,qB,SAGC,gB,CAED,Y,qBAEA,Y,qBAEA,Y,qBAGA,qE,WAEC,M,CAED,a,qBAGA,qE,WAEC,M,CAED,a,qBAEA,Y,qBAEA,Y,qBAEA,Y,qBAEA,Y,qB,UAGC,uB,MAEA,uB,C,qB,UAIA,uB,MAEA,uB,C,2I,qEAMA,gBACA,M,CAED,+FACA,K,SAEC,gBACA,OACA,O,MAEA,gB,CAED,uG,+CAEC,gB,C,+BAGA,6E,C,+C,yBAMC,gB,CAED,6E,C,oB,cAKA,oBACA,M,CAID,+F,SAEC,gBACA,O,MAEA,gB,CAED,uGACA,6E,mCAEA,kE,C,C,CAGF,e,0hBAeA,kB,sD,mBAMC,gH,CAMD,4C,2F,gBAOC,a,CAED,kBACA,oB,gC,aAQC,e,C,a,MAIC,e,CAED,qE,CAED,uH,4BAIA,6DACC,kB,CAED,S,gCAMA,qC,yB,0CAGG,a,CAED,QACA,QACA,S,C,2DAGA,a,CAED,kBACA,kB,CAED,oB,8MA+CA,wH,mwDAaA,gBACA,KACA,QACA,QAIC,IACA,IACA,IACA,KACA,KACA,KACA,KACA,UACA,MACA,MAID,YACK,aACJ,mCACA,mDACA,6B,uCAEC,2E,C,W,sBAIC,2F,CAED,M,CAED,KACI,MACJ,kB,Y,e,eAGE,MACA,M,CAED,mDACA,2B,UAEC,c,MAEA,c,C,qB,yBAIA,MACA,M,CAED,mDACA,2B,qBAEA,mC,qBAEA,mC,qCAEA,2C,eAEC,U,C,qBAID,2B,qBAEA,2B,mD,mDAGC,kB,CAED,2C,QAGC,Q,C,qBAGD,yC,iBAEC,S,C,qCAGD,4C,gBAEC,S,C,qCAGD,4C,iBAEC,W,C,qCAGD,4C,iBAEC,WACA,M,C,iDAKA,iBACA,c,yBAGC,M,CAGD,KACA,gDAA2C,a,CAE3C,sCACA,mB,C,qB,eAIA,MACA,M,CAED,mD,M,gBAGC,O,sBAEA,O,MAEA,M,C,qB,eAIA,MACA,M,CAED,mD,M,gBAGC,O,sBAEA,O,MAEA,M,C,2I,2EAIA,kBACA,YACA,M,CAEG,gD,yB,eAGF,MACA,M,C,8BAGA,MACA,M,CAED,uH,+B,eAGC,MACA,M,CAED,0G,+B,eAGC,MACA,M,C,yDAGA,MACA,M,CAED,oI,+B,eAGC,MACA,M,CAED,oI,M,eAGC,MACA,M,CAED,uH,CAEG,iCACJ,4B,oCAEC,4B,C,oCAGA,4B,CAED,8C,oB,c,oBAIC,O,MAEA,M,C,oB,2CAKA,YACA,kBACA,M,CAED,2B,QAEC,MACA,M,CAED,qD,oBAKA,sB,gBAEC,MACA,M,CAED,sCACA,mB,oB,kFAKC,M,CAID,KACA,6GACC,a,CAED,2CACA,0B,C,C,cAGA,+F,C,uCAGA,2E,C,C,aAID,c,uBAEA,K,C,wBAKA,6F,CAGD,gD,OACC,2I,OAGD,8C,OACC,uIACA,qFAIA,4K,kCAEC,aACA,2B,CAID,qBACA,2B,OAGD,4C,OACC,yIAGA,qL,OAEC,qFACA,aACA,2B,C,4CAKA,iCACA,oB,CAED,qBACA,2B,OAID,4I,ixC,e,gC,C,0E,+B,C,8BAuBC,Q,+B,CAIG,IACA,kC,gBAEF,M,CAEE,kB,eACF,M,CAL0B,W,C,I,+C,gC,kB,yB,mC,C,kB,uD,mC,C,kB,mC,C,oC,sCA8B5B,kB,iBAEC,S,CAED,kB,6BAEC,S,CAED,2C,sCAEC,S,C,WAGA,+B,C,sHAGA,S,CAED,kC,iE,8BAKC,KACA,c,CAEE,sC,sCACF,c,C,uBAGA,sBACA,c,CAKD,UACI,kCACH,gBAD4B,W,CAG7B,c,qGAOA,IACA,qCACC,kB,eAEC,M,C,kE,sD,CAMD,iI,yC,wD,CATiB,W,C,kE,iFAsBlB,IACA,IACA,QACA,qCACC,kB,eAEC,M,C,MAHgB,W,S,C,kEAUhB,OAVgB,W,S,CAajB,iI,yCAEC,OAfgB,W,S,CAkBjB,IACA,SAnBiB,W,C,oD,6FA0ClB,IACI,kBACJ,Q,cAIC,kB,uBAEC,SACA,kB,C,C,YAKD,8B,C,WAGA,uD,CAED,oCAEE,4CACA,IAGG,Y,wEAIH,uD,CAGD,WACA,6B,sCAEC,uD,CAED,oBAGA,S,sCAEC,kBACA,YACA,iCACA,sB,C,YAIA,uD,CAID,KACA,sCACC,oB,8BAEC,M,CAHgB,a,C,WAOjB,+D,CAED,sBACA,mBACA,oG,QAEC,sE,C,qHAIA,uD,CAED,iB,yCAIC,kG,yCAGC,uD,C,CAGF,qD,yCAGC,uD,C,C,MAKD,+B,CAED,yC,gF,WCnvCC,S,CAED,Q,8HAKA,qJ,6HAKA,qJ,0HAQA,gF,yH,gBAuCC,kG,CAED,oBACA,yBACA,oD,uIA2BkC,uF,wIAuGlC,wD,yXAMA,QAEA,oD,OACC,yF,OAED,sDACA,2C,OACC,wM,OACC,iF,qBAEA,oGACA,gE,O,OAGF,4F,2lBAMA,QACA,oD,OACC,yF,OAGD,sDACA,2C,OACC,wM,OACC,mBACA,qB,qBAEA,6G,OAED,gE,qBAEA,Q,OAED,kFACA,oB,ihBAKA,8HACA,oB,qbAKA,iHACA,e,waAKA,gHACA,e,yaAKA,gHACA,e,8ZAKA,kM,2NAMA,2EACA,8G,2WAQA,qIACA,+KAgBA,uGAMA,iF,eAEC,W,C,UAMA,WACA,K,8BAKC,W,C,C,yBAQE,qF,iBACF,WACA,I,C,CAIF,kB,gjB,gO,mQAUA,gDACA,0FACA,yBACA,wFACA,uBACA,c,qOAKA,gP,yZAKA,6O,sZAKA,uJ,4OAMA,kB,oTAMA,iHACA,oB,mQAuCI,YACJ,KAEA,8BACA,uC,MAEC,gC,C,kDAMI,IACJ,WACA,mFACA,W,8BAGC,W,kDAGA,IACA,mF,qDAGA,IAEA,WACA,+C,MAGA,IACA,mF,CAED,iDACA,iC,MAEA,WACA,mFAEA,iDAGA,gEACA,sC,yCAIC,WACA,mFACA,gEACA,sC,yCAKC,WACA,mFACA,iC,C,C,C,MAMF,WACA,kF,CAGD,8C,kJASA,YACA,QACI,kCACH,mCACA,kC,MAEC,WACA,iI,CAED,sCAPqB,W,C,MAUrB,WACA,oG,C,4B,kCAQD,Y,8BAEC,WACA,oG,MAEA,+DACC,WACA,gKACA,sC,C,CAGF,S,wDAIuC,kC,yIAavC,uCACA,sCACA,yC,iIAKA,wCACA,uCACA,yC,+HAKA,wCACA,uCACA,2C,8IAKA,gIACA,2F,kBAEC,4EACA,oB,cAEA,4EACA,oB,CAED,SACA,S,0HAQA,+L,uDAIC,S,4CAEA,6B,MAEA,qC,C,mZAyBD,0HACA,2HACA,0K,ukB,2O,oUAsBA,uCAGA,wCACA,+BACA,iFAMA,uCACA,wEACA,8EACA,gFAKA,sCACA,4EACA,kFAMA,qCACA,2EACA,sDACA,iFAEA,4HACA,c,OAGC,gB,CAGD,I,U,SAME,W,mBAGA,IACA,KACA,gB,C,CAMF,mGACA,wGACI,K,UAEH,WACA,M,MAEA,yF,CAGD,WACA,iBACA,gB,kC,mBAwBC,U,CAED,6L,+BAQA,oBACA,yE,gEAKA,aACA,S,2GAKA,qBACA,S,+G,eAQC,iE,CAED,YACA,S,gHAKA,Q,eAEC,W,CAED,S,wUAMA,iKACA,kB,8PAMA,0D,sHASA,kK,0VAOI,IAEJ,oE,OACC,K,qBAEA,4G,2EAEC,oF,CAED,0F,gCAEC,yE,CAED,c,OAGD,ydAkBA,0B,oqBAKA,I,kBAEC,oD,C,uGAIA,gE,C,wBAIA,2D,CAGD,iBACA,+zCAGA,iBACA,iaAEA,iBACA,yOAEA,0C,OACC,a,qBACS,2K,YACT,qB,MAEA,oB,C,OAGD,uB,2kBASA,yH,qaAKA,iH,icAMG,qG,kBAGF,+E,CAGD,sBACA,gBACA,oJACA,gBACA,0B,sd,+BAQC,uB,CAGG,YACJ,8JACA,e,2dAMG,qG,kBACF,+E,CAGD,sBACA,0K,sdAOI,YACJ,0JACA,e,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,6rB,eAuBA,8D,CAID,cACA,2BACA,cAGA,mCACA,2BACA,2BACA,2BAEA,wGAKA,uCACA,qFACA,oCAGA,uCACA,qFACA,uFAGA,qCACA,mFACA,sFAGA,MACA,qFAGA,sK,gBAEC,wE,CAID,+EAGA,mCACA,gHAEA,yFAMA,gIACA,6C,OACQ,uEACP,6K,OACC,4I,c,OAEA,8G,O,OAED,uE,OAGD,wEACA,aACA,gB,kiB,0CAYC,S,CAED,4BACA,kD,gI,0CAaC,S,CAED,4B,oGAEC,kD,CAED,+D,yNAOA,QACA,S,mDAGC,OACA,6CACA,K,QAEC,oBACA,4E,C,C,2JAOD,qIACA,gH,4EAIA,0EACA,yEACA,iJ,MAQA,4CACA,gEACA,4BACA,uBACA,wFACA,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,kN,eCnpCC,gB,CAED,wC,OACC,2F,OAED,e,+XAMA,yG,qNAMA,iLAOA,iHACA,S,kiBAWA,yF,uBAGC,QACA,IACA,QACA,4BACA,oCACA,wB,CAGE,c,iKACF,SACA,WACA,UACA,eACA,aACA,wB,C,0LAIA,yIACA,UACA,YACA,WACA,4B,mBAEC,8G,MAEA,oC,CAED,wB,CAKD,QACA,oCACA,KACA,cACA,uCACC,+GACA,+G,6DAEC,KACA,M,MAEA,M,C,CAGF,sOACA,UACA,YACA,WACA,8GAEA,wB,uc,uBAqBC,S,C,iPAKI,oJ,uHAEF,S,CAFyC,W,C,CAQ5C,uD,uHAEE,S,C,KAKF,S,iJAMA,+J,gBAEE,Y,C,KAGF,a,kmBAOA,yFAQA,0DACC,8GACA,4C,OACC,8L,gB,uD,C,O,yBAQF,6DACC,sH,gB,oE,C,MAOD,oB,0pM,4F,4F,4F,4F,kM,qD,mF,sD,0F,gI,iC,gC,6B,+I,wG,6S,+E,0E,Y,c,8G,4C;wzFCjPA,iB,8BAIG,kB,qBACF,SACA,oDACI,2DACH,2JADgC,W,C,C,0BAKjC,wB,C,wB,yO,eCAA,qC,CAED,yG,4R,e,+C,C,8C,8cCPA,c,WAEC,M,CAED,kCACA,6BACA,oJACC,2G,UAIC,kB,C,sC,kC,CAKD,e,yB,yDAKA,Q,C,kC,+Z,4BAQA,sCAEA,uC,CAED,iBAEA,I,SAEC,MACA,K,CAGD,qBACA,qC,mBAGE,SACI,YACJ,mE,sC,4C,C,cAKC,M,C,CAKE,gBACJ,yEACA,qBACA,W,C,0B,gC,C,oC,6RCED,oGACA,e,wVCvDoC,+H,wYAQG,yH,2M,mCAOtC,iB,CAED,sB,mDAcA,a,uDAYA,I,8B,SAEC,a,oC,SAEA,a,oC,SAEA,a,CAED,S,4BC7DA,QACA,kF,qDC2B8B,mB,oRA8C9B,wI,4QAOG,uB,sC,4B,CAGH,0B,yD,gC,C,sCAKC,kC,C,4B,6JAUE,uB,sC,4B,CAGH,sCACC,6B,4C,gC,C,sCAKC,kCACA,M,CAED,WACA,iBACA,gE,CAED,Y,4JAOG,wB,sC,4B,CAGH,2B,QAEC,I,C,uBAGA,kB,CAGD,Q,sCAGC,mC,C,4B,4JASE,wB,sC,4B,CAGH,sCACC,8B,sCAEC,mCACA,M,CAED,WACA,iBACA,gE,CAED,Y,qLASG,uB,sC,0C,CAGH,4B,6FAEC,kB,C,sC,wE,C,oC,kJ,+D,iIA4CE,wB,sCACF,S,CAEE,sB,sCACF,wC,CAED,iB,qFAQA,iB,6C,QA2BC,I,CAED,Y,8D,eAOC,uB,C,mBAGA,+C,CAED,iB,yLC/PA,mC,+BAEC,iB,C,+BAGA,iB,C,+BAGA,gB,CAGD,S,kCAOG,mB,sCACF,8B,CAED,iB,2EAMG,wB,sCACF,S,CAEE,4B,sCACF,wC,CAED,iB,4HA0BG,wB,sCACF,S,CAEE,0B,sCACF,wC,CAED,iB,+HAOG,2B,sCACF,S,CAEE,2B,sCACF,2C,CAED,iB,0HAOG,uB,sCACF,S,CAEE,qB,sCACF,uC,CAED,iB,0G,eC/EC,kB,CAED,sB,uFAKA,S,QAEC,c,CAED,qCACA,uDACA,S,gD,6EAeC,K,C,gDAcD,Q,uDAEI,e,UACF,O,C,CAIE,IACJ,YACK,YACJ,yC,mCAEC,M,C,+CAOA,S,CAGD,qC,C,MAKA,Q,C,UAMA,iB,CAGD,gC,uE,eAOC,uB,CAED,sB,mH,4BAKC,uB,CAEG,YACD,gB,sCACF,8B,CAED,QAGA,4BACA,S,yI,gCAgBC,4B,C,gE,8I,gCAUA,4B,C,mE,0JAQD,YACC,I,gCAEC,4B,CAED,qDACA,W,0DAMC,iBACA,S,C,sEAIA,iBACA,S,C,4B,C,iJ,gCAWD,4B,C,oE,iK,kD,2FC7LD,gBAEA,sDACC,oBAD8B,W,CAI3B,W,+B,yBAEF,yBACA,M,CAHe,W,CAOjB,S,yB,UCdC,O,CAED,c,yBAMmB,kB,wCAMA,kB,2C,UAkBlB,I,CAED,U,+CCzCA,aACA,kBACA,yDACA,oC,yB,gBAGC,+B,qBAEA,+B,sBAEA,iC,qBAEA,+B,sBAEA,gC,sB,sBAIA,+B,C,qCAGA,8B,C,qCAGA,8B,C,oCAGA,8B,C,4BAKD,4B,yD,eC5BC,kC,CAEG,gYACJ,2B,sCAEC,kD,CAED,kBACA,oB,uFAMI,gYACJ,kB,sCAEC,wC,CAED,QACA,oB,6CAQI,gYACJ,mB,sCAEC,yC,CAED,QACA,oB,uCCtCwB,uB,wGAqDpB,YACJ,IACA,wF,iEAEE,4FACA,W,C,S,UAID,kFACA,W,CAGD,qF,gEAEE,4F,MAEA,kF,CAED,W,SAED,gD,sIAMA,oC,wIAMA,+B,2IAKA,kB,gIAGmC,c,6GACA,gC,8GCpFM,c,4GACA,c,+GACA,iB,iHACA,a,u2J,4F,4F,4F,4F,4F,4F,4F,6G,0C,8C,2C,8C,4C,yC,M,0C,6C,6C,I;4XC+HzC,Y,Q,gC,CAIA,4FACA,iF,WAKC,yB,6I,CAGD,YACA,8G,a,gC,CAIA,4F,mB,gC,C,U,sE,CAOA,4F,iB,gC,C,U,mG,CAOA,6F,mB,oC,C,oI,sHAgBA,W,Q,gC,CAIA,kBACA,iF,WAKC,yB,mE,CAGD,YACA,8G,a,gC,CAIA,kB,mB,gC,C,U,sE,CAOA,kB,iB,gC,C,U,mG,CAOA,mB,mB,oC,C,oI,yFAgBA,Y,U,gC,CAIA,SACA,wG,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,wGAEF,M,CAFyB,W,C,QAM1B,I,CAED,oC,sB,gC,C,4B,qFAgBA,W,U,gC,CAIA,SACA,uB,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,uBAEF,M,CAFyB,W,C,QAM1B,I,CAED,qC,sB,gC,C,4B,yD,QAYC,S,iBAEA,S,kBAEA,S,6BAEA,S,mBAEA,S,qBAEA,S,CAED,S,gDAOO,U,WAEN,uGACA,S,kBAEA,mGACA,2HACA,8HACA,S,4CAEA,QAGA,mGACA,4HACA,sIACA,8HACA,S,mBAJA,mGACA,4HACA,sIACA,8HACA,S,MAEA,mGACA,4HACA,uIACA,sIACA,8HACA,S,C,yEAOD,YACI,IACA,kCACH,WACA,mG,UAGC,WACA,S,CAED,iF,YAEC,WACA,S,CAED,mB,eAEC,WACA,S,CAED,8GACG,8G,mBACF,I,gB,MAES,8G,iBACT,I,gB,MAES,8G,iBACT,I,C,C,CAED,W,CAED,S,sEAKA,WACI,kCACH,kB,UAGC,WAJkB,W,S,CAOnB,iF,YAEC,WATkB,W,S,CAYnB,mB,eAEC,WAdkB,W,S,CAiBnB,8GACG,yB,mBACF,I,gB,MAES,yB,iBACT,I,gB,MAES,yB,iBACT,I,C,C,CAED,WA3BmB,W,C,a,oDAmCS,+B,4C,kBAuE5B,Y,8BAEA,Y,CAED,a,0U,67B;qyE,I,8EC/fC,uB,uFAEA,wB,CAED,+B,4C,MAMC,a,CAED,c,uD,6BCNC,a,CAEG,yCACH,kB,iBAEC,kB,CAED,kB,iBAEC,kB,C,eAGA,a,CAVuB,W,CAazB,Y,6D,iBAKC,Y,C,kB,a,kC,sC,C,mB,kC,uC,C,kC,e,qC,C,kC,gC,sC,C,MAIA,Y,CAkBD,Y,8EAIA,IACA,YACA,c,gBAIC,S,C,2BAIA,W,iCAEA,WACA,W,CAID,QACA,QACA,qC,2B,MAIG,S,CAED,OACA,UAPgB,W,S,mDAWhB,O,uCAEC,iBAbe,W,S,C,aAiBf,8GACA,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,gKAQA,I,gBAIC,kB,C,2BAIA,W,iCAEA,OACA,W,CAID,QACA,QACA,IACA,IACA,IACA,qCACQ,kB,O,mB,MAGL,kB,CAED,OACA,IAPgB,W,S,6BAWhB,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,C,iCAIA,S,CAED,OACA,kB,6KAQI,IACA,mBAGJ,0C,OACC,mBACA,SACA,c,OAMD,0C,OACC,c,OAED,2C,OAEC,mBACA,SACA,c,OAID,IACA,iCACK,I,oBAEH,K,MAEA,4G,CAED,YACA,W,CAED,wDACK,I,qBAEH,K,MAEA,6G,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,kC,gJ,sEAsBA,Y,CAED,gB,MAEC,K,C,Y,+B,qB,SAYC,mHACA,K,C,sBAIA,Y,C,gI,sB,uI,CAMF,Y,qE,sEAOC,Y,CAED,gB,MAEC,K,C,Y,+B,qB,SAWC,4HACA,K,C,sBAIA,Y,C,yI,sB,gJ,CAMF,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,qC,WAwBA,qBACA,Y,CAED,Y,8OCngBA,0J,2MAIA,qC,+BAIA,oC,uGAYI,mBACA,YACA,8C,UAGH,K,CAGD,IAEA,sG,OACC,iBACA,c,c,O,c,OAQA,mK,OACC,8C,QACC,iBACA,c,QAED,KACA,I,e,QAEA,IACA,I,uBAEA,K,Q,O,qBAID,+BACA,c,O,O,I,aAOA,oC,mBAEA,2B,MAEA,wG,CAGD,6EAEA,0CACK,IACJ,kBAEA,mH,QACC,gB,e,QAEA,8B,e,QAEA,8B,uBAEA,mBACA,iBACA,c,Q,QAED,mD,QACC,mBACA,iBACA,c,QAGD,0F,QAEC,qCACA,gBACA,c,QAED,+BAEA,kEACA,gJ,QAEC,qCACA,gBACA,c,QAED,IApCiB,W,uBAuClB,0BAED,OACC,2C,4K,UAuBC,K,C,iB,wD,CASD,IACA,Q,yBAEC,kB,+BAEA,OACA,kB,CAIG,mBACJ,yB,iGAEC,kCACA,wB,0C,CAGD,gD,+D,uG,C,6D,oG,CAOA,6B,MAEC,+B,C,oC,uDAQD,0BACG,uC,MACF,c,CAED,mD,wECxLA,a,WAEC,c,C,WAGA,e,CAGD,mBACA,I,eAGC,U,kBAIA,oGACA,WACA,oGACA,WACA,wCACA,kE,oBAIA,kEACA,oGACA,WACA,qE,MAIA,kEACA,iD,CAED,wC,2FAIA,kDACC,oG,KAED,iB,gCAOA,4IACC,iB,C,aAGA,O,C,qEAMG,YAGJ,IACA,+DACC,oCACA,6EACA,gIACA,WACA,I,CAID,OACI,W,+BACH,6KACA,iBAFgB,W,CAIjB,UACA,M,8HAUA,IACA,IAGI,IACJ,yD,Y,UAIG,OACA,O,CAED,yDACC,WACA,W,CAED,M,CAED,+FACA,4BAdgB,W,CAgBjB,wBAEI,oCAGJ,iCACC,+FACA,2BACA,cACA,6GACA,WACA,4BANe,W,CAUhB,8BACC,2BACA,c,UAEC,6GACA,W,cAEA,a,CAED,W,CAGD,OACA,M,kCAiGI,yC,iBAEF,Y,C,4HAGA,uH,CALsB,W,CAQxB,a,4DAKA,4G,iJAEC,W,CAGD,OACA,YAGI,IACA,W,+BACH,0IACA,yFACA,mBACA,W,UAEC,6G,qBAEA,a,CAED,IAVgB,W,CAcjB,8BACC,yFACA,mBACA,W,UAEC,6G,qBAEA,a,CAED,I,CAGD,iB,cAEC,S,CAED,iBACA,M,wD,e,cASC,+BACC,SACA,Y,CAED,c,cAEA,gCACC,SACA,Y,CAED,e,C,oG,iBAOA,a,C,qH,YAKC,Y,CAED,gM,CAGD,iG,wD,iBASC,O,C,YAGA,a,MAEA,e,C,sH,iBAOA,O,CAED,OACA,M,sI,iBAMC,O,CAIG,wCACH,yF,SAEC,6LACA,YACA,O,CALuB,W,CAWzB,UACA,OACA,iB,wI,YAOC,0C,CAEG,IACJ,mBACI,6CACH,mMADgC,W,CAGjC,iCACC,gCADe,W,C,eAIf,kE,CAED,S,wMC7RA,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,wPAQA,SACA,2BACA,Q,sHAGC,gDACA,Q,oE,CAGD,cAEA,4G,mGAEC,4G,MAEA,4G,CAED,Y,2LAMA,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,yKAMA,0EACA,0EAGA,cACA,cAGA,qKACA,gMAEA,2EAEA,yFACA,6B,iNAeA,I,MAGC,W,CAGD,SACA,QACA,QAGA,oG,kB,iB,CAIA,4E,iKAKC,yGACA,c,MAEA,cACA,wGACA,W,CAID,wG,QAEC,W,CAED,WAGA,gBACA,2BAQA,eACI,I,aAGH,qD,MAEA,oB,CAGD,6CACA,qI,2X,iB,C,gB,6KA0BA,mHACA,oGAEA,iBACC,wG,UAGC,W,gBAEA,W,MAEA,W,C,CAKF,wG,oD,2GAOA,4BACA,wGACA,wGACA,S,+J,yCAQC,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,8FACA,qGACA,sC,MAEA,I,CAIG,YACJ,KACI,kCACH,gGACA,6BACA,WACA,qGACA,K,CAEG,qCACH,6MAD2B,a,CAG5B,WACA,QACA,YACA,Y,Q,6CAIE,yE,CAID,8BACC,gCACA,gC,oIAGC,a,CAED,0BACA,mKACA,uEACA,aACA,W,CAED,Q,CAkBD,wG,QAEC,a,CAGG,6C,8HAEF,aACA,M,CAHyB,a,CAM3B,Y,iJ,gFAaC,yE,C,6GAGA,0D,C,wJAGA,Y,C,wJAIA,YACA,+B,kHAEE,iB,MAEA,M,CAJY,W,C,QAQb,qGACA,OACA,iB,MAEA,iO,CAED,Y,CAED,a,2M,yCASC,OACA,OACA,YACA,Y,C,gDAII,YACJ,KACI,wEACH,oCACA,6EACA,gIACA,WACA,I,CAED,iBACI,kCACH,0MADmB,W,CAGpB,sBACA,8JACC,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,4GACA,2GACA,uIACA,wCAEG,wF,gEACF,aACA,aACA,YAGA,0D,CAZ6B,a,CAe/B,QACA,eACA,YAII,KACJ,oBACA,YACC,kCACA,kCACA,qCACA,8IACA,iBACA,yF,mFAKC,yG,C,C,mK,yFAcD,a,CAED,mN,YACC,iOACA,mD,C,2OAIA,a,C,gKAIA,a,C,yHAIA,OACA,O,CAED,Y,wCC9mBA,kE,gEAMA,qB,4HAII,mBACA,S,I,aAGH,2CACA,K,mBAEA,mBACA,K,MAEA,wE,CAGD,qFACA,sFACA,qI,I,kDAKK,K,iCAGH,Q,YAEA,S,MAEA,S,CAED,yB,kBAIA,W,MAIA,iG,CAED,gB,WAIC,qB,C,OAIA,yB,CAGG,+BACJ,QAEA,M,MAGC,uCACA,qEACI,aACJ,eACA,2B,OAEC,yB,C,K,8BAKA,kB,qBAEA,qB,oCAEA,O,C,uBAID,K,K,8BAGC,a,oC,UAGC,I,CAED,K,C,WAII,aACJ,eACA,wCACA,wB,C,C,OAID,yB,CAED,kC,8DAKA,uCACA,YACA,8BACI,+BACJ,M,MAEC,YACA,mD,I,4BAIC,Y,oBAEA,qB,kCAEA,O,C,M,I,4BAMA,gB,oBAEA,mB,kC,UAGC,I,CAED,W,CAED,mD,CAED,kC,sD,I,4BAMC,gC,oBAEA,8B,kCAGA,I,uBAEC,O,C,MAMA,I,CAED,Y,e,WAGE,O,CAED,iE,C,WAGA,O,CAED,4C,CAID,uB,gF,8BAQC,OACA,O,CAiBD,c,8EAGC,O,CAMD,uCACA,yEACA,qCAQI,mBACA,I,iHAEH,kCACA,I,MAEA,iEACA,S,CAED,uCACA,yEACA,qCAKA,gEAII,qCACH,K,WAEC,yF,CAED,yFACA,K,WAEC,yF,CAMD,mCAIA,mD,SAMC,gBACA,O,YAEA,oBACA,O,YAEA,kBACA,O,CA/BoB,W,C,kE,MA8CrB,gB,CAID,K,kBAEC,oG,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,e,SAKC,yC,gBAEA,+M,MAEA,yX,CAGD,S,kD,MAOC,gB,C,WAKA,gBACA,qCACA,iCACC,gBADe,W,C,MAIhB,gB,C,QAKA,gBACI,kCACH,KACG,Y,iBACF,2G,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,oCCzbA,oCACA,S,uDAOA,6FACA,S,8CAKA,8B,mDAaA,8BACA,S,mH,cAuBC,iE,CAIG,YACJ,K,MAGC,gC,C,W,SASC,wEACC,4CACA,gGACI,kCACH,WACA,yFACA,6HACA,IAJkB,W,CAMnB,I,C,CAKF,eACA,gCACC,WACA,yFACA,6HACA,I,CAGD,WACA,qG,MAES,mF,QAET,mBACA,qBACA,iFACC,WACA,yJACA,2B,CAGD,WACA,+I,MAIA,mBACA,iFACC,WACA,oBACA,wMACA,I,CAGD,WACA,+I,C,C,MAKA,WACA,kF,C,MAIA,yCACA,Y,CAED,yCACA,Y,0CChIA,2J,kDAQA,eACI,yCACH,uBACA,I,WAEC,wC,C,yBAGA,wBACA,2EACA,uEAT0B,2B,CAY3B,kBAZ2B,mBAc5B,eACA,S,4CAIA,e,oBAEC,Q,CAED,6BACA,eACA,S,0DAII,Y,2BAEH,gBACA,0BACA,S,C,M,iBAIC,0BACA,S,C,0BAGD,4BACA,2CACA,S,C,I,YAIA,wB,kBAEA,wB,mBAEA,wB,mBAEA,wB,mBAEA,wB,kBAEA,wB,mBAEA,wB,M,SAIC,wBACA,wEACA,oE,oBAEA,QAGA,wBACI,oCACH,4EADoB,W,C,kBADrB,wBACI,oCACH,4EADoB,W,C,MAIrB,wBACI,oCACH,4EADoB,W,C,C,CAKvB,S,4BAQA,4B,8CAMA,8B,gDAOA,2B,qDAMA,6B,2DA0BA,8B,wDAcA,6B,iEAqBA,qCACC,wCACA,kB,Q,cAGE,a,CAED,S,C,cAGA,a,C,4CAGA,a,C,CAGF,Y,+EAIA,S,iB,qC,wB,6C,uB,6C,CASA,Y,yHAmBO,kB,kCAEN,iBACA,gB,iBAEA,wC,yE,sB,6F,C,gBAQA,iBACA,gB,CAED,kBACA,kBAEA,kB,I,aAEC,I,mBAEA,I,oBAEA,K,oBAEA,K,oBAEA,K,oBAEA,I,oBAEA,K,+CAEA,I,I,cAGC,I,oBAEA,I,mBAEA,I,CAEG,I,eAEH,iBACA,gB,CAEG,kCACH,qC,QAEC,iBACA,gB,CAED,cANkB,W,CAQnB,kB,YAGC,IACA,M,C,cAGA,iBACA,gB,CAED,IACA,O,yGAEA,gB,eAEC,iBACA,gB,CAEG,oCACH,+B,eAEC,iBACA,gB,CAED,mBANkB,a,CAQnB,kB,WAEC,iBACA,gB,CAED,K,mBAEA,K,iC,eAGC,iBACA,gB,CAED,S,MAEA,iBACA,gB,C,CAED,IACA,gB,kFASA,W,QAEC,0B,CAED,kB,oCAEC,0B,CAED,2B,W,aAIE,0B,C,aAIA,mCACI,yC,8BAEF,6B,CAFsB,W,CAKxB,oC,CAED,oB,C,6BAGA,0B,C,aAGA,0B,C,wB,I,aAOC,oB,mBAEA,wC,iDAEC,oB,C,C,CAKC,YACJ,0HACA,qCACC,sC,sCAEC,a,CAED,I,cAEC,0B,MAEA,4BACA,2C,C,gCAIA,0B,C,CAGF,oC,kDAKI,yC,wBAEF,Y,CAFsB,W,CAKxB,a,4CAMA,wBACA,8BACC,qG,uGAEC,S,MAEA,I,C,CAGF,S,4CAMA,wBACA,8BACC,qG,uGAEC,S,MAEA,I,C,CAGF,S,oE,W,kBAiBE,Y,C,mBAIA,mB,CAED,a,C,kBAUA,qCACA,U,+OAEC,a,CAED,UACA,+H,CAGD,gCACA,U,+OAEC,a,C,cAGA,Y,CAED,eACA,qBACA,0I,gD,YAmBC,a,CAED,eACA,WACA,+H,43F,4F,4F,4F,O,mC,6I,qE,0C,uC,q1E,ia,+4J,wiB,yB,2B,o5E,+tB,w3E,gd,6F;4pTClgBA,6B,GACA,mKACA,mJACA,2IACA,+LACA,wLACA,gMACA,wMACA,iOACA,sLACA,wLACA,0MACA,yIACA,gKAEA,OACA,qC,0PAIA,iB,mI,+BAKC,6JAKA,aACA,kBAEA,kB,gDAEC,4B,iBAEC,4B,CAED,uCACA,yDACC,UACA,6L,MAKD,6FAKA,2FACA,a,C,a,cAKA,6G,oBAKA,K,oBAEC,K,C,oBAGA,K,CAED,kF,oBAKA,aACA,uCACA,yDACC,iH,MAED,cACA,uCACA,yDACC,iH,MAED,mC,oBAEC,oB,CAED,wE,oBAQA,cACA,uCACA,yDACC,UACA,yL,MAKD,qD,oBAKA,uH,oBAKA,yE,oBAIA,yE,oBAIA,aACA,uCACA,yDACC,UACA,oM,MAMD,0E,C,CAQF,sB,mCAIA,eACA,Y,yDAcA,mB,0HAMA,uD,oHAaA,c,yGAIA,e,sH,yE,uH,wE,gHAyBA,qE,2HAIA,sE,uHAIA,yBACA,+GAMA,qB,kEAQA,uH,iGAIA,aACA,gBACA,c,kEAMA,uH,iGAIA,aACA,gBACA,c,gCAII,kBACJ,UACA,c,6BAIA,wB,kDAIA,gBACI,uDACH,qCACA,0DAFgC,a,C,uUAOjC,oGACA,ia,OACC,6I,OAED,0L,0bAIA,6I,OACC,2D,O,SAGA,uD,C,SAGA,uD,C,UAGA,oD,CAGD,gQAAgH,8M,iN,gL,OAK/G,mD,C,oCAGA,iB,CAED,yB,yN,oCAKC,oC,CAED,iI,yfAYA,6W,OACC,+E,OAGD,6BACA,mKACC,6G,MAED,6BACA,mKACC,6G,MAED,0F,mTAaA,0B,uFAIA,4B,0NA2CA,uH,mJ,a,cAMC,wB,oBAEA,oB,MAEA,mD,C,4QAKD,oGACA,U,a,aAGC,2B,mBAEA,2B,iCAEA,sB,mBAEA,sC,mBAEA,4B,mBAEA,4B,+CAEA,uB,oBAEA,Y,CAED,oE,4LAoCA,mB,sC,mC,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,sW,0KAIA,MACA,iB,8BAIA,mC,6YAII,0BACJ,oD,OACC,0H,OAGG,QACG,kG,MACP,kN,OACC,yBACA,sBACA,sBACA,0BACA,iC,e,OAEA,uO,QACC,qK,QACC,MACA,c,QAED,gBACA,gNACA,c,QAED,+B,e,OAEA,oBACA,Y,e,OAEA,U,uBAEA,yC,Q,OAED,gQ,kfAIA,0B,+BAEC,sC,C,YAGA,mC,CAED,iCAEA,0B,+BAEC,sC,CAED,iCAEA,iIAEA,0B,YAEC,iC,CAGD,0B,YAEC,iC,CAGD,6C,0PAII,M,uBAEH,mB,iCAEC,qE,CAED,0H,sDAEC,4D,CAED,4BACA,8C,MAEA,qB,2CAEC,qE,CAED,uI,oDAEC,4D,CAED,2BACA,wD,CAED,0B,cAEC,sB,CAED,gCACA,iB,yN,gBAKC,gD,C,oCAGA,6G,CAED,8D,OACC,sH,O,cAIA,oD,CAED,oC,wJAIA,Y,yBAIA,gB,yR,4BAKC,+E,CAGD,wDACA,6B,cAEC,4B,CAED,qEACC,gE,aAED,2K,gN,a,iFAMC,Y,MAEA,a,C,wV,aAMD,iI,OACC,mB,OAEA,yH,OAEI,mDACH,gP,OACC,mB,QAF4B,a,qB,O,OAM/B,kB,wwB,mBAKC,e,0C,CAGD,6G,yBAEC,0D,CAED,qHACA,iCACA,4BACA,MACA,uBACA,eACA,4CACA,kBACA,mKACC,kB,MAED,qCACA,mKACC,kB,MAED,wHACA,WACA,2DACA,qEACC,gGACA,oG,UAED,6CAEA,Y,+B,wb,+CAMC,c,C,iCAGA,iB,qDAEC,kB,iB,4BAEC,oC,mCAEA,qC,oB,4BAGC,iBACA,M,CAED,6BACA,sBACA,sBACA,0BACA,M,C,C,CAGF,U,CAED,c,m8BAOC,UACA,KACA,Q,iCAGA,8DACA,0B,cAEC,sB,C,MAGD,UACA,0BACA,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,6J,6BAEE,iE,C,MAGE,wCACA,qJAAH,2I,OACC,4P,OAFiB,a,qBAKnB,sD,OAEC,oBACA,8GACA,2GACI,0CACH,wHACG,wBAAH,+I,QACC,wQ,QAED,iOALkB,a,uBAOnB,MACA,4BACA,kCACA,0G,OAGD,c,yBAEC,gE,CAED,eAEA,kCACA,wKACC,+d,4BAED,uK,MAGA,yE,QACC,oB,QAEA,yJ,QAEA,qBACA,8DACC,oO,4BAED,gB,Q,Q,iwBAKD,0B,M,cAGC,oB,mCAEA,sD,CAED,2C,yF,6BAOC,sB,CAED,U,oC,6BAKC,iB,CAED,U,uTAIO,0B,MACP,wE,OACC,0B,mBAEC,oC,CAED,qBACA,iI,O,0BAIC,oC,CAED,0BACA,mBACA,4CACA,mCACA,mD,OAGA,4C,O,O,gsB,qCAMA,iE,CAED,mB,sCAEC,yD,CAGD,sDACA,yHACA,aAEA,gD,oC,kCAGE,iB,MAEA,iB,C,CAIC,8IAAH,yD,OACI,aAAH,+C,OACC,eACC,+GACA,6C,OACC,oCACA,qGACuC,iE,+EACC,6D,0B,OAGzC,sD,QACC,+G,Q,qB,O,OAMJ,aACA,2G,QACC,kGACuC,oD,yEACC,gD,uB,QAGzC,6J,iWAIA,qCAEC,KACA,iEACC,a,CAED,qB,YAEC,M,CAKD,KACA,8HACC,a,C,0FAGA,M,CAED,uBACA,4BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,8BACA,4B,cAGC,0BACA,U,C,CAGF,S,sdAIO,0B,MACP,qG,OACC,mB,+BAEC,yD,CAED,cACA,qBACA,iCAEA,aACA,yG,OACC,wGACuC,8B,qFACC,0B,6B,OAGzC,qI,OAGA,0B,+CAEC,yD,CAED,mBACA,cACA,gCACA,iCAEA,4CACA,gBACA,2G,QACC,wGACuC,8B,qFACC,0B,6B,QAGzC,uI,OAGA,iB,8BAEC,0D,CAED,8BACA,2BACA,+I,OAGA,6C,O,O,0aAKD,4D,uIAIO,0B,M,6BAEN,8C,oBAEA,yC,oBAEA,sD,oBAEA,sC,oBAEA,0C,MAEA,6C,C,qHAKM,0B,M,6BAEN,gD,oBAEA,oD,oBAEA,2D,oBAEA,uD,MAEA,2C,C,qHAKM,0B,M,uD,0BAGL,S,CAED,8B,oB,0BAGC,S,CAED,S,oB,0BAGC,S,CAED,qC,MAEA,+C,C,qUAKD,mCACA,iCACA,uIACA,8D,O,iBAEC,qG,OACC,8B,c,OAEA,4H,c,OAEA,wB,qBAEA,oC,O,OAED,a,OAED,c,6fAIA,mCACA,2BACA,oJ,OACC,gE,OAED,MACA,mN,OACC,6BACA,sBACA,sBACA,0BACA,M,OAED,gB,6TAIA,mCACA,2BACA,iB,mEAEC,sE,CAED,6BACA,sBACA,sBACA,gBACA,gB,mIAIA,mCACA,2BACA,iB,0CAEC,oE,CAED,6BACA,sBACA,cACA,0BACA,gB,gaAKC,KACA,aACA,QAEM,0B,MACP,qG,O,4BAEE,yE,CAED,mBACA,eACA,eACA,sC,c,OAGA,UACA,0BACA,8B,c,OAGA,iB,8BAEC,6E,CAED,wI,OAGA,6C,O,O,uBAIA,sE,CAGD,6I,+mBAKC,KACA,aACA,QAEM,0B,M,c,4BAGL,yE,CAED,mBACA,eACA,eACA,sC,oBAGA,UACA,0BACA,8B,MAGA,8C,C,8BAIA,uE,CAGD,gJ,8UAIA,2BACA,iCACA,+B,8aAMA,0B,OAEC,0B,CAED,yG,oC,kD,CAIA,SACA,e,qD,geAKA,oC,OAEC,0B,CAED,yG,oCAEC,mB,CAED,kB,4M,uBC1tBC,6G,CAED,6B,2IAuJA,uC,gCAEC,wB,CAED,U,kHAGgC,e,iH,gBAI/B,iD,CAED,a,gBAEC,yE,CAED,6B,+GAG6B,oB,sHAEK,yB,0HAEL,+B,gHAII,U,6dAQjC,qGACA,wFACA,uG,OAGC,gB,CAGD,iB,gBAEC,oB,CAED,gBACA,QACA,wKACC,iC,+BAEC,SACA,M,C,M,OAID,M,MAEA,+BACA,wKACC,iC,8BAEC,kB,C,MAGF,yC,CAGD,oG,iBAEC,Q,CAED,8FACA,sGAEA,gB,2kB,mBAKC,eACA,4B,C,2BAGA,e,CAED,+H,qrB,mBAuCC,e,sE,CAGD,iB,gB,0G,CAIA,gBACI,oDACH,qHACA,iCACA,qF,O,kK,OAH+B,a,qB,0G,wZ,2BAY/B,S,CAED,iB,gBAEC,S,CAED,+C,0H,2BASC,S,CAED,eACA,kBACA,gC,2BAEE,M,CAED,a,CAED,gC,oH,wBAKC,yD,CAED,eACA,kB,6H,wBAKC,4D,CAED,eACA,yC,4I,a,cAMC,eACA,mB,oBAEA,eACA,mB,oBAEA,eACA,mB,oBAEA,eACA,mB,oBAEA,eACA,mB,CAED,qD,qT,wBAKC,yD,CAED,eACA,+G,6c,wBAKC,gE,CAED,eACA,sH,ie,wBAKC,+D,CAED,eACA,qH,ke,wBAKC,mE,CAED,eACA,yH,sS,wBAKC,oD,CAED,eACA,gI,gH,wBAKC,oD,CAED,eACA,kB,8G,wBAKC,sD,CAED,eACA,kB,mH,wBAKC,4D,CAED,eACA,yB,0H,wBAKC,uD,CAED,eACA,sB,qH,wBAKC,wD,CAED,eACA,wB,4H,wBAKC,qD,CAED,eACA,gI,sH,M,aA2BC,e,mBAEA,e,mBAEA,a,CAED,gC,iN,iCAMC,U,CAED,0HACA,uCACA,4B,+BAEC,kC,oBAEC,uC,C,CAGF,qCACA,YACA,U,2HAIyC,0B,iO,gBAKxC,c,CAEG,UACJ,iEACC,0H,oD,uE,C,MAKD,c,6IAmCA,kCACA,U,+LAaA,qCAEC,KACA,iEACC,a,CAED,qB,YAEC,M,CAOD,KACA,qJACC,a,C,oGAGA,M,CAED,uBACA,4BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,8BACA,4B,YAGC,mC,uCAEC,M,C,wC,C,C,yC,sd,gCAWF,0D,CAED,yHACA,mBACG,4BAAH,4C,OACC,W,qBAEA,WACA,qI,OACC,kG,OAED,uGACA,kB,O,oCAGA,uC,oBAEC,uC,C,CAGC,2B,eACF,U,CAED,oBASA,sBACA,gB,qrBAQA,qBACA,sKACC,sC,OACC,WACA,qX,OACC,oG,OAED,W,OAED,qH,0BAED,gB,ihCAoBA,cACA,mCAQI,SAOJ,0BAEA,0CACC,uCACA,MACA,SAMA,2KACC,UACA,kF,OAIC,mB,OAED,8FACA,mEACC,yHAEI,MACA,UACD,4BAAH,6C,OACC,M,uBAIA,UACA,kD,QACC,6G,QAED,a,QAID,iI,Q,uD,mG,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,oB,8+BAOA,SACA,+C,OACC,mEACC,yHACA,4BACA,yC,OACC,QACA,mB,OAED,4C,O,iK,O,0B,O,QAMD,oB,C,oEAE8C,kB,gJ,oWAmB/C,kC,qQ,oCAyEC,mE,CAED,0I,OACC,6E,OAED,uC,md,oCAKC,qE,CAED,sBACA,uH,me,oCAKC,sE,CAED,sBACA,sI,iT,wBAUC,a,CAED,e,2BAEC,Y,C,mBAgBA,eACA,KACI,qDACH,0HACA,0H,qIAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,CAGD,iB,gBAEC,a,CAED,KACA,gBACI,iDACH,0HACA,qH,sIAEI,a,2BACF,Y,C,CAL4B,a,CAS/B,a,yN,YAWC,kB,C,qEAMA,mB,CAID,iH,kc,OAKC,sC,CAGD,md,OACC,mB,OAGD,4T,oyB,YAKC,kB,CAGD,a,wBAEC,mB,C,wCAMA,kB,C,MAKD,wO,OACC,mM,OAMA,sN,QACC,kB,QAID,2M,OAGA,eACA,e,iEAEC,mB,CAEG,wDACH,kK,QACC,mB,QAFyB,a,uBAKvB,yDACH,oK,QACC,mB,QAF0B,a,uBAK5B,kB,OAGA,eACA,e,uDAEC,kB,CAID,mB,OAGA,+R,OAGA,+H,OAGA,eACA,e,+CAEC,mB,CAED,qEACC,yHACA,yH,2DAEC,mB,CAED,gJ,QACC,mB,Q,6DAGA,mB,C,+BAGA,mB,C,oCAGA,+B,YAEC,+B,CAED,+B,YAEC,+B,C,eAGA,mB,C,C,4BAIH,kB,O,OAGD,mB,4a,gBAsyCC,iB,CAED,U,8BA4HA,6B,wDC1gGA,0B,qI,6CAOC,iE,C,iCAGA,qB,CAED,c,qH,gBAiEC,qD,CAED,6E,wH,gCA0CC,2C,C,qJ,WAQA,2B,C,2BAGA,qF,C,mK,WASA,2B,C,2BAIA,qF,C,uBAGA,mE,C,0J,4BAWA,iE,CAED,uE,8GAMA,0BACA,qB,2RAMA,2BACA,oJ,OACC,6D,OAGD,2B,sZAMA,2BACA,oJ,OACC,6D,OAGD,2B,4OASA,mC,sHASA,gC,4SAYA,2BACA,iCACA,gI,kbAWA,2BACA,iCACA,qI,8QAiYA,0B,M,cAGC,4D,oBAEA,qB,CAED,mE,sZA6EA,gD,OACC,oN,OAED,2BACA,sKACC,sC,OACC,4N,O,0BAEE,mF,CAED,+G,O,OAGF,kH,0BAED,gB,okBAOA,2BACG,4IAAH,oC,OACC,uI,OAED,oC,iiBAQG,gJAAH,oC,OACC,uI,OAED,oC,+TAMA,0B,M,cAGC,qB,oBAEA,qB,CAED,iE,wHAsDA,0BACA,U,M,aAGC,+B,mBAEA,+B,mBAEA,+B,mBAEA,+B,mBAEA,iB,CAED,+D,oH,gBAMC,mD,CAED,6B,wU,+H,iQAwFA,uB,oHAMA,8B,oXA8BA,2BACA,mBASA,kJAEI,K,iCAEH,U,MAEA,mH,CAED,yC,WAEC,oC,CAED,WACA,sCACA,8B,WAIC,UACA,aACA,4C,MAEA,yC,C,goBASD,2BACA,mBACA,UAEA,4CAEA,2BACA,K,cAEC,U,CAED,iBACA,qBACI,KACA,gDACH,+F,WAKC,c,C,WAKA,UACA,aACA,sI,MAEA,mI,CAED,OAjBsB,a,qBAmBvB,gC,6hB,oBASC,6C,CAED,gO,OACC,0D,O,gDAGA,8D,CAED,qBACA,iBACA,6CACA,0C,4b,oBAMC,gD,C,iCAGA,e,CAED,qH,ue,oBAUC,mD,C,iCAGA,oC,CAED,6I,QAEC,oC,CAED,iI,sTAMA,2BACA,mBACA,yB,4IAMA,0B,M,cAGC,kC,oBAEA,a,CAED,2E,4JAMA,0B,M,cAGC,c,oBAEA,a,CAED,yE,2G,SAKC,O,CAED,8D,+EAMA,0B,M,+DAGC,4BACA,oEACA,kD,CAED,uE,yJAMA,0B,M,8EAGC,4BACA,qEACA,kD,CAED,wE,qXAsDA,2BACA,iC,wJ,kjBAOA,mB,wBAEC,0D,CAED,WACA,oCACI,K,WAEH,UACA,UACA,4B,MAEA,mH,CAED,mJ,QAEC,0B,CAED,oB,4eAOA,2BACA,iCACA,6H,kgBAMA,mB,wBAEC,0D,CAED,iCACA,+IACI,K,iCAEH,U,MAEA,mH,C,iJ,8SA0BD,mCACA,0BACA,gB,sTAiBA,mCACA,2BACA,oJ,OACC,gE,OAED,gB,6RAMA,mCACO,0B,M,cAIN,+C,oBAEA,gB,MAJA,sE,C,6IAWD,mCACO,0B,M,cAIN,yB,oBAEA,gB,MAJA,oE,C,uIAWD,mCACO,0B,M,aAIN,wD,mBAEA,6D,mBAEA,6D,mBAEA,wD,mBAEA,gB,MAVA,kE,C,sXA+CD,2BACA,iCACA,iCACA,mBACA,qJACI,K,iCAEH,U,MAEA,mH,C,oBAGA,sCACA,a,CAED,iCACA,sJACI,K,iCAEH,U,MAEA,mH,CAED,2H,sVAMA,mCACO,0B,M,aAIN,2B,mBAEA,gC,mBAEA,gC,oBAEA,2B,oBAEA,gB,oBAEA,2B,MAZA,mE,C,mIAmBD,mCACA,2BACA,gB,wIAMA,mCACA,2BACA,gB,kUAyHO,0B,M,aAEN,8B,oBAEA,2B,CAID,6I,ofASA,2BACA,iC,uJ,ucASA,2BACA,iCACA,yI,oRAKA,W,WAEC,2C,C,uBAIA,c,CAKD,uB,uBAGC,mB,uCAEC,qE,CAED,0HACA,8B,CAGD,qB,2CAEC,qE,CAED,uIACA,+B,0HAMA,0BACA,U,M,aAGC,gC,mBAEA,gC,mBAEA,gC,oBAEA,gC,oBAEA,iB,oBAEA,iE,CAED,gE,oH,oBASC,iD,C,4BAGA,uE,CAED,c,uTAwCA,6D,OACC,sO,O,0bAaD,uBACA,Y,UAEC,sD,CAED,uBACA,wC,OACC,mI,O,WAGA,M,MAEA,gC,YAEE,c,MAEA,uG,C,C,CAIH,uHACA,qHACA,uB,8fAMA,2BACA,gJACI,0DACH,iUAD0B,uDAG3B,gB,ybAsPA,0I,OACC,uD,OAED,0BACA,gI,iV,mCAQC,gB,CAED,uH,oW,oCAwCC,yC,CAED,0BACA,MACA,6N,2dAcA,8D,OACC,6G,OAID,qK,OAGC,UACA,qBACA,8BACA,sC,O,WAIC,U,CAED,gHACA,6I,QACC,Y,uBAEA,a,QAED,mC,O,OAID,qG,umBAOA,8D,OACC,oH,OAED,oMACA,4D,OACC,8M,OAED,uH,+qB,aAOA,2U,O,a,0IAGE,gB,mCAEA,gB,oBAEA,gB,C,c,O,a,0IAMA,gB,mCAEA,gB,oBAEA,gB,C,c,O,a,+DAMA,gB,oFAEA,gB,mCAEA,gB,C,c,O,a,6BAMA,gB,C,c,OAID,iN,O,2G,aAGE,gB,mBAEA,gB,C,Q,Q,c,OAKF,kN,Q,2G,aAGE,gB,mBAEA,gB,C,Q,Q,O,OAMH,0I,QACC,gB,QAID,ud,QAGC,gB,Q,c,mBAKC,gB,CAED,gB,CAGD,mC,qiBAwBA,oGACA,U,W,aAGC,qB,mBAEA,Y,CAED,oE,8ZAMA,oGACA,U,W,aAGC,2C,oBAEA,Y,CAED,oE,kZAIA,sMACA,4BACA,sCACA,gB,yYAIA,sMACA,6GACA,sCACA,gB,yYAIA,sMACA,6GACA,sCACA,gB,8WAUA,iL,gVAKA,+I,mVAKA,iM,gVAKA,+J,uUAKA,0J,uUAKA,2J,uUAKA,gJ,uUAKA,kJ,uUAKA,gK,uUAKA,iK,uXAKA,uQ,2ZAKA,gR,2ZAKA,uQ,2ZAKA,gR,mbAoBA,6LACA,gHACA,yI,OACC,Y,qBAEA,6B,OAED,qK,iaAKA,uD,OACC,+FACA,2CACA,gB,OAED,8N,8zjB,4F,4F,4F,4F,4F,mL,Q,K,K,uD,yD,mB,6P,qC;0hHC51EA,oF,yHAIA,QACA,e,uI,SAMC,O,CAED,eACA,YACA,S,kBAGC,8CACA,2B,CAGD,K,oBAEC,K,CAGD,mBACA,kDACC,mG,KAED,6B,gI,wCAMC,eACA,O,CAED,0B,sBAGC,kBACA,e,MAGA,eACA,kB,C,oH,wCAOA,qBACA,O,CAED,kC,sBAGC,kBACA,qB,MAGA,qBACA,kB,C,gI,MAOA,oB,MAEA,qB,C,8IAMD,gCAKA,I,qCAEC,SAEA,8B,gBAEC,mB,C,CAKF,Y,0FAIC,WACA,oGACA,gCACA,yCACA,WACA,oGACA,WACA,oG,CAGD,iEACC,WACA,oLACA,WACA,2B,CAED,WACA,+IACA,WAEA,8BACC,WACA,oGACA,W,CAGD,WACA,oGACA,WACA,oGAEA,kBACA,sBACA,sBACA,kB,8KAKA,yE,MAEC,gC,CAGD,gC,kDAKC,yB,gBAGC,mB,C,CAOF,I,2BAEC,S,uCAGC,kBACA,sBACA,sBACA,kBACA,O,C,iDAGD,Q,yCAEC,W,C,CAOF,Y,I,aAKC,iEACC,WACA,oCACA,+NACA,I,C,mBAGD,iEACC,WACA,kKACA,2B,C,kBAGD,gEACC,WACA,4LACA,2B,C,kBAGD,gEACC,WACA,4LACA,2B,C,MAGD,uD,CAED,WACA,6HACA,kDACC,WACA,oG,C,qB,I,Y,+GAQE,WACA,oG,C,mBAID,WACA,kHACA,WACA,oG,C,C,MAKD,WACA,oG,0BAEA,WACA,oG,2BAEA,WACA,oG,CAKD,kBACA,sBACA,sBACA,kB,uJ,2BAMC,SACA,oEACC,W,QAEC,yB,C,S,CAIH,S,wHAKA,gBACA,e,sIAKA,Y,eAGC,W,C,qCAIA,S,CAGD,a,Q,qB,qBAKG,e,CAGD,kB,2BAGA,W,C,M,0BAIA,sB,CAED,O,C,sDAIA,2B,CAGD,e,qBAGC,iC,CAEG,IACA,kC,0BAGF,gB,qBAGC,iC,C,C,kBAID,mG,MAEA,kB,CAGD,uEAfuB,W,CAiBxB,c,qDAGC,2B,C,mIAMD,sB,6HAKA,kB,0HAOA,gB,wCAEC,uBACA,O,CAED,kC,oBAEC,iC,MAEA,0B,C,wHAOD,c,+CAEC,Q,CAED,kCACA,mCACA,wB,uHAMA,c,+CAEC,Q,CAED,kC,oBAEC,qC,MAEA,8B,C,wI,2BASA,S,CAGD,oE,uMAEC,iB,MAEA,6F,C,yIAKA,6F,C,uMAKA,kBACA,sB,0IAGC,iB,CAED,SACA,kBACA,O,C,yH,4DAOC,2GACA,mCACA,4BACA,O,CAED,SACA,O,CAGD,sB,4ICnaA,iC,oEAIA,iC,kEAIA,4B,0E,UAKC,uCACA,O,CAGD,WACA,YACA,+CACC,e,CAED,wGACA,gC,iMAgCA,yGACA,kBACA,iBACA,yHACA,e,oJAKA,2BACA,gBACA,oCACA,S,+H,4D,qI,8D,yH,I,aAUC,4B,mBAEA,iD,mBAEA,mD,mBAEA,4B,mBAEA,2B,CAED,a,wIAMA,sH,4C,wVASA,qFACA,kGACA,4KACA,SACA,kB,sYAWA,qFACA,kGACA,wBACA,SACA,e,0VAMA,yL,+YASA,qFACA,+FACA,4KACA,SACA,kB,4Y,+H,sVAaA,qFACA,+FACA,wBACA,SACA,e,+YAWA,qFACA,iGACA,4KACA,SACA,kB,+Y,+H,2VAaA,qFACA,iGACA,wBACA,SACA,e,gWAOA,4GACA,6F,OACC,0G,OAED,e,kJAOA,6B,sE,S,0C,CAQI,4E,U,0C,CAIH,sDACA,OALiE,W,CAOlE,c,4O,iCAKC,kIACA,a,CAED,2HACA,6TACA,2H,qcAIA,gBACA,+HACA,0HACA,2HAEA,4H,OACC,oTACA,2HACA,wG,c,OAEA,qUACA,2HACA,gI,qBAEA,kI,O,OAED,2HACA,iB,kc,IAKA,0D,OACC,qB,qBAEA,+F,O,O,mRAOD,uBACA,uBACA,kDACA,uB,mU,IAMA,iR,O,8BAEE,kB,MAEA,8C,C,e,OAGD,8C,e,OAEA,6C,e,OAEA,6C,e,OAEA,8C,e,OAEA,8C,e,OAEA,e,e,OAEA,+E,QACC,gB,uBAEA,iG,Q,e,QAGD,qB,uBAEA,iG,Q,O,se,IAQD,sL,OACC,4B,c,OAEA,0B,c,OAEA,yB,c,OAEA,2B,qBAEA,+F,O,O,6f,IAWD,oI,OACC,sBACA,2HACA,6LAEA,yBACA,6LACA,+HACA,sB,qBAEA,+F,O,O,if,IAMD,8J,O,0BAEE,e,MAEA,e,C,c,OAGD,e,c,OAEA,oC,c,OAEA,oC,c,OAEA,e,qBAEA,+F,O,O,yiB,IAMD,6K,O,0BAEE,4H,eAEC,kIACA,a,CAED,4HACA,qJ,QAEE,+H,CAED,iC,KAED,4H,MAEA,2HACA,qJ,QAEE,2H,CAED,iE,KAED,2H,C,c,OAGD,+B,c,OAEA,oC,c,OAEA,oC,c,OAEA,+B,qBAEA,kN,O,O,ijBAKG,I,2BAEJ,wG,OACC,8B,qBAEA,+FACA,a,O,O,IAID,0J,OACC,yD,QACC,2HACA,iUACA,+H,UAEC,gI,MAEA,0D,CAED,2H,uB,UAGC,yB,MAEA,2E,C,Q,e,OAIF,2E,e,OAEA,oJ,uBAEA,iG,Q,O,kgBAKE,aAAH,mE,OAII,8F,+DACF,kIACA,a,C,gBAMA,U,CAGD,2BAEA,mBAEA,+HACA,0HACA,oIACA,iBACA,oGACA,kBACA,2HAEA,yB,O,qvB,eAMA,e,CAGE,0CAAH,mC,OACC,OACA,uDACA,gGACA,e,OAID,uD,OACI,0CAAH,mC,OACC,OACA,uDAEA,6LACA,e,O,qB,IAOD,kG,QAKC,sH,Q,IAEC,OACA,uDACA,8LACA,e,Q,IAGA,OACA,uDACA,+LACA,e,Q,Q,Q,O,uB,k8BAQH,QACA,oCAEA,gE,O,IAEC,yD,OACC,yB,qBAEA,+F,O,OAED,a,O,IAMD,yE,OACC,uMACA,a,QAEA,oNACA,a,Q,OAID,o9B,Q,SAEC,mG,e,Q,SAEA,uG,e,Q,SAEA,uG,e,Q,SAEA,wI,e,Q,SAEA,0G,e,Q,SAEA,0H,e,Q,SAEA,0H,e,Q,SAEA,0H,e,Q,SAEA,0H,e,Q,SAEA,qI,e,Q,SAEA,2H,e,Q,SAEA,2H,e,Q,SAEA,2H,e,Q,SAEA,2H,e,Q,SAEA,4G,e,Q,SAEA,oJ,e,Q,SAEA,qG,e,Q,SAEA,6G,e,Q,UAIA,mG,QACC,4HACA,6I,QACC,a,Q,QAGF,yH,uB,KAGA,8I,QAGC,2N,Q,Q,4pCAWF,oG,OACC,mHACA,mI,OACC,a,O,OAGF,gBACA,UAEO,I,2BACP,8kB,OACC,yC,QACC,oJ,uB,IAGA,6C,QACC,kI,uBAEA,iG,Q,Q,Q,e,OAIF,0H,e,QAEA,iK,e,QAEA,mI,e,QAEA,+H,e,QAEA,+H,e,QAEA,mI,e,QAEA,oI,e,QAEA,+M,e,QAEA,yD,QACC,iU,8BAEC,kIACA,a,CAED,4H,uBAEA,iI,QAED,+GACA,0J,Q,0BAGG,+H,MAEA,2H,C,CAGF,6HACA,2HACA,0P,2B,0BAGA,4H,MAEA,2H,C,e,QAGD,yD,QACC,iU,QAED,4HACI,kE,Q,0BAGD,+H,MAEA,2H,C,CAGF,+E,QACI,0H,cACF,4HACA,2H,C,QAGF,oOAd6B,W,uBAgB9B,4H,e,QAEA,4GACA,gE,QACC,yD,QACC,uUACA,kI,uBAEA,kI,Q,uBAGD,6H,Q,e,Q,KAID,yF,QAEC,4BACA,sO,QACK,UACJ,iH,QACC,oH,e,QAEA,4P,uBAKA,0CACA,8DACC,wV,4B,QAGF,0NACA,a,Q,Q,QAGF,yD,QACC,uU,+DAEC,kIACA,a,CAED,4HACI,gE,SAEF,+H,CAED,kPAJwB,a,wBAMzB,4H,uBAEA,2HACI,iE,SAEF,2H,CAED,kPAJwB,a,yBAMzB,2H,Q,e,QAKD,mF,SACQ,qH,6BACP,wF,SACC,2HACA,gIACA,a,S,S,SAKF,wH,e,QAAA,wH,uBAEA,uH,Q,O,q6BAMD,IACA,6C,OACC,wIACA,oC,OAEQ,6L,2B,0DAEN,0B,oGAEC,2CACA,O,C,8EAGD,2B,8IAEC,cACA,O,C,C,O,OAMH,S,UAEC,IACA,Q,C,OAGF,oB,yQ,e,0C,CAgBI,yC,yBAEF,iC,mB,+C,C,mD,CAF2B,W,C,0C,wH,2C,0C,CAmB7B,iBACA,2C,iB,8C,CAIA,mB,2C,0IAKA,+HACA,0HACA,uI,+HAIA,+HACA,0HACA,sI,0gBAIA,WACA,IACA,QACA,kBAEI,qCACH,kBACA,IACA,yDACC,W,C,QAGA,4I,C,SAIA,c,CAID,WAGA,mBAEA,iCACC,kB,IAEA,4J,OACC,0B,e,OAEA,0C,e,OAEA,yB,e,OAEA,0BACA,0B,e,QAEA,0B,uBAIA,8D,Q,YAGE,2CACA,2BAEA,yCACA,0B,CAED,wMACA,WACA,WACA,gB,QAGD,gB,Q,OAhCa,W,qBAqCf,oDAGA,+D,QACC,WACA,gJ,+BAGC,yI,C,gBAMA,qBACA,0BACA,0B,CAED,Q,uBAEA,iE,iCAEC,mB,C,QAKF,sE,QACC,W,MAEC,mB,CAED,oDACA,+D,QACC,WACA,kJ,iBAGC,aACA,iC,C,gCAGA,wI,CAED,Q,uBAEA,mE,gCAEC,aACA,gC,C,Q,Q,OAMF,oD,C,SAIA,uIACA,c,CAGD,sDACA,WAGA,6I,QACC,2H,e,QAEA,e,e,QAEA,gB,e,QAGA,2CACA,2BAEA,yCACA,0BAGA,mMACA,W,uBADA,mMACA,W,Q,Q,qBAOF,6D,QACC,mBACA,sIACA,uK,QAEE,+H,CAED,kE,QACC,kI,uBAEA,0TACA,2HACA,sG,Q,2BAGF,2H,Q,gqBAKD,QACA,wJACC,sL,gBAGC,2H,CAED,oGACA,I,yB,8fAOD,wJ,QAEE,2H,CAED,oG,yBAED,2H,mT,uF,iV,uCC37BC,QACA,oB,CAGD,sH,mCAEC,uB,8BAEC,a,C,qCAGD,a,CAED,oB,iS,gC,gC,C,4C,uTAaA,4G,sC,+B,oB,CAKC,W,CAED,e,2aAeA,iGACA,cACA,uBACA,uB,wPAIA,oD,4HAIA,2D,kgBAIA,gEACI,a,sCACC,kD,MACF,W,MAEA,U,C,C,a,8BAKF,K,CAED,2BACA,8FACA,qB,kZ,aAoBC,a,CAED,eACA,6J,WAEE,a,C,YAGA,Y,C,KAGF,a,4BAKA,a,wNAOA,qG,wP,gBA2GC,mBACA,O,C,yBAIA,O,CAED,2BACA,eACA,U,wUAKA,OACC,6F,WAEC,a,CAED,+K,OACC,c,OAED,wC,O,MAEE,c,C,sBAGA,c,CAED,oCACA,a,OAED,0C,QACC,gGACA,c,Q,qB,kgBASF,mC,OACC,qG,OAGD,OACC,6F,WAEC,c,CAED,sH,OACC,gGACA,c,OAED,0H,qBAED,gF,wQAOA,2E,UAEE,S,C,SAGF,S,wPAwBA,6FACA,6C,OACC,8F,OAED,wB,utU,4F,4F,4F,4F,4F,4F,4F,4F,iDD9X0B,uL,I,2B,kZ,kDCkQA,+E,I,iD;qjDClW1B,OACC,4FACA,cACA,mF,qFAEC,e,CAED,uC,OACC,+M,OAED,gb,OACC,e,O,qB,sR,QClBD,e,CAED,c,4TAYA,OACC,iGACA,QACA,mF,wFAGC,e,CAGD,uC,OAEC,OACC,wMACA,wL,aAEC,c,C,qB,QAID,8B,CAED,8B,OAED,ub,QACC,e,Q,qB,gTCtBE,4BACJ,UACA,S,gDAqBA,+BACA,wC,kQAMG,2CAAH,mC,OACC,4NACA,a,OAGD,gGACA,Y,yaAI8B,0G,yYAGE,qI,kcAIhC,uE,OACC,2G,OAED,4V,8bAI8B,qK,sZAI9B,sGACA,sC,8e,0CAOC,kD,CAED,kJ,OACC,0L,OAED,0JACA,2FACA,mFACC,2F,qBAED,8B,2hB,SAOC,kD,CAED,oD,OACC,iH,OAED,oGACA,2FACA,iCACC,2F,qBAED,yE,yd,SAOC,gD,CAED,+C,OACC,iH,OAED,gK,uaAqBD,OACC,6HACA,uC,OACC,c,OAED,e,gaAQD,OACC,sGACA,uC,OACC,c,OAED,e,ybAKA,mBAMI,qCACH,gGACA,kMACA,mGAHkB,W,qBAKnB,e,ogBAOG,2CAAH,mC,O,qX,O,sY,igBAOA,WACA,WACI,6CACH,uC,OACC,qFACA,I,OAED,mHACA,0BACA,gBAPsB,W,qBASvB,UACA,UACA,kB,yYA8FA,YACA,+FACA,cACA,e,+aAIA,YACA,gGACA,cACA,e,qZAIA,YACA,gGACA,c,qaAKA,YACA,gGACA,UACA,c,qfAKA,YACA,kIACA,cACA,kB,mQCnKA,2FACA,mEACA,sC,QAEC,oB,CAED,S,wEAKA,QACA,WAEA,0C,yCAEC,yE,C,8BAGA,yB,CAGD,2CACI,sCACH,Q,SAEK,kBACJ,mCACA,QACA,uFACA,QACA,sEACA,uIACA,2F,CAVsB,W,C,mHAiBxB,4G,kIAKA,mB,YAEC,qB,CAGD,qB,aAEC,uB,CAGD,qPACA,oGACA,mC,kzF,4F,4F,uxF,+lL,o8J,u5C,ozF,u9E,kioB;yuBC1LA,gBACA,iCACC,qGAEA,sH,OACC,S,qBAEA,I,O,qBAIF,e,wXA6BA,8DAAyC,sH,qG,+VAUE,2J,mbCpFvC,0CACC,gLACH,mGADuC,W,qBADlB,W,qB,uZAUvB,IACA,OACC,oB,SAEC,c,CAED,mM,OACC,W,OAED,uI,OACC,a,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,0oBAaF,qGACA,6C,OAEC,gGACA,kHACA,uGACA,qI,OAED,kGASA,IACA,0BAEA,yKAAoC,W,qBAEpC,IACA,QACC,8KAAqC,W,uBAErC,kLAAsC,W,uB,SAGrC,e,CAGD,qGACA,WACA,W,uBAID,aACA,8I,QAEC,IACA,sI,QACC,qGACA,WACA,W,QAED,sI,QACC,WACA,W,QAKD,uI,QACC,qGACA,WACA,W,QAGD,M,QAED,qC,QAKC,QACC,4LAAuC,W,uBAEvC,sLAAoC,W,uB,SAGnC,e,CAGD,qGACA,WACA,W,uB,QAIF,qG,2C,ulBAKA,yCACC,uC,OACC,2FACA,a,OAED,WACA,wGAGA,mD,OACC,+FACA,I,qBAEA,+FACA,I,O,qBAGF,8C,QAGK,4CACH,qI,QACC,qG,QAFqB,W,uBAKvB,6F,Q,gXAQD,yFACA,gG,+JAMI,IACA,kCACH,WADkB,uB,CAGnB,kB,gPAwDA,kH,wNAKA,oB,8DA4C0C,iB,uHACA,wM,mIACA,4Y,sRAGb,uF,ykC;iV,4F,4F,4F;0FCpT7B,+BACA,6BACA,6BACA,6BAEA,a;8hB,4F,4F,4F,4F;;6hDCeA,mGACA,oO,mHAIA,mGACA,uGACA,sH,sHAIA,mGACA,yb,mHAIA,mGACA,uGACA,iHACA,kHACA,kH,kJAIA,mGACA,q0C,mHAKA,mGACA,4GACA,iIACA,kIACA,kIACA,kIACA,kIACA,kIACA,kI,mHAGqC,qB,yGAEE,4B,8GAKvC,mGACA,oO,mHAIA,mGACA,sHACA,uG,sHAIA,mGACA,yb,mHAIA,mGACA,kHACA,kHACA,iHACA,uG,kJAIA,mGACA,q0C,mHAKA,mGACA,kIACA,kIACA,kIACA,kIACA,kIACA,kIACA,iIACA,4G,mHAGkC,kB,yGAEE,yB,gnCAmBjC,OAAH,4C,OACK,WACA,Q,QAEH,kB,MAEA,0B,CAEE,wG,sCACF,e,CAED,u0B,O,SAEC,sB,e,O,SAEA,uB,e,O,SAEA,a,e,O,SAEA,qH,e,O,SAEA,2G,e,O,SAEA,gH,e,Q,SAEA,2G,e,Q,SAEA,6I,e,Q,SAEA,2G,e,Q,SAEA,kKACC,gH,M,e,Q,SAGD,kKACC,iH,M,e,Q,SAGD,gB,e,Q,SAEA,6DACC,0O,4B,e,Q,SAGD,6DACC,gO,4B,e,Q,SAGD,6DACC,qO,4B,e,Q,SAGD,6DACC,gO,4B,e,Q,UAGD,8DACC,qQ,4B,e,Q,UAGD,8DACC,mO,4B,QAGF,uB,OAID,uGACA,M,6BAEA,2E,QACC,oHACA,gH,e,QAEA,gH,Q,QAED,wC,QACC,oP,QAED,iCACG,wH,uCACF,gB,CAED,iHACA,uB,i0DAaG,OAAH,4C,OACK,WACA,Q,QAEH,kB,MAEA,0B,CAED,ywC,O,S,aAGE,O,MAEA,O,C,e,O,S,MAIA,O,MAEA,O,C,e,O,SAGD,kK,OAEE,sG,MAEA,sG,C,M,e,O,SAIF,yB,e,O,SAEA,kB,e,O,SAEA,kKACC,kH,M,e,O,SAGD,c,e,Q,SAEA,O,e,Q,SAEA,I,e,Q,SAEA,uH,e,Q,SAEA,gH,e,Q,SAEA,uKACC,0I,4B,e,Q,SAGD,4G,e,Q,SAEA,qG,e,Q,SAEA,uKACC,+H,4B,e,Q,SAGD,kH,e,Q,SAEA,2G,e,Q,SAEA,uKACC,qI,4B,e,Q,SAGD,4G,e,Q,UAEA,sG,e,Q,UAEA,wKACC,+H,4B,e,Q,UAGD,gJ,e,Q,UAEA,iI,e,Q,UAEA,wKACC,0J,4B,e,Q,UAGD,6G,e,Q,UAEA,sG,e,Q,UAEA,wKACC,+H,4B,QAGF,8GACA,gB,OAID,0NACA,gHACA,wC,QACC,qP,QAED,oBACA,mBACA,iHACA,+GACA,gB,0+BAeA,+D,OACI,mM,SACF,8C,CAED,e,OAED,wH,8b,0FAMA,6O,OACI,4KAAH,uC,OACC,+G,Q,c,OAID,IACI,+IACH,uL,QAEC,e,CAED,WALmC,W,uBAOpC,e,OAMA,2G,O,OAGD,e,iQAYA,sGACA,yBACA,iB,iH,MAKC,sG,MAEA,sG,CAED,yB,iHAIA,sGACA,yBACA,S,kHAIA,sGACA,yB,gSAIA,sHACA,yBACA,e,oZAIA,4HACA,yB,oaAIA,sHACA,yBACA,e,oZAIA,4HACA,yB,oaAIA,sHACA,yBACA,e,oZAIA,4HACA,yB,kPAG+B,0B,6GAEC,sB,oRAEC,gH,yYAEC,yG,uZAED,2G,yYAEC,oG,gaAED,qI,gZAEC,wH,gwB,2BAIlC,gd,OACC,0BACI,uCACH,yNADkB,W,uB,e,OAKnB,2BACA,+BACI,uCAMA,8GAAH,iN,QACC,+G,uBAEA,8G,QATiB,W,uB,e,OAcnB,0BACI,uCACH,yNADkB,W,uB,e,OAKnB,oC,e,OAGA,iD,e,OAEA,uN,e,OAEA,uN,e,OAEA,yM,e,QAGA,oD,e,QAEA,0N,e,QAEA,0N,e,QAEA,2M,e,QAGA,gT,e,QAEA,gT,e,QAGA,uiB,e,QAKA,uiB,Q,O,w6B,2BASD,kX,OACC,0BACI,uCACH,yNADkB,W,uB,e,OAKnB,2BACA,+BACI,uCAEA,8GAAH,iN,QACC,+G,uBAEA,8G,QALiB,W,uB,e,OAUnB,0BACI,uCACH,yNADkB,W,uB,e,OAKnB,iC,e,O,mHAIA,+H,QACC,gF,e,QAEA,qK,e,QAEA,gK,e,QAEA,qH,Q,Q,e,O,mHAKD,iI,QACC,kD,e,QAEA,uI,e,QAEA,kI,e,QAEA,uH,Q,Q,e,O,mHAKD,yE,QACC,gJ,e,QAEA,uI,Q,Q,e,O,oHAKD,2E,QACC,+BACA,+HACA,+H,e,QAEA,+BACA,sHACA,sH,Q,Q,Q,O,mmBAMF,2H,idAIA,sGACA,qEACC,6G,KAED,yB,uRAMA,I,8K,IAEC,S,oC,SAEA,iB,mC,SAEA,iB,8H,IAEA,S,oC,SAEA,0B,oC,SAEA,0B,8H,IAEA,S,oC,SAEA,0B,oC,SAEA,0B,8H,IAEA,S,oC,SAEA,0B,oC,SAEA,0B,CAED,S,iCCtoBA,IACA,kEACC,+HACA,2BACA,W,CAED,mHACA,c,6DAYI,mBACA,IACJ,qJ,U,sBAGG,qC,CAED,qG,CAED,oGACA,Y,KAED,2B,2gI,4F,4F,4F,qJ;iJCvDI,IACJ,iJACC,6B,KAED,iC,2M;8iE,cCfC,a,CAED,IACA,YACA,8BACC,qGACA,mG,+BAEC,6F,cAEC,+D,CAED,c,C,gBAGA,I,MAEA,S,C,CAGF,S,2B,WCjBC,oB,CAED,uB,4C,iBCwCC,6H,CAED,6B,oDAgBA,iJ,WAEE,Y,C,KAGF,a,uC,iBAiBC,4H,CAED,wB,qE,0BCAC,kDACC,mG,WAEC,a,C,YAGA,gG,C,KAGF,a,CAID,IACA,YACA,8BACC,qGACA,mG,qBAEC,gG,C,WAGA,I,MAEA,S,C,CAGF,a,qD,kBAMC,kDACC,mG,WAEC,a,C,YAGA,2F,C,KAGF,a,CAID,IACA,YACA,8BACC,qGACA,6G,qBAEC,2F,C,WAGA,I,MAEA,S,C,CAGF,a,qCAKA,Q,gJAEC,yB,CAED,Q,sHAEC,oB,CAED,a,iDAIA,QACG,gB,gJACF,sC,CAED,Q,sHAEC,oB,CAED,a,gCAoEA,8B,uC,W,kBAOE,Y,CAED,S,CAED,e,4C,W,iBAOE,Y,CAED,S,CAED,e,sD,mBAsEC,S,C,eAIA,4F,CAID,IACA,aACA,8BACC,qG,oHAEC,S,MAEA,I,C,C,sIAID,kH,CAME,Q,eACF,S,CAED,a,ujC,ojB,wE,2b,sH,0D,0xZ,6gH,2lC,shU,mM,6uG,yvL,2wG,yJ,s9L,mtF,gzC,kT,y8C,ghH,4J,wT,ykB,6J,oL,q/G,upB,snJ,yU,8mB,2sC,i7H,gL,wD,wD,yJ,W,W,W,W,c,W,e,U,W,W,W,U,W,W,W,W,W,U,U,W,W,W,W,W,W,W,U,W,W,W,W,U,U,8D,W,W,W,W,W,ysB,sH,gH,8D,o8C,6K,uF,+E,sF,uF,+E,mW,yI,wG,gH,0D,+E,wD,+E,8D,uF,uF,qI,wG,+jI,yG,yI,2L,+N,8D,+H,4K,8D,8D,6xB,+N,6N,8D,4Z,s1B,mW,iZ,8b,6X,wD,gH,4P,4I,uF,+qB,uF,uF,4G,8D,mW,8O,mF,6O,6H,uF,uF,+b,2uB,sG,oJ,gH,oN,0D,8D,uF,8D,gP,+E,uF,gH,4G,2F,gH,8D,gH,uF,uM,gH,kK,0G,uF,6H,gH,wD,wD,wD,gH,8D,8D,8D,uF,8D,8D,mW,uF,uF,kK,8D,8D,0D,uF,gH,mF,+E,+E,mF,uF,8D,uF,sH,iV,uF,+E,0D,sG,+E,sG,+E,oJ,mF,uF,iZ,mH,4U,wD,+E,kM,4G,uF,uF,0D,uF,mF,c,a,8B,e,iB,gB,iB,c,kB,c,gB,kB,iB,e,gB,iB,c,4B,e,2B,e,a,iB,e,e,kB,gB,iB,gB,mB,iB,6B,gB,iB,iB,mB,e,gB,c,iB,iB,Y,e,gB,e,e,iB,yB,kB,8B,+B,iB,e,gB,iB,iB,mB,c,e,kB,Y,c,e,c,iB,iB,a,e,e,iB,kB,gB,mB,gB,qB,sB,yB,6B,a,a,kB,Y,gB,gB,kB,oB,a,Y,c,iB,sB,mB,0B,mB,oB,0B,mB,c,c,gB,qB,kB,oB,iB,mB,wB,e,c,kB,mB,gB,gB,gB,oB,gB,qB,kB,qB,e,gB,iB,e,iB,iB,c,c,e,e,e,a,gB,iB,gB,iB,Y,oB,W,+vI,owkB,mB,25B,sb,uzD,uD,wD,8E,sD,u6E,yO,w5E,8E,8E,uL;kpBCzWA,qJ,UAEE,S,C,KAGF,S,wD,+BAKC,a,CAED,qJ,8GAEE,a,C,KAGF,Y,sDAIA,qJ,iBAEE,S,CAED,mG,QAEC,S,C,QAGA,S,C,K,wBAID,S,CAED,S,oECKiC,8B,8G,eAOhC,c,CAED,8C,6GAK4B,8B,uGAIA,uB,+GAM5B,a,mBAGC,6D,kBAGA,Q,CAED,sC,qHAM0B,c,qHAM1B,U,4BAGC,c,C,yCAGI,S,0BAEH,mC,uHAMA,yCACA,uB,MAGA,qCACA,qC,CAED,QACA,Q,CAED,6CACA,kB,iH,QAUC,yD,CAED,YACA,2B,0IAOA,aACA,oB,mE,kJAQA,aACA,mB,oE,ybAeA,a,yBAGC,c,CAED,OACI,mC,UAEF,Q,qBAIC,uC,CAED,qCACA,8CACA,Q,CAED,sJACA,8CACA,gE,+BAEC,c,C,sC,kC,C,qB,0C,+aAaF,qC,+CAEE,yB,C,QAGF,wB,2aAQA,aACA,qD,OACC,UACA,+H,QAEC,iE,CAED,mBACA,kB,sC,kC,C,e,gD,C,OAWD,cACA,kB,iUAQA,aACA,YACA,6GACA,iB,4J,UASC,0B,oC,CAGD,aACA,YACA,8CACA,kC,oC,iJASA,a,yBAGC,c,kBAEC,Y,C,gC,CAIF,uCACA,mB,QAEC,c,CAED,Y,mHAQA,aACA,U,QAEC,I,CAED,sCACA,mB,QAEC,c,CAED,S,sHAMA,a,yBAGC,cACA,gB,CAED,qHACA,mBACA,cACA,oB,4KASA,a,yBAGC,c,0C,CAGD,qH,UAEC,mBACA,a,mD,CAGD,qDACA,mBACA,kB,8C,wH,kBAWC,8E,C,2BAGA,iC,CAED,aACA,iB,4H,mBAQC,4E,CAED,a,YAEC,mB,CAED,iB,2JAUA,+BAGA,oBACA,Y,+JAKA,8BACA,oB,QAEC,gBACA,Q,CAED,2BACA,QACA,c,4B,4JAWA,+B,4C,+FAWoC,kC,iDC1DpC,2D,4DCtVA,Y,UAEC,S,C,gBAGA,S,CAED,4F,UAEC,c,CAED,IACA,yCACA,sC,8GAEE,sB,QAEC,M,CAED,W,C,iCAGA,S,CAED,W,CAED,S,qrE,4F,4F,4F,4F;mtBC5BA,+D,gDAIA,kC,gDAQA,I,mBAIC,mC,4BAEA,S,gC,UAGC,S,CAED,S,CAGD,YACC,S,WAEC,M,CAED,WACA,gC,CAED,S,0E,8FCpBC,S,CAED,8H,wGAO+B,gC,6I,8F,gC,CAM/B,cACA,iDACA,wEACA,Y,mJ,yC,0E,C,wF,gC,CAWA,+C,gBAEC,Q,CAED,Y,kIAIA,c,8FAEC,gB,CAED,kCACA,wEACA,oB,8HAIA,c,kDAEC,kE,CAED,wEACA,iB,kL,8FAKC,c,0C,CAGD,0DACG,kC,UACF,wE,mD,CAGD,sEACA,wEACA,c,wH,iBAKC,+E,CAED,6BACA,cACA,iB,qIAKA,cACI,kB,I,YAGH,I,kBAEA,oD,kBAEA,yE,MAEA,qE,C,yCAGA,wE,CAED,MACA,oB,qaAKA,c,8F,wD,CAIA,kCACA,kH,eAEC,yE,CAED,wEACA,kB,sDAEC,kB,CAED,kB,gUAIkC,0C,qFAIA,uC,+DCnIlC,yB,aAEC,I,CAED,mBACI,yCACH,wCACA,mHACA,kB,cAEC,gH,CALmB,W,C,QASpB,8G,CAED,S,gCA6DA,iB,iDAKA,kB,oDAKA,kB,+D,gBA+CC,yB,sBAEA,2E,cAEE,S,C,SAGF,S,0BAEA,S,MAEA,2B,C,4E,e,eASI,iC,MACE,yC,wCAEF,S,CAFsB,W,CAKxB,S,C,CAGF,2EACC,uE,UAEE,S,C,S,S,CAKJ,S,mE,UA6CC,c,C,WAGA,e,C,QAGA,c,CAED,kBACA,IACA,mBACA,IACI,oE,iFAEF,0HACA,WACA,gBACA,yB,CAL4C,W,CAQ9C,iHACA,+B,gCA2BoC,oB,8CAwFpC,wD,gOAoLA,yG,uXAaA,IACA,wCACC,IACA,uB,WAEC,sD,CAED,yH,OACC,e,OAED,W,qBAED,e,+MA4BI,yCACH,kB,W,oD,C,iBAIA,mNAL2B,W,C,mD,iEAY5B,qL,25C,4F,4F,4F,4F;2X,4F,4F,4F,4F,4F,4F,oD;ue,4F,4F,4F,4F,4F,4F,4F,4F,oDCjeC,qBACA,0H;+OC/HD,YACA,S,kBAEC,wCACA,gBACA,I,CAED,0C,2D,cCNC,0B,qCAEA,4D,CAED,YACI,+IACH,4YACA,WACA,W,CAED,S,iM,4F,4F,4F,4F;8qB;8+ECqLA,+GACA,e,+bAsBA,+GACA,e,0dAUA,yH,kD,wdAeA,yH,kD,kaAUA,8H,gbAmBA,2I,meAcA,2GAEA,0GACA,4BACA,oHAEA,e,mgBAWA,YACA,yGAEA,iCACA,mBACA,iBAEA,0GACA,oHAEA,e,+jBASA,yGACA,iB,QAEC,0D,CAED,mBACA,iBACA,4BAEA,4G,OACC,0G,qBAEA,mBACA,0GACA,gB,OAGD,+G,iCAEC,+D,CAGD,0B,+dAaA,6H,gcCrNA,6BACI,6CAIA,uS,sCACF,e,CALyB,W,qBAQ3B,uB,09BAMA,+GACG,sCAAH,mC,OACC,6GAEA,e,OAEG,Y,2BAKJ,oN,OACC,6D,QAEC,2BACA,8FACA,kE,QACC,mJ,QAGD,yN,QAID,6D,QACC,oU,QAED,wO,OAHA,6D,QACC,gV,QAED,oP,OAGA,gCACI,0CACA,4O,sCACF,e,CAFiB,a,uB,e,O,8BAQlB,oF,CAID,2BACI,0CACA,4O,sCACF,e,CAFiB,a,uB,e,QADnB,2BACI,0CACA,4O,sCACF,e,CAFiB,a,uB,e,QAOf,OACJ,sPACA,sE,QACC,iQ,QAED,6CACA,gB,QAGI,OACJ,sPACA,yCACA,gB,QAIA,2T,Q,OAED,e,o1BAkBA,gBACI,6CACA,6L,sCACF,e,CAFyB,W,qBAK3B,uB,+vBAMG,sCAAH,mC,OAEC,yGACA,e,OAID,8F,2BAIA,qM,O,e,OAEC,qU,OAGA,+BACI,uCACA,4T,sCACF,e,CAFiB,W,uB,e,OAOnB,0BACI,uCACA,yU,uCACF,gB,CAFiB,W,uB,e,QAOnB,4B,uCAEC,mD,CAED,6K,QAGA,K,6BAEC,K,CAED,6K,QAIA,gK,Q,OAED,uB,ipB,IAMA,sG,OACC,uG,OAEA,sG,O,OAED,uB,gWAKA,0I,0VAKA,2I,u9M,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,sH,sB,iK,iK;4R,4F;gHC1UA,iJ,QAEE,I,C,KAGF,S,gDAKA,iJ,QAEE,I,C,KAGF,S;irD,oC,iD,sC,yC,qB,yC,qB,yC,qB,yC,qB,yC,qB,yC,qB,6C,uB,yC,qB,6C,uB,iC,iB,iDCgBA,UACA,U,aAEC,I,CAED,Y,iDAKA,UACA,U,aAEC,I,CAED,Y,4DAMA,gBACA,aACA,gBACA,aACA,iBACA,oCACA,gBACA,aACA,2BACA,4CACA,iBACA,Y,oDAKA,wBACG,U,QACF,Y,CAED,Y,0CAKA,mCACC,YADkB,8B,C,WAIlB,6BACA,W,C,SAGA,6BACA,W,C,SAGA,6BACA,W,C,SAGA,W,CAED,S,4BAYA,yB,yG,S,8C,CAyBA,QACA,4BAEA,aACA,gBACA,wEACA,8BACA,eACA,kBACA,+FACA,2BAEA,sFACC,cACA,c,cAEC,M,C,CAIF,uDACA,gGACA,4BAEA,sFACC,cACA,c,cAEC,M,C,C,4I,8D,UAcD,kDACC,sT,KAED,S,CAGD,4KACC,mGACA,kBACA,mGAEA,0D,KAED,S,8D,UAMC,kDACC,sT,KAED,S,CAGD,4KACC,mGACA,kBACA,mGAEA,iE,KAED,S,4D,UAMC,IACA,kDACC,uN,KAED,S,CAGD,IACA,4KACC,UACA,mGACA,wB,KAED,S,4D,UAKC,IACA,kDACC,uN,KAED,S,CAGD,IACA,4KACC,UACA,mGACA,0B,KAED,S,iEAIG,Y,QACF,WACA,8GACA,2BACI,uCACH,IACA,8GACA,8JAHsB,W,CAKvB,uH,CAED,S,iEAIG,Y,QACF,WACA,4FACA,0BACI,yCACH,IACA,8GACA,8JAHoB,W,CAKrB,2I,CAED,S,sDAIA,IACA,kDACC,wN,KAED,S,wDAKA,kDACC,wNACA,wHACA,Y,KAED,S,kDAIA,IACI,gDACH,wNAD4B,W,CAG7B,S,qD,sBC/QC,S,C,UAGA,S,CAED,S,qHAKA,Q,yCAEC,OACA,+B,CAED,mDACA,QACA,S,8HAKA,yBACA,YACA,S,+FAKA,4C,sE,aAMC,uBACA,Y,CAED,S,8GASA,0E,kHASA,uEACA,YACA,S,sHAKA,SACA,YACA,S,8GAKA,SACA,8BACA,S,oHAKA,Q,kBAIC,6B,M,wBAKC,6B,MAEA,KACA,6B,C,CAGF,yBACA,S,wHAKA,Q,qBAIC,6B,M,wBAKC,6B,MAEA,KACA,6B,C,CAGF,yBACA,S,sHASA,6BACA,wCACA,S,qI,0DASC,mC,uFAEA,mC,CAID,Q,yCAEC,mHACA,sE,CAGD,8EACA,QACA,S,4X,sJAOC,4C,CAEG,0FACJ,8FACA,iCACA,6G,8eAOA,0HACA,wCACA,e,4bAOA,0HACA,6BACA,e,4dAgBA,oIACA,6EACA,kB,6eAOA,QACI,8BACJ,kG,a,MAGE,Y,MAEA,Y,C,CAGF,e,4cAOA,I,2BAEC,kC,CAEG,2BACJ,+F,U,UAGE,W,MAEA,W,C,CAGF,e,idAmBA,I,2BAEC,kC,CAED,+F,U,UAGE,YACA,W,MAEA,YACA,W,C,CAGF,kB,oR,kBAgBC,mB,UAEC,K,C,gBAGD,K,MAEA,I,CAED,S,2F,kBAcC,wB,CAED,0I,sBAEC,gN,CAED,S,0DAMA,2C,UAEC,+B,CAED,S,gHAMA,iB,8VAcA,iBACG,oG,sCACF,2B,CAGE,sB,kCACF,2B,CAED,qB,6SAMA,wBACA,YACA,S,yHAKA,0CACA,mC,gHAMA,sB,wUAUI,S,WAEH,Q,CAIG,S,kBAEH,Q,CAGD,4GACA,qJ,uBAGC,yBACA,Y,CAGD,e,2mB,6BASC,4B,kBAEC,4B,C,kBAGA,4B,CAED,e,CAED,wD,OACC,6G,OAGD,kCACA,kCAEA,2BACA,qDAEA,qDACA,2BAEA,2BACA,2BAEA,4BACA,6CACC,0HAEA,gCAEA,SACA,WACA,aACA,WACA,SAEA,SACA,WACA,aACA,WACA,S,qB,kBAIA,a,C,kBAIA,a,CAGD,aACA,e,4pBAOA,IACA,2BAIA,4G,OAEC,0FACA,S,c,OAEA,0FACA,S,qBAEA,SACA,S,O,O,sBAMA,e,CAKD,2BACG,2B,QACF,I,CAED,WACA,WAGA,2B,2HAGC,S,MAEA,S,CAGD,0CAEC,kC,UAEC,gBACA,8B,MAEA,kB,CAED,W,CAGD,wB,8gBAKA,Y,+BAEC,aACA,e,CAED,0HACA,e,idAMA,uC,OAEK,2BACJ,4F,OAEG,2BACJ,mG,UAKC,W,CAED,e,6kBAMA,0K,OACC,kM,OAOG,uIACJ,YACA,YACA,I,a,aAIE,K,CAED,e,CAGD,O,qBAEE,e,C,yBAGA,e,CAED,mG,yBAEC,e,CAKD,8B,yBAEC,kH,uBAEC,K,C,CAGF,iB,2PAIC,K,CAED,eACA,e,qB,4eAWD,SACA,YACA,WACA,4FACA,e,yuBAOI,8BACJ,eACA,8BACA,iBAGI,8BACJ,+BACA,iIACC,kB,qBAOG,sLACJ,kBACA,iBACA,wGACA,wGACA,2GACA,KACA,OAEK,KACJ,eACA,oDACC,uHACA,c,sB,WAIA,yB,CAGD,+KAEA,uHACA,uHACA,uHACA,M,qB,stB,yF,aAWA,oB,kBAEA,yC,kBAEA,c,C,OAED,oD,OACC,mH,OAID,uN,OACC,qH,OAGD,wH,6SAKA,yBACA,YACA,S,wH,UAOC,sBACA,aACA,kBACA,WACA,S,CAGD,yBACA,YACA,S,sH,U,oBASE,0H,CAED,S,C,QAGA,0C,C,UAGA,uBACA,6B,CAGD,0B,2H,QASC,0C,C,UAGA,sBACA,gCACA,kBACA,sBACA,S,CAED,oCACA,YACA,S,0I,kB,UAQE,uBACA,uBACA,kCACA,WACA,S,CAID,6BACA,YACA,S,C,UAKA,gB,CAID,uBACA,4BACA,YACA,S,iI,kB,UAQE,uBACA,uBACA,wBACA,YACA,S,CAID,gCACA,YACA,S,C,UAKA,uBACA,sCACA,WACA,S,CAID,uBACA,yBACA,YACA,S,qI,kB,UAQE,uBACA,uBACA,mCACA,WACA,S,CAID,4BACA,YACA,S,C,UAKA,gB,CAID,uBACA,0CACA,WACA,S,8H,kB,UAQE,uBACA,uBACA,qBACA,YACA,S,CAID,6BACA,YACA,S,C,UAKA,gB,CAID,uBACA,uCACA,WACA,S,kH,UAOC,0BACA,YACA,S,CAID,0BACA,WACA,S,6R,UAOC,sD,CAED,YACA,uGACA,e,0Z,eCh5BC,oB,CAED,gI,yb,eAOC,qC,CAED,wI,ibAIA,uG,mZAKA,4C,OACC,4BACA,iCACC,0FADgB,W,qB,O,4vBAqBd,I,IAEJ,2K,OACC,I,c,OAEA,I,c,OAEA,K,c,OAEA,K,qBAGA,2PACA,a,O,OAGD,8C,QACC,4HACA,a,QAID,KAEA,yQ,QACC,M,e,QAEA,M,e,QAEA,M,Q,QAID,MACA,qI,Q,K,eAGE,O,qBAEA,Q,oBAEA,Q,C,QAIF,wG,WAGC,mK,oBAEE,wI,C,M,CAMC,KACA,KACA,KAGJ,0H,O,kBAIE,oB,0IAEA,a,C,CAKF,iDACG,sHAAH,6C,QACQ,YACP,gQ,QAEC,M,e,QAGA,M,uBAGA,M,Q,Q,QAKF,iGACA,8FACA,+FACA,iGACA,mGACA,iG,uxBAgBA,qG,sCAEC,yB,CAID,gI,sCAEC,yB,CAED,yBAEA,4B,igBAII,IACD,4G,sC,sC,C,IAIH,sE,OACC,O,c,O,qBAIA,8F,O,OAED,kB,saAUA,6HACA,4E,OACC,sI,OAED,6B,4bAIA,qH,2dASA,gGACA,I,I,aAGC,I,oBAEA,I,oBAEA,K,kCAEA,K,mC,MAIA,6C,CAED,8IACA,e,kS,eC1OC,yB,CAED,iDACA,sBACA,I,UAEC,c,CAED,mGACA,iC,qT,kBAOC,oCACA,uB,CAED,4FACA,2D,OACC,gM,OAED,2BACA,qCACA,uB,wf,e,wE,C,4I,ofAcG,yHAAH,oC,OACC,kK,OAED,uB,ucASA,4G,+a,+BAOC,uB,CAED,+G,uQCxCA,kDACC,mG,K,0HAKD,YACA,iJACC,W,CAED,wB,uH,mBAKC,wB,CAKD,iC,4H,UAKC,wB,CAED,YACA,4FACA,S,kJAKG,e,uFACF,oB,CAID,IACI,mEACH,WADkB,4B,CAKnB,YACA,kDACC,2JACA,4B,KAGD,S,kIAIA,oBACA,gBACA,S,sIAIA,YACA,Y,QAIC,kB,kBAGA,wB,kBAGA,gB,CAID,iBACA,wM,QAEC,mK,CAED,mGAEA,gB,0IAIA,YACA,Y,QAIC,iC,kBAGA,wB,kBAGA,gB,CAID,YACA,wM,QAEC,iK,C,eAGA,iC,CAGD,gB,sIAIA,YACA,Y,wB,QAIE,K,cAEA,I,CAED,S,CAGD,SACA,qOACC,W,C,sMAKA,K,4MAEA,I,CAED,S,uIAIA,Y,qBAEC,oB,CAID,iBACA,iPAEA,gB,qIAMA,gDACA,qJ,eAEE,iR,C,K,6F,+DAoBD,sE,CAED,YACA,UACI,IACA,kCACH,mGACA,2HACA,yGACA,2HACA,6BACA,UACA,UACA,kH,aAEC,I,MAEA,I,CAZiB,W,C,eAgBlB,iL,CAED,S,6IAMG,wM,eACF,gL,C,4CAME,wM,eACF,gL,C,sEAcD,Y,8BAMC,UACA,O,CA4BD,UACA,4CACA,4CAYA,UACA,uBAGA,IACA,iD,kMAEC,KACA,qL,CAID,iD,kMAEC,KACA,qL,CAKD,6BACA,aAIA,6BACA,2CAUA,wBACA,qC,QAEC,wB,MAEA,wB,C,oCAMD,6M,kDAOG,Y,QACC,kO,eACF,S,gBAEC,+J,C,C,C,gC,QAQF,S,CAED,S,gCAQA,IACA,+BACC,uBACA,Y,CAED,6B,6EAIA,YACA,Y,QAIC,kB,2BAEA,wB,kBAEA,iH,C,qBAMA,S,C,SAKA,iBACA,UACA,gB,CAUD,QAIA,mBACA,mBACA,gCACA,UACA,0BACA,kC,oBAgBK,SAGJ,WACA,iBACA,aACA,UAGA,WACI,0CACH,iB,gBAEC,mB,CAED,WACA,aACA,UACA,aACA,eATuB,W,C,CAazB,gB,uI,8BASC,qC,gEAEA,qC,+CAEA,sB,mFAEA,sD,CAED,8EACA,sF,4JAKA,Y,YAGC,wC,kBAEA,WACA,Y,kBAEA,mBACA,Y,CAGD,YACA,6HACA,WACA,Y,+X,kBAKC,wC,C,eAIA,mBACA,WACA,kB,C,kBAII,IACJ,oHACA,eACA,kB,CAGD,iHACA,kB,ucAMI,SACD,0F,sCACF,oB,C,eAGA,6B,CAED,kBACA,e,2IAIA,U,+tBAYA,YACA,iB,qBAMC,S,CAED,iBAEA,4FACA,W,qBAEC,S,CAED,yBACA,UAGI,SACJ,kHACA,qC,OAEC,6FACA,YACA,6HACA,K,OAED,8QAGA,mHACI,qCAEH,cACG,oH,iBACE,KACJ,sJAGA,mHACA,8BAEA,2HACA,0CACC,cACA,MACA,e,UAGC,M,CAED,8B,C,CAKF,uPAEA,wP,gBAEC,gP,WACA,mNACA,c,CAGD,uGAlCmB,a,C,kBAqCnB,M,CAED,MAEA,WACA,yHACA,W,sC,knBAOG,iB,SACF,2H,CAED,S,yG,K,aAiCC,wJ,mBAEA,mG,MAEA,yC,C,+D,kBAQA,S,CAEG,IACJ,+HACC,Y,CAGD,0H,4JAKA,Y,UAEC,wB,CAID,mGACA,iBACA,kTACA,gCAEA,gB,wIAKA,YACA,mG,SAEC,wB,CAID,YACA,+MAEA,gB,mJAIA,8FACA,wFACA,Y,I,YAGC,YACA,gB,SAGC,S,CAED,+MACA,gB,kB,SAGC,iBACA,uB,MAEA,Y,CAED,gBACA,8MAEA,S,CAED,6C,4IAKA,yF,uBAEC,S,CAGD,8M,gIA0BA,YACA,Y,QAEC,I,CAID,YACI,kCACH,2SADkB,W,CAInB,gB,uIAIA,YACA,Y,QAEC,I,CAID,YACI,kCACH,4SADkB,W,CAGnB,8CAEA,gB,+IAIA,YACA,YACA,I,QAEC,gBACA,I,CAID,YACI,kCACH,2SADkB,W,CAGnB,8CAEA,gB,wIAIA,YACA,YACA,I,QAEC,gBACA,I,CAID,YACI,kCACH,2SADkB,W,CAGnB,8CAEA,gB,+GAKA,yB,4DAMI,SACJ,oB,sI,gc,YAQC,S,CAED,oBAEA,sE,UAEC,K,CAED,sCAEA,O,KAEC,sE,OACC,qDACC,mM,yB,c,OAGD,2DACC,sN,4B,qBAGD,yC,O,O,kBAED,oN,eAEC,c,C,qBAIF,sB,i+B,qBAQC,S,C,qHAKA,0B,C,kBAMA,0B,CAKD,sK,OACC,qGACA,e,O,uBAMA,oB,CAED,WAOA,uE,OACC,yI,OACC,qH,OAED,mH,OAGD,sHACA,cACA,4BACI,SAQJ,eAGI,gCACA,yCACH,eACA,sB,kCAGC,eACA,sB,CAGD,sD,QACC,2HACA,4C,QAGD,+BAdkB,a,uBAiBf,uDACH,sGAEI,0CACH,eACA,sB,kCAGC,eACA,sB,CAGD,sD,QACC,2HACA,4C,QAGD,+BAdmB,a,uBAHQ,a,uBAqB7B,sB,m5CAOI,0BAIA,YACJ,QACA,OACI,sCACH,qKACA,qCACA,6HACA,mCACA,6BACA,6HACA,mCAPqB,W,qBAUtB,eAEI,qDACH,uGACI,wCACH,0E,OAIC,aACA,oBACA,uHACA,oBAEA,aACA,oBACA,uHACA,oBAEA,aACA,oBACA,uHACA,oBAEA,aACA,oBACA,uHACA,oB,QAGD,8GACA,oBACA,uHACA,oBAEA,iCA/BmB,a,qBAFQ,a,qBAqC7B,sB,ktCAMA,YAIA,6C,OACC,+G,O,gBAIA,mBACA,gBACA,I,CAMD,kGACA,kGACI,mCACH,mBACA,6BAFmB,2B,CAIpB,SAGA,oBACA,+CACA,6G,gBAEC,YACA,gBACA,I,CAGD,oBACA,+FAII,aACJ,mCACA,kCACI,qCACH,iSADqB,a,CAKtB,YACA,oBAEA,YAGI,kDACH,uGACI,qC,4CAEF,0BACA,0BACA,0BACA,0B,CAED,6HACA,oBACA,iCATmB,a,CAFQ,a,CAe7B,2BAIA,6C,OAQC,aACA,6C,OACC,uH,O,OAIF,sB,8fAQA,YACA,iJACK,kCACH,WACA,8GACA,6BAHmB,W,C,KAOrB,8IACC,W,CAGD,S,6IAMA,uHAEA,IACA,IACI,IACA,0CACH,sJACG,Y,WACF,mGACA,WACA,IACA,I,CANwB,W,C,gBAUzB,mG,CAGD,gB,gY,iBAMC,sB,C,YAGA,S,CAQG,0BACJ,IACA,gCACA,sHACI,WACH,0GACA,aACA,a,gB,cAKE,e,CAED,sB,CAED,gBAZa,W,qB,+TC/rCd,gBACI,gIAEH,mBACA,W,CAGD,Y,sCAQA,IACA,8B,mBAEE,mB,CAED,mBACA,uB,CAED,S,0kBAoCA,6DAGA,oC,OACC,8J,OAID,4G,sCAEC,sB,CAID,IACA,uC,OAEC,KACA,wC,OACC,IACO,oH,KACP,qH,Q,OAGE,I,C,K,8BAIA,K,mCAEA,I,C,KAGD,wF,QACC,IACG,uH,sCAEF,sB,C,e,QAGD,I,Q,Q,e,QAID,mBACA,YACA,sB,QAGA,sB,Q,O,O,OASH,mBACA,WACA,4BACA,KACA,KACA,MACA,QACC,+C,QACC,QACA,KAEG,uH,sC,+BAED,YACA,e,CAED,sB,C,QAKE,K,iBAGH,yB,wBAEA,uC,uBAEA,uC,MAEA,M,CAED,0C,QACC,sGACA,e,QAED,WAGA,6BACA,a,YAIC,sBACA,KACA,K,CAIE,uH,sC,+BAED,YACA,e,CAED,sB,C,uB,U,qBAUA,IACA,K,iCAGA,wC,CAED,sB,C,SAMA,6B,CAED,W,UAKC,U,CAGD,sB,8pBAMA,4G,mmB,cAMC,oC,C,kBAKA,yC,CAKD,iC,MAEC,W,CAED,mBAGG,UAAH,wD,OAEC,QACA,oCACA,4FACA,KAGI,0CAEH,+BACC,WACA,gKACA,6BACA,Y,C,UAMA,mGACA,K,MAGA,qIACA,WACA,gKAGA,uIACA,qB,CAtBsB,W,CA2BxB,qCACC,WACA,gKACA,gC,C,qBAID,2BAIA,8GAGA,iBAGA,gHAKA,IACA,gIACC,W,C,O,MAKD,WACA,oG,CAGD,4B,kyBAqBA,+C,OAEK,SACJ,iBACA,0CAEC,aACA,UACA,mJACC,W,C,8NAGA,W,QAEC,8C,C,CAKF,+MAGA,wHACA,wIACA,mB,qB,OAKF,aACI,K,WAGH,sCAEC,gCACI,0CACH,aAIA,iGACA,yJACA,MAPiC,a,C,C,MAWnC,sCAEC,gCACI,0CACH,aACA,yNACA,kGAHiC,a,C,C,CASpC,+BACC,aACA,uG,C,soBAuBD,gJ,2gB,oBAOC,oB,CAID,IACI,iDACH,WADkE,2B,CAK/D,S,WAEH,gBACA,kC,MAEA,mB,CAID,yJ,OAEK,SACA,qCACH,8I,OACC,uC,OACC,wMACA,8G,qBAEA,iVACA,0O,OAID,mHACA,yJACC,iNACA,yN,CAGD,qN,OAjBiB,W,qB,O,WAuBnB,kB,CAGD,e,wuB,QCtcC,oD,C,+BAGA,mB,CAQD,sG,8BAEC,yI,C,oBAIA,mB,CAMG,gB,K,aAGH,+BACA,+B,mBAEA,wBACA,8EACA,8E,MAEA,mD,C,ukCAKA,mB,CAGD,4S,y3BASA,mBAEA,uBACA,kBAEA,mBACA,6JAEI,wCACJ,cAGI,uCACH,oD,OACC,Y,qBAEA,wGACA,c,OAED,sGACA,iE,OARqB,a,c,OAWjB,yCACH,aACA,yH,iBAboB,a,gB,C,kBAkBnB,mB,CAPuB,c,uBAUzB,mB,qBAGD,kB,2+B,qCA8BC,mB,C,4GAKA,2B,CAUD,IACA,cACA,SACA,sBACA,sBACA,OACC,yC,OAGC,uK,OAED,mHACA,yF,WAEC,c,C,UAQA,qI,CAED,wC,OAIC,2FACA,a,iBAEC,mB,C,OA1BK,Y,qBA2CR,mBACA,4BACA,mBACA,mBA8BA,oBACA,qBACA,qBACA,UACI,mDACH,4D,QAGC,eACA,aACA,aACA,2HAEA,eACA,aACA,2H,uBAIA,eACA,aACA,aACA,2HAEA,eACA,aACA,2H,QAtBgC,a,uBA2BlC,qE,QAQC,eACA,gB,iBAEC,wB,CAED,iBACA,MACA,UACA,YACA,4H,mBAEC,kB,C,QAKE,gD,mBAEF,kB,C,yHAKA,mB,CAID,eACA,cACA,2HAboB,a,uBAerB,mB,muR,4F,4F,4F,4F,4F,4F,4F,4F,4F,8L,e,wB,e,M,sH,sN;mYCnTA,wB,iGAMA,WACA,0BAGA,iB,kBAEC,mB,C,qB,qCAIC,Y,YAKC,Q,CAED,wC,oC,C,CAMC,kB,qBACC,gD,qBACF,sB,4C,C,C,iF,qS,2I,qZ,4F,4F,4F,kH,8E;yqBCzBF,gHACA,sGACA,Y,eAEC,6O,C,M,eAIC,uO,MAEA,kM,C,CAGF,e,8XAyCA,mBACA,iCACA,OACC,uL,2BAEC,e,C,qB,uWAOF,kBACA,sGACA,e,qWASI,QACJ,OACC,wFACA,iJ,eAEE,e,C,K,qBAIH,e,qcAOA,Y,uBAEC,+D,CAGD,kBACA,yG,sCAEC,U,C,gBAGA,8D,CAGG,kCACH,gTADkB,W,C,uiB,4F,4F,4F,4F;urBC9DnB,qD,yMAKA,YACA,+CACA,Q,0KAQI,YACJ,KACA,qCACC,WACA,wFACA,uHACA,WACA,I,CAGD,oGACA,qD,0XAIA,wC,yBAEC,sC,CAED,qD,OACC,qD,OACC,8HACA,SACA,6BACA,cACA,6BACA,SACA,6B,OAED,qD,OACC,+HACA,SACA,6BACA,SACA,6BACA,S,wBAEC,6BACA,2H,CAED,6B,O,O,yB,yBAKA,IACI,8C,yBAEF,yBACA,M,CAH6B,W,CAM/B,I,CAED,iCACA,6BACA,UACA,oC,C,sxBAWD,yBACI,KACA,IACJ,YACA,+C,yBAGC,cACI,QACJ,mC,OAEC,QACA,I,CAED,Y,CAED,2BACA,oOACA,4B,4DAEC,wB,CAED,2GACA,e,6nBAMA,6L,sdAK0C,0L,0cAIE,4L,8cAI5C,0LACA,U,odAKA,6LACA,U,wdAKA,4LACA,U,8cAKA,6FACA,6FACA,uB,odAKA,gGACA,6FACA,uB,wdAKA,+FACA,6FACA,uB,6YAKA,YACA,+CACA,c,2TAKA,YACA,+CACA,S,qTAKA,YACA,+CACA,gB,8TAKA,YACA,+CACA,W,8VA6EA,gGACA,6FACA,uB,mwD,4F,4F,4F,4F,4F,4F;g4DCjTA,iEACA,WACA,0HACA,SACA,e,mWAIA,+HACA,kC,scAMA,iIACA,gIAGA,iCACA,2HACA,e,8aAIA,iI,6OAIA,c,iTAIA,sD,OAEC,e,CAED,0G,2aCxBA,wJ,ycAgCA,yCACA,cACA,kGACA,qGACA,aACA,gDACA,WACA,oGAGA,4C,OACC,+L,OAED,6C,OACC,kH,OAID,oBAEA,oC,scAIA,QACA,oJACC,8D,O,SAEC,mB,qB,IAEA,gI,O,yBAGF,e,wTAKA,sIACA,0F,kUAMA,SACA,QACA,QAGA,uC,OACC,yHACA,I,OAID,uGACA,WACA,8BACC,mGADiB,W,C,SAGlB,qNAGA,yHACA,Q,ukBAIA,WACA,SACA,QACA,QACA,iDACA,iCACC,uC,OACC,kHACA,I,OAED,4BAGA,+BACA,+BACI,kCACH,2TADqB,W,CAGtB,mDACA,iBACA,iBAGA,+BACA,4CACI,kCACH,8GADqB,W,CAGtB,iBAEA,WACA,W,qBAGD,Q,uiBAKA,mGACA,iG,kcA+DA,iBACA,4GACA,0CACA,2BACA,kB,+YAIA,sG,0YAIA,sH,iZAIA,gH,qZAIA,4G,yrF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F;8S;6Y,4F,4F,4F;uc,4F,4F,4F,4F;mkFChLA,UACA,qF,kEAIA,+BACA,UACA,S,yDAGuC,2B,4DAEF,8B,gEAEE,Y,iCAavC,UACA,8F,kEAIA,mCACA,iDACA,S,yDAGsC,+B,4DAEF,6B,mCAMpC,UACA,wI,kEAIA,mCACA,8BACA,S,2DAGwC,8C,8DAEF,+D,iCAMtC,UACA,gG,kEAIA,oCACA,qBACA,S,yDAGuC,iC,4DAEF,gD,mCAMrC,UACA,yI,kEAIA,oCACA,8BACA,S,2DAGyC,+C,8DAEF,iE,iCAMvC,UACA,qF,4DAIA,UACA,iB,yDAGyC,6B,4DAEF,gB,iCAMvC,UACA,qF,kEAIA,mCACA,UACA,S,yDAG0C,8B,4DAEF,yC,mCAMxC,UACA,4I,kEAIA,mCACA,8BACA,S,2DAG2C,kD,gEAEF,qJ,+SA+DzC,4CACA,IACA,kE,kB,a,OACC,wGACA,W,KAED,2FACA,2BACA,qJACC,mJ,KAED,e,yO,0CAKC,gB,CAED,gB,kHAMA,W,wUAMA,8OACC,uF,yB,oeAaD,8OACC,uF,yB,qRAYD,+D,4WAWA,wFACA,oC,OACC,kJ,OAED,gG,sCAEC,e,C,qBAGA,Y,CAED,kGACA,uB,mgBAcA,oBACI,8BACJ,8H,OACC,gL,qBAEA,2F,OAED,6P,OACC,kB,O,I,kBAKA,kB,mBAEA,kB,oBAEA,kB,CAED,mB,oNAUA,UACI,yC,yBAEE,8C,yBAEF,2BACA,6C,4B,CAH8B,W,CAOhC,M,CAT0B,W,CAa5B,UACA,U,6BAEC,K,oCAEA,a,oCAEA,U,+DAEA,Q,oCAEA,W,+DAEA,S,CAED,Y,0PAOA,gUACC,kIACA,sB,eAEC,Y,C,gBAKA,W,MAIA,iB,CAED,QACA,kI,OACI,sCAAH,mC,OAEC,kJ,qBAEA,kJ,O,OAGF,iJ,4Q,4XAwBD,mH,mWAKA,6C,OACC,wH,qBAEA,iJ,OAED,oG,6QAkB+B,8B,kH,2BAU9B,S,CAED,kH,4GAW8B,sB,4GAMK,c,wTAQnC,oG,geAYA,4BACA,qGACA,e,maAMA,yH,4XAMA,oG,4dAYA,wBACA,oGACA,e,gaAMA,wH,6XAMA,oG,oeAYA,sCACA,sGACA,e,8cAYA,oG,geAYA,wBACA,qGACA,e,maAMA,yH,+XAMA,oG,weAYA,uCACA,uGACA,e,mdAYA,oG,weAYA,yBACA,uGACA,e,yaAMA,2H,kYAMA,oG,4eAYA,wBACA,wGACA,e,wdAaA,oG,gfAcA,0CACA,yGACA,e,+aAOA,6H,4cAWA,8GACA,iFACA,mC,OACK,KACJ,6C,OACC,0I,qBAEA,iK,OAED,4HACA,uB,O,qBAGA,Y,CAED,kG,uhBAgBA,+FACA,+GACA,4FACA,e,oaAMA,iE,OACC,mG,qBAEA,4F,O,+sB,uBAOA,8B,CAED,uG,8DAEC,8B,CAED,I,yBAEC,W,iBAEC,2BACA,8B,C,CAGF,kBACA,gG,OACC,2J,OAID,2BACA,QACA,KACI,yC,yBAEF,yBACA,OACA,oBACA,M,CALyB,W,CAQ3B,WACA,iFACA,oC,OACC,qD,OACC,4FACA,iC,OAED,0K,OAGE,4CAAH,kL,QACC,qC,QACI,4FAAH,qE,QACC,+L,Q,uBAGE,iGAAH,qE,QACC,6K,Q,Q,uB,yBAOD,OACA,kJ,CAED,sC,QACC,2K,QAEE,yGAAH,sE,QACC,mM,Q,Q,qBAID,Y,CAED,qGACA,6B,orBAQA,cACA,SACA,OACC,4G,MAEC,c,C,mCAGA,c,C,kB,YAIA,e,kBAEA,U,kBAEA,U,C,qBAGF,uB,0QAKA,gB,oFAyBA,0B,gLAIA,+F,kIAMA,2EAIA,qCACA,S,+EAOA,SACA,kB,q+L,4F,4F,4F,4F,4F,4F,4F,4F,2C,4H,4MA1cA,gPACA,uF,iH;ueCnfA,sF,2UAQA,6F,kVAKA,iG,uTC3BA,sH,0RAIA,oH,OACC,a,OAED,wH,0J,qBAKC,S,CAED,kC,eAEC,oG,MAEC,uB,C,C,eAID,oG,MAEC,uB,C,CAGF,sBACA,yB,4OAIA,oH,OACC,a,O,qBAGA,a,CAED,yH,2T,4F,4F;itHC5BA,0H,oBAEC,kB,CAED,kB,8IAIA,qCACC,0H,oBAEC,cACA,Q,MAEA,cACA,Q,C,C,yJ,UAOD,S,C,UAGA,S,CAGD,IACA,YACC,mB,UAEC,M,CAED,I,CAGD,0H,oBAEC,c,MAEA,c,CAED,S,kHAgBI,oBACJ,SACA,yBACA,oCACA,mBACA,sB,mEAIA,2BACA,aACA,U,4J,O,YASC,gB,kBAEA,e,kB,uBAGC,e,CAEG,iBACJ,uDACC,yD,UAEC,Y,MAEA,yC,C,KAGF,S,kBAEA,8B,kBAEA,mB,kBAEA,mB,kBAEA,kB,kBAEA,kB,kBAEA,kB,mBAEA,kB,mBAEA,mB,mBAEA,mB,mBAEA,uCACA,2HACA,2CACA,mE,mBAEA,oK,mBAEA,oK,mBAEA,qK,mB,sBAGC,e,CAEG,iBACJ,yJ,UAEE,uB,MAEA,oD,C,KAGF,S,mBAEI,iBACJ,qJACC,oD,KAED,S,CAED,yD,uHAKA,sCACA,oDACA,S,6GAIA,sBACA,yBACA,S,wGAIA,sB,kHAIA,sBACA,yBACA,0H,6BAGC,uB,CAED,S,gH,yBAMC,sB,CAKD,4BACA,4B,4H,YAMC,S,C,YAGA,S,CAGD,sBACA,sHACA,UACA,UACA,qCACA,S,8HAIA,sBACA,sH,MAEC,UACA,yB,MAEA,UACA,mC,CAED,qCACA,S,iIAIA,sBACA,sH,MAEC,UACA,yB,MAEA,UACA,mC,CAED,4BACA,S,uHAIA,gD,0HAIA,sBACA,gIACA,yBACA,S,6HAIA,sBACA,sHACA,SACA,c,8NAGC,oB,CAED,cACA,yB,mPAKC,O,kOAEA,O,qaAEA,Q,CAGD,S,iHC1QA,uE,+GA2BA,S,2IAwCA,S,kBAEC,iBACA,sE,MAEA,6D,CAED,OACA,S,0HAIA,iBACA,S,qJ,oP,8IAUE,c,CAED,OACA,6BACA,8B,qjD,wIAWC,c,CAID,OACA,6BACA,wB,MAGA,oB,CAGD,2BACA,S,0IAaA,kB,QAEC,a,CAGD,wHACA,wH,6EAEC,a,CAID,mC,SAIC,sCACA,uGACA,UACA,Y,CAGD,sCACA,WACA,a,6IAKA,iBACA,U,yBAEC,O,CAED,aACA,sCACA,S,uG,mBAMC,S,CAED,IACA,IACI,uD,QAEF,I,CAFsC,mBAKxC,S,0DAMA,gC,qHAMA,iBACA,gBACA,iB,mJAQA,U,gC,uCAGE,kBACA,oB,C,cAMA,kG,C,CAGF,kB,UAEC,uG,CAED,wH,cAEC,uG,CAGD,iBACA,QACA,QACA,UACA,oCACA,sGACA,wH,uCAGC,oF,CAGD,oB,yH,cAcC,Q,UAEC,Y,C,QAGA,Q,C,QAGA,a,C,QAGA,yF,C,CAGF,qJ,YAEE,a,C,KAGF,Y,0QAKA,oBAGA,kBACA,4JACC,W,CAED,uBACA,+B,kBAIC,oC,CAGD,oM,weAOA,kBACA,4JACC,W,CAED,uBACA,+BAIA,6C,OACC,yM,O,kBAMA,oC,CAGD,oM,me,OAMA,yC,OACC,2M,uPAEC,cACA,OACA,a,C,gdAGA,cACA,OACA,a,C,6CAKA,2D,C,O,O,wc,kBAWD,sG,CAED,iBACA,oCACA,iJ,aAEE,gCACA,W,MAEA,uB,C,KAGF,wC,OACC,6G,sBAEC,IACA,sGACA,W,C,OAGF,e,+yB,gBAgBC,e,CAIG,SACA,IACJ,IACA,mBACI,8CAOC,SACA,IACJ,6C,OACC,kI,UAEC,IACA,0PACC,W,C,QAKA,mBAnBuB,W,c,C,C,OA8B1B,uE,O,c,OAIC,8G,qBAGA,iBACA,UACA,6CAEI,kCACH,mOADsB,W,CAGvB,iHAEA,kBACA,wCACA,e,OAID,IACA,IACA,IAtD0B,W,qBAwD3B,IAUA,IACA,mBACI,SACA,gDAMC,SACJ,+C,QACC,oH,8KARyB,W,e,C,QAoB1B,0E,Q,e,QAIC,8G,uBAGA,IACI,kCACH,aACA,2NAFsB,W,CAIvB,mHAEA,mBACA,0CACA,gB,QAID,IACA,IAzC0B,W,uBA2C3B,IAGA,IACA,mBACI,kDAOH,wJ,QAP0B,a,e,QAa1B,4E,Q,e,QAGC,8G,uBAIA,KACI,0C,woBAEF,M,CAFyB,a,CAK3B,sZAEI,0CACH,wMACA,6GAF0B,a,CAI3B,wLACA,8G,Q,iBAKA,iH,CAED,UAxC0B,a,uBA0C3B,IAGA,IACA,mBACA,wD,iQAEE,c,CAED,iH,MAED,IAEA,e,kgB,iCAOC,sG,C,kBAGA,iB,CAED,+B,gK,iCASC,sGACA,6BACA,sG,aAEC,W,gB,yBAIC,OACA,a,kBAEA,IACA,sGACA,W,MAEA,qCACA,8C,C,CAGF,S,C,aAIA,kE,uBAEC,O,C,CAGF,S,8J,aAOC,c,C,iCAGA,sG,aAEC,c,CAED,S,CAED,S,4J,iC,MASE,6G,CAED,8D,gB,YAGC,OACA,a,kBAEA,IACA,sGACA,W,CAED,S,C,MAGA,W,CAED,sB,mIAIA,6DACA,UACA,sCACA,uE,qCAGE,iCACA,M,CAED,yB,SAED,S,otB,yBAWI,Q,sCACF,uB,CAED,+B,CAKA,yCACA,YACA,IACA,IACA,KAED,UACA,gBACA,IACA,uCACC,K,kBASA,uU,O,qEAGK,oC,sCACF,uB,CAED,c,CAED,yBACA,uBACA,kB,e,OAEG,wG,sCACF,uB,CAED,kB,e,OAEG,uG,sCACF,uB,CAED,kB,e,O,gCAGC,Q,MAEA,Q,CAED,kB,e,O,gC,W,4B,MAKC,Q,CAED,kB,e,O,+BAGC,Q,MAEA,Q,CAED,kB,e,QAEG,iH,sCACF,uB,C,e,QAGD,I,kB,aAGC,K,mBAEA,K,mBAEA,K,CAED,kBACG,sC,sCACF,uB,CAED,IACA,I,e,QAEA,KACA,IACA,gD,QAGC,eACA,kBACA,c,C,mCAIA,8F,CAEE,yC,sCACF,uB,CAED,IACA,I,e,Q,6C,mB,cAKE,QACA,kBACA,gB,oBAEA,SACA,kBACA,gB,oBAEA,SACA,kBACA,gB,oBAGA,4E,oBAGI,MACD,oB,SACF,mBACA,K,MAEA,sBACA,0B,CAED,qCACC,qC,uCAEC,wB,CAED,cACA,M,CAED,gB,qBAEA,SACA,kBACA,gB,C,CAIF,kBACA,iBAGA,kG,QACC,4K,uCAEC,wB,C,mBAGA,WACA,KACA,WACA,gB,C,QAKC,sK,mBACF,WACA,KACA,WACA,gB,CAED,YAGG,4C,sCACF,uB,CAED,a,uBAhKG,iC,sCACF,uB,CAED,a,Q,OA+JD,I,qBAGD,kGACA,8I,QAEC,oD,QAED,qGAEA,mB,gBAEC,sD,CAED,kI,gmB,uCAQC,gB,CAED,kBACI,QACD,qC,OACF,gB,C,WAGA,gB,C,8BAGA,I,MAEA,kB,WAEC,gB,C,0BAGA,K,MACS,qC,OACT,gB,cAGA,K,C,C,C,uCAID,gB,CAED,kBACA,OACA,gB,uNAOA,I,+DAmBC,oB,QAEI,Q,sC,6B,C,gE,CAMJ,2BACA,oBACG,Q,sC,6B,C,U,gE,CAQH,yBACA,YACA,eACA,S,yD,CAKG,IACJ,kBACA,UACA,IACA,QAEA,yCACI,6B,sC,6B,C,K,eASF,cACA,O,qBAEA,qBACA,O,qBAEA,cACA,O,oBAEA,eACA,O,oB,QAKC,W,CAED,KAGA,cACA,Q,mC,Q,OAME,W,CAED,c,C,WAIA,U,CAED,U,wC,MAvCA,W,C,C,sH,+G,WAsDD,a,CAED,uE,wBAEE,a,C,SAGF,Y,sF,mDAMC,c,C,kFAIA,c,CAED,IACA,8EACC,kB,CAED,IACA,OAEA,yCACI,yC,iBAGF,KACA,M,CAED,gDANuB,W,CAQxB,c,2FAMA,2E,2C,O,YAUC,uI,kBAEI,+C,4OAEF,Y,CAF4B,W,CAK9B,a,kBAEA,kB,kBAEA,Y,CAED,a,gPAKA,0FAMA,qI,OACC,U,OAGD,uB,+PAOA,kB,O,Y,kB,YAME,O,C,kB,aAKA,+H,MAEA,yB,C,kB,uOAKA,M,CAED,OACA,8IACA,+H,C,C,8eAUD,kB,+XAEC,wHACA,wH,cAGC,gBACA,wH,CAED,OACA,WACA,sCACA,kB,CAGD,sC,OACC,wHACA,wHACA,4C,OACC,sC,OAGC,2M,OAED,gIACA,gIACA,kB,O,OAGF,mB,stBAKA,0FACA,oI,OAEC,oD,OAED,6FAEA,kB,QAEC,qD,CAED,wHACA,wHACA,sC,oBAEC,qD,CAGD,gB,cAGC,U,MAEA,QACA,oCACA,sGACA,U,CAED,uB,ihBAMA,kB,W,6F,CAIA,6B,sC,uC,CAMA,yB,I,uF,mDAcE,M,CAKD,UACI,kC,mDAEF,M,CAED,+CACA,kBALkB,W,C,8C,mBADnB,UACI,kC,mDAEF,M,CAED,+CACA,kBALkB,W,C,8C,oB,WAYlB,M,CAEE,6B,sC,uC,C,YAQF,KACA,IACA,Y,WAEE,a,CAEE,iC,sC,6C,C,YAIF,M,CAED,S,SAEC,a,CAED,sB,cAEC,a,CAED,a,C,WAGA,a,C,oD,CAMF,SACG,iC,sC,6C,CAGH,S,eAEC,M,C,uE,mB,4C,oB,6C,oB,6C,oB,6C,oB,4C,oB,6C,wB,oD,C,C,uH,gL,W,sE,C,yB,sD,C,2C,oZ,oEAoDD,kB,CAED,4F,eAEC,kB,C,0J,mrB,qEAUA,oB,CAGD,gC,QAEC,oB,CAED,WACA,4DACA,4E,e,6F,C,8J,ukBAQA,uD,O,aAEE,kB,MAEA,kB,C,qBAGD,4BACA,kBACA,aACA,sN,aAEC,U,MAEA,U,C,OAGF,e,iQ,cAaC,c,CAEE,+D,kBACF,yE,CAEE,4D,kBACF,uE,CAED,sB,yhB,4HAQC,oB,CAID,I,yBAEC,K,CAED,kBACA,6B,sCAEC,oB,CAEG,kB,iBAGH,yCACA,kB,MAGA,qB,QAEI,Q,sCACF,oB,C,6F,CAIF,4DACA,oBACG,Q,sCACF,oB,C,C,sCAMD,KACA,kB,CAGD,sB,e,6F,CAKA,qE,O,QAEE,U,MAEA,U,C,qBAMD,6BACA,YACA,YACA,cACA,6N,QAEC,W,MAEA,W,C,O,0D,0rCASF,kBACA,iBACA,gBACA,sCAEA,I,sCAEC,KACA,kB,0BAKC,6B,C,CAIF,SACA,OACA,kE,iHAIE,+C,qG,CAGD,QAGA,4F,OACC,6H,sC,mC,C,kBAKC,gBACA,c,C,OAKF,gI,uC,wC,CAIA,+C,OACC,oBACA,c,OAIE,sI,mBACF,sBACA,c,CAID,KACI,sBACD,mD,uC,wC,CAGH,M,mEAGC,kBACG,mD,uC,wC,C,UAIF,4C,mF,C,C,0BAKD,c,MAEA,c,C,qBAGF,kBAGA,SACA,8M,QAEC,Q,CAED,SACA,U,8C,u4BASA,sIAEA,W,gBAEC,e,CAID,IACI,0CACH,yN,0H,kHAIE,8G,CALqB,W,S,CAUvB,mGACA,8GACA,WAZuB,W,CAexB,8B,yN,yBAMC,iB,CAED,iB,wDASA,YACI,mC,SAEF,2O,6B,QAGE,8G,C,QAGA,qH,CAED,S,C,CAViB,W,CAepB,sB,wC,qBAgBC,iB,C,mBAIA,iB,C,SAIA,aACA,K,C,aAIA,iBACA,S,CAIG,mCACH,YACA,kBACA,qCACC,YACA,kB,CALoB,W,CAQtB,S,oCAMI,0CACH,qNADuB,W,CAGxB,S,oCAKI,0CACH,qNADuB,W,CAGxB,S,8CAMA,IACI,0CACH,yN,gBAEC,iB,CAED,SALuB,W,C,eAQvB,kB,CAED,S,wEAKA,uKACC,oD,UAEC,YACA,a,CAEG,mCACH,YADqB,W,C,KAIvB,uKACC,oD,UAEC,YACA,a,CAEG,mCACH,YADqB,W,C,KAIvB,S,0EAKA,IACA,uKACC,oD,U,gBAGE,iB,CAED,SACA,a,CAEG,mC,gBAEF,iB,CAED,SAJqB,W,C,KAOvB,uKACC,oD,U,gBAGE,iB,CAED,SACA,a,CAEG,mC,gBAEF,iB,CAED,SAJqB,W,C,K,eAQtB,kB,CAED,S,8CAMA,IACA,IACI,0CACH,yN,gBAEC,mGACA,qHACA,W,CAED,SAPuB,W,CASxB,mB,eAIC,uB,CAED,S,kEAYA,aACA,eACA,eACA,wmB,mHAIA,4G,mIAIA,aACA,eACA,eACA,o0B,+FAIA,oCACC,wC,yBAEC,oC,CAED,kB,CAED,iB,uEAIA,wC,yB,kE,C,4D,4BAQA,iD,4B,iBAKC,e,C,kBAGA,sB,C,iBAGA,sB,CAED,S,wD,8BCn0DC,S,CAED,0G,mHAsBI,KACA,I,UAGH,I,mBAEA,c,cAEA,c,C,UAIA,mB,mBAEA,c,cAEA,e,C,eAGA,oB,CAED,S,mDAOA,2D,4EAYI,yCACJ,QACA,kB,4HAMA,8GACA,iDACC,QACA,8G,CAED,Y,sHAKA,O,I,qCAGC,I,CAED,S,6IAOA,kC,6C,oC,CAQI,yCACJ,+FACC,kHACA,0B,C,4C,iIAQG,IACJ,gBACA,8GAEA,iB,O,YAGE,6B,kBAEA,W,+B,MAIA,W,CAED,QACA,8G,CAED,S,8HAQA,kC,+JASA,S,kBAIC,4F,UAEC,S,C,wCAGI,uD,UAEF,S,CAF0C,mB,CAM7C,S,CAKG,gD,uGAEF,S,C,mHAGA,2F,CALmC,W,CAUrC,IACA,+FACA,8BACC,qGACG,kH,S,8HAED,S,CAED,S,MAEA,I,C,CAGF,S,qGAMA,gE,yE,mB,YAYC,yB,kBAEA,yB,kBAEA,c,kBAEA,c,mBAEA,uB,mBAEA,qB,CAED,+C,4IAII,yCACJ,QACA,kB,iGAIA,iJACC,iB,K,4CAKD,uDACC,8GACA,Y,eAEC,0C,C,gBAGA,U,CAED,uBACA,QACA,qB,K,4BAKD,yC,kC,O,YAMC,mD,kBAEA,wD,kBAEA,kD,kBAEA,oD,kBAEA,wB,kBAEA,uB,kBAEA,oC,kB,oBAIC,6B,CAED,+D,wCAEC,qB,CAED,iC,kBAEA,iF,kBAEA,oC,mBAEA,yC,C,2F,2BCvRA,a,C,qBAGA,a,C,O,a,mDAMC,a,C,+B,yCAKA,a,CAED,0J,yHAEE,a,C,K,iC,uCAMD,a,CAED,yJ,yHAEE,a,C,K,6C,kQAMD,a,C,mB,0SAKA,a,C,mB,4PAKA,a,C,CAGF,Y,+KAKA,kB,O,YAIC,sC,kBAEA,sB,kB,+BAGC,sB,CAED,sJACC,c,K,+BAGA,mB,C,kB,uFAIA,sCACA,M,CAED,gB,uBAEC,oC,oQAIA,gBACI,sDACH,uPACA,e,eAEC,gBACA,e,CAL8B,W,C,MAS5B,+CACH,6OACA,e,eAEC,gBACA,e,CAL4B,W,C,CAS/B,gB,kBAEA,yB,kBAEA,wB,kBAEA,wB,kBAEA,wB,kBAEA,qB,mB,iCAGC,yB,MAEA,qB,C,mBAGD,qB,mBAEA,qB,mB,mBAGC,sBACA,sBACA,gB,MAEA,gB,C,wHAGA,8G,CAED,gB,yDAEG,2G,6CACF,qBACA,SACA,mB,MAEA,S,C,Q,cAIA,gB,oBAEA,gB,oBAEA,gB,oBAEA,iBACA,6B,uBAEC,gB,aAEC,6B,C,CAGF,iB,C,gCAGA,gB,C,mBAGD,gK,eAEE,qBACA,SACA,mB,MAEA,S,C,M,mBAIF,sK,SAEE,iB,CAED,S,M,MA1HD,mD,C,C,yDAgIG,yCACJ,QACA,kB,mG,iB,2CAQE,gB,CAED,eACA,O,CAGD,kB,I,YAEC,qB,mBAEA,qB,mBAEA,qB,mBAEA,qB,kBAEA,qB,mBAEA,qB,M,UAGC,qBACA,kC,iBAEC,gB,CAED,iBACA,M,CAED,sBACA,+CACA,mB,C,C,iEAMD,I,cAEC,Q,CAED,qJACI,a,QACF,I,C,KAGF,S,sHAKA,mCACA,cACA,S,mI,cAKC,kH,CAED,qJACC,c,K,8J,eC7SA,c,C,O,uCAKA,IACA,yJACC,e,oBAGC,6DACA,aACA,cACA,uE,C,aAGA,uB,C,KAGF,S,6CAGA,iHACA,4B,mB,6BAMC,kE,CAID,iH,e,cAME,+B,C,cAKA,+B,CAID,8DACA,oCACI,6CACH,uBADyB,W,CAG1B,6CACA,S,C,6BAOA,S,CAQG,S,YAEH,8DACA,oCACI,sCACH,uBADuB,W,C,C,gBAOxB,0BACI,+CACH,8DACA,iDACA,0BAHgC,W,C,eAMhC,S,CAED,uB,C,kBAGA,S,CAKD,kE,CAGD,S,yG,aAsBC,S,C,oDAIA,S,C,4KAGA,S,CAGD,6DACA,+CACA,S,syP,4F,4F,4F,4F,4F,4F,2B,sB,+G,mB,8B,sC,yM,gC,0B,mB,uB,0B,mB,oB,oB,oB,uC,wB,mB,sC,gC,k/B;62L,UCrGC,S,CAED,6G,2B,UAQC,S,CAED,2C,2BAQA,2B,gFAOA,Q,yBAGC,4B,MAEA,6B,CAGD,+I,0BAEC,gC,MAEA,mCACA,0DACC,iH,K,C,sBAKD,uB,MAEA,2B,CAED,sDACC,8G,K,oJAOD,8C,sQAEC,a,C,yFAED,+QACA,Y,2I,4HAOC,O,C,iCAMA,O,CAGD,wC,8vBAKA,wBACA,gBAEA,cACA,8CACC,sBAEA,iHACA,kHACA,kHACA,6BASA,cACD,O,wBAEE,c,CAEF,OAEC,kI,OAKA,gU,OACC,2C,e,O,IAWA,uE,QACC,cACA,QACA,c,e,QAGA,IACA,QACA,c,Q,QAED,0C,e,O,8HAKA,+E,QAEC,kBACA,QACA,QACA,c,Q,QAGD,sBACA,QACA,c,e,OAGA,2GACA,mD,QACC,c,QAED,WACA,QACA,c,e,QAGA,6GACA,sJ,QACC,c,QAED,YACA,QACA,c,e,QAGA,sHACA,wD,QACC,c,QAED,YACA,QACA,c,e,QAGA,sHACA,2C,QACC,c,QAED,YACA,QACA,c,e,Q,KAIA,yE,Q,wCAGE,uIACA,6H,CAED,QACA,c,e,QAGA,6HACA,c,Q,QAGD,8C,e,QAGA,+K,QACC,c,QAED,QACA,c,e,QAGA,QACA,c,e,Q,sBAMC,eACA,uB,C,oBAOA,0G,C,yIAGA,6B,CAED,e,OAIC,uB,C,cAKA,uB,CAID,c,uBAvIA,gC,Q,O,qBA2IF,uB,s8BAKA,oI,OACC,yD,OAGD,qB,YAEC,mB,C,qCAIA,mB,CAGD,MACA,aAEA,qCACA,2DACC,mH,KAID,sD,O,oBAEE,sG,CAED,kI,OASD,KACA,8CACC,gE,OAEC,mG,QAEC,mB,CAED,W,Q,oBAIA,sG,CAED,0J,QAEC,kB,QAED,oGAjB+B,W,qBAmBhC,mB,2YCnTA,mBACA,oB,2IAIA,oBACA,qB,6IAIA,kBACA,0BACA,oBACA,qB,iHAKA,uKACA,mBACA,4DACA,4DACA,W,QAEC,I,C,WAGA,sB,CAED,4BACA,S,6DAIA,sJACC,2B,KAED,qC,wHAMI,SACD,iB,QACF,uHACA,oC,MAEA,2BACA,6D,CAED,SACA,S,qqBAOA,qB,YAEC,mB,CAED,gBACA,2DACC,mH,KAED,sBACA,kBACA,gBACA,yGACA,6C,OACC,8G,OAEG,IACJ,uC,OACC,yB,qBAEA,8F,OAED,OACC,uD,Q,qCAGE,e,C,cAIA,e,CAED,8P,QAEC,0G,SAEC,e,CAED,YACA,oHACA,yH,Q,Q,e,yBAKA,+G,CAED,+C,CAED,wBACA,yB,UAEC,e,C,wCAKA,e,CAED,WACA,oBACA,+C,QACC,yH,QAED,oB,sBAED,WACA,uB,+hBAKA,iK,oBAEE,2B,C,KAGF,+B,qKASA,wBACI,gDACH,+GACA,M,eAFgC,W,S,C,gPAO/B,yBAP+B,W,S,CAUhC,SACA,Q,O,Y,kJAOE,sGACA,6B,C,OAIA,qL,oBAEE,2B,C,KAGF,+B,CAED,e,kBAGA,iB,kBAEA,2G,kBAEA,O,mBAEA,c,MAzBA,gC,C,MA4BA,6B,C,kBAGA,yB,CA7C+B,W,CAgDjC,+B,oL,UASC,S,CAEE,gH,mJACF,S,CAGD,kBACA,sCACA,+GACA,WACA,OACA,sHAEA,gH,O,Y,+BAOC,yBACA,yB,kB,yCAGC,yB,C,kBAGD,yB,kB,yBAGC,6GACA,6GACA,4BACA,6G,MAEA,yB,C,iE,eAIA,a,MAEA,S,C,sGAGA,oB,CAED,MACA,S,MA/BA,iC,CAiCD,S,iuBAOA,qB,YAEC,mB,CAED,gBACA,2DACC,mH,KAED,kBACA,gBACA,yGACA,6C,OACC,8G,OAEG,IACJ,uC,OACC,yB,qBAEA,8F,OAED,aACA,8HAEA,gR,OAGC,4I,QACC,qCACA,oHACA,yHACA,sGACA,+B,uBAEA,uB,Q,QAGF,QACC,gIACA,qB,gBAIA,gU,QACC,e,yBAEC,+GACA,+G,CAED,uB,Q,4BAGC,uB,C,e,Q,8HAIA,uB,C,e,Q,e,Q,WAMA,uB,C,e,QAID,iBACA,e,e,QAEA,uB,QAEA,e,e,Q,sDAGC,uB,CAED,e,e,Q,0CAGC,0I,CAED,e,uBAvCA,gC,Q,Q,UA0CA,e,CAED,wBACA,WACA,oBACA,+C,QACC,yH,Q,uBAGF,uB,iwBAKA,qI,kiBAQA,UACI,YACA,I,sCAEH,sB,wBAEA,qBACA,Y,MAEA,sBACA,W,CAED,oH,OACC,gI,OACC,SACA,oB,O,c,O,iBAIA,W,CAED,wI,OACC,SACA,oB,O,qBAGD,UACA,kI,QACC,SACA,oB,Q,OAGF,6B,eAGC,2B,CAED,SACA,e,2XC/ZA,wH,sD,0D,CAIA,QACA,8GACA,mCACC,QACA,8G,C,2C,0D,CAQG,yCACJ,6FACC,kHACA,sI,C,kLAKA,O,C,+C,mCAUD,yB,SAEC,kH,C,kBAGA,kB,CAED,S,+BAIA,O,I,qCAGC,I,CAED,S,sDAWA,2B,wHAIA,6HACA,gCACA,S,6GAIA,SACA,c,6H,8BAKC,a,CAED,+V,2H,mBAKC,e,C,gI,8BAMA,O,CAED,qHACA,wHACA,sB,0G,6D,ijBAuBA,mBACA,mB,mCAEC,uD,CAGA,sBAED,sBACA,sBACA,UACA,kE,UAEE,YACA,Y,C,uBAIF,QACA,2E,yPAEE,a,CAED,0Q,wBAEA,iBACA,qBACA,Y,kBAGD,4CAEC,qU,OACC,8L,c,OAEA,gM,c,OAEA,gM,qBAEA,gM,O,O,UAGA,oB,C,qBAGF,wB,gaAKA,yK,O,oC,gEAIE,wH,2CAEA,wHACA,uJ,C,K,+GAOF,qCAIA,qKACC,0D,KAQD,uD,sH,yBAME,yOACA,yOAEA,mI,wCAEC,gBACA,iI,wCAEC,a,C,CAGF,mI,qCAIC,a,CAID,iQACA,iQACA,S,yBAEC,Q,+BAEA,QACA,wB,C,OAGA,kB,C,yBAMA,kB,C,MAtCD,a,C,KA0CF,S,gDAMwC,iB,yHACA,wM,qIACA,4Y,6Y,4BAavC,gB,CAIA,2BACA,2BACA,2BACA,sCAKD,myBACC,OACA,iH,qBAEC,e,CAED,e,YAEA,+Q,OACC,uPAEA,4DACA,4D,SAEC,QACA,c,C,MAIA,oDACA,gB,C,MAGA,8FACA,Y,CAID,4U,0IAGC,QACA,c,C,e,OAGD,4GACA,yJAEA,gQACA,kBACI,8OACH,kCAD2C,a,C,e,OAI5C,4GACA,yJACA,gQACA,kBACI,8OACH,kCAD2C,a,C,e,OAI5C,0GACA,c,e,OAEA,kG,qBAEC,c,CAED,wB,4BAEC,qHACA,4BACA,c,CAED,oBACA,uG,QACC,iHACA,qBACI,2DACH,qBAD2C,qBAG5C,0J,uBAEA,gC,QAED,6GACA,kBACI,8OACH,kCAD2C,a,CAG5C,Y,e,OAEA,kG,qBAEC,c,CAED,wBACA,cAEA,4E,QACC,iHACA,qBACI,2DACH,qBAD2C,qBAG5C,0J,uBAEA,2O,QAED,6GACA,kBACI,8OACH,kCAD2C,a,CAG5C,Y,e,OAEA,kG,qBAEC,c,CAED,wBACA,sIACA,4B,e,OAEA,kG,qBAEC,c,CAED,wBACA,sIACA,kBACI,8OACH,kCAD2C,a,C,Q,OAI7C,e,+hBAGD,aACA,8BACA,kGACA,2CACC,aACA,cACA,2H,OACC,QACA,c,O,qB,iBAID,0DACC,mO,K,CAGF,kB,wf,gB,oB,C,+R,oB,CAmBA,wKACC,yH,O,yB,0I,oB,C,kB,U,mCAaG,kB,C,oB,C,gB,oB,C,yBAQJ,QAGA,uF,cAGC,Q,C,mB,0PC/YD,uB,gHAUA,uE,0PAgBA,4G,yKA+BA,wB,kYAIA,4G,sCAEC,uB,CAED,aACA,eAEA,eACA,6B,sCAEC,uB,CAED,yL,4BAYC,mE,MAEA,uF,C,8BAKA,iEACA,qE,CAED,0B,iQAOA,YACG,oB,QACF,0HACA,0CACA,cACA,S,CAED,cACA,wCACA,OACA,S,4GAQA,YACA,+BACA,c,8RAOA,qGACA,mE,OACC,6I,OAED,e,6K,sBAgBC,gB,CAED,kB,0DAKA,4B,6HASA,8B,+H,mBAsBC,sB,UAEC,iB,CAED,iD,CAED,a,wHAIA,Y,wIAIA,4C,gIAIA,sD,sIAIA,kB,yBAEC,yD,C,mBAGA,mD,CAED,6B,2H,oBAUC,6G,UAEC,iB,CAED,wC,CAED,a,wHAIA,Y,wIAIA,iD,gIAIA,0D,sIAIA,kB,0BAEC,gD,C,oBAGA,0C,CAED,6B,yU,6BAYC,mB,CAGD,qH,sCAEC,aACA,mB,CAED,mBACA,kB,+QAIA,a,wIAIA,a,gIAIA,S,0HAIA,S,kJ,oE,sTAaA,mH,sbAKA,0H,gbAKA,sH,0eAkBA,qG,sC,sC,C,wI,+dAsBA,I,yBAEC,4C,CAED,mFACC,yC,4FAED,+B,2fAOA,yEACC,4B,mH,8gBASD,iRACC,+T,gNAED,+B,6lBAIA,IACA,IACI,SACA,I,kBAEH,Y,MAEA,W,C,6BAGA,yB,CAGG,YACJ,kCACC,yI,kBAEC,c,C,kBAKA,2H,MAEA,4H,CAOD,8N,OACC,wF,OAED,4FAGI,I,kBAEH,sC,MAEA,+C,C,uGAGA,W,6GAIA,W,MAEA,4F,C,qB,kBAMD,iC,MAEA,kC,CAGD,e,0lBAOA,I,4BAEC,4C,CAED,QACA,iF,oCAEE,0B,CAED,qC,8FAED,e,0eAOA,qEACC,4B,mG,6eASD,6QACC,8T,2N,sR,eAgDA,c,CAED,yCACA,sCACC,gB,CAED,S,gbAKI,I,eAEH,W,MAEA,Y,CAGG,gEACH,4I,kBAEC,c,CAGD,O,kG,kGAME,Q,CAEG,I,eAGH,iD,MAEA,wC,C,QAGA,W,MAEA,S,C,MAGD,4F,CAED,4FAEA,mC,OACC,8FACA,W,O,qB,gkBAQE,YACJ,0I,eAEC,oB,CAED,8M,wcAQA,wH,e,wB,C,kC,+cAaI,YACJ,8I,eAEC,e,CAED,+M,geAQA,4H,e,wB,C,kC,+eAaA,qH,e,wB,C,kC,kiBAaI,YACJ,+J,eAEC,oB,CAED,6CACA,kD,+IAEE,qV,C,KAGF,e,iVAqBA,4C,qJAOA,gC,uMAIA,qCACC,iB,QAEC,M,CAED,oCACA,kB,uCAGC,gBACA,kBACA,S,CAED,oC,OAGC,gBACA,kBACA,S,CAED,I,S,sJ,kBAIG,sQ,MAEA,uQ,C,C,MAIF,0K,6J,kBAGG,sQ,MAEA,uQ,CAED,M,C,K,C,CAKJ,oBACA,S,mJ,0CAOC,gB,CAED,Q,0BAEC,OACA,kB,MAEA,kB,CAED,IACA,qCACC,sD,+CAEC,M,CAED,W,C,UAIA,gB,CAED,oB,M,4CAIE,gB,CAED,W,CAID,IACI,yC,yDAEF,KACA,M,CAED,gDAL0B,W,C,uCAS1B,K,CAGD,kBACA,OACA,gB,4PASA,8O,uiBASI,YACJ,mK,eAEC,oB,CAED,6CACA,kD,+IAEE,sV,C,KAGF,e,+hBASA,kP,sfASA,2O,of,QAWC,oB,CAED,yBACA,uEACC,uN,0F,qBAGA,oB,CAED,kB,uc,QASC,iB,CAED,yBACA,kEACC,oC,wF,qBAGA,oB,CAED,kB,6d,QASC,mB,CAED,yBACA,2EACC,wN,0F,qBAGA,oB,CAED,kB,+d,QASC,gB,CAED,yBACA,sEACC,oC,wF,qBAGA,oB,CAED,kB,if,QASC,oB,CAED,yBACA,uFACC,8GACA,kD,uHAEE,wV,C,KAGF,qB,0F,qBAGA,oB,CAED,kB,ue,QASC,iB,CAED,yBACA,kEACC,qB,wF,qBAGA,oB,CAED,kB,6f,QASC,mB,CAED,yBACA,2FACC,8GACA,kD,uHAEE,yV,C,KAGF,qB,0F,qBAGA,oB,CAED,kB,+f,QAUC,gB,CAED,yBACA,sEACC,qB,wF,qBAGA,oB,CAED,kB,kjB,UAqBC,oB,C,6CAIA,0B,CAGD,2GACA,6BAEA,IACA,IACA,iJ,6BAEE,M,CAGD,4F,uGAEC,+B,CAED,4F,K,sBAIA,6B,CAGD,e,m6W,4F,4F,4F,4F,4F,4F,4F,4F,wG,S,c,wB,4B,uB;qMC7mCA,qBACA,YACC,mB,gBAEC,wB,CAED,qC,C,+L,4F,4F,4F;mR,4F;sR,4F;uwB,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,8F,8F,qJ,oL,4J,qJ,4I,8I,gJ,0J,4J,sJ,8K,mJ,oK,qL,0L,4K,mJ,uM,yK,+J;ypBC6BD,WACA,W,gLCqBA,uF,kvBAIA,4FACA,6C,SAGC,a,CAED,4BACA,+HACA,uH,QAMC,I,C,kDAIA,0B,C,kDAGA,0B,CAED,2KACA,mI,2BAEC,yB,CAED,+FACA,MACA,I,MAEC,gB,CAED,Y,QAEC,U,C,IAGD,gO,OACC,+FACA,M,e,OAEA,+FACA,M,e,QAEA,+FACA,M,e,QAEA,gGACA,M,e,QAEA,+FACA,M,e,QAEA,+FACA,M,e,QAGC,wC,QACC,sBACA,sM,Q,Q,OAIH,oJACA,sC,QACC,0BACA,sV,QAED,qJACA,yC,QACC,4H,uBAEA,4H,QAED,sC,QACC,mG,Q,kpBAKD,oC,OACC,oG,O,mTAeD,4F,wSAiBA,0F,6bA4FA,6FACA,8CACA,gB,+eAoEI,YACJ,uGACA,2C,OACC,2BACA,8JACA,mE,OACC,6K,O,OAGF,wGACA,4C,OACC,gCACA,oKACA,qE,QACC,2K,Q,QAGF,2GACA,6C,QACC,gCACA,oKACA,qE,QACC,2K,Q,Q,gNC9SF,iC,4NCtEA,uH,OACC,4F,qBAEA,0F,O,+SAqBD,4F,+SAWA,4FACA,U,4UAoBA,mN,4kBAgCA,4FACA,6C,KAEA,qE,OACC,6CACA,Y,aAEC,qD,CAED,oO,c,O,O,OAGD,wJACC,uGACA,6D,QACC,wH,Q,yBAGF,yH,ie,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,yK,oB,mB,kB,K,S,S,Q,4G,I;iQ,8CCXC,a,C,qB,I,+MAeC,a,C,C,I,oDAMD,a,iI,I,YAWC,c,kBAKA,6C,kBAOA,6C,kBAIA,Y,kBAKA,a,C,CAKF,Y,2BAsGA,c,0EAUA,gBACI,yCACH,kB,W,sBAGE,W,MAEA,W,C,CANqB,W,C,qBAYvB,S,CAGD,4CACA,IACI,yCACI,kB,sBAEN,oGACA,W,iBAEA,oGACA,4JACA,wJACA,W,MAEA,iHACA,W,CAZsB,W,CAexB,yB,kL,4F,4F,4F,4F,4F;6Z,4F,4F,4F,4F,4F,4F;yuC,iC,mC,C,2B,mDCjBC,4B,kBAEA,2B,iCAEA,gE,yDAEA,6B,gEAEA,2D,iCAEA,qC,8EAEA,4D,mBAEA,O,MAEA,Y,C,+B,4M,0F,2EA0XA,kB,mBAEA,qC,C,OAED,mB,uYAuLA,8F,8B,qC,CAAgE,+H,sC,8U,uCAc/D,e,C,8BAGA,yC,CAED,qH,8XAoBA,+D,OACC,8G,O,iCAGA,6C,CAGD,2T,OACC,uZ,OACC,2B,uB,2B,2BAIC,8B,C,Q,OAIH,kI,0WCr2BA,KACA,0FACA,e,6aAKA,qE,kB,kB,aACC,wC,OACC,uK,OAED,8F,uCAEC,sD,CAED,8I,OACC,oT,OAED,2G,yB,qbAgBD,0Y,OACC,kB,OAEA,kB,O,OAED,mB,4J,WAMC,a,CAED,2E,a,kCAIE,a,wCAEA,a,C,SAGF,Y,kPAqBA,8D,OACC,uH,OACC,oL,OAED,2F,OAED,4J,OACC,4M,OAED,0B,ypBASA,uGACA,8D,OACC,qK,OAED,oJACC,uGACI,QACD,qHAAH,oC,OACC,uK,Q,2BAGD,+H,QACK,kB,2BAEJ,6M,QACC,0B,e,QAEA,0D,e,QAEA,oL,QAEA,gN,Q,QAED,0K,QACC,0K,QAED,2J,e,QAEA,oQ,uCAEC,6C,CAEE,yIAAH,gE,QACC,K,uBAEA,wN,Q,e,QAID,mC,uBAEA,4M,Q,Q,yBAGF,0B,6mBAOA,8FACA,8D,OACC,yI,OAED,qHACA,mC,OACC,yI,O,2B,+DAIA,gD,CAED,6J,ssBAQA,uGACA,8D,OACC,4J,OAED,2BACA,mI,OACC,yK,OAED,0H,OACC,0S,QAED,6FACI,YACJ,mI,QACC,sD,QACC,sO,QAED,wL,uBAEA,sD,QACC,sN,Q,QAGF,2BACA,kKACC,iHAEI,aACJ,uJ,QACC,mG,uBAEA,K,QAGG,aACD,uOAAH,sE,QACC,kL,Q,4BAGF,oHACA,2K,QACC,+U,QAED,qH,klBAMA,gNACA,e,wWAMA,uI,OACC,e,OAED,qDACC,mGACA,uI,OACC,c,O,yBAGF,e,sXAMA,sI,OACC,e,OAED,qDACC,mGACA,sI,OACC,c,O,yBAGF,e,uUAKA,kH,+H,2B,YA4BC,oB,gEAEA,oB,8EAEA,oB,iCAEA,oB,iCAEA,oB,mBAEA,oB,CAED,a,6fAKA,uGACA,sC,sCAEC,sB,C,kBAGA,uB,CAED,oJACC,uGACA,sC,sCAEC,sB,CAED,QACA,4C,O,qBAIE,iM,2BAEA,uM,MAEA,uB,C,qB,KAID,4L,OACC,sD,e,QAEA,6G,e,QAEA,wD,e,QAEA,mG,e,QAEA,wO,e,QAEA,qG,uBAEA,oC,Q,O,O,MAID,6B,C,yBAGF,8B,yjBAMA,iJACA,mB,kjBAKA,uGACA,sC,sCAEC,sB,CAED,uGACA,sC,sCAEC,sB,CAED,QACA,4C,O,qBAIE,iN,2BAEA,kN,MAEA,uB,C,qB,IAID,qK,OACC,uB,OAEA,sD,e,OAEA,kH,e,QAEA,sO,e,QAEA,wH,uBAEA,oC,Q,O,OAGF,0B,4gBAMA,uI,yCAEC,kB,CAED,8I,6WAMA,uI,sCAEC,sB,CAED,2B,sWAMA,uI,sCAEC,sB,CAED,2B,4ZAeA,IACA,wJACK,S,I,aAGH,K,mBAEA,K,mBAEA,K,mBAEA,K,mBAEA,K,MAEA,kB,C,OAED,yGACA,0FACA,S,yBAED,uG,gZ,+BAOC,e,CAEG,4CACJ,qHACA,2B,sUAMA,qL,yhBAkBA,IACI,6CACH,mGAEA,6C,OAHuB,W,c,OAOvB,yGAEA,uC,O,IAIC,gK,QACC,6F,e,QAEA,6F,e,QAEA,6F,e,QAEA,6F,e,QAEA,6F,uBAEA,6FACA,sCACA,yHACA,yH,Q,O,qBAID,6CACA,gD,QACC,wH,uBAEA,sI,QAED,kB,OAED,SAvCuB,W,qBAyCxB,+G,wfAMA,oI,OACC,e,OAEG,4CACJ,qHACA,2B,6J,I,+DAMC,Y,CAED,oB,4MAMA,qL,sUAMA,gM,+aASA,QACI,K,kBAGH,oI,CAED,oC,OACC,wJACC,+M,MAEC,mG,C,yBAGF,6F,OAED,e,uW,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,2G,4G,4G,wC,8C,4C,mC,mC,mC,kC,kC,mC,8C,kC,iC,kC,mC,mC,2d;07FC7mBI,KACJ,4E,kB,kB,aACC,8N,yBAED,e,gYAiBA,yG,mY,mCAOC,uB,CAED,eACA,8F,uCAGC,+D,CAED,yO,ypBAOA,8GACA,IACA,yCAEC,6B,SAEC,6C,CAED,iBACA,kDACA,yBAMI,8BACJ,kOACC,W,CAGD,wN,OACC,yGACA,6BACA,oJACC,eACA,mHACA,6F,OACC,oU,Q,yB,OAMH,2IACA,sE,QACC,6J,QACC,qR,QAEA,gB,Q,QAGF,K,qBAED,uB,k5BAQI,mBACA,IACA,S,I,YAGH,6B,SAEC,wD,CAED,iB,kB,gBAIC,wD,CAED,6nBAIA,iB,kB,gBAIC,wD,CAED,g1CAQA,iB,kBAGA,gC,wGAEC,kE,CAGD,oCACA,kC,MAGA,yD,CAKE,4H,uCACF,wB,CAED,0B,2e,UAKC,iD,2EAEC,mC,CAED,oB,gBAEA,4C,gBAEA,6C,MAEA,iE,C,0sB,gCAWA,uB,C,2BAID,wX,O,eAEE,4C,C,yCAGA,yC,CAED,wD,e,OAKA,uCACA,qE,QACC,yVACA,e,QAED,4B,e,O,UAKC,6B,gBAEA,uD,gBAEA,6B,MAEA,4C,C,e,O,eAMA,+C,CAED,4D,e,O,eAKC,+C,CAED,iD,e,O,eAKC,8C,CAED,+C,e,OAIA,kF,QACC,uC,sCAEC,e,CAED,0GACA,iPACA,uB,Q,eAGA,wD,CAED,6H,OAKA,6D,QACC,4U,QAED,sQ,Q,eAKC,sD,CAED,iI,Q,eAGC,sD,CAED,6D,QAEC,sP,QAED,oI,QAGA,6D,QACC,0P,QAIE,gLAAH,sC,Q,eAEE,6C,CAGD,0H,QAMD,0O,QAGA,6F,Q,OAED,uB,0yBAQA,8H,OACC,kGACA,oC,OACC,+I,OAED,0L,OAID,qG,kpBAYA,iHACA,gMAGI,I,0FAEJ,6K,O,I,6BAIE,I,mCAEA,I,mCAEA,I,mCAEA,I,MAEA,I,C,e,OAID,I,e,OAGA,I,e,OAGA,iE,Q,6CAEE,qD,CAEG,6DAEH,yUAF4B,W,uB,uBAK7B,kH,QAED,uB,QAIG,sI,sCACF,e,CAED,oQACA,uB,Q,OAID,2CACC,gI,sCAEC,e,CAED,oQACA,I,uBAED,uB,kvBAKA,sMACA,uMACA,0GACA,0GACA,6B,SAEC,6C,CAED,iBACA,kDAEI,YACJ,8H,sCAEC,e,CAED,yCACC,6B,SAEC,6C,CAED,iBACA,kDACA,gI,sCAEC,e,C,qBAIF,8F,QAGC,gK,QAED,uJAEA,uB,o0BCvZA,4DACI,a,sCACF,mCACA,Y,C,e,mC,2D,CAMF,qDACA,8F,uC,2F,CAIA,qN,qE,qyBAKI,YACJ,oOACI,aAAH,mE,OACC,kD,OACC,wK,qBAEA,U,O,O,2HAKH,iQACC,4HACA,0DAGA,4D,OACC,2H,O,yB,ujCAWF,i1B,O,SAEC,iDACA,mB,MAEC,mB,CAED,aACA,a,O,SAGA,iDACA,2BACA,a,O,SAGA,iDACA,2BACA,a,O,wBAGA,8BACA,iDACA,mCACA,a,O,SAGA,iDACA,aACA,a,O,SAGA,iDACA,4BACA,a,O,SAGA,iDACA,aACA,a,O,SAGA,iDACA,eACA,a,Q,SAGA,iDACA,mCACA,a,Q,SAGA,iDACA,eACA,a,Q,SAGA,iDACA,mCACA,a,Q,SAGA,iDACA,wBACA,a,Q,SAGA,iDACA,wBACA,a,Q,SAGA,iDACA,4BACA,oCACA,kBACA,a,Q,S,e,eAKE,2D,CAED,a,CAED,iDACA,oCACA,kBACA,a,Q,4BAOD,+Y,QACC,iDACA,oB,6BAEC,oB,CAED,c,e,QAKA,iDACA,mC,e,QAIA,iDACA,oC,e,QAIA,iDACA,yD,e,QAIA,iDACA,gD,e,QAIA,iDACA,6IACA,qCACA,mB,e,QAIA,iDACA,sDACA,kHACA,qBACA,qCACA,mB,e,QAIA,iHACA,a,Q,8B,UAME,6C,CAED,a,CAED,mP,e,Q,8BAKC,a,CAIE,8KAAH,sC,QACC,iDACA,+HACA,sE,QACC,uH,QAED,qCACA,mBACA,a,QAID,mP,e,QAGA,uHACA,a,QAGA,kM,Q,Q,qrCAOD,0BACA,qDACA,4sB,O,SAEK,kCACH,mB,qGAEC,mB,CAED,aALsB,W,C,e,O,SASnB,kCACH,0HADsB,W,C,e,O,SAKnB,oCACH,+GADsB,a,C,e,O,SAKnB,oCACH,8HADsB,a,C,e,O,SAKnB,oCACH,+GADsB,a,C,e,O,SAKnB,oCACH,iHADsB,a,C,e,O,SAKnB,oCACH,8IADsB,a,C,e,O,SAKnB,oCACH,iHADsB,a,C,e,Q,SAKnB,oCACH,8IADsB,a,C,e,Q,SAKnB,oCACH,0HADsB,a,C,e,Q,SAKnB,oCACH,0HADsB,a,C,e,Q,SAKvB,iDACA,4BACA,kBACA,a,Q,SAGI,yCACH,sHACA,8IACA,8BACA,iDACA,qCACA,mBANsB,a,uBAQvB,a,Q,IAEA,wHACA,a,QAID,iDACA,oBACA,qCACA,mB,02BAgBA,6PACC,+HAIO,2B,IACP,oF,O,8BAEE,kD,C,c,OAGD,oP,OACC,qF,Q,O,OAIF,qDACA,mHACA,yBACA,iKAEA,iDACA,mBACA,oCACA,kB,yB,ugCAOD,2B,6BAEC,uC,CAED,0BACA,iHACA,qD,0FAEA,0N,OACK,uCACH,mBACA,uP,QACC,mB,QAED,aALsB,W,uB,e,OASnB,uCACH,kTADsB,W,uB,e,OAKnB,uCACH,mTADsB,W,uB,e,OAKnB,uCACH,yZADsB,W,uB,e,OAMnB,yCACH,maADsB,a,uB,e,OAKvB,iDACA,4BACI,UACJ,iE,QACC,uHACA,4P,uBAEA,2P,QAED,mBACA,a,QAGA,0HACA,2R,QACC,oGACA,6I,QACC,wF,Q,QAIE,yCACH,gPADsB,a,uBAGvB,a,Q,OAID,iDACA,oBACA,qCACA,mB,uoBAII,YACJ,4BACA,yC,8H,0CAKC,uD,MAEA,mG,C,wHAKG,YACJ,kBACA,4BACA,6BACA,6BACA,0B,gHAII,YACJ,uBACA,4CACA,6CACA,6CACA,6CACA,6CACA,6CACA,6CACA,0B,sHChfA,yC,WAEC,c,CAED,iBACA,iJ,cAEE,I,oBAEA,I,MAEA,0B,sCAEC,I,MAEA,I,C,C,KAIH,c,0PAaA,8K,otBAOA,4FACA,iFACA,8F,MAEC,e,CAED,OACA,0LACA,6BACA,oJACI,kFAAH,mC,OACC,0X,OAED,wG,yBAED,8FACA,6CACA,2FACA,e,0uBAIA,8H,OACC,kM,OAED,aACI,+HACH,kH,wBAEA,mD,eAEC,U,CAED,+C,Q,wBAEC,kPACC,0CACA,e,2B,uBAGD,wF,QAd4B,W,qBAuB9B,e,ouF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,sH,qB,wB,qB,uB,oF,iC,wB,8B;sUCzFA,S,sI,cA6CC,4G,CAED,6D,6SAQA,2C,OACC,mGACA,8D,OACC,gG,O,OAGF,0F,6QAKA,yI,kH,UAQC,qE,CAED,mG,ke,4F,4F,4F,0D;kmBChFA,oB,qDA0BA,kBACA,kBACA,kBACA,iBACA,OACA,uB,kFAKA,kDACA,UACA,S,+DAG6B,U,+GAEK,U,mWAGlC,YACA,8EACA,wC,OACC,2CACA,iBACA,2C,OACC,kGACA,O,OAED,iB,OAED,+C,OACC,qBACA,wGACA,iB,O,gBAGA,8B,CAED,kB,8cAKA,cACA,wGACA,sC,qjBAKA,QACI,WACJ,SACA,4G,OACC,gM,qBAEA,iM,OAID,sBACI,kCACH,gIADwB,Y,CAGzB,gH,kBAGC,iC,CAGG,WACJ,6HACC,2GACA,4HACA,6HACA,6H,KAGD,e,wUCrGA,WACA,uCACA,gB,uEAIA,SACA,SACA,SACA,SACI,QACA,WACJ,wCACC,gC,UAQC,mB,8CAEA,mB,MAEA,IACA,IACI,mCACH,qlBACA,WAFmB,W,C,CAQrB,yFACA,wCAEA,yFACA,yCAEA,wFACA,yCAEA,yFACA,yCAEA,yFACA,wCAEA,yFACA,yCAEA,yFACA,yCAEA,yFACA,yCAEA,yFACA,wCAEA,yFACA,yCAEA,0FACA,yCAEA,0FACA,yCAEA,0FACA,wCAEA,0FACA,yCAEA,0FACA,yCAEA,0FACA,yCAIA,yFACA,wCAEA,yFACA,wCAEA,yFACA,yCAEA,yFACA,yCAEA,yFACA,wCAEA,wFACA,wCAEA,0FACA,yCAEA,yFACA,yCAEA,wFACA,wCAEA,0FACA,wCAEA,yFACA,yCAEA,yFACA,yCAEA,0FACA,wCAEA,yFACA,wCAEA,yFACA,yCAEA,0FACA,yCAIA,2EACA,wCAEA,2EACA,yCAEA,4EACA,yCAEA,4EACA,wCAEA,2EACA,wCAEA,2EACA,yCAEA,2EACA,yCAEA,4EACA,wCAEA,2EACA,wCAEA,2EACA,yCAEA,2EACA,yCAEA,yEACA,wCAEA,2EACA,wCAEA,4EACA,yCAEA,2EACA,yCAEA,2EACA,wCAIA,oFACA,wCAEA,oFACA,yCAEA,qFACA,yCAEA,oFACA,yCAEA,qFACA,wCAEA,oFACA,yCAEA,qFACA,yCAEA,oFACA,yCAEA,oFACA,wCAEA,qFACA,yCAEA,oFACA,yCAEA,qFACA,yCAEA,oFACA,wCAEA,qFACA,yCAEA,mFACA,yCAEA,oFACA,yCAEA,YACA,YACA,YACA,YAEA,kB,CAGD,SACA,SACA,SACA,S,i0B,4F,4F,oG,I,I;wjBC1PA,oB,qDA2BA,kBACA,kBACA,kBACA,iBACA,kBACA,OACA,uB,kFAKA,kDACA,UACA,S,+DAG6B,U,+GAEK,U,mWAGlC,YACA,8EACA,wC,OACC,2CACA,iBACA,2C,OACC,kGACA,O,OAED,iB,OAED,+C,OACC,qBACA,wGACA,iB,O,gBAGA,8B,CAED,kB,8cAKA,cACA,wGACA,sC,qjBAIA,QAEI,WACJ,SACA,4G,OACC,gM,qBAEA,iM,OAID,sBACI,kCACH,yIADwB,Y,CAGzB,gH,kBAGC,iC,CAGG,WACJ,6HACC,sHACA,6HACA,4HACA,kH,KAGD,e,8iBAKA,cACA,wGACA,sC,gxBAII,WACJ,wBACI,kCACH,yIADwB,Y,CAIzB,kBACA,gBACA,sCAEA,MACI,mCACH,mDAGA,4NAGA,c,UAIC,mS,CAX2B,iB,CAgB7B,kGAEI,WACJ,6HACC,gIACA,uIACA,sIACA,4H,KAGG,mC,SAGF,yFACA,I,MAEA,+L,CAN2B,iB,CAW7B,kGAEA,wI,eACC,6N,sBACA,6N,sBACA,4N,sBACA,kN,MAGD,e,4vBC5KI,WAEJ,iEACA,wCAGK,mCACH,aACA,ikBAFmB,W,CAKpB,0CAKA,KACA,gCACC,2CACA,iCACA,iCACA,0IACA,uDALa,a,CAOd,gCACC,2aACA,+HAEA,2CACA,iCACA,iCACA,0IACA,uDARa,a,CAUd,gCACC,2aACA,+HACA,wBACA,iCACA,iCACA,0IACA,uDAPa,a,CASd,gCACC,2aACA,+HACA,kDAEA,iCACA,iCACA,0IACA,uDARa,a,CAUd,gCACC,2aACA,+HACA,wBACA,iCACA,iCACA,0IACA,uDAPa,a,CAUd,YACA,YACA,YACA,aACA,aAEA,kB,CAGD,2E,u+B,4F,4F,I;0cCkFA,Y,iDAIA,gB,gDAIA,iB,qDAIA,iB,8D,I,YAMC,2B,kBAEA,qB,CAED,8B,+iB,4F,4F,4F,4F,4F,wC,uB;irB,4F,4F,4F,4F,4F,4F,2E,gD;kVC3K4B,kB,iEAO5B,qJACC,kNACA,qN,KAGD,0B,2OAUA,qK,oP,6EAcC,yB,CAGG,6HACH,mI,OAEC,4I,CAED,0I,OAEC,mJ,CAED,6HAT2B,W,CAY5B,+G,yC,iBAOC,2B,wBAEA,yC,uBAEA,yC,CAGD,gB,6BAKA,6BACA,OACA,yB,yR,4F,4F,4F,4F,kF;;uQ;o5OCjFA,+D,wB,wBAeA,a,gD,oC,wBAYA,W,gLC6OA,mK,gJAOsC,iB,6HACA,ob,yIAEtC,6HACA,6HACA,W,gTAMA,6BACA,mE,OACC,8G,O,wBAGA,4C,CAED,e,2LAOA,4J,yBAEE,S,C,KAGF,8B,sGC/Sa,Q,uDC4Hb,S,yWAIA,8tC,mSAoBA,a,mTAIA,6W,yPAUA,a,qUAIA,slB,uQASA,a,mTAIA,8V,yPASA,a,mTAIA,mW,yPAeA,a,ibAIA,s5D,yVAgBA,a,4TAIA,+H,OACC,mB,OAEG,IACJ,oDACK,QACJ,gO,OACC,mB,O,oEAIA,mB,CAED,mDACA,mB,qBAED,kB,gQAYA,a,yWAIA,wnC,mSAaA,a,mTAIA,uV,yPASA,a,mTAIA,oQ,sQCvPA,KACA,sJ,yD,cAGG,U,CAED,Q,C,K,WAID,M,CAED,S,uU,eAOC,yE,CAED,qG,sCAEC,qD,CAED,kB,oc,eAOC,yE,CAED,qG,sCAEC,qD,CAED,kB,oQAiDA,4J,gBAEE,oB,C,KAGF,kB,sVCpIA,kH,sCAEC,uD,CAED,yC,sCAEC,gE,CAEG,SAEJ,kL,oB,aAGE,W,oBAEA,2D,iCAEC,mD,uCAEC,mE,CAED,uB,sBAEC,W,C,C,C,KAKJ,0B,8QAcA,mDACA,4K,c,Y,kB,Y,S,0CAUI,a,C,mB,S,6BAKA,a,C,CAGE,QACJ,kK,gBAEE,OACA,M,C,M,MAID,0F,C,kBAGD,mE,kBAEA,oI,C,KAGF,S,8BAII,I,yBAEH,c,C,yBAGA,c,C,yBAGA,c,C,0BAGA,c,C,4BAGA,e,CAED,S,4SAOA,kH,sCAEC,uD,CAED,yC,sCAEC,gE,CAEG,SACJ,4C,OACK,YACJ,qG,sCAEC,uB,C,OAGF,8B,sCAEC,uB,CAED,2B,kPAII,SAEJ,+K,gB,YAGE,W,mBAEA,uD,iD,uBAGM,YACJ,mC,sCAEC,iB,C,CAGF,gD,uCAEC,6D,CAED,c,uCAEC,gB,C,C,C,KAKJ,oB,mEAII,QAIJ,4K,oBAEE,OACA,M,C,KAGF,4K,yBAEE,a,C,W,YAIA,ud,mBAEA,0DACA,0BACA,U,C,KAGF,iB,8NAMA,wGACA,yGACA,0C,6sBAIA,sB,sCAEC,oB,CAED,2CAEC,SACA,KAED,4FACA,mBACI,8IACH,qBACA,8C,OAF+B,qI,O,0DAO9B,+F,oH,2BAMK,6IACH,0UAD4B,a,CAG7B,sHACA,8GACA,gB,C,CAlB6B,4IAsBhC,e,u8BAIA,sB,sCAEC,oB,CAED,2CACI,SACJ,oBACI,2IACH,mBACA,8C,OAF+B,mI,O,sHAM1B,6IACH,0UAD4B,a,CAG7B,w8CACA,gB,CAV8B,0IAahC,e,saChOA,oBACA,iBACA,8FACA,8FACA,8FACA,8FACA,S,uDAQA,mBACA,4FACA,4FACA,4FACA,4FACA,S,6D,8BAQC,c,C,aAGA,c,CAED,uFACA,mBACA,UACI,kC,SAEF,qGACA,YAHiB,W,S,CAMlB,+IACA,IAPkB,W,CASnB,S,2EAuBA,6D,8IAKG,U,kBACF,sG,CAED,kC,yIAKG,U,kBACF,kH,CAED,0H,uJAMA,sO,gLAMG,U,kBACF,0S,CAED,sO,oKAMG,U,kBACF,2M,CAED,yO,2JAYA,oJ,uHAUI,0C,8GAEF,a,CAFsB,W,CAKxB,Y,gD,kBAOC,S,C,sPAMA,0B,CAED,c,kH,kBAOC,mX,C,mBAGA,S,CAED,c,6HAcG,U,eACF,c,C,O,wGAIA,U,8GAEA,U,MAEA,U,C,mHAKD,iJ,iBAEE,a,C,KAGF,Y,8D,2HAMC,kB,C,8HAGA,kB,CAED,Y,uBAEC,c,CAED,mBACI,kCACH,2SADkB,W,CAGnB,S,4IAUA,I,kBAGC,c,CAIE,U,kBACF,ma,C,wBAMA,wE,CAID,KACA,KACI,mCACH,IACA,0PACC,W,C,2BAGA,IACA,IACA,I,CARuB,W,C,gBAaxB,KACA,K,CAID,sBAGI,mC,UAEF,mBACA,I,UAEC,M,C,cAGD,gB,CAED,kPAVwB,W,CAYzB,yB,qHAIA,sCACA,qJACC,2U,KAED,yB,4B,kBAOC,S,CAED,kB,wD,kBAOC,6C,C,4CAGA,8G,CAED,qD,4J,kBAOC,eACA,iB,CAED,oBACA,Q,eAEC,kC,CAED,UACA,iB,6D,0BAQC,+H,C,sCAGA,2O,C,sCAGA,2O,CAED,a,+G,+BAKC,a,CAED,qJ,8GAEE,a,C,KAGF,Y,wCAUI,IACJ,qJ,YAEE,WACA,a,CAID,iDACC,WACA,iC,C,eAIA,S,CAEG,W,sC,8GAEF,S,CAFsB,W,CAKxB,M,CAED,S,qEAOA,qC,W,4B,CAIA,Y,sH,kBAMC,c,CAED,qE,uIAIG,a,eACF,O,wB,sC,C,CAKD,S,Y,Y,uB,sC,C,mB,kBAQE,kB,C,M,sC,CAKF,Y,wEAKA,sBACG,U,kBACF,I,CAED,Y,uBAEC,a,CAEG,kC,+ZAEF,a,CAFiB,W,CAKnB,Y,yHAIkC,e,4HASlC,sB,2BAEC,c,CAED,Q,WAEC,iC,CAED,kC,mGAKI,YACA,kC,iBAGF,c,C,Q,8BAIC,c,CAED,kB,CAED,6B,cAEC,c,CAED,kBACA,4FAhBwB,W,C,sBAmBxB,c,CAED,+B,6JAQA,oBACA,K,MAGC,sB,C,gEAKA,IACA,kB,iB,4B,C,CAQD,IACA,+BAEC,+B,iB,qC,C,yC,qB,qC,C,gB,qC,CAeC,S,gB,qC,CAIA,gMACA,+MACA,+MACA,+MACA,KACA,WACA,M,CAID,sHACA,6HACA,WAGA,mB,iBAEC,M,C,8C,qC,CAOD,kB,yB,S,qC,CAOC,IACA,kB,iBAEC,M,C,C,C,sB,qC,C,S,Q,qC,CAeF,WACI,0CACH,sNAD8B,a,CAG3B,kDACH,sGADyC,a,C,e,qC,C,gC,oCAgBvC,yC,kB,aAGF,a,mBAEA,qBACA,S,CANsB,W,CASxB,c,sEAYA,U,QAEC,mD,CAED,qDACA,IACA,Q,eAEC,KACA,qB,CAED,8B,4DAEC,mD,CAED,oBACA,8C,0EC3oBmC,W,sH,eAIlC,c,CAED,W,mBAEC,oB,CAED,S,qoBCwEA,iE,wD,GAGA,gBAGA,WACA,qC,O,+J,OAIA,sD,OAEC,WACA,sC,O,kK,O,WAIA,gF,Q,qK,Q,uBAQC,gE,Q,wK,Q,qK,Q,QAKD,qBACA,0B,qBAEA,oBACA,8C,Q,wK,QAGA,8C,Q,yK,Q,OAID,4D,Q,uK,QAGA,4D,Q,uK,QAIA,yB,0D,8bAOG,W,QACF,qD,MAEA,I,CAED,Y,6D,kBCtKC,S,CAED,+CACA,qJ,QAEE,gB,CAED,6DACA,yD,KAED,yB,kGC2EA,IACA,OACA,sB,wP,eA0VC,oB,CAED,O,kBAEC,gB,CAED,0E,OACC,2G,OAED,wE,O,6CAEE,W,MAEA,U,CAED,qG,OAED,wGACA,e,uhBAmBG,2CAAH,mC,OACC,2CACA,qJ,OAED,4CACA,+J,omBAQG,2CAAH,mC,OACC,2CACA,uJ,OAED,4CACA,iK,0UAmBqC,oC,iH,eASpC,c,CAED,Q,mBAEC,2B,CAED,S,iHAGsC,a,uHACA,a,uHCrgBd,e,gJAGxB,SACA,IACI,0C,0GAEF,mCACA,OAEA,WACA,iBACA,0CACA,wBACA,Y,CATwB,W,C,8BAczB,oBACA,6BACA,O,CAED,Y,kYAIG,oC,MACF,kB,CAED,iE,OACC,iBACA,uJ,SAEC,oC,C,wEAGA,a,C,OAGF,oCACA,kB,iRAIA,0B,sCAEC,iB,CAED,uE,oCAmBA,IACI,yC,4BAEF,W,CAFsB,W,CAKxB,S,wCAKA,gCACA,IACA,IACI,yC,4B,QAGD,mHACA,W,CAED,S,CANsB,W,C,eAUvB,iHACA,W,CAED,wB,sEAWA,IACI,mFACH,sD,gB,iD,CADoD,W,C,U,0C,C,6C,sEAerD,IACI,yC,6CAEF,gBACA,4C,oDAEA,gBACA,oD,mDAEA,gBACA,oD,MAEA,M,C,gB,0C,CAXqB,W,C,U,0C,C,6C,wC,yCA6BtB,gB,CAED,6CACA,gC,oC,UAcC,U,CAEG,YACJ,KACA,gCACC,yFACA,sHACA,WACA,I,CAGD,qGACA,8C,sC,UAMC,qB,CAEG,mCACH,4C,QAEC,yD,CAHkB,W,CAMpB,S,kCAgBA,WACI,W,+B,wBAEF,M,CAFe,W,CAKjB,S,22T,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,kI,qDR6E6B,6C,iCACA,+C,gCACA,6C,iCACA,6C,gCACA,0D,iCACA,6C,iCACA,mD,gCACA,4C,iCACA,oD,M,2NSlT5B,mG,kH,sC,4C,2C,sC,gD,oE,8G,yC,mC,8B,iC,0B,+D,4D,iB,mB,qB,O,sC,4B,mC,6C,+E,kE,yB,qB,qgC,yF,K;wrBCsJD,oC,uEAKA,gC,0I,6BAOC,S,iDAEA,S,iDAEA,S,CAED,S,wIAKA,iB,uIAMA,oBAEA,oDACA,6FACA,qDACA,+FACA,sDACA,+FACA,uDACA,+FACA,kDAEA,yB,8IAKA,yE,sJAKA,4D,8KAMA,wDACA,Y,mdASA,8C,OACC,yIACA,e,OAGD,IACA,Q,gCAGC,iB,0GAEA,OACA,iB,CAGD,YAEA,wJACC,qC,OACC,qI,OACC,sIACA,e,OAED,iB,OAGD,+C,QACC,2IACA,e,QAGD,0M,QAEC,0IACA,e,QAGD,wI,sCAEC,e,CAGD,iBACA,oG,yBAGD,e,0ZAKA,+BACA,Y,oWAMA,qD,OACC,kLACA,e,OAED,wBAEA,e,oSAKA,6D,0WAOA,iH,O,SAEC,gD,OACC,yH,OAED,uH,O,SAGA,+I,OAGD,oJ,4dA4CA,oIACA,kB,yVAkGA,uHACA,wBACA,uBAEA,e,iXAKA,YACA,kGACA,kHACA,mHAEA,e,qwC,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,mB,mB,sC,uB,mB,gK,gK,gK;2mBCjdA,oBACA,oB,qD,aA2CC,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,iBACA,kB,MAEA,kBACA,iBACA,iBACA,kBACA,kBACA,kBACA,kBACA,kB,CAED,OACA,uB,kFAKA,wDACA,UACA,S,qCAKA,wDACA,aACA,UACA,S,kE,aAKC,U,CAED,U,+GAGkC,U,mWAGlC,YACA,8EACA,wC,OACC,2CACA,iBACA,2C,OACC,kGACA,O,OAED,iB,OAED,+C,OACC,qBACA,wGACA,iB,O,gBAGA,8B,CAED,kB,8cAKA,cACA,wG,YAEC,sD,CAED,sC,8jBAIA,QAEI,WACJ,SACA,4G,OACC,gM,qBAEA,iM,OAID,sBACI,kCACH,yIADwB,Y,CAGzB,gH,kBAGC,iC,CAGD,a,YAEC,4B,CAGG,WACJ,qJACC,sHACA,6HACA,4HACA,kH,KAGD,e,weC9FI,WACJ,wGACA,wCAGK,mCACH,aACA,ikBAFmB,W,CAIhB,oCACH,6FACA,2GACA,kGACA,yGACA,oSALoB,W,CAQrB,wFAEI,qCACH,kYAEA,yMAEA,MACA,MACA,MACA,aACA,MACA,MACA,MACA,aAZmB,a,CAepB,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aAEA,kB,CAGD,wH,m4B,4F,4F,2rB,I;koBC9GA,oBACA,oBACA,qBACA,qB,uD,e,YAqEC,0CACA,yCACA,yCACA,yCACA,0CACA,0CACA,0CACA,0C,mBAEA,yCACA,0CACA,wCACA,0CACA,yCACA,wCACA,0CACA,yC,mBAEA,yCACA,0CACA,yCACA,0CACA,0CACA,0CACA,wCACA,yC,MAEA,0CACA,0CACA,0CACA,0CACA,0CACA,yCACA,yCACA,yC,CAED,OACA,uB,kFAKA,oDACA,UACA,S,qCAKA,qDACA,UACA,S,4CAKA,qDACA,UACA,S,4CAKA,oDACA,UACA,S,oE,e,aAMC,U,mBAEA,U,kBAEA,U,MAEA,U,C,+GAIiC,W,mWAGlC,YACA,8EACA,wC,OACC,2CACA,iBACA,4C,OACC,kGACA,O,OAED,iB,OAED,gD,OACC,sBACA,wGACA,iB,O,gBAGA,8B,CAED,kB,udAKA,oDACA,YACA,wG,e,YAGC,sD,mBAEA,sD,mBAEA,sD,MAEA,sC,C,4nBAMD,QACI,WACJ,SACA,8G,OACC,kM,qBAEA,kM,OAID,sBACI,mCACH,0IADyB,Y,CAG1B,iH,kBAGC,iC,CAGD,a,qBAEC,4B,CAGG,WACJ,qJACC,sIACA,6IACA,6IACA,6IACA,6IACA,6IACA,4IACA,uH,KAGD,e,miBAKA,oDACA,UACA,0FACA,yG,uiBClKI,WACJ,wGACA,yCACK,mCACH,aACA,0kDAFmB,W,CAKhB,sCACH,kGACA,wWACA,mGACA,uWAEA,gbANoB,a,CASrB,wFAEI,qCACH,0hCAEA,2wBAEA,MACA,MACA,MACA,kDACA,MACA,MACA,MACA,kDAZmB,a,CAepB,uDACA,uDACA,uDACA,uDACA,uDACA,uDACA,uDACA,uDAEA,mB,CAGD,wH,44B,4F,4F,qtF,I;y3BCrHA,mI,wUAQA,mI,wUAQA,mI,wUAQA,mI,mTAQA,4G,+RAOA,4G,+RAOA,4G,+RAOA,4G,2/DCrCI,6PAEA,mCAKH,6UACA,mVACA,mVACA,mVACA,mVACA,iKACA,iKACA,iKACA,iKACA,iKAEA,4EACA,4EACA,0GACA,6EACA,0GACA,6EACA,0GACA,6EACA,0GACA,uQACA,2HACA,4HACA,4HACA,4HAEA,6EACA,yGACA,6EACA,0GACA,6EACA,yGACA,4EACA,0GACA,4EACA,0GACA,4HACA,4HACA,4HACA,2HACA,2HAEA,6EACA,0GACA,4EACA,yGACA,4EACA,yGACA,6EACA,0GACA,6EACA,yGACA,4HACA,2HACA,2HACA,4HACA,4HAEA,4EACA,0GACA,6EACA,0GACA,6EACA,0GACA,6EACA,yGACA,4EACA,0GACA,2HACA,4HACA,4HACA,4HACA,2HAEA,6EACA,0GACA,6EACA,yGACA,4EACA,yGACA,4EACA,yGACA,6EACA,0GACA,4HACA,4HACA,2HACA,2HACA,4HAGA,mVACA,mVACA,mVACA,mVACA,mVACA,iKACA,iKACA,iKACA,iKACA,iKAEA,4EACA,6EACA,0GACA,4EACA,0GACA,6EACA,0GACA,6EACA,0GACA,sRACA,4HACA,2HACA,4HACA,4HAEA,6EACA,yGACA,6EACA,0GACA,4EACA,yGACA,6EACA,0GACA,4EACA,0GACA,4HACA,4HACA,2HACA,4HACA,2HAEA,6EACA,0GACA,4EACA,yGACA,6EACA,yGACA,6EACA,0GACA,4EACA,yGACA,4HACA,2HACA,4HACA,4HACA,2HAEA,6EACA,0GACA,4EACA,0GACA,6EACA,0GACA,4EACA,yGACA,6EACA,0GACA,4HACA,2HACA,4HACA,2HACA,4HAEA,4EACA,0GACA,6EACA,yGACA,6EACA,yGACA,4EACA,yGACA,6EACA,0GACA,2HACA,4HACA,4HACA,2HACA,4HAGA,mVACA,mVACA,mVACA,mVACA,mVACA,iKACA,iKACA,iKACA,iKACA,iKAEA,4EACA,6EACA,0GACA,6EACA,0GACA,4EACA,0GACA,6EACA,0GACA,sRACA,4HACA,4HACA,2HACA,4HAEA,6EACA,yGACA,4EACA,0GACA,6EACA,yGACA,6EACA,0GACA,4EACA,0GACA,4HACA,2HACA,4HACA,4HACA,2HAEA,4EACA,0GACA,6EACA,yGACA,4EACA,yGACA,6EACA,0GACA,6EACA,yGACA,2HACA,4HACA,2HACA,4HACA,4HAEA,6EACA,0GACA,4EACA,0GACA,6EACA,0GACA,4EACA,yGACA,6EACA,0GACA,4HACA,2HACA,4HACA,2HACA,4HAEA,6EACA,0GACA,6EACA,yGACA,4EACA,yGACA,6EACA,yGACA,4EACA,0GACA,4HACA,4HACA,2HACA,4HACA,2HAGA,mVACA,mVACA,mVACA,mVACA,mVACA,iKACA,iKACA,iKACA,iKACA,iKAEA,4EACA,4EACA,0GACA,4EACA,0GACA,4EACA,0GACA,4EACA,0GACA,sRACA,2HACA,2HACA,2HACA,2HAEA,4EACA,yGACA,4EACA,0GACA,4EACA,yGACA,4EACA,0GACA,4EACA,0GACA,2HACA,2HACA,2HACA,2HACA,2HAEA,6EACA,0GACA,6EACA,yGACA,6EACA,yGACA,6EACA,0GACA,6EACA,yGACA,4HACA,4HACA,4HACA,4HACA,4HAEA,6EACA,0GACA,6EACA,0GACA,6EACA,0GACA,6EACA,yGACA,6EACA,0GACA,4HACA,4HACA,4HACA,4HACA,4HAEA,6EACA,0GACA,6EACA,yGACA,6EACA,yGACA,6EACA,yGACA,6EACA,0GACA,4HACA,4HACA,4HACA,4HACA,4HA9WmB,W,C,wBC5BpB,qBACA,qBACA,qBACA,qB,8MCsEA,mI,uLCzD6B,c,gHAGI,qB,uHAIjC,eACA,S,gIAQA,cACA,sCACC,2RACA,iBACA,iB,CAGD,OAEA,cACA,sCACC,6IACA,iBACA,iB,C,gGAOkC,iC,yBAGA,iC,yBAGA,iC,yBAGA,iC,yBAGC,gC,onB,4F,4F,4F,4F,4F,4F,6B,mrB,8B;8bC/DpC,iH,sCAEC,kB,CAED,uG,gcAQG,6CAAH,mC,OACC,+FACA,2B,OAED,+GACA,+G,sCAEC,kB,CAED,oH,wbAMA,iH,sCAEC,kB,CAED,uG,icAQG,6CAAH,mC,OACC,yFACA,2B,OAED,+GACA,+G,sCAEC,kB,CAED,oH,0X,4F,4F;4S,4F,4F,4F;+S,4F,4F;sbChDI,kKACJ,YACA,YACA,IACA,O,oBAEE,e,C,oBAGA,e,CAED,mGAGA,IACA,0CACC,W,C,mBAGA,oH,qBAEC,K,C,CAGF,uB,yPAIC,K,CAED,eACA,e,qB,krB,iBC3BA,4BACA,kB,CAED,gI,OACC,mB,OAIG,oCACA,IACJ,cACA,6CACC,gGACA,W,qBAIG,oCACJ,+BACA,gIACC,iB,qBAMG,wNACJ,6MACA,oGACA,uGACA,IACA,QAEK,IACJ,eACA,oDACC,oGACA,W,uB,UAIA,YACA,kB,CAGD,8JAEA,iHACA,uHACA,uHACA,I,uB,2e,4F,4B,4B;4yCCVD,+J,uWAkBA,MACA,WACA,qGACA,e,+aAKA,MACA,WACA,0GACA,e,wbAKA,MACA,WACA,4GACA,e,0eAMA,MACA,WACG,2G,OACF,mE,CAED,e,ySAKA,qC,+XAQG,2G,OACF,2B,CAED,2C,OACK,4DACJ,WACG,+G,OACF,2B,CAED,6F,OAED,qB,8TAKA,oC,8GAKA,wC,iHAKA,0B,oHAOA,oBACA,aACA,QACA,S,2RAIA,sJACA,UACA,e,uOAKA,8BACA,S,yGAKA,8BACA,S,6RAMA,4GACA,e,mPAMA,mB,kSAMA,6GACA,e,uPAMA,oB,2TAKA,oBACA,oBACA,QACA,6GACA,e,ycAMA,oBACA,oBACA,QACA,6GACA,e,gQAKA,oBACA,Q,iBAEC,iB,MAEA,gC,CAED,S,uTAMA,oBACA,oBACA,QACA,6GACA,e,sfAKA,oBACA,oBACI,iCACJ,QACA,yMACA,gGACA,e,wdAKA,oBACA,QACA,uHACA,e,8aAMA,oBACA,QACA,kGACA,e,0bAmBA,oBACA,QACA,4MACA,e,obAQA,oBACA,QACA,gH,uaAMA,oLACA,e,sPAQA,+G,yIAKA,kBACA,cACA,iB,SAGC,sC,C,eAIA,mBACA,6BACA,I,CAED,oB,0I,qCAQC,8C,C,SAIA,sB,CAED,gB,oBAEC,+C,CAED,iB,wTAIA,mH,+aAIA,uH,6RAOA,kBACA,gB,QAEC,qB,C,oBAGA,0D,CAED,mBACA,uCACA,S,wTAOI,I,SAEH,sB,CAED,4GACA,e,4PAMA,c,SAEC,iB,CAED,S,qIAOA,kBACA,cACA,Y,QAEC,I,CAED,I,QAEC,I,C,oBAGA,0D,CAED,mBACA,8BACA,S,mIAOA,uB,4WAUA,cAIA,kCAEI,oCACJ,OAEK,YACJ,sHACA,mDAMA,+B,gCAEC,c,C,qBAIF,eACG,iB,eACF,mC,CAED,e,ge,iCAOC,yD,CAED,gBACA,gG,8nH,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,8F,8F,4B;8/GCtcA,2CACC,4F,K,4BAKD,MACA,kB,0CAIA,2CACC,uR,K,0CAKD,2CACC,uR,K,sCAKD,2CACC,sL,K,kDASG,YACJ,KACA,2CACC,oR,KAED,2CACC,8Q,K,kCAKG,kBACJ,0GACA,8KACA,+KACA,S,oCAII,kBACJ,0GACA,8KACA,+KACA,+KACA,S,6GAIA,QACA,qCACA,qCACA,sCACA,sCACA,sBACA,sCACA,sCACA,sCACA,uFAEI,YACJ,kEACA,8EACA,sEACA,kEACA,qDACA,sEACA,kEACA,qDACA,sEACA,kEACA,qDACA,yEACA,kEACA,wDACA,yEAEA,kEACA,wDACA,yEACA,kEACA,wDACA,yEACA,kEACA,wDACA,yEACA,kEACA,wDACA,yEACA,kEACA,wDACA,yEAEA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yD,oCA2BI,YAEJ,uDACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCAGA,uDAGA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,uDAQA,qDACA,qDACA,sDACA,sFACA,qDACA,sDACA,sFACA,qDACA,sDACA,sFACA,sDACA,uDACA,uFACA,sDACA,uDACA,uDACA,sDACA,sDACA,uDACA,uFACA,sDACA,uDACA,uFACA,sDACA,uDACA,uFACA,sDACA,uDACA,uFACA,sDACA,uDACA,uD,8BAII,YACJ,QACA,mB,sCAII,YACJ,QACI,IACJ,wHACC,c,KAED,6BACA,6BACA,6BACA,uB,sCAWA,2CACC,uL,K,6vBAgCD,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,qBACA,qBACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,gBACA,gBACA,cACA,cACA,cACA,cACA,cACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,4CACA,4CACA,6CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,6CACA,4CACA,6CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,6CACA,4CACA,6CACA,4CACA,6CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,2CACA,4CACA,2CACA,6CACA,4CACA,6CACA,4CACA,6CACA,4CACA,6CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,2CACA,6CACA,4CACA,6CACA,4CACA,6CACA,4CACA,6CACA,4CACA,6CACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACI,aASJ,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,qFACA,6EAIA,qEACA,4DACA,6EAIA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2D,ycAWA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,cACA,eACA,eACA,eACA,eACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,4CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,2CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACI,aAEJ,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,qFACA,6EAEA,qEACA,4DACA,6EAEA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2D,ueAcA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,cACA,eACA,eACA,eACA,eACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,4CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,2CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACI,aAEJ,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,qFACA,6EAEA,qEACA,4DACA,6EAEA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2D,kDAII,4GACA,IAEJ,QACA,QACI,kCACH,QADiB,W,CAGlB,UACA,UACA,QACA,UACA,QACI,kCACH,QADiB,W,CAGlB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,oCACH,QADmB,W,CAGpB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,kCACH,QADiB,W,CAGlB,U,8CAII,iFACA,IAEJ,QACI,kCACH,QADiB,W,CAGlB,QACI,kCACH,QADiB,W,CAGlB,UACA,UACA,QACI,kCACH,QADiB,W,CAGlB,UACA,QACI,kCACH,QADiB,W,CAGlB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,oCACH,QADmB,W,CAGpB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,kCACH,QADiB,W,CAGlB,U,mQAIA,kBACA,8C,QAEE,W,CAED,uN,yBAED,UACA,e,mRCt7BA,QACA,QACA,Q,mHAII,YAEJ,YACA,YACA,YACA,gBACA,UACA,gBACA,gBACA,cACA,gB,oIAII,iFAEJ,UACA,YACA,YACA,QACA,uE,oHAIA,QACA,QACA,QACA,Q,8GAIA,YACA,YACA,YACA,Y,mHAII,4CACJ,kBACA,Y,yHAIA,qBACA,sBACA,YACA,gB,iIAIA,YACA,YACA,Y,gJAII,iFAEJ,UACA,YACA,YACA,QACA,uE,kKAII,uI,wBAGH,a,CAED,UACA,QACA,UACA,UACA,YACA,YAEA,QACA,UACA,UACA,cACA,cAEA,YACA,cACA,cAEI,sDAEJ,UACA,UACA,U,cAEC,U,cAEC,a,CAED,cAGA,UACA,4HACC,6F,K,C,gIAKD,Y,CAGD,gBACA,Y,4TAIA,ud,sQAUA,gBACA,gBACA,gB,uIAIA,gBACA,gBACA,gBACA,gB,0HAIA,aACA,cACA,W,oHAII,YAEJ,gBACA,gBACA,qBACA,sBACA,kBACA,gBACA,cACA,gBACA,gBACA,cACA,c,wHAII,YAEJ,gBACA,gBACA,sBACA,qBACA,kBACA,gBACA,cACA,gBACA,gBACA,cACA,c,6HAII,YAEJ,gBACA,gBACA,qBACA,sBACA,mBACA,cACA,gBACA,gBACA,cACA,c,uIAII,YAEJ,gBACA,gBACA,sBACA,qBACA,mBACA,cACA,gBACA,gBACA,cACA,c,kIAOA,wBACA,0BACA,oB,sHAKA,uBACA,uBACA,kB,4GAMA,aACA,cACA,QACA,U,oHAKA,wBACA,0BACA,cACA,kB,sHAKA,uBACA,uBACA,YACA,gB,yFA6GA,mBACA,YACA,wB,4BAKA,qB,8CAII,4CACJ,QACA,4BAEA,SACI,kCACH,0LADyB,W,CAG1B,SACA,a,gEAUI,YAEJ,yIACC,qHACA,6I,KAKD,IACI,mCACH,4KACA,0GACA,yLAHmB,W,CAKpB,0BAGA,SACI,4CACA,sDACA,mCACH,+KACA,gBACA,gBAH0B,W,CAMvB,4CAEJ,YACA,kBACA,YACA,kBACA,YACA,kBACA,YACA,gBAEI,mCACH,+KACA,gBACA,gBAH0B,W,C,4CAQ3B,QACA,4BAGA,SACI,kCACH,kHADyB,W,CAKtB,sDACJ,SACA,a,sEAYI,sDACA,sDACA,4CACA,sDACA,IAGA,YACJ,yIACC,qHACA,6I,KAID,IACI,mCACH,4KACA,0GACA,yLAHmB,W,CAKpB,0BAII,YACJ,iBACI,kCACH,wFACA,gBACA,sGAHkB,W,CAOnB,SACA,mBACA,WAEI,oCAGH,kBACA,YACA,kBACA,YACA,kBACA,YACA,kBACA,YAGA,gBACA,4FACA,WAfmB,W,CAkBpB,gB,yDCvgBI,YACJ,gBACA,mC,uHAIA,U,qIAII,YACJ,gBACA,4B,4I,uBAKC,4C,CAED,iB,0TAIA,kH,kbAIA,sH,sRAQI,sDACJ,gBACA,gCACA,2C,yKAEE,a,C,KAGF,Y,kHAKA,mCACA,S,6GAKA,mC,8GAKA,YACA,S,4GAKA,gBACA,S,+GAOA,U,gUAMA,c,gBAEC,Y,CAGD,OAEK,YACJ,sH,kBAEC,kBACA,8C,C,+BAGA,c,C,eAeA,W,eAEC,c,CAED,+B,CAMG,kEACJ,W,eAEC,+B,C,qB,qSASE,YACJ,gBACA,Y,kBAEC,qD,CAED,kD,0HAIA,oBACA,oBAEI,sDACA,sDAEJ,iBACA,cACA,mBAIA,S,8HAIA,oBACA,oBAEI,sDACA,sDAEJ,iBACA,cACA,mBAIA,S,kHAMA,+BACA,S,gIASA,8BACA,iBACI,YACJ,kDACC,2L,K,mCAIA,W,MAEA,gC,CAID,S,sHAcA,Y,0HAKA,gB,qHAKA,U,wSAQA,iHACA,UACA,e,iPAMA,U,uHAKA,kEAEA,S,8GC9PA,e,0SAKA,qH,sbAIA,yH,ibAIA,0H,uaAIA,4G,+c,mCAOC,W,CAED,sGACA,wGACA,wBACA,yBACA,yBAEA,qNACA,e,kQAKA,2BACA,S,42K,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,uN,qP,mH,8C,yE,0H,yH,sH,me;24D,uBCpBC,8D,CAGD,uCACA,aACA,+BAEI,oCACH,mGADiC,W,CAG9B,yCACH,8HAD6B,W,CAG9B,S,iFAMA,YACA,S,4HAOA,cACA,S,qN,kBAiCC,O,CAGD,gBACA,0GACA,8BAEC,yXAEA,gOACA,gOACA,+NACA,qNAEA,WACA,W,CAGD,iB,UAEC,O,CAGD,iI,UAEC,6I,CAGD,4OACA,4O,K,aAIC,2O,wBAEC,qI,C,mB,wBAIA,qIACA,qI,C,C,mIAOF,wCACA,cACA,yB,6e,0C,sC,CAkBA,0C,OACK,IACA,oDACH,mMACA,qBAFoC,W,CAIrC,WACA,iB,aAEC,kB,CAED,wCACG,mI,0C,sC,CAGH,S,OAID,0CACC,M,gBAEC,YACA,sE,CAED,4CACG,iO,0C,sC,CAGH,WACA,iB,qBAIG,0CACH,0LADuB,W,CAGxB,iBACA,mBACA,kB,+hBAOA,8E,OACC,4DACA,0JACA,S,OAED,mB,kNASA,oD,mF,mBAOC,+G,CAED,8G,qHAUA,sF,mTAOA,IAGA,0PACC,W,CAGD,0CAEK,WACJ,gBAEA,0C,kB,6B,0D,CAKE,gCACA,M,CAED,mGAEA,WAEA,0PACC,W,C,uB,I,yB,0D,kB,kB,iE,C,2H,gE,CAoBC,WAEA,0PACC,W,C,C,gBAKD,a,CAED,iCACA,M,CAED,iL,yF,gE,C,KAOD,kGACA,0G,K,aAGC,+FACA,OAGA,+F,4B,4D,CAIA,OAGA,+F,6C,4D,C,mBAPA,+F,4B,4D,CAIA,OAGA,+F,6C,4D,C,mBAAA,+F,6C,4D,C,CAKD,iBACA,kB,C,4C,mJAYD,8BACA,Y,uIAKA,uCACA,qDACA,2B,oiB,oBAkBC,sBACA,yB,0C,C,0C,sC,CAWD,8EACC,wG,QAEC,I,C,WAGA,O,CAED,kJACA,qB,qB,a,mCAMK,IACJ,mFACA,SACA,WACA,qCACA,sBACA,yB,0C,0C,C,0C,sC,C,CAQD,gB,6CAEC,yB,C,sC,CAMF,qGACA,qG,gBAEC,yFACA,qCACA,sBACA,yB,MAEA,2E,CAED,qBACA,uE,0C,oqBASA,iHACA,iCACC,IACA,oK,6B,eAGG,mG,CAED,W,C,K,QAID,kB,CAGD,iH,qBAED,kB,uRAKA,qF,mF,mBAQC,sG,CAGD,qG,mmF,4F,4F,uF,uF,+D;wwBCldA,8FACA,gCACA,wMACA,qB,sXAKA,gCACA,gH,oXA8GG,wG,sCACF,e,CAED,sG,+S,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F;g3JClGA,IACA,uCACA,iJ,UAEE,S,C,KAGF,c,yOAOA,kI,OACC,oB,OAED,mBACA,0G,0bAOA,kI,OACC,e,OAED,mBACA,sG,kgBAWA,mB,uBAEC,mB,C,2GAGA,mB,CAGD,iN,sCAEC,mB,CAGD,0B,oDAEC,mB,C,oBAKA,kB,kCAEA,mB,CAED,kB,0SAKA,S,+VAOA,2G,WAEC,e,CAED,yN,sCAEC,e,C,aAIA,S,CAED,e,2eAOA,2G,WAEC,e,CAED,kH,sCAEC,e,CAED,e,wfASA,kV,sCAKC,mB,CAED,2J,6gBCxHA,oHACA,mC,OACC,kS,OAED,kE,4SAKA,8H,+TAiBA,kGACA,8FACA,+D,OACC,0G,OAED,2BACA,yGACA,e,qZAIA,8FACA,+D,OACC,0G,OAED,0JACA,yIACA,0B,kXAMA,kGACA,6G,OAEC,4B,CAED,e,ubAQI,YACD,gGAAH,6D,OACC,+L,OAED,yCACG,kI,sCACF,uB,CAEG,SACA,YACD,2GAAH,mE,OACC,gJACA,uI,QACC,8H,QAED,uB,OAED,oBACA,0B,kjBASA,iBACI,eACD,oI,sCACF,yC,CAED,uHACA,oC,OACC,oS,OAED,0FACA,+GACA,gGACG,2H,sCACF,yC,CAED,4I,mgBAYA,KACI,eACA,eACJ,ueAAmE,yG,uGACnE,ueAAoE,0G,uGACpE,e,gMAWA,2C,yZASA,gGACA,iDACA,qFACA,kB,2tBAKA,gGACA,iDACA,uG,sVCjJA,+D,6bAmFA,iGACA,kDACA,kF,OAEC,4B,C,2GAID,uB,swBAMA,iGACA,kDACA,iF,OAGC,4B,CAGD,mCACA,oGAEA,yF,OAEC,uB,CAED,oCACA,oGACA,uB,ymBA0FA,qG,sCAEC,e,CAED,mIACA,kI,ufAOA,sH,OAEC,oC,CAED,mIAEA,uHACA,kE,kSAQA,oB,gHAKA,qB,mTAOA,4B,aACK,c,OAEH,4B,C,mB,CAIF,+G,waAIA,kBACA,wGACA,uB,wQAKA,c,iHC3NA,gF,sIAIA,iC,kSA0BA,qH,qbAKI,4CACD,+GAAH,mE,OACC,sJ,OAED,iD,6cAQA,oIACA,mE,OACC,sJ,OAED,kD,ilBA4BA,iGACA,kDACA,kB,opBAKA,iGACA,kDACA,kB,srBAKA,iGACA,kDACA,6D,otBAKA,iGACA,kDACA,6D,0kM,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,8F,8F,8F,2C,2C,mC,Q,Q,0C,yB,6C,uC,uC;;g3BCEiC,S,qIAIjC,0B,qIAKA,2B,0kB,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,8F,8F,+D,mI,uB,mI;+W,4F,4F,4F,4F;wfCzKA,sB,kL,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,0G;muCC6CA,0LACA,gWACA,kB,6dAoBA,iLACA,0LAEA,mLACA,mLACA,4FACA,4B,8cAKA,iLACA,uLACA,mLACA,e,qZAwBA,+L,2YAsCA,qLACA,qLACA,e,2WAKA,mGACA,kG,ggBAcA,iLACI,YACA,kBACA,QAED,gM,MACF,e,CAGD,2D,OACC,iL,OAGG,qLACH,mMADwF,4JAGzF,IACA,mMACA,IACA,e,gkBAKA,uLAEA,qLACA,uLACA,uL,glBA4CA,8FACA,8F,qpBAKA,0LACA,mLACA,mLACA,kWACA,2HACA,gGACA,e,qkBAgCA,gGACA,gG,0eAKA,uLACA,uL,0gBA8CA,gGACA,gG,+cA6DA,QACA,IACA,uE,OACC,gH,OAED,uE,OACC,gH,OAED,mK,ifA6DA,qHACA,mE,OACC,uG,OAED,qHACA,mE,OACC,uG,OAED,oBAEA,e,+eAKA,6FACA,6FAEA,wHACA,sH,uxC,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,4H,mB;qwBCpfG,kLAOA,kHAED,mBACH,uHACG,0GACH,4HACG,mGACH,6HACG,wHAEA,mG,gV,4F,4F,iD,O,sF,mB"}
diff --git a/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.go b/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.go
new file mode 100644
index 000000000..1c4d1121a
--- /dev/null
+++ b/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.go
@@ -0,0 +1,47 @@
+package main
+
+import (
+ "time"
+ "strconv"
+
+ "github.com/gopherjs/gopherjs/js"
+ "github.com/JoaoAndreSa/MedCo/lib"
+)
+
+//var cothorityPublicKey string
+
+
+/**
+ * Encapsulate the library in the cryptoJS object that you can
+ * find the global JS object
+ */
+func main() {
+// js.Global.Set("cryptoJSmedcotest", map[string]interface{}{
+ // "IntToPoint": lib.IntToPoint,
+// "EncryptInt": lib.EncryptInt,
+// "GenKey": lib.GenKey,
+ // "Javascript name": gopkg.gofunc,
+// })
+
+ t := time.Now()
+ js.Global.Get("document").Call("getElementById", "testtext1").Set("innerHTML", "modif from go - " + t.Format("20060102150405"))
+ valueEncTest := int64(888)
+
+ t = time.Now()
+ js.Global.Get("document").Call("getElementById", "testtext2").Set("innerHTML", "generating keys... - " + t.Format("20060102150405"))
+ secKey, pubKey := lib.GenKey()
+
+ t = time.Now()
+ js.Global.Get("document").Call("getElementById", "testtext3").Set("innerHTML", "keys gen, encrypting... - " + t.Format("20060102150405"))
+ encInt := lib.EncryptInt(pubKey, valueEncTest)
+
+ t = time.Now()
+ js.Global.Get("document").Call("getElementById", "testtext4").Set("innerHTML", "encrypted, decrypting... - " + t.Format("20060102150405"))
+ decInt := lib.DecryptInt(secKey, *encInt)
+
+ t = time.Now()
+ js.Global.Get("document").Call("getElementById", "testtext5").Set("innerHTML", "value:" + strconv.FormatInt(decInt, 10) + " - " + t.Format("20060102150405"))
+}
+
+
+
diff --git a/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.html b/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.html
new file mode 100644
index 000000000..73604dd3a
--- /dev/null
+++ b/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.html
@@ -0,0 +1,13 @@
+<head>
+<title>JS encryption tests</title>
+</head>
+<body>
+<div>
+ <p id="testtext1"> test </p>
+ <p id="testtext2"> test </p>
+ <p id="testtext3"> test </p>
+ <p id="testtext4"> test </p>
+ <p id="testtext5"> test </p>
+ <script type="text/javascript" src="test-medco-crypto-web.js"></script>
+</body>
+</html>
diff --git a/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.js b/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.js
new file mode 100644
index 000000000..706a37435
--- /dev/null
+++ b/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.js
@@ -0,0 +1,96 @@
+"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 $externalize(fn(this,new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[]))),$emptyInterface);};};var $unused=function(v){};var $mapArray=function(array,f){var newArray=new array.constructor(array.length);for(var i=0;i<array.length;i++){newArray[i]=f(array[i]);}return newArray;};var $methodVal=function(recv,name){var vals=recv.$methodVals||{};recv.$methodVals=vals;var f=vals[name];if(f!==undefined){return f;}var method=recv[name];f=function(){$stackDepthOffset--;try{return method.apply(recv,arguments);}finally{$stackDepthOffset++;}};vals[name]=f;return f;};var $methodExpr=function(typ,name){var method=typ.prototype[name];if(method.$expr===undefined){method.$expr=function(){$stackDepthOffset--;try{if(typ.wrapped){arguments[0]=new typ(arguments[0]);}return Function.call.apply(method,arguments);}finally{$stackDepthOffset++;}};}return method.$expr;};var $ifaceMethodExprs={};var $ifaceMethodExpr=function(name){var expr=$ifaceMethodExprs["$"+name];if(expr===undefined){expr=$ifaceMethodExprs["$"+name]=function(){$stackDepthOffset--;try{return Function.call.apply(arguments[0][name],arguments);}finally{$stackDepthOffset++;}};}return expr;};var $subslice=function(slice,low,high,max){if(low<0||high<low||max<high||high>slice.$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 $substring=function(str,low,high){if(low<0||high<low||high>str.length){$throwRuntimeError("slice bounds out of range");}return str.substring(low,high);};var $sliceToArray=function(slice){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||0x10FFFF<r){return[0xFFFD,1];}return[r,4];}return[0xFFFD,1];};var $encodeRune=function(r){if(r<0||r>0x10FFFF||(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;i<str.length;i++){array[i]=str.charCodeAt(i);}return array;};var $bytesToString=function(slice){if(slice.$length===0){return"";}var str="";for(var i=0;i<slice.$length;i+=10000){str+=String.fromCharCode.apply(undefined,slice.$array.subarray(slice.$offset+i,slice.$offset+Math.min(slice.$length,i+10000)));}return str;};var $stringToRunes=function(str){var array=new Int32Array(str.length);var rune,j=0;for(var i=0;i<str.length;i+=rune[1],j++){rune=$decodeRune(str,i);array[j]=rune[0];}return array.subarray(0,j);};var $runesToString=function(slice){if(slice.$length===0){return"";}var str="";for(var i=0;i<slice.$length;i++){str+=$encodeRune(slice.$array[slice.$offset+i]);}return str;};var $copyString=function(dst,src){var n=Math.min(src.length,dst.$length);for(var i=0;i<n;i++){dst.$array[dst.$offset+i]=src.charCodeAt(i);}return n;};var $copySlice=function(dst,src){var n=Math.min(src.$length,dst.$length);$copyArray(dst.$array,src.$array,dst.$offset,src.$offset,n,dst.constructor.elem);return n;};var $copyArray=function(dst,src,dstOffset,srcOffset,n,elem){if(n===0||(dst===src&&dstOffset===srcOffset)){return;}if(src.subarray){dst.set(src.subarray(srcOffset,srcOffset+n),dstOffset);return;}switch(elem.kind){case $kindArray:case $kindStruct:if(dst===src&&dstOffset>srcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;i<n;i++){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}if(dst===src&&dstOffset>srcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;i<n;i++){dst[dstOffset+i]=src[srcOffset+i];}};var $clone=function(src,type){var clone=type.zero();type.copy(clone,src);return clone;};var $pointerOfStructConversion=function(obj,type){if(obj.$proxies===undefined){obj.$proxies={};obj.$proxies[obj.constructor.string]=obj;}var proxy=obj.$proxies[type.string];if(proxy===undefined){var properties={};for(var i=0;i<type.elem.fields.length;i++){(function(fieldProp){properties[fieldProp]={get:function(){return obj[fieldProp];},set:function(value){obj[fieldProp]=value;}};})(type.elem.fields[i].prop);}proxy=Object.create(type.prototype,properties);proxy.$val=proxy;obj.$proxies[type.string]=proxy;proxy.$proxies=obj.$proxies;}return proxy;};var $append=function(slice){return $internalAppend(slice,arguments,1,arguments.length-1);};var $appendSlice=function(slice,toAppend){if(toAppend.constructor===String){var bytes=$stringToBytes(toAppend);return $internalAppend(slice,bytes,0,bytes.length);}return $internalAppend(slice,toAppend.$array,toAppend.$offset,toAppend.$length);};var $internalAppend=function(slice,array,offset,length){if(length===0){return slice;}var newArray=slice.$array;var newOffset=slice.$offset;var newLength=slice.$length+length;var newCapacity=slice.$capacity;if(newLength>newCapacity){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<newCapacity;i++){newArray[i]=zero();}}else{newArray=new slice.$array.constructor(newCapacity);newArray.set(slice.$array.subarray(slice.$offset,slice.$offset+slice.$length));}}$copyArray(newArray,array,newOffset+slice.$length,offset,length,slice.constructor.elem);var newSlice=new slice.constructor(newArray);newSlice.$offset=newOffset;newSlice.$length=newLength;newSlice.$capacity=newCapacity;return newSlice;};var $equal=function(a,b,type){if(type===$jsObjectPtr){return a===b;}switch(type.kind){case $kindComplex64:case $kindComplex128:return a.$real===b.$real&&a.$imag===b.$imag;case $kindInt64:case $kindUint64:return a.$high===b.$high&&a.$low===b.$low;case $kindArray:if(a.length!==b.length){return false;}for(var i=0;i<a.length;i++){if(!$equal(a[i],b[i],type.elem)){return false;}}return true;case $kindStruct:for(var i=0;i<type.fields.length;i++){var f=type.fields[i];if(!$equal(a[f.prop],b[f.prop],f.typ)){return false;}}return true;case $kindInterface:return $interfaceIsEqual(a,b);default:return a===b;}};var $interfaceIsEqual=function(a,b){if(a===$ifaceNil||b===$ifaceNil){return a===b;}if(a.constructor!==b.constructor){return false;}if(a.constructor===$jsObjectPtr){return a.object===b.object;}if(!a.constructor.comparable){$throwRuntimeError("comparing uncomparable type "+a.constructor.string);}return $equal(a.$val,b.$val,a.constructor);};var $min=Math.min;var $mod=function(x,y){return x%y;};var $parseInt=parseInt;var $parseFloat=function(f){if(f!==undefined&&f!==null&&f.constructor===Number){return f;}return parseFloat(f);};var $froundBuf=new Float32Array(1);var $fround=Math.fround||function(f){$froundBuf[0]=f;return $froundBuf[0];};var $imul=Math.imul||function(a,b){var ah=(a>>>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<<y|x.$low>>>(32-y),(x.$low<<y)>>>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<<i)!==0){high+=x.$high<<i|x.$low>>>(32-i);low+=(x.$low<<i)>>>0;}}for(var i=0;i<32;i++){if((y.$high&1<<i)!==0){high+=x.$low<<i;}}return new x.constructor(high,low);};var $div64=function(x,y,returnRemainder){if(y.$high===0&&y.$low===0){$throwRuntimeError("integer divide by zero");}var s=1;var rs=1;var xHigh=x.$high;var xLow=x.$low;if(xHigh<0){s=-1;rs=-1;xHigh=-xHigh;if(xLow!==0){xHigh--;xLow=4294967296-xLow;}}var yHigh=y.$high;var yLow=y.$low;if(y.$high<0){s*=-1;yHigh=-yHigh;if(yLow!==0){yHigh--;yLow=4294967296-yLow;}}var high=0,low=0,n=0;while(yHigh<2147483648&&((xHigh>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,named,pkg,exported,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,false,"",false,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,false,"",exported,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(pkgPath,fields){typ.pkgPath=pkgPath;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;i<fields.length;i++){var f=fields[i];switch(f.typ.kind){case $kindArray:case $kindStruct:f.typ.copy(dst[f.prop],src[f.prop]);continue;default:dst[f.prop]=src[f.prop];continue;}}};var properties={};fields.forEach(function(f){properties[f.prop]={get:$throwNilPointerError,set:$throwNilPointerError};});typ.ptr.nil=Object.create(constructor.prototype,properties);typ.ptr.nil.$val=typ.ptr.nil;$addMethodSynthesizer(function(){var synthesizeMethod=function(target,m,f){if(target.prototype[m.prop]!==undefined){return;}target.prototype[m.prop]=function(){var v=this.$val[f.prop];if(f.typ===$jsObjectPtr){v=new $jsObjectPtr(v);}if(v.$val===undefined){v=new f.typ(v);}return v[m.prop].apply(v,arguments);};};fields.forEach(function(f){if(f.name===""){$methodSet(f.typ).forEach(function(m){synthesizeMethod(typ,m,f);synthesizeMethod(typ.ptr,m,f);});$methodSet($ptrType(f.typ)).forEach(function(m){synthesizeMethod(typ.ptr,m,f);});}});});};break;default:$panic(new $String("invalid kind: "+kind));}switch(kind){case $kindBool:case $kindMap:typ.zero=function(){return false;};break;case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:case $kindFloat32:case $kindFloat64:typ.zero=function(){return 0;};break;case $kindString:typ.zero=function(){return"";};break;case $kindInt64:case $kindUint64:case $kindComplex64:case $kindComplex128:var zero=new typ(0,0);typ.zero=function(){return zero;};break;case $kindPtr:case $kindSlice:typ.zero=function(){return typ.nil;};break;case $kindChan:typ.zero=function(){return $chanNil;};break;case $kindFunc:typ.zero=function(){return $throwNilPointerError;};break;case $kindInterface:typ.zero=function(){return $ifaceNil;};break;case $kindArray:typ.zero=function(){var arrayClass=$nativeArray(typ.elem.kind);if(arrayClass!==Array){return new arrayClass(typ.len);}var array=new Array(typ.len);for(var i=0;i<typ.len;i++){array[i]=typ.elem.zero();}return array;};break;case $kindStruct:typ.zero=function(){return new typ.ptr();};break;default:$panic(new $String("invalid kind: "+kind));}typ.id=$typeIDCounter;$typeIDCounter++;typ.size=size;typ.kind=kind;typ.string=string;typ.named=named;typ.pkg=pkg;typ.exported=exported;typ.methods=[];typ.methodSetCache=null;typ.comparable=true;return typ;};var $methodSet=function(typ){if(typ.methodSetCache!==null){return typ.methodSetCache;}var base={};var isPtr=(typ.kind===$kindPtr);if(isPtr&&typ.elem.kind===$kindInterface){typ.methodSetCache=[];return[];}var current=[{typ:isPtr?typ.elem:typ,indirect:isPtr}];var seen={};while(current.length>0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.named){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",true,"",false,null);var $Int=$newType(4,$kindInt,"int",true,"",false,null);var $Int8=$newType(1,$kindInt8,"int8",true,"",false,null);var $Int16=$newType(2,$kindInt16,"int16",true,"",false,null);var $Int32=$newType(4,$kindInt32,"int32",true,"",false,null);var $Int64=$newType(8,$kindInt64,"int64",true,"",false,null);var $Uint=$newType(4,$kindUint,"uint",true,"",false,null);var $Uint8=$newType(1,$kindUint8,"uint8",true,"",false,null);var $Uint16=$newType(2,$kindUint16,"uint16",true,"",false,null);var $Uint32=$newType(4,$kindUint32,"uint32",true,"",false,null);var $Uint64=$newType(8,$kindUint64,"uint64",true,"",false,null);var $Uintptr=$newType(4,$kindUintptr,"uintptr",true,"",false,null);var $Float32=$newType(4,$kindFloat32,"float32",true,"",false,null);var $Float64=$newType(8,$kindFloat64,"float64",true,"",false,null);var $Complex64=$newType(8,$kindComplex64,"complex64",true,"",false,null);var $Complex128=$newType(16,$kindComplex128,"complex128",true,"",false,null);var $String=$newType(8,$kindString,"string",true,"",false,null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer",true,"",false,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,false,"",false,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,false,"",false,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,false,"",false,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,false,"",false,null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error",true,"",false,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,false,"",false,null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i<entries.length;i++){var e=entries[i];m[keyForFunc(e.k)]=e;}return m;};var $ptrType=function(elem){var typ=elem.ptr;if(typ===undefined){typ=$newType(4,$kindPtr,"*"+elem.string,false,"",elem.exported,null);elem.ptr=typ;typ.init(elem);}return typ;};var $newDataPointer=function(data,constructor){if(constructor.elem.kind===$kindStruct){return data;}return new constructor(function(){return data;},function(v){data=v;});};var $indexPtr=function(array,index,constructor){array.$ptr=array.$ptr||{};return array.$ptr[index]||(array.$ptr[index]=new constructor(function(){return array[index];},function(v){array[index]=v;}));};var $sliceType=function(elem){var typ=elem.slice;if(typ===undefined){typ=$newType(12,$kindSlice,"[]"+elem.string,false,"",false,null);elem.slice=typ;typ.init(elem);}return typ;};var $makeSlice=function(typ,length,capacity){capacity=capacity||length;if(length<0||length>2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity<length||capacity>2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i<capacity;i++){array[i]=typ.elem.zero();}}var slice=new typ(array);slice.$length=length;return slice;};var $structTypes={};var $structType=function(pkgPath,fields){var typeKey=$mapArray(fields,function(f){return f.name+","+f.typ.id+","+f.tag;}).join("$");var typ=$structTypes[typeKey];if(typ===undefined){var string="struct { "+$mapArray(fields,function(f){return f.name+" "+f.typ.string+(f.tag!==""?(" \""+f.tag.replace(/\\/g,"\\\\").replace(/"/g, "\\\"")+"\""):"");}).join("; ")+" }";if(fields.length===0){string="struct {}";}typ=$newType(0,$kindStruct,string,false,"",false,function(){this.$val=this;for(var i=0;i<fields.length;i++){var f=fields[i];var arg=arguments[i];this[f.prop]=arg!==undefined?arg:f.typ.zero();}});$structTypes[typeKey]=typ;typ.init(pkgPath,fields);}return typ;};var $assertType=function(value,type,returnTuple){var isInterface=(type.kind===$kindInterface),ok,missingMethod="";if(value===$ifaceNil){ok=false;}else if(!isInterface){ok=value.constructor===type;}else{var valueTypeString=value.constructor.string;ok=type.implementedBy[valueTypeString];if(ok===undefined){ok=true;var valueMethodSet=$methodSet(value.constructor);var interfaceMethods=type.methods;for(var i=0;i<interfaceMethods.length;i++){var tm=interfaceMethods[i];var found=false;for(var j=0;j<valueMethodSet.length;j++){var vm=valueMethodSet[j];if(vm.name===tm.name&&vm.pkg===tm.pkg&&vm.typ===tm.typ){found=true;break;}}if(!found){ok=false;type.missingMethodFor[valueTypeString]=tm.name;break;}}type.implementedBy[valueTypeString]=ok;}if(!ok){missingMethod=type.missingMethodFor[valueTypeString];}}if(!ok){if(returnTuple){return[type.zero(),false];}$panic(new $packages["runtime"].TypeAssertionError.ptr("",(value===$ifaceNil?"":value.constructor.string),type.string,missingMethod));}if(!isInterface){value=value.$val;}if(type===$jsObjectPtr){value=value.object;}return returnTuple?[value,true]:value;};var $stackDepthOffset=0;var $getStackDepth=function(){var err=new Error();if(err.stack===undefined){return undefined;}return $stackDepthOffset+err.stack.split("\n").length;};var $panicStackDepth=null,$panicValue;var $callDeferred=function(deferred,jsErr,fromPanic){if(!fromPanic&&deferred!==null&&deferred.index>=$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 $noGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[]};var $curGoroutine=$noGoroutine,$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=$noGoroutine;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=[];$schedule($goroutine);};var $scheduled=[];var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}}finally{if($scheduled.length>0){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}$scheduled.push(goroutine);if($curGoroutine===$noGoroutine){$runScheduled();}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if($curGoroutine===$noGoroutine){$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.length<chan.$capacity){chan.$buffer.push(value);return;}var thisGoroutine=$curGoroutine;var closedDuringSend;chan.$sendQueue.push(function(closed){closedDuringSend=closed;$schedule(thisGoroutine);return value;});$block();return{$blk:function(){if(closedDuringSend){$throwRuntimeError("send on closed channel");}}};};var $recv=function(chan){var queuedSend=chan.$sendQueue.shift();if(queuedSend!==undefined){chan.$buffer.push(queuedSend(false));}var bufferedValue=chan.$buffer.shift();if(bufferedValue!==undefined){return[bufferedValue,true];}if(chan.$closed){return[chan.$elem.zero(),false];}var thisGoroutine=$curGoroutine;var f={$blk:function(){return this.value;}};var queueEntry=function(v){f.value=v;$schedule(thisGoroutine);};chan.$recvQueue.push(queueEntry);$block();return f;};var $close=function(chan){if(chan.$closed){$throwRuntimeError("close of closed channel");}chan.$closed=true;while(true){var queuedSend=chan.$sendQueue.shift();if(queuedSend===undefined){break;}queuedSend(true);}while(true){var queuedRecv=chan.$recvQueue.shift();if(queuedRecv===undefined){break;}queuedRecv([chan.$elem.zero(),false]);}};var $select=function(comms){var ready=[];var selection=-1;for(var i=0;i<comms.length;i++){var comm=comms[i];var chan=comm[0];switch(comm.length){case 0:selection=i;break;case 1:if(chan.$sendQueue.length!==0||chan.$buffer.length!==0||chan.$closed){ready.push(i);}break;case 2:if(chan.$closed){$throwRuntimeError("send on closed channel");}if(chan.$recvQueue.length!==0||chan.$buffer.length<chan.$capacity){ready.push(i);}break;}}if(ready.length!==0){selection=ready[Math.floor(Math.random()*ready.length)];}if(selection!==-1){var comm=comms[selection];switch(comm.length){case 0:return[selection];case 1:return[selection,$recv(comm[0])];case 2:$send(comm[0],comm[1]);return[selection];}}var entries=[];var thisGoroutine=$curGoroutine;var f={$blk:function(){return this.selection;}};var removeFromQueues=function(){for(var i=0;i<entries.length;i++){var entry=entries[i];var queue=entry[0];var index=queue.indexOf(entry[1]);if(index!==-1){queue.splice(index,1);}}};for(var i=0;i<comms.length;i++){(function(i){var comm=comms[i];switch(comm.length){case 1:var queueEntry=function(value){f.selection=[i,value];removeFromQueues();$schedule(thisGoroutine);};entries.push([comm[0].$recvQueue,queueEntry]);comm[0].$recvQueue.push(queueEntry);break;case 2:var queueEntry=function(){if(comm[0].$closed){$throwRuntimeError("send on closed channel");}f.selection=[i];removeFromQueues();$schedule(thisGoroutine);return comm[1];};entries.push([comm[0].$sendQueue,queueEntry]);comm[0].$sendQueue.push(queueEntry);break;}})(i);}$block();return f;};var $jsObjectPtr,$jsErrorPtr;var $needsExternalization=function(t){switch(t.kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindFloat32:case $kindFloat64:return false;default:return t!==$jsObjectPtr;}};var $externalize=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindFloat32:case $kindFloat64:return v;case $kindInt64:case $kindUint64:return $flatten64(v);case $kindArray:if($needsExternalization(t.elem)){return $mapArray(v,function(e){return $externalize(e,t.elem);});}return v;case $kindFunc:return $externalizeFunction(v,t,false);case $kindInterface:if(v===$ifaceNil){return null;}if(v.constructor===$jsObjectPtr){return v.$val.object;}return $externalize(v.$val,v.constructor);case $kindMap:var m={};var keys=$keys(v);for(var i=0;i<keys.length;i++){var entry=v[keys[i]];m[$externalize(entry.k,t.key)]=$externalize(entry.v,t.elem);}return m;case $kindPtr:if(v===t.nil){return null;}return $externalize(v.$get(),t.elem);case $kindSlice:if($needsExternalization(t.elem)){return $mapArray($sliceToArray(v),function(e){return $externalize(e,t.elem);});}return $sliceToArray(v);case $kindString:if(v.search(/^[\x00-\x7F]*$/)!==-1){return v;}var s="",r;for(var i=0;i<v.length;i+=r[1]){r=$decodeRune(v,i);var c=r[0];if(c>0xFFFF){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<t.fields.length;i++){var f=t.fields[i];if(!f.exported){continue;}o[f.name]=$externalize(v[f.prop],f.typ);}return o;}$throwRuntimeError("cannot externalize "+t.string);};var $externalizeFunction=function(v,t,passThis){if(v===$throwNilPointerError){return null;}if(v.$externalizeWrapper===undefined){$checkForDeadlock=false;v.$externalizeWrapper=function(){var args=[];for(var i=0;i<t.params.length;i++){if(t.variadic&&i===t.params.length-1){var vt=t.params[i].elem,varargs=[];for(var j=i;j<arguments.length;j++){varargs.push($internalize(arguments[j],vt));}args.push(new(t.params[i])(varargs));break;}args.push($internalize(arguments[i],t.params[i]));}var canBlock=$curGoroutine.canBlock;$curGoroutine.canBlock=false;try{var result=v.apply(passThis?this:undefined,args);}finally{$curGoroutine.canBlock=canBlock;}switch(t.results.length){case 0:return;case 1:return $externalize(result,t.results[0]);default:for(var i=0;i<t.results.length;i++){result[i]=$externalize(result[i],t.results[i]);}return result;}};}return v.$externalizeWrapper;};var $internalize=function(v,t,recv){if(t===$jsObjectPtr){return v;}if(t===$jsObjectPtr.elem){$throwRuntimeError("cannot internalize js.Object, use *js.Object instead");}if(v&&v.__internal_object__!==undefined){return $assertType(v.__internal_object__,t,false);}var timePkg=$packages["time"];if(timePkg!==undefined&&t===timePkg.Time){if(!(v!==null&&v!==undefined&&v.constructor===Date)){$throwRuntimeError("cannot internalize time.Time from "+typeof v+", must be Date");}return timePkg.Unix(new $Int64(0,0),new $Int64(0,v.getTime()*1000000));}switch(t.kind){case $kindBool:return!!v;case $kindInt:return parseInt(v);case $kindInt8:return parseInt(v)<<24>>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<t.params.length;i++){if(t.variadic&&i===t.params.length-1){var vt=t.params[i].elem,varargs=arguments[i];for(var j=0;j<varargs.$length;j++){args.push($externalize(varargs.$array[varargs.$offset+j],vt));}break;}args.push($externalize(arguments[i],t.params[i]));}var result=v.apply(recv,args);switch(t.results.length){case 0:return;case 1:return $internalize(result,t.results[0]);default:for(var i=0;i<t.results.length;i++){result[i]=$internalize(result[i],t.results[i]);}return result;}};case $kindInterface:if(t.methods.length!==0){$throwRuntimeError("cannot internalize "+t.string);}if(v===null){return $ifaceNil;}if(v===undefined){return new $jsObjectPtr(undefined);}switch(v.constructor){case Int8Array:return new($sliceType($Int8))(v);case Int16Array:return new($sliceType($Int16))(v);case Int32Array:return new($sliceType($Int))(v);case Uint8Array:return new($sliceType($Uint8))(v);case Uint16Array:return new($sliceType($Uint16))(v);case Uint32Array:return new($sliceType($Uint))(v);case Float32Array:return new($sliceType($Float32))(v);case Float64Array:return new($sliceType($Float64))(v);case Array:return $internalize(v,$sliceType($emptyInterface));case Boolean:return new $Bool(!!v);case Date:if(timePkg===undefined){return new $jsObjectPtr(v);}return new timePkg.Time($internalize(v,timePkg.Time));case Function:var funcType=$funcType([$sliceType($emptyInterface)],[$jsObjectPtr],true);return new funcType($internalize(v,funcType));case Number:return new $Float64(parseFloat(v));case String:return new $String($internalize(v,$String));default:if($global.Node&&v instanceof $global.Node){return new $jsObjectPtr(v);}var mapType=$mapType($String,$emptyInterface);return new mapType($internalize(v,mapType));}case $kindMap:var m={};var keys=$keys(v);for(var i=0;i<keys.length;i++){var k=$internalize(keys[i],t.key);m[t.key.keyFor(k)]={k:k,v:$internalize(v[keys[i]],t.elem)};}return m;case $kindPtr:if(t.elem.kind===$kindStruct){return $internalize(v,t.elem);}case $kindSlice:return new t($mapArray(v,function(e){return $internalize(e,t.elem);}));case $kindString:v=String(v);if(v.search(/^[\x00-\x7F]*$/)!==-1){return v;}var s="";var i=0;while(i<v.length){var h=v.charCodeAt(i);if(0xD800<=h&&h<=0xDBFF){var l=v.charCodeAt(i+1);var c=(h-0xD800)*0x400+l-0xDC00+0x10000;s+=$encodeRune(c);i+=2;continue;}s+=$encodeRune(h);i++;}return s;case $kindStruct:var noJsObject={};var searchJsObject=function(t){if(t===$jsObjectPtr){return v;}if(t===$jsObjectPtr.elem){$throwRuntimeError("cannot internalize js.Object, use *js.Object instead");}switch(t.kind){case $kindPtr:return searchJsObject(t.elem);case $kindStruct:var f=t.fields[0];var o=searchJsObject(f.typ);if(o!==noJsObject){var n=new t.ptr();n[f.prop]=o;return n;}return noJsObject;default:return noJsObject;}};var o=searchJsObject(t);if(o!==noJsObject){return o;}}$throwRuntimeError("cannot internalize "+t.string);};
+$packages["github.com/gopherjs/gopherjs/js"]=(function(){var $pkg={},$init,A,B,L,N,Q,E,K;A=$pkg.Object=$newType(0,$kindStruct,"js.Object",true,"github.com/gopherjs/gopherjs/js",true,function(object_){this.$val=this;if(arguments.length===0){this.object=null;return;}this.object=object_;});B=$pkg.Error=$newType(0,$kindStruct,"js.Error",true,"github.com/gopherjs/gopherjs/js",true,function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});L=$sliceType($emptyInterface);N=$ptrType(A);Q=$ptrType(B);A.ptr.prototype.Get=function(a){var $ptr,a,b;b=this;return b.object[$externalize(a,$String)];};A.prototype.Get=function(a){return this.$val.Get(a);};A.ptr.prototype.Set=function(a,b){var $ptr,a,b,c;c=this;c.object[$externalize(a,$String)]=$externalize(b,$emptyInterface);};A.prototype.Set=function(a,b){return this.$val.Set(a,b);};A.ptr.prototype.Delete=function(a){var $ptr,a,b;b=this;delete b.object[$externalize(a,$String)];};A.prototype.Delete=function(a){return this.$val.Delete(a);};A.ptr.prototype.Length=function(){var $ptr,a;a=this;return $parseInt(a.object.length);};A.prototype.Length=function(){return this.$val.Length();};A.ptr.prototype.Index=function(a){var $ptr,a,b;b=this;return b.object[a];};A.prototype.Index=function(a){return this.$val.Index(a);};A.ptr.prototype.SetIndex=function(a,b){var $ptr,a,b,c;c=this;c.object[a]=$externalize(b,$emptyInterface);};A.prototype.SetIndex=function(a,b){return this.$val.SetIndex(a,b);};A.ptr.prototype.Call=function(a,b){var $ptr,a,b,c,d;c=this;return(d=c.object,d[$externalize(a,$String)].apply(d,$externalize(b,L)));};A.prototype.Call=function(a,b){return this.$val.Call(a,b);};A.ptr.prototype.Invoke=function(a){var $ptr,a,b;b=this;return b.object.apply(undefined,$externalize(a,L));};A.prototype.Invoke=function(a){return this.$val.Invoke(a);};A.ptr.prototype.New=function(a){var $ptr,a,b;b=this;return new($global.Function.prototype.bind.apply(b.object,[undefined].concat($externalize(a,L))));};A.prototype.New=function(a){return this.$val.New(a);};A.ptr.prototype.Bool=function(){var $ptr,a;a=this;return!!(a.object);};A.prototype.Bool=function(){return this.$val.Bool();};A.ptr.prototype.String=function(){var $ptr,a;a=this;return $internalize(a.object,$String);};A.prototype.String=function(){return this.$val.String();};A.ptr.prototype.Int=function(){var $ptr,a;a=this;return $parseInt(a.object)>>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();};E=function(a){var $ptr,a;return $makeFunc(a);};$pkg.MakeFunc=E;K=function(){var $ptr,a;a=new B.ptr(null);$unused(a);};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("github.com/gopherjs/gopherjs/js",[{prop:"object",name:"object",exported:false,typ:N,tag:""}]);B.init("",[{prop:"Object",name:"",exported:true,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/internal/sys"]=(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["runtime"]=(function(){var $pkg={},$init,B,A,S,AH,AI,AO,AP,AV,E,H,K,L,R,T,W;B=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["runtime/internal/sys"];S=$pkg.Func=$newType(0,$kindStruct,"runtime.Func",true,"runtime",true,function(opaque_){this.$val=this;if(arguments.length===0){this.opaque=new AO.ptr();return;}this.opaque=opaque_;});AH=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError",true,"runtime",true,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_;});AI=$pkg.errorString=$newType(8,$kindString,"runtime.errorString",true,"runtime",false,null);AO=$structType("",[]);AP=$ptrType(S);AV=$ptrType(AH);E=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 AI(b));});b=$ifaceNil;b=new AH.ptr("","","","");$unused(b);};H=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=H;K=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=K;L=function(a){var $ptr,a;return 1;};$pkg.GOMAXPROCS=L;R=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=R;S.ptr.prototype.Entry=function(){var $ptr;return 0;};S.prototype.Entry=function(){return this.$val.Entry();};S.ptr.prototype.FileLine=function(a){var $ptr,a,b,c,d,e;b="";c=0;d="";e=0;b=d;c=e;return[b,c];};S.prototype.FileLine=function(a){return this.$val.FileLine(a);};S.ptr.prototype.Name=function(){var $ptr;return"";};S.prototype.Name=function(){return this.$val.Name();};T=function(a){var $ptr,a;return AP.nil;};$pkg.FuncForPC=T;W=function(a,b){var $ptr,a,b,c;c=new($global.Error)().stack;if(c===undefined){return 0;}return $copyString(a,$internalize(c.substr(($parseInt(c.indexOf($externalize("\n",$String)))>>0)+1>>0),$String));};$pkg.Stack=W;AH.ptr.prototype.RuntimeError=function(){var $ptr;};AH.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AH.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;};AH.prototype.Error=function(){return this.$val.Error();};AI.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AI).prototype.RuntimeError=function(){return new AI(this.$get()).RuntimeError();};AI.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AI).prototype.Error=function(){return new AI(this.$get()).Error();};AP.methods=[{prop:"Entry",name:"Entry",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"FileLine",name:"FileLine",pkg:"",typ:$funcType([$Uintptr],[$String,$Int],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)}];AV.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AI.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];S.init("runtime",[{prop:"opaque",name:"opaque",exported:false,typ:AO,tag:""}]);AH.init("runtime",[{prop:"interfaceString",name:"interfaceString",exported:false,typ:$String,tag:""},{prop:"concreteString",name:"concreteString",exported:false,typ:$String,tag:""},{prop:"assertedString",name:"assertedString",exported:false,typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",exported:false,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=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;}E();}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",true,"errors",false,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("errors",[{prop:"s",name:"s",exported:false,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["internal/race"]=(function(){var $pkg={},$init,A,B,C,D,E,H,I;A=function(a){var $ptr,a;};$pkg.Acquire=A;B=function(a){var $ptr,a;};$pkg.Release=B;C=function(a){var $ptr,a;};$pkg.ReleaseMerge=C;D=function(){var $ptr;};$pkg.Disable=D;E=function(){var $ptr;};$pkg.Enable=E;H=function(a,b){var $ptr,a,b;};$pkg.ReadRange=H;I=function(a,b){var $ptr,a,b;};$pkg.WriteRange=I;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}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,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;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,C,A,E,R,S,T,U,AF,AM,AN,AP,AQ,AR,AS,AT,AW,BB,BC,BD,BE,BG,BN,BO,BP,BQ,G,I,AA,F,H,J,K,L,Q,Y,AB,AC,AK,AL;B=$packages["internal/race"];C=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool",true,"sync",true,function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=BC.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});R=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex",true,"sync",true,function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});S=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker",true,"sync",true,null);T=$pkg.Once=$newType(0,$kindStruct,"sync.Once",true,"sync",true,function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new R.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});U=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal",true,"sync",false,function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=BC.nil;this.Mutex=new R.ptr(0,0);this.pad=BQ.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.notifyList=$newType(0,$kindStruct,"sync.notifyList",true,"sync",false,function(wait_,notify_,lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.wait=0;this.notify=0;this.lock=0;this.head=0;this.tail=0;return;}this.wait=wait_;this.notify=notify_;this.lock=lock_;this.head=head_;this.tail=tail_;});AM=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex",true,"sync",true,function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new R.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_;});AN=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker",true,"sync",false,function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new R.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_;});AP=$ptrType(E);AQ=$sliceType(AP);AR=$ptrType($Uint32);AS=$chanType($Bool,false,false);AT=$sliceType(AS);AW=$ptrType($Int32);BB=$ptrType(U);BC=$sliceType($emptyInterface);BD=$ptrType(AN);BE=$ptrType(AM);BG=$funcType([],[$emptyInterface],false);BN=$ptrType(R);BO=$funcType([],[],false);BP=$ptrType(T);BQ=$arrayType($Uint8,128);E.ptr.prototype.Get=function(){var $ptr,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;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=this;if(j.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(j.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:k=j.New();$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;case 4:$s=-1;return $ifaceNil;case 2:n=(l=j.store,m=j.store.$length-1>>0,((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]));j.store=$subslice(j.store,0,(j.store.$length-1>>0));$s=-1;return n;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(j){var $ptr,j,k;k=this;if($interfaceIsEqual(j,$ifaceNil)){return;}k.store=$append(k.store,j);};E.prototype.Put=function(j){return this.$val.Put(j);};F=function(j){var $ptr,j;};H=function(j){var $ptr,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;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:if(j.$get()===0){$s=1;continue;}$s=2;continue;case 1:k=new $Chan($Bool,0);l=j;(G||$throwRuntimeError("assignment to entry in nil map"))[AR.keyFor(l)]={k:l,v:$append((m=G[AR.keyFor(j)],m!==undefined?m.v:AT.nil),k)};n=$recv(k);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n[0];case 2:j.$set(j.$get()-(1)>>>0);$s=-1;return;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};J=function(j){var $ptr,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;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.$set(j.$get()+(1)>>>0);l=(k=G[AR.keyFor(j)],k!==undefined?k.v:AT.nil);if(l.$length===0){$s=-1;return;}m=(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]);l=$subslice(l,1);n=j;(G||$throwRuntimeError("assignment to entry in nil map"))[AR.keyFor(n)]={k:n,v:l};if(l.$length===0){delete G[AR.keyFor(j)];}$r=$send(m,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};K=function(j){var $ptr,j;};L=function(j){var $ptr,j;return false;};Q=function(){$throwRuntimeError("native function not implemented: sync.throw");};R.ptr.prototype.Lock=function(){var $ptr,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;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=this;if(A.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),0,1)){if(false){B.Acquire(j);}$s=-1;return;}k=false;l=0;case 1:m=j.state;n=m|1;if(!(((m&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(L(l)){if(!k&&((m&2)===0)&&!(((m>>2>>0)===0))&&A.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),m,m|2)){k=true;}AL();l=l+(1)>>0;$s=1;continue;}n=m+4>>0;case 4:if(k){if((n&2)===0){Q("sync: inconsistent mutex state");}n=(n&~(2))>>0;}if(A.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),m,n)){$s=5;continue;}$s=6;continue;case 5:if((m&1)===0){$s=2;continue;}$r=I((j.$ptr_sema||(j.$ptr_sema=new AR(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},j))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=true;l=0;case 6:$s=1;continue;case 2:if(false){B.Acquire(j);}$s=-1;return;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Lock};}$f.$ptr=$ptr;$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.Lock=function(){return this.$val.Lock();};R.ptr.prototype.Unlock=function(){var $ptr,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.state);B.Release(j);}k=A.AddInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),-1);if((((k+1>>0))&1)===0){Q("sync: unlock of unlocked mutex");}l=k;case 1:if(((l>>2>>0)===0)||!(((l&3)===0))){$s=-1;return;}k=((l-4>>0))|2;if(A.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AW(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),l,k)){$s=3;continue;}$s=4;continue;case 3:$r=J((j.$ptr_sema||(j.$ptr_sema=new AR(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},j))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 4:l=j.state;$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};R.prototype.Unlock=function(){return this.$val.Unlock();};T.ptr.prototype.Do=function(j){var $ptr,j,k,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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);k=this;if(A.LoadUint32((k.$ptr_done||(k.$ptr_done=new AR(function(){return this.$target.done;},function($v){this.$target.done=$v;},k))))===1){$s=-1;return;}$r=k.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(k.m,"Unlock"),[]]);if(k.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(k.$ptr_done||(k.$ptr_done=new AR(function(){return this.$target.done;},function($v){this.$target.done=$v;},k))),1]]);$r=j();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:T.ptr.prototype.Do};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};T.prototype.Do=function(j){return this.$val.Do(j);};Y=function(){var $ptr,j,k,l,m,n,o,p,q,r,s;j=AA;k=0;while(true){if(!(k<j.$length)){break;}l=k;m=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);((l<0||l>=AA.$length)?($throwRuntimeError("index out of range"),undefined):AA.$array[AA.$offset+l]=AP.nil);n=0;while(true){if(!(n<(m.localSize>>0))){break;}o=AC(m.local,n);o.private$0=$ifaceNil;p=o.shared;q=0;while(true){if(!(q<p.$length)){break;}r=q;(s=o.shared,((r<0||r>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+r]=$ifaceNil));q++;}o.shared=BC.nil;n=n+(1)>>0;}m.local=0;m.localSize=0;k++;}AA=new AQ([]);};AB=function(){var $ptr;F(Y);};AC=function(j,k){var $ptr,j,k,l;return(l=j,(l.nilCheck,((k<0||k>=l.length)?($throwRuntimeError("index out of range"),undefined):l[k])));};AK=function(){var $ptr,j;j=new AF.ptr(0,0,0,0,0);K(20);};AL=function(){$throwRuntimeError("native function not implemented: sync.runtime_doSpin");};AM.ptr.prototype.RLock=function(){var $ptr,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);B.Disable();}if(A.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AW(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(false){B.Enable();B.Acquire((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));}$s=-1;return;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.RLock=function(){return this.$val.RLock();};AM.ptr.prototype.RUnlock=function(){var $ptr,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);B.ReleaseMerge((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));B.Disable();}k=A.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AW(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),-1);if(k<0){$s=1;continue;}$s=2;continue;case 1:if(((k+1>>0)===0)||((k+1>>0)===-1073741824)){B.Enable();Q("sync: RUnlock of unlocked RWMutex");}if(A.AddInt32((j.$ptr_readerWait||(j.$ptr_readerWait=new AW(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},j))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=J((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:if(false){B.Enable();}$s=-1;return;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.RUnlock=function(){return this.$val.RUnlock();};AM.ptr.prototype.Lock=function(){var $ptr,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);B.Disable();}$r=j.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=A.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AW(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),-1073741824)+1073741824>>0;if(!((k===0))&&!((A.AddInt32((j.$ptr_readerWait||(j.$ptr_readerWait=new AW(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},j))),k)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:if(false){B.Enable();B.Acquire((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));B.Acquire((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));}$s=-1;return;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Lock=function(){return this.$val.Lock();};AM.ptr.prototype.Unlock=function(){var $ptr,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);B.Release((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));B.Release((j.$ptr_writerSem||(j.$ptr_writerSem=new AR(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))));B.Disable();}k=A.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AW(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),1073741824);if(k>=1073741824){B.Enable();Q("sync: Unlock of unlocked RWMutex");}l=0;case 1:if(!(l<(k>>0))){$s=2;continue;}$r=J((j.$ptr_readerSem||(j.$ptr_readerSem=new AR(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=l+(1)>>0;$s=1;continue;case 2:$r=j.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(false){B.Enable();}$s=-1;return;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Unlock=function(){return this.$val.Unlock();};AM.ptr.prototype.RLocker=function(){var $ptr,j;j=this;return $pointerOfStructConversion(j,BD);};AM.prototype.RLocker=function(){return this.$val.RLocker();};AN.ptr.prototype.Lock=function(){var $ptr,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;$r=$pointerOfStructConversion(j,BE).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Lock=function(){return this.$val.Lock();};AN.ptr.prototype.Unlock=function(){var $ptr,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;$r=$pointerOfStructConversion(j,BE).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Unlock=function(){return this.$val.Unlock();};AP.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([],[BB],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[BB],false)}];BN.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BP.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BO],[],false)}];BE.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([],[S],false)}];BD.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init("sync",[{prop:"local",name:"local",exported:false,typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",exported:false,typ:$Uintptr,tag:""},{prop:"store",name:"store",exported:false,typ:BC,tag:""},{prop:"New",name:"New",exported:true,typ:BG,tag:""}]);R.init("sync",[{prop:"state",name:"state",exported:false,typ:$Int32,tag:""},{prop:"sema",name:"sema",exported:false,typ:$Uint32,tag:""}]);S.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);T.init("sync",[{prop:"m",name:"m",exported:false,typ:R,tag:""},{prop:"done",name:"done",exported:false,typ:$Uint32,tag:""}]);U.init("sync",[{prop:"private$0",name:"private",exported:false,typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",exported:false,typ:BC,tag:""},{prop:"Mutex",name:"",exported:true,typ:R,tag:""},{prop:"pad",name:"pad",exported:false,typ:BQ,tag:""}]);AF.init("sync",[{prop:"wait",name:"wait",exported:false,typ:$Uint32,tag:""},{prop:"notify",name:"notify",exported:false,typ:$Uint32,tag:""},{prop:"lock",name:"lock",exported:false,typ:$Uintptr,tag:""},{prop:"head",name:"head",exported:false,typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",exported:false,typ:$UnsafePointer,tag:""}]);AM.init("sync",[{prop:"w",name:"w",exported:false,typ:R,tag:""},{prop:"writerSem",name:"writerSem",exported:false,typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",exported:false,typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",exported:false,typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",exported:false,typ:$Int32,tag:""}]);AN.init("sync",[{prop:"w",name:"w",exported:false,typ:R,tag:""},{prop:"writerSem",name:"writerSem",exported:false,typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",exported:false,typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",exported:false,typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",exported:false,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=C.$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;}AA=AQ.nil;G={};I=H;AB();AK();}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,S,U,V,W,AY,AI,AJ,X,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader",true,"io",true,null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer",true,"io",true,null);S=$pkg.ByteScanner=$newType(8,$kindInterface,"io.ByteScanner",true,"io",true,null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader",true,"io",true,null);V=$pkg.RuneScanner=$newType(8,$kindInterface,"io.RuneScanner",true,"io",true,null);W=$pkg.stringWriter=$newType(8,$kindInterface,"io.stringWriter",true,"io",false,null);AY=$sliceType($Uint8);X=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=0;d=$ifaceNil;e=$assertType(a,W,true);f=e[0];g=e[1];if(g){$s=1;continue;}$s=2;continue;case 1:i=f.WriteString(b);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c=h[0];d=h[1];$s=-1;return[c,d];case 2:k=a.Write(new AY($stringToBytes(b)));$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;c=j[0];d=j[1];$s=-1;return[c,d];}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.$s=$s;$f.$r=$r;return $f;};$pkg.WriteString=X;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<c){f=0;g=$pkg.ErrShortBuffer;d=f;e=g;$s=-1;return[d,e];}case 1:if(!(d<c&&$interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}h=0;j=a.Read($subslice(b,d));$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;h=i[0];e=i[1];d=d+(h)>>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}$s=-1;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=-1;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([AY],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AY],[$Int,$error],false)}]);S.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)}]);V.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);W.init([{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$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,FI,FJ,FK,FL,GS,B,C,D,E,F,AS,EQ,P,T,V,W,X,Z,AC,AH,AT,AU,AV,AW,AX,AY,BI,BW,EG,ES;A=$packages["github.com/gopherjs/gopherjs/js"];FI=$arrayType($Uint32,2);FJ=$arrayType($Float32,2);FK=$arrayType($Float64,1);FL=$structType("math",[{prop:"uint32array",name:"uint32array",exported:false,typ:FI,tag:""},{prop:"float32array",name:"float32array",exported:false,typ:FJ,tag:""},{prop:"float64array",name:"float64array",exported:false,typ:FK,tag:""}]);GS=$arrayType($Float64,70);P=function(aq){var $ptr,aq;return $parseFloat(B.exp(aq));};$pkg.Exp=P;T=function(aq){var $ptr,aq,ar,as,at;ar=0;as=0;at=BW(aq);ar=at[0];as=at[1];return[ar,as];};$pkg.Frexp=T;V=function(aq){var $ptr,aq;if(aq>=0){return D;}else{return E;}};$pkg.Inf=V;W=function(aq,ar){var $ptr,aq,ar;if(aq===D){return ar>=0;}if(aq===E){return ar<=0;}return false;};$pkg.IsInf=W;X=function(aq){var $ptr,aq,ar;ar=false;ar=!((aq===aq));return ar;};$pkg.IsNaN=X;Z=function(aq){var $ptr,aq;if(!((aq===aq))){return F;}return $parseFloat(B.log(aq));};$pkg.Log=Z;AC=function(aq){var $ptr,aq;return EG(aq);};$pkg.Log2=AC;AH=function(){var $ptr;return F;};$pkg.NaN=AH;AT=function(){var $ptr,aq;aq=new($global.ArrayBuffer)(8);AS.uint32array=new($global.Uint32Array)(aq);AS.float32array=new($global.Float32Array)(aq);AS.float64array=new($global.Float64Array)(aq);};AU=function(aq){var $ptr,aq;AS.float32array[0]=aq;return AS.uint32array[0];};$pkg.Float32bits=AU;AV=function(aq){var $ptr,aq;AS.uint32array[0]=aq;return AS.float32array[0];};$pkg.Float32frombits=AV;AW=function(aq){var $ptr,aq,ar,as;AS.float64array[0]=aq;return(ar=$shiftLeft64(new $Uint64(0,AS.uint32array[1]),32),as=new $Uint64(0,AS.uint32array[0]),new $Uint64(ar.$high+as.$high,ar.$low+as.$low));};$pkg.Float64bits=AW;AX=function(aq){var $ptr,aq;AS.uint32array[0]=(aq.$low>>>0);AS.uint32array[1]=($shiftRightUint64(aq,32).$low>>>0);return AS.float64array[0];};$pkg.Float64frombits=AX;AY=function(aq){var $ptr,aq;if(aq<0){return-aq;}if(aq===0){return 0;}return aq;};$pkg.Abs=AY;BI=function(aq){var $ptr,aq,ar,as,at,au,av,aw;ar=0;as=0;if(AY(aq)<2.2250738585072014e-308){at=aq*4.503599627370496e+15;au=-52;ar=at;as=au;return[ar,as];}av=aq;aw=0;ar=av;as=aw;return[ar,as];};BW=function(aq){var $ptr,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb;ar=0;as=0;if((aq===0)){at=aq;au=0;ar=at;as=au;return[ar,as];}else if(W(aq,0)||X(aq)){av=aq;aw=0;ar=av;as=aw;return[ar,as];}ax=BI(aq);aq=ax[0];as=ax[1];ay=AW(aq);as=as+(((((az=$shiftRightUint64(ay,52),new $Uint64(az.$high&0,(az.$low&2047)>>>0)).$low>>0)-1023>>0)+1>>0))>>0;ay=(ba=new $Uint64(2146435072,0),new $Uint64(ay.$high&~ba.$high,(ay.$low&~ba.$low)>>>0));ay=(bb=new $Uint64(1071644672,0),new $Uint64(ay.$high|bb.$high,(ay.$low|bb.$low)>>>0));ar=AX(ay);return[ar,as];};EG=function(aq){var $ptr,aq,ar,as,at;ar=T(aq);as=ar[0];at=ar[1];if(as===0.5){return(at-1>>0);}return Z(as)*1.4426950408889634+at;};ES=function(){var $ptr,aq,ar,as,at;EQ[0]=1;EQ[1]=10;aq=2;while(true){if(!(aq<70)){break;}as=(ar=aq/2,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));((aq<0||aq>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[aq]=((as<0||as>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[as])*(at=aq-as>>0,((at<0||at>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[at])));aq=aq+(1)>>0;}};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AS=new FL.ptr(FI.zero(),FJ.zero(),FK.zero());EQ=GS.zero();B=$global.Math;C=0;D=1/C;E=-1/C;F=0/C;AT();ES();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["syscall"]=(function(){var $pkg={},$init,A,D,B,C,BT,BW,BZ,DT,DU,FT,FU,GC,GD,GE,GF,MT,NC,NH,NI,NJ,NK,NL,NM,NN,NO,OC,OE,OG,OH,OI,OV,OX,PF,PO,PP,PQ,PU,PV,PW,PX,PY,QC,QI,QJ,QK,QL,QM,QS,QT,QW,QX,QY,QZ,RA,RB,RC,RD,RE,RF,RI,E,F,N,O,P,AA,AB,AC,AD,FJ,FV,FW,FX,GY,PE,HD,G,H,I,J,K,L,Q,R,S,T,V,W,X,Y,Z,AF,AH,AW,BP,BQ,BR,BS,BU,BV,BX,BY,CA,CB,CN,CO,CT,CV,DB,DV,DY,FB,FC,FD,FE,FY,GA,GB,GG,GK,GL,GV,HG,HW,ID,IG,IH,II,IK,IN,IO,JI,KD,KH,KP,KQ,KS,KV,KX,LD,LE,LF,LG,LS,LY,ME,MH,MI,MJ,MM;A=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["internal/race"];B=$packages["runtime"];C=$packages["sync"];BT=$pkg.NetlinkRouteRequest=$newType(0,$kindStruct,"syscall.NetlinkRouteRequest",true,"syscall",true,function(Header_,Data_){this.$val=this;if(arguments.length===0){this.Header=new OC.ptr(0,0,0,0,0);this.Data=new OE.ptr(0);return;}this.Header=Header_;this.Data=Data_;});BW=$pkg.NetlinkMessage=$newType(0,$kindStruct,"syscall.NetlinkMessage",true,"syscall",true,function(Header_,Data_){this.$val=this;if(arguments.length===0){this.Header=new OC.ptr(0,0,0,0,0);this.Data=OV.nil;return;}this.Header=Header_;this.Data=Data_;});BZ=$pkg.NetlinkRouteAttr=$newType(0,$kindStruct,"syscall.NetlinkRouteAttr",true,"syscall",true,function(Attr_,Value_){this.$val=this;if(arguments.length===0){this.Attr=new OG.ptr(0,0);this.Value=OV.nil;return;}this.Attr=Attr_;this.Value=Value_;});DT=$pkg.SockaddrLinklayer=$newType(0,$kindStruct,"syscall.SockaddrLinklayer",true,"syscall",true,function(Protocol_,Ifindex_,Hatype_,Pkttype_,Halen_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Protocol=0;this.Ifindex=0;this.Hatype=0;this.Pkttype=0;this.Halen=0;this.Addr=PO.zero();this.raw=new NK.ptr(0,0,0,0,0,0,PO.zero());return;}this.Protocol=Protocol_;this.Ifindex=Ifindex_;this.Hatype=Hatype_;this.Pkttype=Pkttype_;this.Halen=Halen_;this.Addr=Addr_;this.raw=raw_;});DU=$pkg.SockaddrNetlink=$newType(0,$kindStruct,"syscall.SockaddrNetlink",true,"syscall",true,function(Family_,Pad_,Pid_,Groups_,raw_){this.$val=this;if(arguments.length===0){this.Family=0;this.Pad=0;this.Pid=0;this.Groups=0;this.raw=new NL.ptr(0,0,0,0);return;}this.Family=Family_;this.Pad=Pad_;this.Pid=Pid_;this.Groups=Groups_;this.raw=raw_;});FT=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper",true,"syscall",false,function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new C.Mutex.ptr(0,0);this.active=false;this.mmap=$throwNilPointerError;this.munmap=$throwNilPointerError;return;}this.Mutex=Mutex_;this.active=active_;this.mmap=mmap_;this.munmap=munmap_;});FU=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno",true,"syscall",true,null);GC=$pkg.Sockaddr=$newType(8,$kindInterface,"syscall.Sockaddr",true,"syscall",true,null);GD=$pkg.SockaddrInet4=$newType(0,$kindStruct,"syscall.SockaddrInet4",true,"syscall",true,function(Port_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Port=0;this.Addr=QJ.zero();this.raw=new NH.ptr(0,0,QJ.zero(),PO.zero());return;}this.Port=Port_;this.Addr=Addr_;this.raw=raw_;});GE=$pkg.SockaddrInet6=$newType(0,$kindStruct,"syscall.SockaddrInet6",true,"syscall",true,function(Port_,ZoneId_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Port=0;this.ZoneId=0;this.Addr=PQ.zero();this.raw=new NI.ptr(0,0,0,PQ.zero(),0);return;}this.Port=Port_;this.ZoneId=ZoneId_;this.Addr=Addr_;this.raw=raw_;});GF=$pkg.SockaddrUnix=$newType(0,$kindStruct,"syscall.SockaddrUnix",true,"syscall",true,function(Name_,raw_){this.$val=this;if(arguments.length===0){this.Name="";this.raw=new NJ.ptr(0,QI.zero());return;}this.Name=Name_;this.raw=raw_;});MT=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec",true,"syscall",true,function(Sec_,Nsec_){this.$val=this;if(arguments.length===0){this.Sec=new $Int64(0,0);this.Nsec=new $Int64(0,0);return;}this.Sec=Sec_;this.Nsec=Nsec_;});NC=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t",true,"syscall",true,function(Dev_,Ino_,Nlink_,Mode_,Uid_,Gid_,X__pad0_,Rdev_,Size_,Blksize_,Blocks_,Atim_,Mtim_,Ctim_,X__unused_){this.$val=this;if(arguments.length===0){this.Dev=new $Uint64(0,0);this.Ino=new $Uint64(0,0);this.Nlink=new $Uint64(0,0);this.Mode=0;this.Uid=0;this.Gid=0;this.X__pad0=0;this.Rdev=new $Uint64(0,0);this.Size=new $Int64(0,0);this.Blksize=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Atim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.X__unused=RI.zero();return;}this.Dev=Dev_;this.Ino=Ino_;this.Nlink=Nlink_;this.Mode=Mode_;this.Uid=Uid_;this.Gid=Gid_;this.X__pad0=X__pad0_;this.Rdev=Rdev_;this.Size=Size_;this.Blksize=Blksize_;this.Blocks=Blocks_;this.Atim=Atim_;this.Mtim=Mtim_;this.Ctim=Ctim_;this.X__unused=X__unused_;});NH=$pkg.RawSockaddrInet4=$newType(0,$kindStruct,"syscall.RawSockaddrInet4",true,"syscall",true,function(Family_,Port_,Addr_,Zero_){this.$val=this;if(arguments.length===0){this.Family=0;this.Port=0;this.Addr=QJ.zero();this.Zero=PO.zero();return;}this.Family=Family_;this.Port=Port_;this.Addr=Addr_;this.Zero=Zero_;});NI=$pkg.RawSockaddrInet6=$newType(0,$kindStruct,"syscall.RawSockaddrInet6",true,"syscall",true,function(Family_,Port_,Flowinfo_,Addr_,Scope_id_){this.$val=this;if(arguments.length===0){this.Family=0;this.Port=0;this.Flowinfo=0;this.Addr=PQ.zero();this.Scope_id=0;return;}this.Family=Family_;this.Port=Port_;this.Flowinfo=Flowinfo_;this.Addr=Addr_;this.Scope_id=Scope_id_;});NJ=$pkg.RawSockaddrUnix=$newType(0,$kindStruct,"syscall.RawSockaddrUnix",true,"syscall",true,function(Family_,Path_){this.$val=this;if(arguments.length===0){this.Family=0;this.Path=QI.zero();return;}this.Family=Family_;this.Path=Path_;});NK=$pkg.RawSockaddrLinklayer=$newType(0,$kindStruct,"syscall.RawSockaddrLinklayer",true,"syscall",true,function(Family_,Protocol_,Ifindex_,Hatype_,Pkttype_,Halen_,Addr_){this.$val=this;if(arguments.length===0){this.Family=0;this.Protocol=0;this.Ifindex=0;this.Hatype=0;this.Pkttype=0;this.Halen=0;this.Addr=PO.zero();return;}this.Family=Family_;this.Protocol=Protocol_;this.Ifindex=Ifindex_;this.Hatype=Hatype_;this.Pkttype=Pkttype_;this.Halen=Halen_;this.Addr=Addr_;});NL=$pkg.RawSockaddrNetlink=$newType(0,$kindStruct,"syscall.RawSockaddrNetlink",true,"syscall",true,function(Family_,Pad_,Pid_,Groups_){this.$val=this;if(arguments.length===0){this.Family=0;this.Pad=0;this.Pid=0;this.Groups=0;return;}this.Family=Family_;this.Pad=Pad_;this.Pid=Pid_;this.Groups=Groups_;});NM=$pkg.RawSockaddr=$newType(0,$kindStruct,"syscall.RawSockaddr",true,"syscall",true,function(Family_,Data_){this.$val=this;if(arguments.length===0){this.Family=0;this.Data=QK.zero();return;}this.Family=Family_;this.Data=Data_;});NN=$pkg.RawSockaddrAny=$newType(0,$kindStruct,"syscall.RawSockaddrAny",true,"syscall",true,function(Addr_,Pad_){this.$val=this;if(arguments.length===0){this.Addr=new NM.ptr(0,QK.zero());this.Pad=QL.zero();return;}this.Addr=Addr_;this.Pad=Pad_;});NO=$pkg._Socklen=$newType(4,$kindUint32,"syscall._Socklen",true,"syscall",false,null);OC=$pkg.NlMsghdr=$newType(0,$kindStruct,"syscall.NlMsghdr",true,"syscall",true,function(Len_,Type_,Flags_,Seq_,Pid_){this.$val=this;if(arguments.length===0){this.Len=0;this.Type=0;this.Flags=0;this.Seq=0;this.Pid=0;return;}this.Len=Len_;this.Type=Type_;this.Flags=Flags_;this.Seq=Seq_;this.Pid=Pid_;});OE=$pkg.RtGenmsg=$newType(0,$kindStruct,"syscall.RtGenmsg",true,"syscall",true,function(Family_){this.$val=this;if(arguments.length===0){this.Family=0;return;}this.Family=Family_;});OG=$pkg.RtAttr=$newType(0,$kindStruct,"syscall.RtAttr",true,"syscall",true,function(Len_,Type_){this.$val=this;if(arguments.length===0){this.Len=0;this.Type=0;return;}this.Len=Len_;this.Type=Type_;});OH=$pkg.IfInfomsg=$newType(0,$kindStruct,"syscall.IfInfomsg",true,"syscall",true,function(Family_,X__ifi_pad_,Type_,Index_,Flags_,Change_){this.$val=this;if(arguments.length===0){this.Family=0;this.X__ifi_pad=0;this.Type=0;this.Index=0;this.Flags=0;this.Change=0;return;}this.Family=Family_;this.X__ifi_pad=X__ifi_pad_;this.Type=Type_;this.Index=Index_;this.Flags=Flags_;this.Change=Change_;});OI=$pkg.IfAddrmsg=$newType(0,$kindStruct,"syscall.IfAddrmsg",true,"syscall",true,function(Family_,Prefixlen_,Flags_,Scope_,Index_){this.$val=this;if(arguments.length===0){this.Family=0;this.Prefixlen=0;this.Flags=0;this.Scope=0;this.Index=0;return;}this.Family=Family_;this.Prefixlen=Prefixlen_;this.Flags=Flags_;this.Scope=Scope_;this.Index=Index_;});OV=$sliceType($Uint8);OX=$sliceType($String);PF=$ptrType($Uint8);PO=$arrayType($Uint8,8);PP=$ptrType($Uint16);PQ=$arrayType($Uint8,16);PU=$ptrType(DU);PV=$sliceType(BW);PW=$ptrType(OC);PX=$sliceType(BZ);PY=$ptrType(OG);QC=$arrayType($Uint8,32);QI=$arrayType($Int8,108);QJ=$arrayType($Uint8,4);QK=$arrayType($Int8,14);QL=$arrayType($Int8,96);QM=$ptrType(NO);QS=$structType("syscall",[{prop:"addr",name:"addr",exported:false,typ:$Uintptr,tag:""},{prop:"len",name:"len",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:$Int,tag:""}]);QT=$ptrType($Int64);QW=$ptrType(BT);QX=$ptrType(DT);QY=$ptrType(FT);QZ=$mapType(PF,OV);RA=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);RB=$funcType([$Uintptr,$Uintptr],[$error],false);RC=$ptrType(GD);RD=$ptrType(GE);RE=$ptrType(GF);RF=$ptrType(MT);RI=$arrayType($Int64,3);G=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((F.$length===0))){$global.console.log($externalize($bytesToString(F),$String));F=OV.nil;}});};H=function(){var $ptr;if(!E){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}E=true;};I=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}F=$appendSlice(F,i);while(true){k=K(F,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(F,0,k)),$String));F=$subslice(F,(k+1>>0));}};J=function(i){var $ptr,i;};K=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(n===j){return m;}l++;}return-1;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return OX.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(OX,$parseInt(k.length));m=0;while(true){if(!(m<$parseInt(k.length))){break;}n=$internalize(k[m],$String);((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]=n+"="+$internalize(j[$externalize(n,$String)],$String));m=m+(1)>>0;}return l;};Q=function(i){var $ptr,i,j,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;$recover();}),[]]);if(N===null){if(O){return null;}O=true;j=$global.require;if(j===undefined){$panic(new $String(""));}N=j($externalize("syscall",$String));}return N[$externalize(i,$String)];}catch(err){$err=err;return null;}finally{$callDeferred($deferred,$err);}};R=function(i,j,k,l){var $ptr,aa,ab,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=0;n=0;o=0;p=Q("Syscall");if(!(p===null)){q=p(i,j,k,l);r=(($parseInt(q[0])>>0)>>>0);s=(($parseInt(q[1])>>0)>>>0);t=(($parseInt(q[2])>>0)>>>0);m=r;n=s;o=t;return[m,n,o];}if((i===1)&&((j===1)||(j===2))){u=k;v=$makeSlice(OV,$parseInt(u.length));v.$array=u;I(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===60){B.Goexit();}H();z=(P>>>0);aa=0;ab=13;m=z;n=aa;o=ab;return[m,n,o];};$pkg.Syscall=R;S=function(i,j,k,l,m,n,o){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=0;r=0;s=Q("Syscall6");if(!(s===null)){t=s(i,j,k,l,m,n,o);u=(($parseInt(t[0])>>0)>>>0);v=(($parseInt(t[1])>>0)>>>0);w=(($parseInt(t[2])>>0)>>>0);p=u;q=v;r=w;return[p,q,r];}if(!((i===202))){H();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;T=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;m=0;n=0;o=0;p=Q("Syscall");if(!(p===null)){q=p(i,j,k,l);r=(($parseInt(q[0])>>0)>>>0);s=(($parseInt(q[1])>>0)>>>0);t=(($parseInt(q[2])>>0)>>>0);m=r;n=s;o=t;return[m,n,o];}H();u=(P>>>0);v=0;w=13;m=u;n=v;o=w;return[m,n,o];};$pkg.RawSyscall=T;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new OV($stringToBytes(i));l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(n===0){return[PF.nil,new FU(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;W=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=new $Uint64(0,0);m=false;if(i.$length<((j+k>>>0)>>0)){n=new $Uint64(0,0);o=false;l=n;m=o;return[l,m];}if(false){p=X($subslice(i,j),k);q=true;l=p;m=q;return[l,m];}r=Y($subslice(i,j),k);s=true;l=r;m=s;return[l,m];};X=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=j;if(k===(1)){return new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));}else if(k===(2)){$unused((1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));return(l=new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),m=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),8),new $Uint64(l.$high|m.$high,(l.$low|m.$low)>>>0));}else if(k===(4)){$unused((3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]));return(n=(o=(p=new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),q=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),8),new $Uint64(p.$high|q.$high,(p.$low|q.$low)>>>0)),r=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),16),new $Uint64(o.$high|r.$high,(o.$low|r.$low)>>>0)),s=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),24),new $Uint64(n.$high|s.$high,(n.$low|s.$low)>>>0));}else if(k===(8)){$unused((7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7]));return(t=(u=(v=(w=(x=(y=(z=new $Uint64(0,(7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7])),aa=$shiftLeft64(new $Uint64(0,(6>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+6])),8),new $Uint64(z.$high|aa.$high,(z.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(5>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+5])),16),new $Uint64(y.$high|ab.$high,(y.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(4>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+4])),24),new $Uint64(x.$high|ac.$high,(x.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),32),new $Uint64(w.$high|ad.$high,(w.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),40),new $Uint64(v.$high|ae.$high,(v.$low|ae.$low)>>>0)),af=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),48),new $Uint64(u.$high|af.$high,(u.$low|af.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),56),new $Uint64(t.$high|ag.$high,(t.$low|ag.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};Y=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=j;if(k===(1)){return new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));}else if(k===(2)){$unused((1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));return(l=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),m=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(l.$high|m.$high,(l.$low|m.$low)>>>0));}else if(k===(4)){$unused((3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]));return(n=(o=(p=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),q=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(p.$high|q.$high,(p.$low|q.$low)>>>0)),r=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),16),new $Uint64(o.$high|r.$high,(o.$low|r.$low)>>>0)),s=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),24),new $Uint64(n.$high|s.$high,(n.$low|s.$low)>>>0));}else if(k===(8)){$unused((7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7]));return(t=(u=(v=(w=(x=(y=(z=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),aa=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(z.$high|aa.$high,(z.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),16),new $Uint64(y.$high|ab.$high,(y.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),24),new $Uint64(x.$high|ac.$high,(x.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(4>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+4])),32),new $Uint64(w.$high|ad.$high,(w.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(5>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+5])),40),new $Uint64(v.$high|ae.$high,(v.$low|ae.$low)>>>0)),af=$shiftLeft64(new $Uint64(0,(6>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+6])),48),new $Uint64(u.$high|af.$high,(u.$low|af.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7])),56),new $Uint64(t.$high|ag.$high,(t.$low|ag.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};Z=function(i,j,k){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;l=0;m=0;n=OX.nil;o=i.$length;m=0;while(true){if(!(!((j===0))&&i.$length>0)){break;}p=FD(i);q=p[0];r=p[1];if(!r||(s=new $Uint64(0,i.$length),(q.$high>s.$high||(q.$high===s.$high&&q.$low>s.$low)))){t=o;u=m;v=k;l=t;m=u;n=v;return[l,m,n];}w=$subslice(i,0,$flatten64(q));i=$subslice(i,$flatten64(q));x=FC(w);y=x[0];r=x[1];if(!r){break;}if((y.$high===0&&y.$low===0)){continue;}z=FE(w);aa=z[0];r=z[1];if(!r||(ab=new $Uint64(0+aa.$high,19+aa.$low),ac=new $Uint64(0,w.$length),(ab.$high>ac.$high||(ab.$high===ac.$high&&ab.$low>ac.$low)))){break;}ad=$subslice(w,19,$flatten64(new $Uint64(0+aa.$high,19+aa.$low)));ae=ad;af=0;while(true){if(!(af<ae.$length)){break;}ag=af;ah=((af<0||af>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+af]);if(ah===0){ad=$subslice(ad,0,ag);break;}af++;}if($bytesToString(ad)==="."||$bytesToString(ad)===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,$bytesToString(ad));}ai=o-i.$length>>0;aj=m;ak=k;l=ai;m=aj;n=ak;return[l,m,n];};$pkg.ParseDirent=Z;AF=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AC={};i=AD;j=0;while(true){if(!(j<i.$length)){break;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);m=0;while(true){if(!(m<l.length)){break;}if(l.charCodeAt(m)===61){n=$substring(l,0,m);o=(p=AC[$String.keyFor(n)],p!==undefined?[p.v,true]:[0,false]);q=o[1];if(!q){r=n;(AC||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(r)]={k:r,v:k};}else{((k<0||k>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AH=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);j="";k=false;$r=AA.Do(AF);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(i.length===0){l="";m=false;j=l;k=m;$s=-1;return[j,k];}$r=AB.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AB,"RUnlock"),[]]);n=(o=AC[$String.keyFor(i)],o!==undefined?[o.v,true]:[0,false]);p=n[0];q=n[1];if(!q){r="";s=false;j=r;k=s;$s=-1;return[j,k];}t=((p<0||p>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+p]);u=0;while(true){if(!(u<t.length)){break;}if(t.charCodeAt(u)===61){v=$substring(t,(u+1>>0));w=true;j=v;k=w;$s=-1;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;$s=-1;return[j,k];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[j,k];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.Getenv=AH;AW=function(i){var $ptr,i;IK(i,2,1);};$pkg.CloseOnExec=AW;BP=function(i,j){var $ptr,i,j;};BQ=function(i,j){var $ptr,i,j;};BR=function(i){var $ptr,i;return(((i+4>>0)-1>>0))&-4;};BS=function(i){var $ptr,i;return(((i+4>>0)-1>>0))&-4;};BT.ptr.prototype.toWireFormat=function(){var $ptr,i,j;i=this;j=$makeSlice(OV,i.Header.Len);$sliceToArray($subslice(j,0,4)).$set(i.Header.Len);$sliceToArray($subslice(j,4,6)).$set(i.Header.Type);$sliceToArray($subslice(j,6,8)).$set(i.Header.Flags);$sliceToArray($subslice(j,8,12)).$set(i.Header.Seq);$sliceToArray($subslice(j,12,16)).$set(i.Header.Pid);(16>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+16]=i.Data.Family);return j;};BT.prototype.toWireFormat=function(){return this.$val.toWireFormat();};BU=function(i,j,k){var $ptr,i,j,k,l;l=new BT.ptr(new OC.ptr(0,0,0,0,0),new OE.ptr(0));l.Header.Len=17;l.Header.Type=(i<<16>>>16);l.Header.Flags=769;l.Header.Seq=(j>>>0);l.Data.Family=(k<<24>>>24);return l.toWireFormat();};BV=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);k=GV(16,3,0);l=k[0];m=k[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[OV.nil,m];}$deferred.push([HW,[l]]);n=new DU.ptr(16,0,0,0,new NL.ptr(0,0,0,0));o=GG(l,n);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return[OV.nil,p];}q=BU(i,1,j);r=GL(l,q,0,n);$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[OV.nil,s];}t=OV.nil;u=$makeSlice(OV,CT());done:while(true){v=u;w=GK(l,v,0);x=w[0];y=w[2];if(!($interfaceIsEqual(y,$ifaceNil))){$s=-1;return[OV.nil,y];}if(x<16){$s=-1;return[OV.nil,new FU(22)];}v=$subslice(v,0,x);t=$appendSlice(t,v);z=BX(v);aa=z[0];y=z[1];if(!($interfaceIsEqual(y,$ifaceNil))){$s=-1;return[OV.nil,y];}ab=aa;ac=0;while(true){if(!(ac<ab.$length)){break;}ad=$clone(((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac]),BW);ae=DY(l);af=ae[0];ag=ae[1];if(!($interfaceIsEqual(ag,$ifaceNil))){$s=-1;return[OV.nil,ag];}ah=af;if($assertType(ah,PU,true)[1]){ai=ah.$val;if(!((ad.Header.Seq===1))||!((ad.Header.Pid===ai.Pid))){$s=-1;return[OV.nil,new FU(22)];}}else{aj=ah;$s=-1;return[OV.nil,new FU(22)];}if(ad.Header.Type===3){break done;}if(ad.Header.Type===2){$s=-1;return[OV.nil,new FU(22)];}ac++;}}$s=-1;return[t,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[OV.nil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.NetlinkRIB=BV;BX=function(i){var $ptr,i,j,k,l,m,n,o,p;j=PV.nil;while(true){if(!(i.$length>=16)){break;}k=BY(i);l=k[0];m=k[1];n=k[2];o=k[3];if(!($interfaceIsEqual(o,$ifaceNil))){return[PV.nil,o];}p=new BW.ptr($clone(l,OC),$subslice(m,0,((l.Len>>0)-16>>0)));j=$append(j,p);i=$subslice(i,n);}return[j,$ifaceNil];};$pkg.ParseNetlinkMessage=BX;BY=function(i){var $ptr,i,j,k,l,m,n;m=(j=$sliceToArray(i),k=new OC.ptr(0,0,0,0,0),l=new DataView(j.buffer,j.byteOffset),k.Len=l.getUint32(0,true),k.Type=l.getUint16(4,true),k.Flags=l.getUint16(6,true),k.Seq=l.getUint32(8,true),k.Pid=l.getUint32(12,true),k);n=BR((m.Len>>0));if((m.Len>>0)<16||n>i.$length){return[PW.nil,OV.nil,0,new FU(22)];}return[m,$subslice(i,16),n,$ifaceNil];};CA=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r;j=OV.nil;k=i.Header.Type;if((k===(16))||(k===(17))){j=$subslice(i.Data,16);}else if((k===(20))||(k===(21))){j=$subslice(i.Data,8);}else if((k===(24))||(k===(25))){j=$subslice(i.Data,12);}else{return[PX.nil,new FU(22)];}l=PX.nil;while(true){if(!(j.$length>=4)){break;}m=CB(j);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){return[PX.nil,q];}r=new BZ.ptr($clone(n,OG),$subslice(o,0,((n.Len>>0)-4>>0)));l=$append(l,r);j=$subslice(j,p);}return[l,$ifaceNil];};$pkg.ParseNetlinkRouteAttr=CA;CB=function(i){var $ptr,i,j,k,l,m;m=(j=$sliceToArray(i),k=new OG.ptr(0,0),l=new DataView(j.buffer,j.byteOffset),k.Len=l.getUint16(0,true),k.Type=l.getUint16(2,true),k);if((m.Len>>0)<4||(m.Len>>0)>i.$length){return[PY.nil,OV.nil,0,new FU(22)];}return[m,$subslice(i,4),BS((m.Len>>0)),$ifaceNil];};CN=function(i){var $ptr,i;if(i<0){return"-"+CO((-i>>>0));}return CO((i>>>0));};CO=function(i){var $ptr,i,j,k,l,m;j=QC.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]=(((l=i%10,l===l?l:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));k=k-(1)>>0;i=(m=i/(10),(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));}((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new OV(j),k));};MT.ptr.prototype.Unix=function(){var $ptr,i,j,k,l,m;i=new $Int64(0,0);j=new $Int64(0,0);k=this;l=k.Sec;m=k.Nsec;i=l;j=m;return[i,j];};MT.prototype.Unix=function(){return this.$val.Unix();};MT.ptr.prototype.Nano=function(){var $ptr,i,j,k;i=this;return(j=$mul64(i.Sec,new $Int64(0,1000000000)),k=i.Nsec,new $Int64(j.$high+k.$high,j.$low+k.$low));};MT.prototype.Nano=function(){return this.$val.Nano();};CT=function(){$throwRuntimeError("native function not implemented: syscall.Getpagesize");};$pkg.Getpagesize=CT;CV=function(i,j){var $ptr,i,j,k;k=$ifaceNil;k=II(-100,i,j,0);return k;};$pkg.Chmod=CV;DB=function(i,j,k){var $ptr,i,j,k,l,m,n;l=0;m=$ifaceNil;n=HG(-100,i,j|0,k);l=n[0];m=n[1];return[l,m];};$pkg.Open=DB;GD.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;if(i.Port<0||i.Port>65535){return[0,0,new FU(22)];}i.raw.Family=2;k=(j=i.raw,(j.$ptr_Port||(j.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},j))));k.nilCheck,k[0]=((i.Port>>8>>0)<<24>>>24);k.nilCheck,k[1]=(i.Port<<24>>>24);l=0;while(true){if(!(l<4)){break;}(n=i.raw.Addr,((l<0||l>=n.length)?($throwRuntimeError("index out of range"),undefined):n[l]=(m=i.Addr,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]))));l=l+(1)>>0;}o=new Uint8Array(16);return[o,16,$ifaceNil];};GD.prototype.sockaddr=function(){return this.$val.sockaddr();};GE.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;if(i.Port<0||i.Port>65535){return[0,0,new FU(22)];}i.raw.Family=10;k=(j=i.raw,(j.$ptr_Port||(j.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},j))));k.nilCheck,k[0]=((i.Port>>8>>0)<<24>>>24);k.nilCheck,k[1]=(i.Port<<24>>>24);i.raw.Scope_id=i.ZoneId;l=0;while(true){if(!(l<16)){break;}(n=i.raw.Addr,((l<0||l>=n.length)?($throwRuntimeError("index out of range"),undefined):n[l]=(m=i.Addr,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]))));l=l+(1)>>0;}o=new Uint8Array(28);return[o,28,$ifaceNil];};GE.prototype.sockaddr=function(){return this.$val.sockaddr();};GF.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;j=i.Name;k=j.length;if(k>=108){return[0,0,new FU(22)];}i.raw.Family=1;l=0;while(true){if(!(l<k)){break;}(m=i.raw.Path,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]=(j.charCodeAt(l)<<24>>24)));l=l+(1)>>0;}n=2;if(k>0){n=n+(((k>>>0)+1>>>0))>>>0;}if(i.raw.Path[0]===64){i.raw.Path[0]=0;n=n-(1)>>>0;}o=new Uint8Array(110);return[o,n,$ifaceNil];};GF.prototype.sockaddr=function(){return this.$val.sockaddr();};DT.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o;i=this;if(i.Ifindex<0||i.Ifindex>2147483647){return[0,0,new FU(22)];}i.raw.Family=17;i.raw.Protocol=i.Protocol;i.raw.Ifindex=(i.Ifindex>>0);i.raw.Hatype=i.Hatype;i.raw.Pkttype=i.Pkttype;i.raw.Halen=i.Halen;j=0;while(true){if(!(j<8)){break;}(l=i.raw.Addr,((j<0||j>=l.length)?($throwRuntimeError("index out of range"),undefined):l[j]=(k=i.Addr,((j<0||j>=k.length)?($throwRuntimeError("index out of range"),undefined):k[j]))));j=j+(1)>>0;}m=new Uint8Array(20);return[m,20,$ifaceNil];};DT.prototype.sockaddr=function(){return this.$val.sockaddr();};DU.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l;i=this;i.raw.Family=16;i.raw.Pad=i.Pad;i.raw.Pid=i.Pid;i.raw.Groups=i.Groups;j=new Uint8Array(12);return[j,12,$ifaceNil];};DU.prototype.sockaddr=function(){return this.$val.sockaddr();};DV=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=i.Addr.Family;if(j===(16)){n=new Uint8Array(112);q=(k=n,l=new NL.ptr(0,0,0,0),m=new DataView(k.buffer,k.byteOffset),l.Family=m.getUint16(0,true),l.Pad=m.getUint16(2,true),l.Pid=m.getUint32(4,true),l.Groups=m.getUint32(8,true),l);o=i,p=new DataView(n.buffer,n.byteOffset),o.Addr.Family=p.getUint16(0,true),o.Addr.Data=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+2,n.buffer.byteLength)),o.Pad=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+16,n.buffer.byteLength));r=new DU.ptr(0,0,0,0,new NL.ptr(0,0,0,0));r.Family=q.Family;r.Pad=q.Pad;r.Pid=q.Pid;r.Groups=q.Groups;return[r,$ifaceNil];}else if(j===(17)){v=new Uint8Array(112);y=(s=v,t=new NK.ptr(0,0,0,0,0,0,PO.zero()),u=new DataView(s.buffer,s.byteOffset),t.Family=u.getUint16(0,true),t.Protocol=u.getUint16(2,true),t.Ifindex=u.getInt32(4,true),t.Hatype=u.getUint16(8,true),t.Pkttype=u.getUint8(10,true),t.Halen=u.getUint8(11,true),t.Addr=new($nativeArray($kindUint8))(s.buffer,$min(s.byteOffset+12,s.buffer.byteLength)),t);w=i,x=new DataView(v.buffer,v.byteOffset),w.Addr.Family=x.getUint16(0,true),w.Addr.Data=new($nativeArray($kindInt8))(v.buffer,$min(v.byteOffset+2,v.buffer.byteLength)),w.Pad=new($nativeArray($kindInt8))(v.buffer,$min(v.byteOffset+16,v.buffer.byteLength));z=new DT.ptr(0,0,0,0,0,PO.zero(),new NK.ptr(0,0,0,0,0,0,PO.zero()));z.Protocol=y.Protocol;z.Ifindex=(y.Ifindex>>0);z.Hatype=y.Hatype;z.Pkttype=y.Pkttype;z.Halen=y.Halen;aa=0;while(true){if(!(aa<8)){break;}(ac=z.Addr,((aa<0||aa>=ac.length)?($throwRuntimeError("index out of range"),undefined):ac[aa]=(ab=y.Addr,((aa<0||aa>=ab.length)?($throwRuntimeError("index out of range"),undefined):ab[aa]))));aa=aa+(1)>>0;}return[z,$ifaceNil];}else if(j===(1)){ag=new Uint8Array(112);aj=(ad=ag,ae=new NJ.ptr(0,QI.zero()),af=new DataView(ad.buffer,ad.byteOffset),ae.Family=af.getUint16(0,true),ae.Path=new($nativeArray($kindInt8))(ad.buffer,$min(ad.byteOffset+2,ad.buffer.byteLength)),ae);ah=i,ai=new DataView(ag.buffer,ag.byteOffset),ah.Addr.Family=ai.getUint16(0,true),ah.Addr.Data=new($nativeArray($kindInt8))(ag.buffer,$min(ag.byteOffset+2,ag.buffer.byteLength)),ah.Pad=new($nativeArray($kindInt8))(ag.buffer,$min(ag.byteOffset+16,ag.buffer.byteLength));ak=new GF.ptr("",new NJ.ptr(0,QI.zero()));if(aj.Path[0]===0){aj.Path[0]=64;}al=0;while(true){if(!(al<108&&!(((am=aj.Path,((al<0||al>=am.length)?($throwRuntimeError("index out of range"),undefined):am[al]))===0)))){break;}al=al+(1)>>0;}an=$subslice(new OV($sliceToArray(new OV(aj.Path))),0,al);ak.Name=$bytesToString(an);return[ak,$ifaceNil];}else if(j===(2)){ar=new Uint8Array(112);au=(ao=ar,ap=new NH.ptr(0,0,QJ.zero(),PO.zero()),aq=new DataView(ao.buffer,ao.byteOffset),ap.Family=aq.getUint16(0,true),ap.Port=aq.getUint16(2,true),ap.Addr=new($nativeArray($kindUint8))(ao.buffer,$min(ao.byteOffset+4,ao.buffer.byteLength)),ap.Zero=new($nativeArray($kindUint8))(ao.buffer,$min(ao.byteOffset+8,ao.buffer.byteLength)),ap);as=i,at=new DataView(ar.buffer,ar.byteOffset),as.Addr.Family=at.getUint16(0,true),as.Addr.Data=new($nativeArray($kindInt8))(ar.buffer,$min(ar.byteOffset+2,ar.buffer.byteLength)),as.Pad=new($nativeArray($kindInt8))(ar.buffer,$min(ar.byteOffset+16,ar.buffer.byteLength));av=new GD.ptr(0,QJ.zero(),new NH.ptr(0,0,QJ.zero(),PO.zero()));aw=(au.$ptr_Port||(au.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},au)));av.Port=(((aw.nilCheck,aw[0])>>0)<<8>>0)+((aw.nilCheck,aw[1])>>0)>>0;ax=0;while(true){if(!(ax<4)){break;}(az=av.Addr,((ax<0||ax>=az.length)?($throwRuntimeError("index out of range"),undefined):az[ax]=(ay=au.Addr,((ax<0||ax>=ay.length)?($throwRuntimeError("index out of range"),undefined):ay[ax]))));ax=ax+(1)>>0;}return[av,$ifaceNil];}else if(j===(10)){bd=new Uint8Array(112);bg=(ba=bd,bb=new NI.ptr(0,0,0,PQ.zero(),0),bc=new DataView(ba.buffer,ba.byteOffset),bb.Family=bc.getUint16(0,true),bb.Port=bc.getUint16(2,true),bb.Flowinfo=bc.getUint32(4,true),bb.Addr=new($nativeArray($kindUint8))(ba.buffer,$min(ba.byteOffset+8,ba.buffer.byteLength)),bb.Scope_id=bc.getUint32(24,true),bb);be=i,bf=new DataView(bd.buffer,bd.byteOffset),be.Addr.Family=bf.getUint16(0,true),be.Addr.Data=new($nativeArray($kindInt8))(bd.buffer,$min(bd.byteOffset+2,bd.buffer.byteLength)),be.Pad=new($nativeArray($kindInt8))(bd.buffer,$min(bd.byteOffset+16,bd.buffer.byteLength));bh=new GE.ptr(0,0,PQ.zero(),new NI.ptr(0,0,0,PQ.zero(),0));bi=(bg.$ptr_Port||(bg.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},bg)));bh.Port=(((bi.nilCheck,bi[0])>>0)<<8>>0)+((bi.nilCheck,bi[1])>>0)>>0;bh.ZoneId=bg.Scope_id;bj=0;while(true){if(!(bj<16)){break;}(bl=bh.Addr,((bj<0||bj>=bl.length)?($throwRuntimeError("index out of range"),undefined):bl[bj]=(bk=bg.Addr,((bj<0||bj>=bk.length)?($throwRuntimeError("index out of range"),undefined):bk[bj]))));bj=bj+(1)>>0;}return[bh,$ifaceNil];}return[$ifaceNil,new FU(97)];};DY=function(i){var $ptr,i,j,k,l,m,n,o;j=$ifaceNil;k=$ifaceNil;l=new NN.ptr(new NM.ptr(0,QK.zero()),QL.zero());m=112;k=MH(i,l,(n||(n=new QM(function(){return m;},function($v){m=$v;}))));if(!($interfaceIsEqual(k,$ifaceNil))){return[j,k];}o=DV(l);j=o[0];k=o[1];return[j,k];};$pkg.Getsockname=DY;FB=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=IO(i,j);k=m[0];l=m[1];return[k,l];};$pkg.ReadDirent=FB;FC=function(i){var $ptr,i;return W(i,0,8);};FD=function(i){var $ptr,i;return W(i,16,2);};FE=function(i){var $ptr,i,j,k,l;j=FD(i);k=j[0];l=j[1];if(!l){return[new $Uint64(0,0),false];}return[new $Uint64(k.$high-0,k.$low-19),true];};FT.ptr.prototype.Mmap=function(i,j,k,l,m){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);n=[n];o=OV.nil;p=$ifaceNil;q=this;if(k<=0){r=OV.nil;s=new FU(22);o=r;p=s;$s=-1;return[o,p];}u=q.mmap(0,(k>>>0),l,m,i,j);$s=1;case 1:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];if(!($interfaceIsEqual(w,$ifaceNil))){x=OV.nil;y=w;o=x;p=y;$s=-1;return[o,p];}n[0]=new QS.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),PF);$r=q.Mutex.Lock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(q.Mutex,"Unlock"),[]]);ab=aa;(q.active||$throwRuntimeError("assignment to entry in nil map"))[PF.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;$s=-1;return[o,p];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[o,p];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:FT.ptr.prototype.Mmap};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};FT.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};FT.ptr.prototype.Munmap=function(i){var $ptr,i,j,k,l,m,n,o,p,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);j=$ifaceNil;k=this;if((i.$length===0)||!((i.$length===i.$capacity))){j=new FU(22);$s=-1;return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),PF);$r=k.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(k.Mutex,"Unlock"),[]]);n=(m=k.active[PF.keyFor(l)],m!==undefined?m.v:OV.nil);if(n===OV.nil||!($indexPtr(n.$array,n.$offset+0,PF)===$indexPtr(i.$array,i.$offset+0,PF))){j=new FU(22);$s=-1;return j;}o=k.munmap($sliceToArray(n),(n.$length>>>0));$s=2;case 2:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){j=p;$s=-1;return j;}delete k.active[PF.keyFor(l)];j=$ifaceNil;$s=-1;return j;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return j;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:FT.ptr.prototype.Munmap};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};FT.prototype.Munmap=function(i){return this.$val.Munmap(i);};FU.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<133){j=((i<0||i>=HD.length)?($throwRuntimeError("index out of range"),undefined):HD[i]);if(!(j==="")){return j;}}return"errno "+CN((i>>0));};$ptrType(FU).prototype.Error=function(){return new FU(this.$get()).Error();};FU.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===104)||(i===103)||new FU(i).Timeout();};$ptrType(FU).prototype.Temporary=function(){return new FU(this.$get()).Temporary();};FU.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===11)||(i===11)||(i===110);};$ptrType(FU).prototype.Timeout=function(){return new FU(this.$get()).Timeout();};FY=function(i){var $ptr,i,j;j=i;if(j===(0)){return $ifaceNil;}else if(j===(11)){return FV;}else if(j===(22)){return FW;}else if(j===(2)){return FX;}return new FU(i);};GA=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JI(i,j);k=m[0];l=m[1];if(false){if(k>0){D.WriteRange($sliceToArray(j),k);}if($interfaceIsEqual(l,$ifaceNil)){D.Acquire((PE||(PE=new QT(function(){return GY;},function($v){GY=$v;}))));}}if(false&&k>0){BQ($sliceToArray(j),k);}return[k,l];};$pkg.Read=GA;GB=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;if(false){D.ReleaseMerge((PE||(PE=new QT(function(){return GY;},function($v){GY=$v;}))));}m=KD(i,j);k=m[0];l=m[1];if(false&&k>0){D.ReadRange($sliceToArray(j),k);}if(false&&k>0){BP($sliceToArray(j),k);}return[k,l];};$pkg.Write=GB;GG=function(i,j){var $ptr,i,j,k,l,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=$ifaceNil;m=j.sockaddr();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];k=l[2];if(!($interfaceIsEqual(k,$ifaceNil))){k=k;$s=-1;return k;}k=LY(i,n,o);$s=-1;return k;}return;}if($f===undefined){$f={$blk:GG};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bind=GG;GK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=$ifaceNil;n=$ifaceNil;o=new NN.ptr(new NM.ptr(0,QK.zero()),QL.zero());p=112;q=MI(i,j,k,o,(r||(r=new QM(function(){return p;},function($v){p=$v;}))));l=q[0];n=q[1];if(!($interfaceIsEqual(n,$ifaceNil))){return[l,m,n];}if(!((o.Addr.Family===0))){s=DV(o);m=s[0];n=s[1];}return[l,m,n];};$pkg.Recvfrom=GK;GL=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=$ifaceNil;o=l.sockaddr();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];m=n[2];if(!($interfaceIsEqual(m,$ifaceNil))){m=m;$s=-1;return m;}m=MJ(i,j,k,p,q);$s=-1;return m;}return;}if($f===undefined){$f={$blk:GL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sendto=GL;GV=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;if((i===10)&&$pkg.SocketDisableIPv6){n=-1;o=new FU(97);l=n;m=o;return[l,m];}p=ME(i,j,k);l=p[0];m=p[1];return[l,m];};$pkg.Socket=GV;HG=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r,s;m=0;n=$ifaceNil;o=PF.nil;p=V(j);o=p[0];n=p[1];if(!($interfaceIsEqual(n,$ifaceNil))){return[m,n];}q=S(257,(i>>>0),o,(k>>>0),(l>>>0),0,0);r=q[0];s=q[2];J(o);m=(r>>0);if(!((s===0))){n=FY(s);}return[m,n];};HW=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(3,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Close=HW;ID=function(i){var $ptr,i;R(231,(i>>>0),0,0);return;};$pkg.Exit=ID;IG=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(81,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Fchdir=IG;IH=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(91,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FY(m);}return k;};$pkg.Fchmod=IH;II=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q;m=$ifaceNil;n=PF.nil;o=V(j);n=o[0];m=o[1];if(!($interfaceIsEqual(m,$ifaceNil))){return m;}p=S(268,(i>>>0),n,(k>>>0),(l>>>0),0,0);q=p[2];J(n);if(!((q===0))){m=FY(q);}return m;};$pkg.Fchmodat=II;IK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;n=R(72,(i>>>0),(j>>>0),(k>>>0));o=n[0];p=n[2];l=(o>>0);if(!((p===0))){m=FY(p);}return[l,m];};IN=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(74,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Fsync=IN;IO=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(217,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};$pkg.Getdents=IO;JI=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(0,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};KD=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(1,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};KH=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(11,i,j,0);m=l[2];if(!((m===0))){k=FY(m);}return k;};KP=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(93,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FY(n);}return l;};$pkg.Fchown=KP;KQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(5,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=new $Uint64(o.getUint32(4,true),o.getUint32(0,true)),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Nlink=new $Uint64(o.getUint32(20,true),o.getUint32(16,true)),n.Mode=o.getUint32(24,true),n.Uid=o.getUint32(28,true),n.Gid=o.getUint32(32,true),n.X__pad0=o.getInt32(36,true),n.Rdev=new $Uint64(o.getUint32(44,true),o.getUint32(40,true)),n.Size=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Blksize=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Blocks=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Atim.Sec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Atim.Nsec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Mtim.Sec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Mtim.Nsec=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Ctim.Sec=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Ctim.Nsec=new $Int64(o.getUint32(116,true),o.getUint32(112,true)),n.X__unused=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+120,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FY(p);}return k;};$pkg.Fstat=KQ;KS=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(77,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FY(m);}return k;};$pkg.Ftruncate=KS;KV=function(){var $ptr,i,j,k;i=0;j=T(104,0,0,0);k=j[0];i=(k>>0);return i;};$pkg.Getgid=KV;KX=function(){var $ptr,i,j,k;i=0;j=T(102,0,0,0);k=j[0];i=(k>>0);return i;};$pkg.Getuid=KX;LD=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=PF.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(6,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=new $Uint64(q.getUint32(4,true),q.getUint32(0,true)),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Nlink=new $Uint64(q.getUint32(20,true),q.getUint32(16,true)),p.Mode=q.getUint32(24,true),p.Uid=q.getUint32(28,true),p.Gid=q.getUint32(32,true),p.X__pad0=q.getInt32(36,true),p.Rdev=new $Uint64(q.getUint32(44,true),q.getUint32(40,true)),p.Size=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Blksize=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Blocks=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Atim.Sec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Atim.Nsec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Mtim.Sec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Mtim.Nsec=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Ctim.Sec=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Ctim.Nsec=new $Int64(q.getUint32(116,true),q.getUint32(112,true)),p.X__unused=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+120,o.buffer.byteLength));r=n[2];J(l);if(!((r===0))){k=FY(r);}return k;};$pkg.Lstat=LD;LE=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=0;m=$ifaceNil;n=0;if(j.$length>0){n=$sliceToArray(j);}else{n=new Uint8Array(0);}o=S(17,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FY(q);}return[l,m];};$pkg.Pread=LE;LF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=0;m=$ifaceNil;n=0;if(j.$length>0){n=$sliceToArray(j);}else{n=new Uint8Array(0);}o=S(18,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FY(q);}return[l,m];};$pkg.Pwrite=LF;LG=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(8,(i>>>0),(j.$low>>>0),(k>>>0));o=n[0];p=n[2];l=new $Int64(0,o.constructor===Number?o:1);if(!((p===0))){m=FY(p);}return[l,m];};$pkg.Seek=LG;LS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=PF.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(4,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=new $Uint64(q.getUint32(4,true),q.getUint32(0,true)),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Nlink=new $Uint64(q.getUint32(20,true),q.getUint32(16,true)),p.Mode=q.getUint32(24,true),p.Uid=q.getUint32(28,true),p.Gid=q.getUint32(32,true),p.X__pad0=q.getInt32(36,true),p.Rdev=new $Uint64(q.getUint32(44,true),q.getUint32(40,true)),p.Size=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Blksize=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Blocks=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Atim.Sec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Atim.Nsec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Mtim.Sec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Mtim.Nsec=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Ctim.Sec=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Ctim.Nsec=new $Int64(q.getUint32(116,true),q.getUint32(112,true)),p.X__unused=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+120,o.buffer.byteLength));r=n[2];J(l);if(!((r===0))){k=FY(r);}return k;};$pkg.Stat=LS;LY=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(49,(i>>>0),j,(k>>>0));n=m[2];if(!((n===0))){l=FY(n);}return l;};ME=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;n=T(41,(i>>>0),(j>>>0),(k>>>0));o=n[0];p=n[2];l=(o>>0);if(!((p===0))){m=FY(p);}return[l,m];};MH=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=$ifaceNil;n=new Uint8Array(112);m=T(51,(i>>>0),n,k);o=j,p=new DataView(n.buffer,n.byteOffset),o.Addr.Family=p.getUint16(0,true),o.Addr.Data=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+2,n.buffer.byteLength)),o.Pad=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+16,n.buffer.byteLength));q=m[2];if(!((q===0))){l=FY(q);}return l;};MI=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v;n=0;o=$ifaceNil;p=0;if(j.$length>0){p=$sliceToArray(j);}else{p=new Uint8Array(0);}r=new Uint8Array(112);q=S(45,(i>>>0),p,(j.$length>>>0),(k>>>0),r,m);s=l,t=new DataView(r.buffer,r.byteOffset),s.Addr.Family=t.getUint16(0,true),s.Addr.Data=new($nativeArray($kindInt8))(r.buffer,$min(r.byteOffset+2,r.buffer.byteLength)),s.Pad=new($nativeArray($kindInt8))(r.buffer,$min(r.byteOffset+16,r.buffer.byteLength));u=q[0];v=q[2];n=(u>>0);if(!((v===0))){o=FY(v);}return[n,o];};MJ=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(j.$length>0){o=$sliceToArray(j);}else{o=new Uint8Array(0);}p=S(44,(i>>>0),o,(j.$length>>>0),(k>>>0),l,(m>>>0));q=p[2];if(!((q===0))){n=FY(q);}return n;};MM=function(i,j,k,l,m,n){var $ptr,i,j,k,l,m,n,o,p,q,r,s;o=0;p=$ifaceNil;q=S(9,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FY(s);}return[o,p];};QW.methods=[{prop:"toWireFormat",name:"toWireFormat",pkg:"syscall",typ:$funcType([],[OV],false)}];QX.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];PU.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];QY.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[OV,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([OV],[$error],false)}];FU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}];RC.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RD.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RE.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RF.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];BT.init("",[{prop:"Header",name:"Header",exported:true,typ:OC,tag:""},{prop:"Data",name:"Data",exported:true,typ:OE,tag:""}]);BW.init("",[{prop:"Header",name:"Header",exported:true,typ:OC,tag:""},{prop:"Data",name:"Data",exported:true,typ:OV,tag:""}]);BZ.init("",[{prop:"Attr",name:"Attr",exported:true,typ:OG,tag:""},{prop:"Value",name:"Value",exported:true,typ:OV,tag:""}]);DT.init("syscall",[{prop:"Protocol",name:"Protocol",exported:true,typ:$Uint16,tag:""},{prop:"Ifindex",name:"Ifindex",exported:true,typ:$Int,tag:""},{prop:"Hatype",name:"Hatype",exported:true,typ:$Uint16,tag:""},{prop:"Pkttype",name:"Pkttype",exported:true,typ:$Uint8,tag:""},{prop:"Halen",name:"Halen",exported:true,typ:$Uint8,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PO,tag:""},{prop:"raw",name:"raw",exported:false,typ:NK,tag:""}]);DU.init("syscall",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:$Uint16,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""},{prop:"Groups",name:"Groups",exported:true,typ:$Uint32,tag:""},{prop:"raw",name:"raw",exported:false,typ:NL,tag:""}]);FT.init("syscall",[{prop:"Mutex",name:"",exported:true,typ:C.Mutex,tag:""},{prop:"active",name:"active",exported:false,typ:QZ,tag:""},{prop:"mmap",name:"mmap",exported:false,typ:RA,tag:""},{prop:"munmap",name:"munmap",exported:false,typ:RB,tag:""}]);GC.init([{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}]);GD.init("syscall",[{prop:"Port",name:"Port",exported:true,typ:$Int,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:QJ,tag:""},{prop:"raw",name:"raw",exported:false,typ:NH,tag:""}]);GE.init("syscall",[{prop:"Port",name:"Port",exported:true,typ:$Int,tag:""},{prop:"ZoneId",name:"ZoneId",exported:true,typ:$Uint32,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PQ,tag:""},{prop:"raw",name:"raw",exported:false,typ:NI,tag:""}]);GF.init("syscall",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"raw",name:"raw",exported:false,typ:NJ,tag:""}]);MT.init("",[{prop:"Sec",name:"Sec",exported:true,typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",exported:true,typ:$Int64,tag:""}]);NC.init("",[{prop:"Dev",name:"Dev",exported:true,typ:$Uint64,tag:""},{prop:"Ino",name:"Ino",exported:true,typ:$Uint64,tag:""},{prop:"Nlink",name:"Nlink",exported:true,typ:$Uint64,tag:""},{prop:"Mode",name:"Mode",exported:true,typ:$Uint32,tag:""},{prop:"Uid",name:"Uid",exported:true,typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",exported:true,typ:$Uint32,tag:""},{prop:"X__pad0",name:"X__pad0",exported:true,typ:$Int32,tag:""},{prop:"Rdev",name:"Rdev",exported:true,typ:$Uint64,tag:""},{prop:"Size",name:"Size",exported:true,typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",exported:true,typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",exported:true,typ:$Int64,tag:""},{prop:"Atim",name:"Atim",exported:true,typ:MT,tag:""},{prop:"Mtim",name:"Mtim",exported:true,typ:MT,tag:""},{prop:"Ctim",name:"Ctim",exported:true,typ:MT,tag:""},{prop:"X__unused",name:"X__unused",exported:true,typ:RI,tag:""}]);NH.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:QJ,tag:""},{prop:"Zero",name:"Zero",exported:true,typ:PO,tag:""}]);NI.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Flowinfo",name:"Flowinfo",exported:true,typ:$Uint32,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PQ,tag:""},{prop:"Scope_id",name:"Scope_id",exported:true,typ:$Uint32,tag:""}]);NJ.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Path",name:"Path",exported:true,typ:QI,tag:""}]);NK.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Protocol",name:"Protocol",exported:true,typ:$Uint16,tag:""},{prop:"Ifindex",name:"Ifindex",exported:true,typ:$Int32,tag:""},{prop:"Hatype",name:"Hatype",exported:true,typ:$Uint16,tag:""},{prop:"Pkttype",name:"Pkttype",exported:true,typ:$Uint8,tag:""},{prop:"Halen",name:"Halen",exported:true,typ:$Uint8,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PO,tag:""}]);NL.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:$Uint16,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""},{prop:"Groups",name:"Groups",exported:true,typ:$Uint32,tag:""}]);NM.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Data",name:"Data",exported:true,typ:QK,tag:""}]);NN.init("",[{prop:"Addr",name:"Addr",exported:true,typ:NM,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:QL,tag:""}]);OC.init("",[{prop:"Len",name:"Len",exported:true,typ:$Uint32,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint16,tag:""},{prop:"Seq",name:"Seq",exported:true,typ:$Uint32,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""}]);OE.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""}]);OG.init("",[{prop:"Len",name:"Len",exported:true,typ:$Uint16,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""}]);OH.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""},{prop:"X__ifi_pad",name:"X__ifi_pad",exported:true,typ:$Uint8,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Int32,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint32,tag:""},{prop:"Change",name:"Change",exported:true,typ:$Uint32,tag:""}]);OI.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""},{prop:"Prefixlen",name:"Prefixlen",exported:true,typ:$Uint8,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint8,tag:""},{prop:"Scope",name:"Scope",exported:true,typ:$Uint8,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Uint32,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}F=OV.nil;N=null;AA=new C.Once.ptr(new C.Mutex.ptr(0,0),0);AB=new C.RWMutex.ptr(new C.Mutex.ptr(0,0),0,0,0,0);AC=false;$pkg.SocketDisableIPv6=false;GY=new $Int64(0,0);E=false;O=false;P=-1;AD=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;FV=new FU(11);FW=new FU(22);FX=new FU(2);HD=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","no such device or address","argument list too long","exec format error","bad file descriptor","no child processes","resource temporarily unavailable","cannot allocate memory","permission denied","bad address","block device required","device or resource busy","file exists","invalid cross-device link","no such device","not a directory","is a directory","invalid argument","too many open files in system","too many open files","inappropriate ioctl for device","text file busy","file too large","no space left on device","illegal seek","read-only file system","too many links","broken pipe","numerical argument out of domain","numerical result out of range","resource deadlock avoided","file name too long","no locks available","function not implemented","directory not empty","too many levels of symbolic links","","no message of desired type","identifier removed","channel number out of range","level 2 not synchronized","level 3 halted","level 3 reset","link number out of range","protocol driver not attached","no CSI structure available","level 2 halted","invalid exchange","invalid request descriptor","exchange full","no anode","invalid request code","invalid slot","","bad font file format","device not a stream","no data available","timer expired","out of streams resources","machine is not on the network","package not installed","object is remote","link has been severed","advertise error","srmount error","communication error on send","protocol error","multihop attempted","RFS specific error","bad message","value too large for defined data type","name not unique on network","file descriptor in bad state","remote address changed","can not access a needed shared library","accessing a corrupted shared library",".lib section in a.out corrupted","attempting to link in too many shared libraries","cannot exec a shared library directly","invalid or incomplete multibyte or wide character","interrupted system call should be restarted","streams pipe error","too many users","socket operation on non-socket","destination address required","message too long","protocol wrong type for socket","protocol not available","protocol not supported","socket type not supported","operation not supported","protocol family not supported","address family not supported by protocol","address already in use","cannot assign requested address","network is down","network is unreachable","network dropped connection on reset","software caused connection abort","connection reset by peer","no buffer space available","transport endpoint is already connected","transport endpoint is not connected","cannot send after transport endpoint shutdown","too many references: cannot splice","connection timed out","connection refused","host is down","no route to host","operation already in progress","operation now in progress","stale NFS file handle","structure needs cleaning","not a XENIX named type file","no XENIX semaphores available","is a named type file","remote I/O error","disk quota exceeded","no medium found","wrong medium type","operation canceled","required key not available","key has expired","key has been revoked","key was rejected by service","owner died","state not recoverable","operation not possible due to RF-kill"]);FJ=new FT.ptr(new C.Mutex.ptr(0,0),{},MM,KH);G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/gopherjs/gopherjs/nosync"]=(function(){var $pkg={},$init,A,D,E,F,I,J,K,L,M;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex",true,"github.com/gopherjs/gopherjs/nosync",true,function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once",true,"github.com/gopherjs/gopherjs/nosync",true,function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});E=$pkg.Pool=$newType(0,$kindStruct,"nosync.Pool",true,"github.com/gopherjs/gopherjs/nosync",true,function(store_,New_){this.$val=this;if(arguments.length===0){this.store=K.nil;this.New=$throwNilPointerError;return;}this.store=store_;this.New=New_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);K=$sliceType($emptyInterface);L=$ptrType(E);M=$funcType([],[$emptyInterface],false);A.ptr.prototype.Lock=function(){var $ptr,a;a=this;if(a.locked){$panic(new $String("nosync: mutex is already locked"));}a.locked=true;};A.prototype.Lock=function(){return this.$val.Lock();};A.ptr.prototype.Unlock=function(){var $ptr,a;a=this;if(!a.locked){$panic(new $String("nosync: unlock of unlocked mutex"));}a.locked=false;};A.prototype.Unlock=function(){return this.$val.Unlock();};D.ptr.prototype.Do=function(a){var $ptr,a,b,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=[b];b[0]=this;if(b[0].done){$s=-1;return;}if(b[0].doing){$panic(new $String("nosync: Do called within f"));}b[0].doing=true;$deferred.push([(function(b){return function(){var $ptr;b[0].doing=false;b[0].done=true;};})(b),[]]);$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:D.ptr.prototype.Do};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};D.prototype.Do=function(a){return this.$val.Do(a);};E.ptr.prototype.Get=function(){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(a.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:b=a.New();$s=5;case 5:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;case 4:$s=-1;return $ifaceNil;case 2:e=(c=a.store,d=a.store.$length-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));a.store=$subslice(a.store,0,(a.store.$length-1>>0));$s=-1;return e;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(a){var $ptr,a,b;b=this;if($interfaceIsEqual(a,$ifaceNil)){return;}b.store=$append(b.store,a);};E.prototype.Put=function(a){return this.$val.Put(a);};F.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];J.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([I],[],false)}];L.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)}];A.init("github.com/gopherjs/gopherjs/nosync",[{prop:"locked",name:"locked",exported:false,typ:$Bool,tag:""}]);D.init("github.com/gopherjs/gopherjs/nosync",[{prop:"doing",name:"doing",exported:false,typ:$Bool,tag:""},{prop:"done",name:"done",exported:false,typ:$Bool,tag:""}]);E.init("github.com/gopherjs/gopherjs/nosync",[{prop:"store",name:"store",exported:false,typ:K,tag:""},{prop:"New",name:"New",exported:true,typ:M,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["time"]=(function(){var $pkg={},$init,C,B,E,A,D,AF,BM,BN,BP,BT,CH,CI,CJ,DC,DD,DE,DF,DH,DI,DJ,DK,DL,DP,DT,DX,R,U,V,W,X,AB,AE,AR,AU,BO,BQ,BZ,CK,DA,CL,DB,CM,CO,CS,k,l,F,H,I,J,Q,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,AT,AV,BR,BS,BU,BV,BY,CA,CB,CC,CD,CE,CF,CG,CN;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];E=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];D=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError",true,"time",true,function(Layout_,Value_,LayoutElem_,ValueElem_,Message_){this.$val=this;if(arguments.length===0){this.Layout="";this.Value="";this.LayoutElem="";this.ValueElem="";this.Message="";return;}this.Layout=Layout_;this.Value=Value_;this.LayoutElem=LayoutElem_;this.ValueElem=ValueElem_;this.Message=Message_;});BM=$pkg.Time=$newType(0,$kindStruct,"time.Time",true,"time",true,function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DL.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BN=$pkg.Month=$newType(4,$kindInt,"time.Month",true,"time",true,null);BP=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday",true,"time",true,null);BT=$pkg.Duration=$newType(8,$kindInt64,"time.Duration",true,"time",true,null);CH=$pkg.Location=$newType(0,$kindStruct,"time.Location",true,"time",true,function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=DC.nil;this.tx=DD.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DE.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CI=$pkg.zone=$newType(0,$kindStruct,"time.zone",true,"time",false,function(name_,offset_,isDST_){this.$val=this;if(arguments.length===0){this.name="";this.offset=0;this.isDST=false;return;}this.name=name_;this.offset=offset_;this.isDST=isDST_;});CJ=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans",true,"time",false,function(when_,index_,isstd_,isutc_){this.$val=this;if(arguments.length===0){this.when=new $Int64(0,0);this.index=0;this.isstd=false;this.isutc=false;return;}this.when=when_;this.index=index_;this.isstd=isstd_;this.isutc=isutc_;});DC=$sliceType(CI);DD=$sliceType(CJ);DE=$ptrType(CI);DF=$sliceType($String);DH=$arrayType($Uint8,20);DI=$sliceType($Uint8);DJ=$arrayType($Uint8,9);DK=$arrayType($Uint8,64);DL=$ptrType(CH);DP=$arrayType($Uint8,32);DT=$ptrType(AF);DX=$ptrType(BM);F=function(){var $ptr;$unused(CC(new $Int64(0,0),new $Int64(0,0)));};H=function(){var $ptr,m,n,o,p;m=new($global.Date)();n=$internalize(m,$String);o=Q(n,40);p=Q(n,41);if((o===-1)||(p===-1)){CL.name="UTC";return;}CL.name=$substring(n,(o+1>>0),p);CL.zone=new DC([new CI.ptr(CL.name,$imul(($parseInt(m.getTimezoneOffset())>>0),-60),false)]);};I=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};J=function(){var $ptr,m,n,o,p,q,r;m=new $Int64(0,0);n=0;o=I();p=$div64(o,new $Int64(0,1000000000),false);q=((r=$div64(o,new $Int64(0,1000000000),true),r.$low+((r.$high>>31)*4294967296))>>0);m=p;n=q;return[m,n];};Q=function(m,n){var $ptr,m,n;return $parseInt(m.indexOf($global.String.fromCharCode(n)))>>0;};S=function(m){var $ptr,m,n;if(m.length===0){return false;}n=m.charCodeAt(0);return 97<=n&&n<=122;};T=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n="";o=0;p="";q=0;while(true){if(!(q<m.length)){break;}r=(m.charCodeAt(q)>>0);s=r;if(s===(74)){if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="Jan"){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="January"){t=$substring(m,0,q);u=257;v=$substring(m,(q+7>>0));n=t;o=u;p=v;return[n,o,p];}if(!S($substring(m,(q+3>>0)))){w=$substring(m,0,q);x=258;y=$substring(m,(q+3>>0));n=w;o=x;p=y;return[n,o,p];}}}else if(s===(77)){if(m.length>=(q+3>>0)){if($substring(m,q,(q+3>>0))==="Mon"){if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="Monday"){z=$substring(m,0,q);aa=261;ab=$substring(m,(q+6>>0));n=z;o=aa;p=ab;return[n,o,p];}if(!S($substring(m,(q+3>>0)))){ac=$substring(m,0,q);ad=262;ae=$substring(m,(q+3>>0));n=ac;o=ad;p=ae;return[n,o,p];}}if($substring(m,q,(q+3>>0))==="MST"){af=$substring(m,0,q);ag=21;ah=$substring(m,(q+3>>0));n=af;o=ag;p=ah;return[n,o,p];}}}else if(s===(48)){if(m.length>=(q+2>>0)&&49<=m.charCodeAt((q+1>>0))&&m.charCodeAt((q+1>>0))<=54){ai=$substring(m,0,q);aj=(ak=m.charCodeAt((q+1>>0))-49<<24>>>24,((ak<0||ak>=R.length)?($throwRuntimeError("index out of range"),undefined):R[ak]));al=$substring(m,(q+2>>0));n=ai;o=aj;p=al;return[n,o,p];}}else if(s===(49)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===53)){am=$substring(m,0,q);an=522;ao=$substring(m,(q+2>>0));n=am;o=an;p=ao;return[n,o,p];}ap=$substring(m,0,q);aq=259;ar=$substring(m,(q+1>>0));n=ap;o=aq;p=ar;return[n,o,p];}else if(s===(50)){if(m.length>=(q+4>>0)&&$substring(m,q,(q+4>>0))==="2006"){as=$substring(m,0,q);at=273;au=$substring(m,(q+4>>0));n=as;o=at;p=au;return[n,o,p];}av=$substring(m,0,q);aw=263;ax=$substring(m,(q+1>>0));n=av;o=aw;p=ax;return[n,o,p];}else if(s===(95)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===50)){if(m.length>=(q+5>>0)&&$substring(m,(q+1>>0),(q+5>>0))==="2006"){ay=$substring(m,0,(q+1>>0));az=273;ba=$substring(m,(q+5>>0));n=ay;o=az;p=ba;return[n,o,p];}bb=$substring(m,0,q);bc=264;bd=$substring(m,(q+2>>0));n=bb;o=bc;p=bd;return[n,o,p];}}else if(s===(51)){be=$substring(m,0,q);bf=523;bg=$substring(m,(q+1>>0));n=be;o=bf;p=bg;return[n,o,p];}else if(s===(52)){bh=$substring(m,0,q);bi=525;bj=$substring(m,(q+1>>0));n=bh;o=bi;p=bj;return[n,o,p];}else if(s===(53)){bk=$substring(m,0,q);bl=527;bm=$substring(m,(q+1>>0));n=bk;o=bl;p=bm;return[n,o,p];}else if(s===(80)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===77)){bn=$substring(m,0,q);bo=531;bp=$substring(m,(q+2>>0));n=bn;o=bo;p=bp;return[n,o,p];}}else if(s===(112)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===109)){bq=$substring(m,0,q);br=532;bs=$substring(m,(q+2>>0));n=bq;o=br;p=bs;return[n,o,p];}}else if(s===(45)){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="-070000"){bt=$substring(m,0,q);bu=28;bv=$substring(m,(q+7>>0));n=bt;o=bu;p=bv;return[n,o,p];}if(m.length>=(q+9>>0)&&$substring(m,q,(q+9>>0))==="-07:00:00"){bw=$substring(m,0,q);bx=31;by=$substring(m,(q+9>>0));n=bw;o=bx;p=by;return[n,o,p];}if(m.length>=(q+5>>0)&&$substring(m,q,(q+5>>0))==="-0700"){bz=$substring(m,0,q);ca=27;cb=$substring(m,(q+5>>0));n=bz;o=ca;p=cb;return[n,o,p];}if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="-07:00"){cc=$substring(m,0,q);cd=30;ce=$substring(m,(q+6>>0));n=cc;o=cd;p=ce;return[n,o,p];}if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="-07"){cf=$substring(m,0,q);cg=29;ch=$substring(m,(q+3>>0));n=cf;o=cg;p=ch;return[n,o,p];}}else if(s===(90)){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="Z070000"){ci=$substring(m,0,q);cj=23;ck=$substring(m,(q+7>>0));n=ci;o=cj;p=ck;return[n,o,p];}if(m.length>=(q+9>>0)&&$substring(m,q,(q+9>>0))==="Z07:00:00"){cl=$substring(m,0,q);cm=26;cn=$substring(m,(q+9>>0));n=cl;o=cm;p=cn;return[n,o,p];}if(m.length>=(q+5>>0)&&$substring(m,q,(q+5>>0))==="Z0700"){co=$substring(m,0,q);cp=22;cq=$substring(m,(q+5>>0));n=co;o=cp;p=cq;return[n,o,p];}if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="Z07:00"){cr=$substring(m,0,q);cs=25;ct=$substring(m,(q+6>>0));n=cr;o=cs;p=ct;return[n,o,p];}if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="Z07"){cu=$substring(m,0,q);cv=24;cw=$substring(m,(q+3>>0));n=cu;o=cv;p=cw;return[n,o,p];}}else if(s===(46)){if((q+1>>0)<m.length&&((m.charCodeAt((q+1>>0))===48)||(m.charCodeAt((q+1>>0))===57))){cx=m.charCodeAt((q+1>>0));cy=q+1>>0;while(true){if(!(cy<m.length&&(m.charCodeAt(cy)===cx))){break;}cy=cy+(1)>>0;}if(!AH(m,cy)){cz=32;if(m.charCodeAt((q+1>>0))===57){cz=33;}cz=cz|((((cy-((q+1>>0))>>0))<<16>>0));da=$substring(m,0,q);db=cz;dc=$substring(m,cy);n=da;o=db;p=dc;return[n,o,p];}}}q=q+(1)>>0;}dd=m;de=0;df="";n=dd;o=de;p=df;return[n,o,p];};Y=function(m,n){var $ptr,m,n,o,p,q;o=0;while(true){if(!(o<m.length)){break;}p=m.charCodeAt(o);q=n.charCodeAt(o);if(!((p===q))){p=(p|(32))>>>0;q=(q|(32))>>>0;if(!((p===q))||p<97||p>122){return false;}}o=o+(1)>>0;}return true;};Z=function(m,n){var $ptr,m,n,o,p,q,r;o=m;p=0;while(true){if(!(p<o.$length)){break;}q=p;r=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if(n.length>=r.length&&Y($substring(n,0,r.length),r)){return[q,$substring(n,r.length),$ifaceNil];}p++;}return[-1,n,AE];};AA=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u;p=(n>>>0);if(n<0){m=$append(m,45);p=(-n>>>0);}q=DH.zero();r=20;while(true){if(!(p>=10)){break;}r=r-(1)>>0;t=(s=p/10,(s===s&&s!==1/0&&s!==-1/0)?s>>>0:$throwRuntimeError("integer divide by zero"));((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(((48+p>>>0)-(t*10>>>0)>>>0)<<24>>>24));p=t;}r=r-(1)>>0;((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=((48+p>>>0)<<24>>>24));u=20-r>>0;while(true){if(!(u<o)){break;}m=$append(m,48);u=u+(1)>>0;}return $appendSlice(m,$subslice(new DI(q),r));};AC=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w;n=0;o=$ifaceNil;p=false;if(!(m==="")&&((m.charCodeAt(0)===45)||(m.charCodeAt(0)===43))){p=m.charCodeAt(0)===45;m=$substring(m,1);}q=AS(m);r=q[0];s=q[1];o=q[2];n=((r.$low+((r.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(o,$ifaceNil))||!(s==="")){t=0;u=AB;n=t;o=u;return[n,o];}if(p){n=-n;}v=n;w=$ifaceNil;n=v;o=w;return[n,o];};AD=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s,t,u,v;q=n;r=DJ.zero();s=9;while(true){if(!(s>0)){break;}s=s-(1)>>0;((s<0||s>=r.length)?($throwRuntimeError("index out of range"),undefined):r[s]=(((t=q%10,t===t?t:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));q=(u=q/(10),(u===u&&u!==1/0&&u!==-1/0)?u>>>0:$throwRuntimeError("integer divide by zero"));}if(o>9){o=9;}if(p){while(true){if(!(o>0&&((v=o-1>>0,((v<0||v>=r.length)?($throwRuntimeError("index out of range"),undefined):r[v]))===48))){break;}o=o-(1)>>0;}if(o===0){return m;}}m=$append(m,46);return $appendSlice(m,$subslice(new DI(r),0,o));};BM.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.String=function(){return this.$val.String();};BM.ptr.prototype.Format=function(m){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=DI.nil;p=m.length+10>>0;if(p<64){q=DK.zero();o=$subslice(new DI(q),0,0);}else{o=$makeSlice(DI,0,p);}r=$clone(n,BM).AppendFormat(o,m);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}o=r;$s=-1;return $bytesToString(o);}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Format};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Format=function(m){return this.$val.Format(m);};BM.ptr.prototype.AppendFormat=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=$clone(o,BM).locabs();$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];t=p[2];u=-1;v=0;w=0;x=-1;y=0;z=0;while(true){if(!(!(n===""))){break;}aa=T(n);ab=aa[0];ac=aa[1];ad=aa[2];if(!(ab==="")){m=$appendSlice(m,ab);}if(ac===0){break;}n=ad;if(u<0&&!(((ac&256)===0))){ae=BY(t,true);u=ae[0];v=ae[1];w=ae[2];}if(x<0&&!(((ac&512)===0))){af=BS(t);x=af[0];y=af[1];z=af[2];}switch(0){default:ag=ac&65535;if(ag===(274)){ah=u;if(ah<0){ah=-ah;}m=AA(m,(ai=ah%100,ai===ai?ai:$throwRuntimeError("integer divide by zero")),2);}else if(ag===(273)){m=AA(m,u,4);}else if(ag===(258)){m=$appendSlice(m,$substring(new BN(v).String(),0,3));}else if(ag===(257)){aj=new BN(v).String();m=$appendSlice(m,aj);}else if(ag===(259)){m=AA(m,(v>>0),0);}else if(ag===(260)){m=AA(m,(v>>0),2);}else if(ag===(262)){m=$appendSlice(m,$substring(new BP(BR(t)).String(),0,3));}else if(ag===(261)){ak=new BP(BR(t)).String();m=$appendSlice(m,ak);}else if(ag===(263)){m=AA(m,w,0);}else if(ag===(264)){if(w<10){m=$append(m,32);}m=AA(m,w,0);}else if(ag===(265)){m=AA(m,w,2);}else if(ag===(522)){m=AA(m,x,2);}else if(ag===(523)){am=(al=x%12,al===al?al:$throwRuntimeError("integer divide by zero"));if(am===0){am=12;}m=AA(m,am,0);}else if(ag===(524)){ao=(an=x%12,an===an?an:$throwRuntimeError("integer divide by zero"));if(ao===0){ao=12;}m=AA(m,ao,2);}else if(ag===(525)){m=AA(m,y,0);}else if(ag===(526)){m=AA(m,y,2);}else if(ag===(527)){m=AA(m,z,0);}else if(ag===(528)){m=AA(m,z,2);}else if(ag===(531)){if(x>=12){m=$appendSlice(m,"PM");}else{m=$appendSlice(m,"AM");}}else if(ag===(532)){if(x>=12){m=$appendSlice(m,"pm");}else{m=$appendSlice(m,"am");}}else if((ag===(22))||(ag===(25))||(ag===(23))||(ag===(24))||(ag===(26))||(ag===(27))||(ag===(30))||(ag===(28))||(ag===(29))||(ag===(31))){if((s===0)&&((ac===22)||(ac===25)||(ac===23)||(ac===24)||(ac===26))){m=$append(m,90);break;}aq=(ap=s/60,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));ar=s;if(aq<0){m=$append(m,45);aq=-aq;ar=-ar;}else{m=$append(m,43);}m=AA(m,(as=aq/60,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero")),2);if((ac===25)||(ac===30)||(ac===26)||(ac===31)){m=$append(m,58);}if(!((ac===29))&&!((ac===24))){m=AA(m,(at=aq%60,at===at?at:$throwRuntimeError("integer divide by zero")),2);}if((ac===23)||(ac===28)||(ac===31)||(ac===26)){if((ac===31)||(ac===26)){m=$append(m,58);}m=AA(m,(au=ar%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}}else if(ag===(21)){if(!(r==="")){m=$appendSlice(m,r);break;}aw=(av=s/60,(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(aw<0){m=$append(m,45);aw=-aw;}else{m=$append(m,43);}m=AA(m,(ax=aw/60,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero")),2);m=AA(m,(ay=aw%60,ay===ay?ay:$throwRuntimeError("integer divide by zero")),2);}else if((ag===(32))||(ag===(33))){m=AD(m,($clone(o,BM).Nanosecond()>>>0),ac>>16>>0,(ac&65535)===33);}}}$s=-1;return m;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.AppendFormat};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.AppendFormat=function(m,n){return this.$val.AppendFormat(m,n);};AG=function(m){var $ptr,m;return"\""+m+"\"";};AF.ptr.prototype.Error=function(){var $ptr,m;m=this;if(m.Message===""){return"parsing time "+AG(m.Value)+" as "+AG(m.Layout)+": cannot parse "+AG(m.ValueElem)+" as "+AG(m.LayoutElem);}return"parsing time "+AG(m.Value)+m.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(m,n){var $ptr,m,n,o;if(m.length<=n){return false;}o=m.charCodeAt(n);return 48<=o&&o<=57;};AI=function(m,n){var $ptr,m,n;if(!AH(m,0)){return[0,m,AE];}if(!AH(m,1)){if(n){return[0,m,AE];}return[((m.charCodeAt(0)-48<<24>>>24)>>0),$substring(m,1),$ifaceNil];}return[($imul(((m.charCodeAt(0)-48<<24>>>24)>>0),10))+((m.charCodeAt(1)-48<<24>>>24)>>0)>>0,$substring(m,2),$ifaceNil];};AJ=function(m){var $ptr,m;while(true){if(!(m.length>0&&(m.charCodeAt(0)===32))){break;}m=$substring(m,1);}return m;};AK=function(m,n){var $ptr,m,n;while(true){if(!(n.length>0)){break;}if(n.charCodeAt(0)===32){if(m.length>0&&!((m.charCodeAt(0)===32))){return[m,AE];}n=AJ(n);m=AJ(m);continue;}if((m.length===0)||!((m.charCodeAt(0)===n.charCodeAt(0)))){return[m,AE];}n=$substring(n,1);m=$substring(m,1);}return[m,$ifaceNil];};AL=function(m,n){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=AN(m,n,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(m,n,o,p){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;ce=$f.ce;cf=$f.cf;cg=$f.cg;ch=$f.ch;ci=$f.ci;cj=$f.cj;ck=$f.ck;cl=$f.cl;cm=$f.cm;cn=$f.cn;co=$f.co;cp=$f.cp;cq=$f.cq;cr=$f.cr;cs=$f.cs;ct=$f.ct;cu=$f.cu;cv=$f.cv;cw=$f.cw;cx=$f.cx;cy=$f.cy;cz=$f.cz;da=$f.da;db=$f.db;dc=$f.dc;dd=$f.dd;de=$f.de;df=$f.df;dg=$f.dg;dh=$f.dh;di=$f.di;dj=$f.dj;dk=$f.dk;dl=$f.dl;dm=$f.dm;dn=$f.dn;dp=$f.dp;dq=$f.dq;dr=$f.dr;ds=$f.ds;dt=$f.dt;du=$f.du;dv=$f.dv;dw=$f.dw;dx=$f.dx;dy=$f.dy;dz=$f.dz;ea=$f.ea;eb=$f.eb;ec=$f.ec;ed=$f.ed;ee=$f.ee;ef=$f.ef;eg=$f.eg;eh=$f.eh;ei=$f.ei;ej=$f.ej;ek=$f.ek;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=m;r=n;s=q;t=r;u="";v=false;w=false;x=0;y=1;z=1;aa=0;ab=0;ac=0;ad=0;ae=DL.nil;af=-1;ag="";while(true){ah=$ifaceNil;ai=T(m);aj=ai[0];ak=ai[1];al=ai[2];am=$substring(m,aj.length,(m.length-al.length>>0));an=AK(n,aj);n=an[0];ah=an[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,aj,n,"")];}if(ak===0){if(!((n.length===0))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,"",n,": extra text: "+n)];}break;}m=al;ao="";switch(0){default:ap=ak&65535;if(ap===(274)){if(n.length<2){ah=AE;break;}aq=$substring(n,0,2);ar=$substring(n,2);ao=aq;n=ar;as=AC(ao);x=as[0];ah=as[1];if(x>=69){x=x+(1900)>>0;}else{x=x+(2000)>>0;}}else if(ap===(273)){if(n.length<4||!AH(n,0)){ah=AE;break;}at=$substring(n,0,4);au=$substring(n,4);ao=at;n=au;av=AC(ao);x=av[0];ah=av[1];}else if(ap===(258)){aw=Z(W,n);y=aw[0];n=aw[1];ah=aw[2];}else if(ap===(257)){ax=Z(X,n);y=ax[0];n=ax[1];ah=ax[2];}else if((ap===(259))||(ap===(260))){ay=AI(n,ak===260);y=ay[0];n=ay[1];ah=ay[2];if(y<=0||12<y){u="month";}}else if(ap===(262)){az=Z(V,n);n=az[1];ah=az[2];}else if(ap===(261)){ba=Z(U,n);n=ba[1];ah=ba[2];}else if((ap===(263))||(ap===(264))||(ap===(265))){if((ak===264)&&n.length>0&&(n.charCodeAt(0)===32)){n=$substring(n,1);}bb=AI(n,ak===265);z=bb[0];n=bb[1];ah=bb[2];if(z<0){u="day";}}else if(ap===(522)){bc=AI(n,false);aa=bc[0];n=bc[1];ah=bc[2];if(aa<0||24<=aa){u="hour";}}else if((ap===(523))||(ap===(524))){bd=AI(n,ak===524);aa=bd[0];n=bd[1];ah=bd[2];if(aa<0||12<aa){u="hour";}}else if((ap===(525))||(ap===(526))){be=AI(n,ak===526);ab=be[0];n=be[1];ah=be[2];if(ab<0||60<=ab){u="minute";}}else if((ap===(527))||(ap===(528))){bf=AI(n,ak===528);ac=bf[0];n=bf[1];ah=bf[2];if(ac<0||60<=ac){u="second";break;}if(n.length>=2&&(n.charCodeAt(0)===46)&&AH(n,1)){bg=T(m);ak=bg[1];ak=ak&(65535);if((ak===32)||(ak===33)){break;}bh=2;while(true){if(!(bh<n.length&&AH(n,bh))){break;}bh=bh+(1)>>0;}bi=AQ(n,bh);ad=bi[0];u=bi[1];ah=bi[2];n=$substring(n,bh);}}else if(ap===(531)){if(n.length<2){ah=AE;break;}bj=$substring(n,0,2);bk=$substring(n,2);ao=bj;n=bk;bl=ao;if(bl===("PM")){w=true;}else if(bl===("AM")){v=true;}else{ah=AE;}}else if(ap===(532)){if(n.length<2){ah=AE;break;}bm=$substring(n,0,2);bn=$substring(n,2);ao=bm;n=bn;bo=ao;if(bo===("pm")){w=true;}else if(bo===("am")){v=true;}else{ah=AE;}}else if((ap===(22))||(ap===(25))||(ap===(23))||(ap===(24))||(ap===(26))||(ap===(27))||(ap===(29))||(ap===(30))||(ap===(28))||(ap===(31))){if(((ak===22)||(ak===24)||(ak===25))&&n.length>=1&&(n.charCodeAt(0)===90)){n=$substring(n,1);ae=$pkg.UTC;break;}bp="";bq="";br="";bs="";bt=bp;bu=bq;bv=br;bw=bs;if((ak===25)||(ak===30)){if(n.length<6){ah=AE;break;}if(!((n.charCodeAt(3)===58))){ah=AE;break;}bx=$substring(n,0,1);by=$substring(n,1,3);bz=$substring(n,4,6);ca="00";cb=$substring(n,6);bt=bx;bu=by;bv=bz;bw=ca;n=cb;}else if((ak===29)||(ak===24)){if(n.length<3){ah=AE;break;}cc=$substring(n,0,1);cd=$substring(n,1,3);ce="00";cf="00";cg=$substring(n,3);bt=cc;bu=cd;bv=ce;bw=cf;n=cg;}else if((ak===26)||(ak===31)){if(n.length<9){ah=AE;break;}if(!((n.charCodeAt(3)===58))||!((n.charCodeAt(6)===58))){ah=AE;break;}ch=$substring(n,0,1);ci=$substring(n,1,3);cj=$substring(n,4,6);ck=$substring(n,7,9);cl=$substring(n,9);bt=ch;bu=ci;bv=cj;bw=ck;n=cl;}else if((ak===23)||(ak===28)){if(n.length<7){ah=AE;break;}cm=$substring(n,0,1);cn=$substring(n,1,3);co=$substring(n,3,5);cp=$substring(n,5,7);cq=$substring(n,7);bt=cm;bu=cn;bv=co;bw=cp;n=cq;}else{if(n.length<5){ah=AE;break;}cr=$substring(n,0,1);cs=$substring(n,1,3);ct=$substring(n,3,5);cu="00";cv=$substring(n,5);bt=cr;bu=cs;bv=ct;bw=cu;n=cv;}cw=0;cx=0;cy=0;cz=cw;da=cx;db=cy;dc=AC(bu);cz=dc[0];ah=dc[1];if($interfaceIsEqual(ah,$ifaceNil)){dd=AC(bv);da=dd[0];ah=dd[1];}if($interfaceIsEqual(ah,$ifaceNil)){de=AC(bw);db=de[0];ah=de[1];}af=($imul(((($imul(cz,60))+da>>0)),60))+db>>0;df=bt.charCodeAt(0);if(df===(43)){}else if(df===(45)){af=-af;}else{ah=AE;}}else if(ap===(21)){if(n.length>=3&&$substring(n,0,3)==="UTC"){ae=$pkg.UTC;n=$substring(n,3);break;}dg=AO(n);dh=dg[0];di=dg[1];if(!di){ah=AE;break;}dj=$substring(n,0,dh);dk=$substring(n,dh);ag=dj;n=dk;}else if(ap===(32)){dl=1+((ak>>16>>0))>>0;if(n.length<dl){ah=AE;break;}dm=AQ(n,dl);ad=dm[0];u=dm[1];ah=dm[2];n=$substring(n,dl);}else if(ap===(33)){if(n.length<2||!((n.charCodeAt(0)===46))||n.charCodeAt(1)<48||57<n.charCodeAt(1)){break;}dn=0;while(true){if(!(dn<9&&(dn+1>>0)<n.length&&48<=n.charCodeAt((dn+1>>0))&&n.charCodeAt((dn+1>>0))<=57)){break;}dn=dn+(1)>>0;}dp=AQ(n,1+dn>>0);ad=dp[0];u=dp[1];ah=dp[2];n=$substring(n,(1+dn>>0));}}if(!(u==="")){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,am,n,": "+u+" out of range")];}if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,am,n,"")];}}if(w&&aa<12){aa=aa+(12)>>0;}else if(v&&(aa===12)){aa=0;}if(z<1||z>CA((y>>0),x)){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,"",n,": day out of range")];}if(!(ae===DL.nil)){$s=1;continue;}$s=2;continue;case 1:dq=CF(x,(y>>0),z,aa,ab,ac,ad,ae);$s=3;case 3:if($c){$c=false;dq=dq.$blk();}if(dq&&dq.$blk!==undefined){break s;}$s=-1;return[dq,$ifaceNil];case 2:if(!((af===-1))){$s=4;continue;}$s=5;continue;case 4:dr=CF(x,(y>>0),z,aa,ab,ac,ad,$pkg.UTC);$s=6;case 6:if($c){$c=false;dr=dr.$blk();}if(dr&&dr.$blk!==undefined){break s;}ds=$clone(dr,BM);ds.sec=(dt=ds.sec,du=new $Int64(0,af),new $Int64(dt.$high-du.$high,dt.$low-du.$low));dx=p.lookup((dw=ds.sec,new $Int64(dw.$high+-15,dw.$low+2288912640)));$s=7;case 7:if($c){$c=false;dx=dx.$blk();}if(dx&&dx.$blk!==undefined){break s;}dv=dx;dy=dv[0];dz=dv[1];if((dz===af)&&(ag===""||dy===ag)){ds.setLoc(p);$s=-1;return[ds,$ifaceNil];}ds.setLoc(CN(ag,af));$s=-1;return[ds,$ifaceNil];case 5:if(!(ag==="")){$s=8;continue;}$s=9;continue;case 8:ea=CF(x,(y>>0),z,aa,ab,ac,ad,$pkg.UTC);$s=10;case 10:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}eb=$clone(ea,BM);ee=p.lookupName(ag,(ed=eb.sec,new $Int64(ed.$high+-15,ed.$low+2288912640)));$s=11;case 11:if($c){$c=false;ee=ee.$blk();}if(ee&&ee.$blk!==undefined){break s;}ec=ee;ef=ec[0];eg=ec[2];if(eg){eb.sec=(eh=eb.sec,ei=new $Int64(0,ef),new $Int64(eh.$high-ei.$high,eh.$low-ei.$low));eb.setLoc(p);$s=-1;return[eb,$ifaceNil];}if(ag.length>3&&$substring(ag,0,3)==="GMT"){ej=AC($substring(ag,3));ef=ej[0];ef=$imul(ef,(3600));}eb.setLoc(CN(ag,ef));$s=-1;return[eb,$ifaceNil];case 9:ek=CF(x,(y>>0),z,aa,ab,ac,ad,o);$s=12;case 12:if($c){$c=false;ek=ek.$blk();}if(ek&&ek.$blk!==undefined){break s;}$s=-1;return[ek,$ifaceNil];}return;}if($f===undefined){$f={$blk:AN};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.ce=ce;$f.cf=cf;$f.cg=cg;$f.ch=ch;$f.ci=ci;$f.cj=cj;$f.ck=ck;$f.cl=cl;$f.cm=cm;$f.cn=cn;$f.co=co;$f.cp=cp;$f.cq=cq;$f.cr=cr;$f.cs=cs;$f.ct=ct;$f.cu=cu;$f.cv=cv;$f.cw=cw;$f.cx=cx;$f.cy=cy;$f.cz=cz;$f.da=da;$f.db=db;$f.dc=dc;$f.dd=dd;$f.de=de;$f.df=df;$f.dg=dg;$f.dh=dh;$f.di=di;$f.dj=dj;$f.dk=dk;$f.dl=dl;$f.dm=dm;$f.dn=dn;$f.dp=dp;$f.dq=dq;$f.dr=dr;$f.ds=ds;$f.dt=dt;$f.du=du;$f.dv=dv;$f.dw=dw;$f.dx=dx;$f.dy=dy;$f.dz=dz;$f.ea=ea;$f.eb=eb;$f.ec=ec;$f.ed=ed;$f.ee=ee;$f.ef=ef;$f.eg=eg;$f.eh=eh;$f.ei=ei;$f.ej=ej;$f.ek=ek;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AO=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=0;o=false;if(m.length<3){p=0;q=false;n=p;o=q;return[n,o];}if(m.length>=4&&($substring(m,0,4)==="ChST"||$substring(m,0,4)==="MeST")){r=4;s=true;n=r;o=s;return[n,o];}if($substring(m,0,3)==="GMT"){n=AP(m);t=n;u=true;n=t;o=u;return[n,o];}v=0;v=0;while(true){if(!(v<6)){break;}if(v>=m.length){break;}w=m.charCodeAt(v);if(w<65||90<w){break;}v=v+(1)>>0;}x=v;if((x===(0))||(x===(1))||(x===(2))||(x===(6))){y=0;z=false;n=y;o=z;return[n,o];}else if(x===(5)){if(m.charCodeAt(4)===84){aa=5;ab=true;n=aa;o=ab;return[n,o];}}else if(x===(4)){if((m.charCodeAt(3)===84)||$substring(m,0,4)==="WITA"){ac=4;ad=true;n=ac;o=ad;return[n,o];}}else if(x===(3)){ae=3;af=true;n=ae;o=af;return[n,o];}ag=0;ah=false;n=ag;o=ah;return[n,o];};AP=function(m){var $ptr,m,n,o,p,q,r;m=$substring(m,3);if(m.length===0){return 3;}n=m.charCodeAt(0);if(!((n===45))&&!((n===43))){return 3;}o=AS($substring(m,1));p=o[0];q=o[1];r=o[2];if(!($interfaceIsEqual(r,$ifaceNil))){return 3;}if(n===45){p=new $Int64(-p.$high,-p.$low);}if((p.$high===0&&p.$low===0)||(p.$high<-1||(p.$high===-1&&p.$low<4294967282))||(0<p.$high||(0===p.$high&&12<p.$low))){return 3;}return(3+m.length>>0)-q.length>>0;};AQ=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=0;p="";q=$ifaceNil;if(!((m.charCodeAt(0)===46))){q=AE;return[o,p,q];}r=AC($substring(m,1,n));o=r[0];q=r[1];if(!($interfaceIsEqual(q,$ifaceNil))){return[o,p,q];}if(o<0||1000000000<=o){p="fractional second";return[o,p,q];}s=10-n>>0;t=0;while(true){if(!(t<s)){break;}o=$imul(o,(10));t=t+(1)>>0;}return[o,p,q];};AS=function(m){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=new $Int64(0,0);o="";p=$ifaceNil;q=0;while(true){if(!(q<m.length)){break;}r=m.charCodeAt(q);if(r<48||r>57){break;}if((n.$high>214748364||(n.$high===214748364&&n.$low>3435973836))){s=new $Int64(0,0);t="";u=AR;n=s;o=t;p=u;return[n,o,p];}n=(v=(w=$mul64(n,new $Int64(0,10)),x=new $Int64(0,r),new $Int64(w.$high+x.$high,w.$low+x.$low)),new $Int64(v.$high-0,v.$low-48));if((n.$high<0||(n.$high===0&&n.$low<0))){y=new $Int64(0,0);z="";aa=AR;n=y;o=z;p=aa;return[n,o,p];}q=q+(1)>>0;}ab=n;ac=$substring(m,q);ad=$ifaceNil;n=ab;o=ac;p=ad;return[n,o,p];};AT=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=new $Int64(0,0);o=0;p="";q=0;o=1;r=false;while(true){if(!(q<m.length)){break;}s=m.charCodeAt(q);if(s<48||s>57){break;}if(r){q=q+(1)>>0;continue;}if((n.$high>214748364||(n.$high===214748364&&n.$low>3435973836))){r=true;q=q+(1)>>0;continue;}w=(t=(u=$mul64(n,new $Int64(0,10)),v=new $Int64(0,s),new $Int64(u.$high+v.$high,u.$low+v.$low)),new $Int64(t.$high-0,t.$low-48));if((w.$high<0||(w.$high===0&&w.$low<0))){r=true;q=q+(1)>>0;continue;}n=w;o=o*(10);q=q+(1)>>0;}x=n;y=o;z=$substring(m,q);n=x;o=y;p=z;return[n,o,p];};AV=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=m;o=new $Int64(0,0);p=false;if(!(m==="")){q=m.charCodeAt(0);if((q===45)||(q===43)){p=q===45;m=$substring(m,1);}}if(m==="0"){return[new BT(0,0),$ifaceNil];}if(m===""){return[new BT(0,0),C.New("time: invalid duration "+n)];}while(true){if(!(!(m===""))){break;}r=new $Int64(0,0);s=new $Int64(0,0);t=r;u=s;v=1;w=$ifaceNil;if(!((m.charCodeAt(0)===46)||48<=m.charCodeAt(0)&&m.charCodeAt(0)<=57)){return[new BT(0,0),C.New("time: invalid duration "+n)];}x=m.length;y=AS(m);t=y[0];m=y[1];w=y[2];if(!($interfaceIsEqual(w,$ifaceNil))){return[new BT(0,0),C.New("time: invalid duration "+n)];}z=!((x===m.length));aa=false;if(!(m==="")&&(m.charCodeAt(0)===46)){m=$substring(m,1);ab=m.length;ac=AT(m);u=ac[0];v=ac[1];m=ac[2];aa=!((ab===m.length));}if(!z&&!aa){return[new BT(0,0),C.New("time: invalid duration "+n)];}ad=0;while(true){if(!(ad<m.length)){break;}ae=m.charCodeAt(ad);if((ae===46)||48<=ae&&ae<=57){break;}ad=ad+(1)>>0;}if(ad===0){return[new BT(0,0),C.New("time: missing unit in duration "+n)];}af=$substring(m,0,ad);m=$substring(m,ad);ag=(ah=AU[$String.keyFor(af)],ah!==undefined?[ah.v,true]:[new $Int64(0,0),false]);ai=ag[0];aj=ag[1];if(!aj){return[new BT(0,0),C.New("time: unknown unit "+af+" in duration "+n)];}if((ak=$div64(new $Int64(2147483647,4294967295),ai,false),(t.$high>ak.$high||(t.$high===ak.$high&&t.$low>ak.$low)))){return[new BT(0,0),C.New("time: invalid duration "+n)];}t=$mul64(t,(ai));if((u.$high>0||(u.$high===0&&u.$low>0))){t=(al=new $Int64(0,$flatten64(u)*($flatten64(ai)/v)),new $Int64(t.$high+al.$high,t.$low+al.$low));if((t.$high<0||(t.$high===0&&t.$low<0))){return[new BT(0,0),C.New("time: invalid duration "+n)];}}o=(am=t,new $Int64(o.$high+am.$high,o.$low+am.$low));if((o.$high<0||(o.$high===0&&o.$low<0))){return[new BT(0,0),C.New("time: invalid duration "+n)];}}if(p){o=new $Int64(-o.$high,-o.$low);}return[new BT(o.$high,o.$low),$ifaceNil];};$pkg.ParseDuration=AV;BM.ptr.prototype.setLoc=function(m){var $ptr,m,n;n=this;if(m===CK){m=DL.nil;}n.loc=m;};BM.prototype.setLoc=function(m){return this.$val.setLoc(m);};BM.ptr.prototype.After=function(m){var $ptr,m,n,o,p,q,r;n=this;return(o=n.sec,p=m.sec,(o.$high>p.$high||(o.$high===p.$high&&o.$low>p.$low)))||(q=n.sec,r=m.sec,(q.$high===r.$high&&q.$low===r.$low))&&n.nsec>m.nsec;};BM.prototype.After=function(m){return this.$val.After(m);};BM.ptr.prototype.Before=function(m){var $ptr,m,n,o,p,q,r;n=this;return(o=n.sec,p=m.sec,(o.$high<p.$high||(o.$high===p.$high&&o.$low<p.$low)))||(q=n.sec,r=m.sec,(q.$high===r.$high&&q.$low===r.$low))&&n.nsec<m.nsec;};BM.prototype.Before=function(m){return this.$val.Before(m);};BM.ptr.prototype.Equal=function(m){var $ptr,m,n,o,p;n=this;return(o=n.sec,p=m.sec,(o.$high===p.$high&&o.$low===p.$low))&&(n.nsec===m.nsec);};BM.prototype.Equal=function(m){return this.$val.Equal(m);};BN.prototype.String=function(){var $ptr,m,n,o,p;m=this.$val;if(1<=m&&m<=12){return(n=m-1>>0,((n<0||n>=BO.length)?($throwRuntimeError("index out of range"),undefined):BO[n]));}o=$makeSlice(DI,20);p=BV(o,new $Uint64(0,m));return"%!Month("+$bytesToString($subslice(o,p))+")";};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BP.prototype.String=function(){var $ptr,m;m=this.$val;return((m<0||m>=BQ.length)?($throwRuntimeError("index out of range"),undefined):BQ[m]);};$ptrType(BP).prototype.String=function(){return new BP(this.$get()).String();};BM.ptr.prototype.IsZero=function(){var $ptr,m,n;m=this;return(n=m.sec,(n.$high===0&&n.$low===0))&&(m.nsec===0);};BM.prototype.IsZero=function(){return this.$val.IsZero();};BM.ptr.prototype.abs=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.loc;if(n===DL.nil||n===CL){$s=1;continue;}$s=2;continue;case 1:o=n.get();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;case 2:q=(p=m.sec,new $Int64(p.$high+-15,p.$low+2288912640));if(!(n===CK)){$s=4;continue;}$s=5;continue;case 4:if(!(n.cacheZone===DE.nil)&&(r=n.cacheStart,(r.$high<q.$high||(r.$high===q.$high&&r.$low<=q.$low)))&&(s=n.cacheEnd,(q.$high<s.$high||(q.$high===s.$high&&q.$low<s.$low)))){$s=6;continue;}$s=7;continue;case 6:q=(t=new $Int64(0,n.cacheZone.offset),new $Int64(q.$high+t.$high,q.$low+t.$low));$s=8;continue;case 7:v=n.lookup(q);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[1];q=(x=new $Int64(0,w),new $Int64(q.$high+x.$high,q.$low+x.$low));case 8:case 5:$s=-1;return(y=new $Int64(q.$high+2147483646,q.$low+450480384),new $Uint64(y.$high,y.$low));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.abs};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.abs=function(){return this.$val.abs();};BM.ptr.prototype.locabs=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m="";n=0;o=new $Uint64(0,0);p=this;q=p.loc;if(q===DL.nil||q===CL){$s=1;continue;}$s=2;continue;case 1:r=q.get();$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;case 2:t=(s=p.sec,new $Int64(s.$high+-15,s.$low+2288912640));if(!(q===CK)){$s=4;continue;}$s=5;continue;case 4:if(!(q.cacheZone===DE.nil)&&(u=q.cacheStart,(u.$high<t.$high||(u.$high===t.$high&&u.$low<=t.$low)))&&(v=q.cacheEnd,(t.$high<v.$high||(t.$high===v.$high&&t.$low<v.$low)))){$s=7;continue;}$s=8;continue;case 7:m=q.cacheZone.name;n=q.cacheZone.offset;$s=9;continue;case 8:x=q.lookup(t);$s=10;case 10:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;m=w[0];n=w[1];case 9:t=(y=new $Int64(0,n),new $Int64(t.$high+y.$high,t.$low+y.$low));$s=6;continue;case 5:m="UTC";case 6:o=(z=new $Int64(t.$high+2147483646,t.$low+450480384),new $Uint64(z.$high,z.$low));$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.locabs};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.locabs=function(){return this.$val.locabs();};BM.ptr.prototype.Date=function(){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=0;p=this;r=$clone(p,BM).date(true);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;m=q[0];n=q[1];o=q[2];$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Date};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Date=function(){return this.$val.Date();};BM.ptr.prototype.Year=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(false);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Year};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Year=function(){return this.$val.Year();};BM.ptr.prototype.Month=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(true);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Month};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Month=function(){return this.$val.Month();};BM.ptr.prototype.Day=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(true);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[2];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Day};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Day=function(){return this.$val.Day();};BM.ptr.prototype.Weekday=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=BR(n);$s=2;case 2:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Weekday};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Weekday=function(){return this.$val.Weekday();};BR=function(m){var $ptr,m,n,o;n=$div64((new $Uint64(m.$high+0,m.$low+86400)),new $Uint64(0,604800),true);return((o=(n.$low>>0)/86400,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))>>0);};BM.ptr.prototype.ISOWeek=function(){var $ptr,aa,ab,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=this;q=$clone(o,BM).date(true);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;m=p[0];r=p[1];s=p[2];t=p[3];v=$clone(o,BM).Weekday();$s=2;case 2:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=(u=((v+6>>0)>>0)%7,u===u?u:$throwRuntimeError("integer divide by zero"));n=(x=(((t-w>>0)+7>>0))/7,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"));z=(y=(((w-t>>0)+371>>0))%7,y===y?y:$throwRuntimeError("integer divide by zero"));if(1<=z&&z<=3){n=n+(1)>>0;}if(n===0){m=m-(1)>>0;n=52;if((z===4)||((z===5)&&CD(m))){n=n+(1)>>0;}}if((r===12)&&s>=29&&w<3){ab=(aa=(((w+31>>0)-s>>0))%7,aa===aa?aa:$throwRuntimeError("integer divide by zero"));if(0<=ab&&ab<=2){m=m+(1)>>0;n=1;}}$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.ISOWeek};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BM.ptr.prototype.Clock=function(){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=0;p=this;r=$clone(p,BM).abs();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=BS(r);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=s;m=q[0];n=q[1];o=q[2];$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Clock};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Clock=function(){return this.$val.Clock();};BS=function(m){var $ptr,m,n,o,p,q,r;n=0;o=0;p=0;p=($div64(m,new $Uint64(0,86400),true).$low>>0);n=(q=p/3600,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"));p=p-(($imul(n,3600)))>>0;o=(r=p/60,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"));p=p-(($imul(o,60)))>>0;return[n,o,p];};BM.ptr.prototype.Hour=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return(n=($div64(o,new $Uint64(0,86400),true).$low>>0)/3600,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Hour=function(){return this.$val.Hour();};BM.ptr.prototype.Minute=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return(n=($div64(o,new $Uint64(0,3600),true).$low>>0)/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Minute=function(){return this.$val.Minute();};BM.ptr.prototype.Second=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return($div64(n,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Second};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Second=function(){return this.$val.Second();};BM.ptr.prototype.Nanosecond=function(){var $ptr,m;m=this;return(m.nsec>>0);};BM.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BM.ptr.prototype.YearDay=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(false);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[3];$s=-1;return p+1>>0;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.YearDay=function(){return this.$val.YearDay();};BT.prototype.String=function(){var $ptr,m,n,o,p,q,r,s,t;m=this;n=DP.zero();o=32;p=new $Uint64(m.$high,m.$low);q=(m.$high<0||(m.$high===0&&m.$low<0));if(q){p=new $Uint64(-p.$high,-p.$low);}if((p.$high<0||(p.$high===0&&p.$low<1000000000))){r=0;o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=115);o=o-(1)>>0;if((p.$high===0&&p.$low===0)){return"0s";}else if((p.$high<0||(p.$high===0&&p.$low<1000))){r=0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=110);}else if((p.$high<0||(p.$high===0&&p.$low<1000000))){r=3;o=o-(1)>>0;$copyString($subslice(new DI(n),o),"\xC2\xB5");}else{r=6;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=109);}s=BU($subslice(new DI(n),0,o),p,r);o=s[0];p=s[1];o=BV($subslice(new DI(n),0,o),p);}else{o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=115);t=BU($subslice(new DI(n),0,o),p,9);o=t[0];p=t[1];o=BV($subslice(new DI(n),0,o),$div64(p,new $Uint64(0,60),true));p=$div64(p,(new $Uint64(0,60)),false);if((p.$high>0||(p.$high===0&&p.$low>0))){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=109);o=BV($subslice(new DI(n),0,o),$div64(p,new $Uint64(0,60),true));p=$div64(p,(new $Uint64(0,60)),false);if((p.$high>0||(p.$high===0&&p.$low>0))){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=104);o=BV($subslice(new DI(n),0,o),p);}}}if(q){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=45);}return $bytesToString($subslice(new DI(n),o));};$ptrType(BT).prototype.String=function(){return this.$get().String();};BU=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=new $Uint64(0,0);r=m.$length;s=false;t=0;while(true){if(!(t<o)){break;}u=$div64(n,new $Uint64(0,10),true);s=s||!((u.$high===0&&u.$low===0));if(s){r=r-(1)>>0;((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=((u.$low<<24>>>24)+48<<24>>>24));}n=$div64(n,(new $Uint64(0,10)),false);t=t+(1)>>0;}if(s){r=r-(1)>>0;((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=46);}v=r;w=n;p=v;q=w;return[p,q];};BV=function(m,n){var $ptr,m,n,o;o=m.$length;if((n.$high===0&&n.$low===0)){o=o-(1)>>0;((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]=48);}else{while(true){if(!((n.$high>0||(n.$high===0&&n.$low>0)))){break;}o=o-(1)>>0;((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]=(($div64(n,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));n=$div64(n,(new $Uint64(0,10)),false);}}return o;};BT.prototype.Nanoseconds=function(){var $ptr,m;m=this;return new $Int64(m.$high,m.$low);};$ptrType(BT).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BT.prototype.Seconds=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(0,1000000000),false);o=$div64(m,new BT(0,1000000000),true);return $flatten64(n)+$flatten64(o)/1e+09;};$ptrType(BT).prototype.Seconds=function(){return this.$get().Seconds();};BT.prototype.Minutes=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(13,4165425152),false);o=$div64(m,new BT(13,4165425152),true);return $flatten64(n)+$flatten64(o)/6e+10;};$ptrType(BT).prototype.Minutes=function(){return this.$get().Minutes();};BT.prototype.Hours=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(838,817405952),false);o=$div64(m,new BT(838,817405952),true);return $flatten64(n)+$flatten64(o)/3.6e+12;};$ptrType(BT).prototype.Hours=function(){return this.$get().Hours();};BM.ptr.prototype.Add=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w;n=this;n.sec=(o=n.sec,p=(q=$div64(m,new BT(0,1000000000),false),new $Int64(q.$high,q.$low)),new $Int64(o.$high+p.$high,o.$low+p.$low));s=n.nsec+((r=$div64(m,new BT(0,1000000000),true),r.$low+((r.$high>>31)*4294967296))>>0)>>0;if(s>=1000000000){n.sec=(t=n.sec,u=new $Int64(0,1),new $Int64(t.$high+u.$high,t.$low+u.$low));s=s-(1000000000)>>0;}else if(s<0){n.sec=(v=n.sec,w=new $Int64(0,1),new $Int64(v.$high-w.$high,v.$low-w.$low));s=s+(1000000000)>>0;}n.nsec=s;return n;};BM.prototype.Add=function(m){return this.$val.Add(m);};BM.ptr.prototype.Sub=function(m){var $ptr,m,n,o,p,q,r,s,t;n=this;t=(o=$mul64((p=(q=n.sec,r=m.sec,new $Int64(q.$high-r.$high,q.$low-r.$low)),new BT(p.$high,p.$low)),new BT(0,1000000000)),s=new BT(0,(n.nsec-m.nsec>>0)),new BT(o.$high+s.$high,o.$low+s.$low));if($clone($clone(m,BM).Add(t),BM).Equal($clone(n,BM))){return t;}else if($clone(n,BM).Before($clone(m,BM))){return new BT(-2147483648,0);}else{return new BT(2147483647,4294967295);}};BM.prototype.Sub=function(m){return this.$val.Sub(m);};BM.ptr.prototype.AddDate=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;r=$clone(p,BM).Date();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];u=q[2];w=$clone(p,BM).Clock();$s=2;case 2:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;x=v[0];y=v[1];z=v[2];aa=CF(s+m>>0,t+(n>>0)>>0,u+o>>0,x,y,z,(p.nsec>>0),$clone(p,BM).Location());$s=3;case 3:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return aa;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.AddDate};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.AddDate=function(m,n,o){return this.$val.AddDate(m,n,o);};BM.ptr.prototype.date=function(m){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=0;o=0;p=0;q=0;r=this;t=$clone(r,BM).abs();$s=1;case 1:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=BY(t,m);$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}s=u;n=s[0];o=s[1];p=s[2];q=s[3];$s=-1;return[n,o,p,q];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.date};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.date=function(m){return this.$val.date(m);};BY=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p=0;q=0;r=0;s=$div64(m,new $Uint64(0,86400),false);t=$div64(s,new $Uint64(0,146097),false);u=$mul64(new $Uint64(0,400),t);s=(v=$mul64(new $Uint64(0,146097),t),new $Uint64(s.$high-v.$high,s.$low-v.$low));t=$div64(s,new $Uint64(0,36524),false);t=(w=$shiftRightUint64(t,2),new $Uint64(t.$high-w.$high,t.$low-w.$low));u=(x=$mul64(new $Uint64(0,100),t),new $Uint64(u.$high+x.$high,u.$low+x.$low));s=(y=$mul64(new $Uint64(0,36524),t),new $Uint64(s.$high-y.$high,s.$low-y.$low));t=$div64(s,new $Uint64(0,1461),false);u=(z=$mul64(new $Uint64(0,4),t),new $Uint64(u.$high+z.$high,u.$low+z.$low));s=(aa=$mul64(new $Uint64(0,1461),t),new $Uint64(s.$high-aa.$high,s.$low-aa.$low));t=$div64(s,new $Uint64(0,365),false);t=(ab=$shiftRightUint64(t,2),new $Uint64(t.$high-ab.$high,t.$low-ab.$low));u=(ac=t,new $Uint64(u.$high+ac.$high,u.$low+ac.$low));s=(ad=$mul64(new $Uint64(0,365),t),new $Uint64(s.$high-ad.$high,s.$low-ad.$low));o=((ae=(af=new $Int64(u.$high,u.$low),new $Int64(af.$high+-69,af.$low+4075721025)),ae.$low+((ae.$high>>31)*4294967296))>>0);r=(s.$low>>0);if(!n){return[o,p,q,r];}q=r;if(CD(o)){if(q>59){q=q-(1)>>0;}else if((q===59)){p=2;q=29;return[o,p,q,r];}}p=((ag=q/31,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero"))>>0);ai=((ah=p+1>>0,((ah<0||ah>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[ah]))>>0);aj=0;if(q>=ai){p=p+(1)>>0;aj=ai;}else{aj=(((p<0||p>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[p])>>0);}p=p+(1)>>0;q=(q-aj>>0)+1>>0;return[o,p,q,r];};CA=function(m,n){var $ptr,m,n,o;if((m===2)&&CD(n)){return 29;}return((((m<0||m>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[m])-(o=m-1>>0,((o<0||o>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[o]))>>0)>>0);};CB=function(){var $ptr,m,n,o;m=J();n=m[0];o=m[1];return new BM.ptr(new $Int64(n.$high+14,n.$low+2006054656),o,$pkg.Local);};$pkg.Now=CB;BM.ptr.prototype.UTC=function(){var $ptr,m;m=this;m.setLoc(CK);return m;};BM.prototype.UTC=function(){return this.$val.UTC();};BM.ptr.prototype.Local=function(){var $ptr,m;m=this;m.setLoc($pkg.Local);return m;};BM.prototype.Local=function(){return this.$val.Local();};BM.ptr.prototype.In=function(m){var $ptr,m,n;n=this;if(m===DL.nil){$panic(new $String("time: missing Location in call to Time.In"));}n.setLoc(m);return n;};BM.prototype.In=function(m){return this.$val.In(m);};BM.ptr.prototype.Location=function(){var $ptr,m,n;m=this;n=m.loc;if(n===DL.nil){n=$pkg.UTC;}return n;};BM.prototype.Location=function(){return this.$val.Location();};BM.ptr.prototype.Zone=function(){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m="";n=0;o=this;r=o.loc.lookup((q=o.sec,new $Int64(q.$high+-15,q.$low+2288912640)));$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;m=p[0];n=p[1];$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Zone};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Zone=function(){return this.$val.Zone();};BM.ptr.prototype.Unix=function(){var $ptr,m,n;m=this;return(n=m.sec,new $Int64(n.$high+-15,n.$low+2288912640));};BM.prototype.Unix=function(){return this.$val.Unix();};BM.ptr.prototype.UnixNano=function(){var $ptr,m,n,o,p;m=this;return(n=$mul64(((o=m.sec,new $Int64(o.$high+-15,o.$low+2288912640))),new $Int64(0,1000000000)),p=new $Int64(0,m.nsec),new $Int64(n.$high+p.$high,n.$low+p.$low));};BM.prototype.UnixNano=function(){return this.$val.UnixNano();};BM.ptr.prototype.MarshalBinary=function(){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=0;if($clone(m,BM).Location()===$pkg.UTC){$s=1;continue;}$s=2;continue;case 1:n=-1;$s=3;continue;case 2:p=$clone(m,BM).Zone();$s=4;case 4:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[1];if(!(((r=q%60,r===r?r:$throwRuntimeError("integer divide by zero"))===0))){$s=-1;return[DI.nil,C.New("Time.MarshalBinary: zone offset has fractional minute")];}q=(s=q/(60),(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"));if(q<-32768||(q===-1)||q>32767){$s=-1;return[DI.nil,C.New("Time.MarshalBinary: unexpected zone offset")];}n=(q<<16>>16);case 3:t=new DI([1,($shiftRightInt64(m.sec,56).$low<<24>>>24),($shiftRightInt64(m.sec,48).$low<<24>>>24),($shiftRightInt64(m.sec,40).$low<<24>>>24),($shiftRightInt64(m.sec,32).$low<<24>>>24),($shiftRightInt64(m.sec,24).$low<<24>>>24),($shiftRightInt64(m.sec,16).$low<<24>>>24),($shiftRightInt64(m.sec,8).$low<<24>>>24),(m.sec.$low<<24>>>24),((m.nsec>>24>>0)<<24>>>24),((m.nsec>>16>>0)<<24>>>24),((m.nsec>>8>>0)<<24>>>24),(m.nsec<<24>>>24),((n>>8<<16>>16)<<24>>>24),(n<<24>>>24)]);$s=-1;return[t,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalBinary};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BM.ptr.prototype.UnmarshalBinary=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=m;if(o.$length===0){$s=-1;return C.New("Time.UnmarshalBinary: no data");}if(!(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])===1))){$s=-1;return C.New("Time.UnmarshalBinary: unsupported version");}if(!((o.$length===15))){$s=-1;return C.New("Time.UnmarshalBinary: invalid length");}o=$subslice(o,1);n.sec=(p=(q=(r=(s=(t=(u=(v=new $Int64(0,(7>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+7])),w=$shiftLeft64(new $Int64(0,(6>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+6])),8),new $Int64(v.$high|w.$high,(v.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(5>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+5])),16),new $Int64(u.$high|x.$high,(u.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(4>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+4])),24),new $Int64(t.$high|y.$high,(t.$low|y.$low)>>>0)),z=$shiftLeft64(new $Int64(0,(3>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+3])),32),new $Int64(s.$high|z.$high,(s.$low|z.$low)>>>0)),aa=$shiftLeft64(new $Int64(0,(2>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+2])),40),new $Int64(r.$high|aa.$high,(r.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Int64(0,(1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])),48),new $Int64(q.$high|ab.$high,(q.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Int64(0,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])),56),new $Int64(p.$high|ac.$high,(p.$low|ac.$low)>>>0));o=$subslice(o,8);n.nsec=((((3>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+3])>>0)|(((2>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+2])>>0)<<8>>0))|(((1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])>>0)<<16>>0))|(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])>>0)<<24>>0);o=$subslice(o,4);ad=$imul(((((1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])<<16>>16)|(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(ad===-60){$s=1;continue;}$s=2;continue;case 1:n.setLoc(CK);$s=3;continue;case 2:ag=$pkg.Local.lookup((af=n.sec,new $Int64(af.$high+-15,af.$low+2288912640)));$s=4;case 4:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ae=ag;ah=ae[1];if(ad===ah){n.setLoc($pkg.Local);}else{n.setLoc(CN("",ad));}case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalBinary};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalBinary=function(m){return this.$val.UnmarshalBinary(m);};BM.ptr.prototype.GobEncode=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).MarshalBinary();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.GobEncode=function(){return this.$val.GobEncode();};BM.ptr.prototype.GobDecode=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=n.UnmarshalBinary(m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.GobDecode=function(m){return this.$val.GobDecode(m);};BM.ptr.prototype.MarshalJSON=function(){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Year();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(o<0||o>=10000){$s=-1;return[DI.nil,C.New("Time.MarshalJSON: year outside of range [0,9999]")];}p=$makeSlice(DI,0,37);p=$append(p,34);q=$clone(m,BM).AppendFormat(p,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;p=$append(p,34);$s=-1;return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BM.ptr.prototype.UnmarshalJSON=function(m){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if($bytesToString(m)==="null"){$s=-1;return $ifaceNil;}o=$ifaceNil;q=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(m));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;BM.copy(n,p[0]);o=p[1];$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalJSON=function(m){return this.$val.UnmarshalJSON(m);};BM.ptr.prototype.MarshalText=function(){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Year();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(o<0||o>=10000){$s=-1;return[DI.nil,C.New("Time.MarshalText: year outside of range [0,9999]")];}p=$makeSlice(DI,0,35);q=$clone(m,BM).AppendFormat(p,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return[q,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalText=function(){return this.$val.MarshalText();};BM.ptr.prototype.UnmarshalText=function(m){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=$ifaceNil;q=AL("2006-01-02T15:04:05Z07:00",$bytesToString(m));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;BM.copy(n,p[0]);o=p[1];$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalText=function(m){return this.$val.UnmarshalText(m);};CC=function(m,n){var $ptr,m,n,o,p,q,r,s;if((n.$high<0||(n.$high===0&&n.$low<0))||(n.$high>0||(n.$high===0&&n.$low>=1000000000))){o=$div64(n,new $Int64(0,1000000000),false);m=(p=o,new $Int64(m.$high+p.$high,m.$low+p.$low));n=(q=$mul64(o,new $Int64(0,1000000000)),new $Int64(n.$high-q.$high,n.$low-q.$low));if((n.$high<0||(n.$high===0&&n.$low<0))){n=(r=new $Int64(0,1000000000),new $Int64(n.$high+r.$high,n.$low+r.$low));m=(s=new $Int64(0,1),new $Int64(m.$high-s.$high,m.$low-s.$low));}}return new BM.ptr(new $Int64(m.$high+14,m.$low+2006054656),((n.$low+((n.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CC;CD=function(m){var $ptr,m,n,o,p;return((n=m%4,n===n?n:$throwRuntimeError("integer divide by zero"))===0)&&(!(((o=m%100,o===o?o:$throwRuntimeError("integer divide by zero"))===0))||((p=m%400,p===p?p:$throwRuntimeError("integer divide by zero"))===0));};CE=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=0;if(n<0){s=(r=((-n-1>>0))/o,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))+1>>0;m=m-(s)>>0;n=n+(($imul(s,o)))>>0;}if(n>=o){u=(t=n/o,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));m=m+(u)>>0;n=n-(($imul(u,o)))>>0;}v=m;w=n;p=v;q=w;return[p,q];};CF=function(m,n,o,p,q,r,s,t){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(t===DL.nil){$panic(new $String("time: missing Location in call to Date"));}u=(n>>0)-1>>0;v=CE(m,u,12);m=v[0];u=v[1];n=(u>>0)+1>>0;w=CE(r,s,1000000000);r=w[0];s=w[1];x=CE(q,r,60);q=x[0];r=x[1];y=CE(p,q,60);p=y[0];q=y[1];z=CE(o,p,24);o=z[0];p=z[1];ac=(aa=(ab=new $Int64(0,m),new $Int64(ab.$high- -69,ab.$low-4075721025)),new $Uint64(aa.$high,aa.$low));ad=$div64(ac,new $Uint64(0,400),false);ac=(ae=$mul64(new $Uint64(0,400),ad),new $Uint64(ac.$high-ae.$high,ac.$low-ae.$low));af=$mul64(new $Uint64(0,146097),ad);ad=$div64(ac,new $Uint64(0,100),false);ac=(ag=$mul64(new $Uint64(0,100),ad),new $Uint64(ac.$high-ag.$high,ac.$low-ag.$low));af=(ah=$mul64(new $Uint64(0,36524),ad),new $Uint64(af.$high+ah.$high,af.$low+ah.$low));ad=$div64(ac,new $Uint64(0,4),false);ac=(ai=$mul64(new $Uint64(0,4),ad),new $Uint64(ac.$high-ai.$high,ac.$low-ai.$low));af=(aj=$mul64(new $Uint64(0,1461),ad),new $Uint64(af.$high+aj.$high,af.$low+aj.$low));ad=ac;af=(ak=$mul64(new $Uint64(0,365),ad),new $Uint64(af.$high+ak.$high,af.$low+ak.$low));af=(al=new $Uint64(0,(am=n-1>>0,((am<0||am>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[am]))),new $Uint64(af.$high+al.$high,af.$low+al.$low));if(CD(m)&&n>=3){af=(an=new $Uint64(0,1),new $Uint64(af.$high+an.$high,af.$low+an.$low));}af=(ao=new $Uint64(0,(o-1>>0)),new $Uint64(af.$high+ao.$high,af.$low+ao.$low));ap=$mul64(af,new $Uint64(0,86400));ap=(aq=new $Uint64(0,((($imul(p,3600))+($imul(q,60))>>0)+r>>0)),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));as=(ar=new $Int64(ap.$high,ap.$low),new $Int64(ar.$high+-2147483647,ar.$low+3844486912));au=t.lookup(as);$s=1;case 1:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;av=at[1];aw=at[3];ax=at[4];if(!((av===0))){$s=2;continue;}$s=3;continue;case 2:az=(ay=new $Int64(0,av),new $Int64(as.$high-ay.$high,as.$low-ay.$low));if((az.$high<aw.$high||(az.$high===aw.$high&&az.$low<aw.$low))){$s=5;continue;}if((az.$high>ax.$high||(az.$high===ax.$high&&az.$low>=ax.$low))){$s=6;continue;}$s=7;continue;case 5:bb=t.lookup(new $Int64(aw.$high-0,aw.$low-1));$s=8;case 8:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;av=ba[1];$s=7;continue;case 6:bd=t.lookup(ax);$s=9;case 9:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;av=bc[1];case 7:case 4:as=(be=new $Int64(0,av),new $Int64(as.$high-be.$high,as.$low-be.$low));case 3:bf=new BM.ptr(new $Int64(as.$high+14,as.$low+2006054656),(s>>0),DL.nil);bf.setLoc(t);$s=-1;return bf;}return;}if($f===undefined){$f={$blk:CF};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Date=CF;BM.ptr.prototype.Truncate=function(m){var $ptr,m,n,o,p;n=this;if((m.$high<0||(m.$high===0&&m.$low<=0))){return n;}o=CG($clone(n,BM),m);p=o[1];return $clone(n,BM).Add(new BT(-p.$high,-p.$low));};BM.prototype.Truncate=function(m){return this.$val.Truncate(m);};BM.ptr.prototype.Round=function(m){var $ptr,m,n,o,p,q;n=this;if((m.$high<0||(m.$high===0&&m.$low<=0))){return n;}o=CG($clone(n,BM),m);p=o[1];if((q=new BT(p.$high+p.$high,p.$low+p.$low),(q.$high<m.$high||(q.$high===m.$high&&q.$low<m.$low)))){return $clone(n,BM).Add(new BT(-p.$high,-p.$low));}return $clone(n,BM).Add(new BT(m.$high-p.$high,m.$low-p.$low));};BM.prototype.Round=function(m){return this.$val.Round(m);};CG=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p=new BT(0,0);q=false;r=m.nsec;if((s=m.sec,(s.$high<0||(s.$high===0&&s.$low<0)))){q=true;m.sec=(t=m.sec,new $Int64(-t.$high,-t.$low));r=-r;if(r<0){r=r+(1000000000)>>0;m.sec=(u=m.sec,v=new $Int64(0,1),new $Int64(u.$high-v.$high,u.$low-v.$low));}}if((n.$high<0||(n.$high===0&&n.$low<1000000000))&&(w=$div64(new BT(0,1000000000),(new BT(n.$high+n.$high,n.$low+n.$low)),true),(w.$high===0&&w.$low===0))){o=((y=r/((n.$low+((n.$high>>31)*4294967296))>>0),(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;p=new BT(0,(z=r%((n.$low+((n.$high>>31)*4294967296))>>0),z===z?z:$throwRuntimeError("integer divide by zero")));}else if((x=$div64(n,new BT(0,1000000000),true),(x.$high===0&&x.$low===0))){ab=(aa=$div64(n,new BT(0,1000000000),false),new $Int64(aa.$high,aa.$low));o=((ac=$div64(m.sec,ab,false),ac.$low+((ac.$high>>31)*4294967296))>>0)&1;p=(ad=$mul64((ae=$div64(m.sec,ab,true),new BT(ae.$high,ae.$low)),new BT(0,1000000000)),af=new BT(0,r),new BT(ad.$high+af.$high,ad.$low+af.$low));}else{ah=(ag=m.sec,new $Uint64(ag.$high,ag.$low));ai=$mul64(($shiftRightUint64(ah,32)),new $Uint64(0,1000000000));aj=$shiftRightUint64(ai,32);ak=$shiftLeft64(ai,32);ai=$mul64((new $Uint64(ah.$high&0,(ah.$low&4294967295)>>>0)),new $Uint64(0,1000000000));al=ak;am=new $Uint64(ak.$high+ai.$high,ak.$low+ai.$low);an=al;ak=am;if((ak.$high<an.$high||(ak.$high===an.$high&&ak.$low<an.$low))){aj=(ao=new $Uint64(0,1),new $Uint64(aj.$high+ao.$high,aj.$low+ao.$low));}ap=ak;aq=(ar=new $Uint64(0,r),new $Uint64(ak.$high+ar.$high,ak.$low+ar.$low));an=ap;ak=aq;if((ak.$high<an.$high||(ak.$high===an.$high&&ak.$low<an.$low))){aj=(as=new $Uint64(0,1),new $Uint64(aj.$high+as.$high,aj.$low+as.$low));}at=new $Uint64(n.$high,n.$low);while(true){if(!(!((au=$shiftRightUint64(at,63),(au.$high===0&&au.$low===1))))){break;}at=$shiftLeft64(at,(1));}av=new $Uint64(0,0);while(true){o=0;if((aj.$high>at.$high||(aj.$high===at.$high&&aj.$low>at.$low))||(aj.$high===at.$high&&aj.$low===at.$low)&&(ak.$high>av.$high||(ak.$high===av.$high&&ak.$low>=av.$low))){o=1;aw=ak;ax=new $Uint64(ak.$high-av.$high,ak.$low-av.$low);an=aw;ak=ax;if((ak.$high>an.$high||(ak.$high===an.$high&&ak.$low>an.$low))){aj=(ay=new $Uint64(0,1),new $Uint64(aj.$high-ay.$high,aj.$low-ay.$low));}aj=(az=at,new $Uint64(aj.$high-az.$high,aj.$low-az.$low));}if((at.$high===0&&at.$low===0)&&(ba=new $Uint64(n.$high,n.$low),(av.$high===ba.$high&&av.$low===ba.$low))){break;}av=$shiftRightUint64(av,(1));av=(bb=$shiftLeft64((new $Uint64(at.$high&0,(at.$low&1)>>>0)),63),new $Uint64(av.$high|bb.$high,(av.$low|bb.$low)>>>0));at=$shiftRightUint64(at,(1));}p=new BT(ak.$high,ak.$low);}if(q&&!((p.$high===0&&p.$low===0))){o=(o^(1))>>0;p=new BT(n.$high-p.$high,n.$low-p.$low);}return[o,p];};CH.ptr.prototype.get=function(){var $ptr,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;if(m===DL.nil){$s=-1;return CK;}if(m===CL){$s=1;continue;}$s=2;continue;case 1:$r=CM.Do(H);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return m;}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.get};}$f.$ptr=$ptr;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.get=function(){return this.$val.get();};CH.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.get();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n.name;}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.String=function(){return this.$val.String();};CN=function(m,n){var $ptr,m,n,o,p;o=new CH.ptr(m,new DC([new CI.ptr(m,n,false)]),new DD([new CJ.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DE.nil);o.cacheZone=(p=o.zone,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0]));return o;};$pkg.FixedZone=CN;CH.ptr.prototype.lookup=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n="";o=0;p=false;q=new $Int64(0,0);r=new $Int64(0,0);s=this;t=s.get();$s=1;case 1:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;if(s.zone.$length===0){n="UTC";o=0;p=false;q=new $Int64(-2147483648,0);r=new $Int64(2147483647,4294967295);$s=-1;return[n,o,p,q,r];}u=s.cacheZone;if(!(u===DE.nil)&&(v=s.cacheStart,(v.$high<m.$high||(v.$high===m.$high&&v.$low<=m.$low)))&&(w=s.cacheEnd,(m.$high<w.$high||(m.$high===w.$high&&m.$low<w.$low)))){n=u.name;o=u.offset;p=u.isDST;q=s.cacheStart;r=s.cacheEnd;$s=-1;return[n,o,p,q,r];}if((s.tx.$length===0)||(x=(y=s.tx,(0>=y.$length?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+0])).when,(m.$high<x.$high||(m.$high===x.$high&&m.$low<x.$low)))){ab=(z=s.zone,aa=s.lookupFirstZone(),((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]));n=ab.name;o=ab.offset;p=ab.isDST;q=new $Int64(-2147483648,0);if(s.tx.$length>0){r=(ac=s.tx,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0])).when;}else{r=new $Int64(2147483647,4294967295);}$s=-1;return[n,o,p,q,r];}ad=s.tx;r=new $Int64(2147483647,4294967295);ae=0;af=ad.$length;while(true){if(!((af-ae>>0)>1)){break;}ah=ae+(ag=((af-ae>>0))/2,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero"))>>0;ai=((ah<0||ah>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ah]).when;if((m.$high<ai.$high||(m.$high===ai.$high&&m.$low<ai.$low))){r=ai;af=ah;}else{ae=ah;}}al=(aj=s.zone,ak=((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]).index,((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]));n=al.name;o=al.offset;p=al.isDST;q=((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]).when;$s=-1;return[n,o,p,q,r];}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.lookup};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.lookup=function(m){return this.$val.lookup(m);};CH.ptr.prototype.lookupFirstZone=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w;m=this;if(!m.firstZoneUsed()){return 0;}if(m.tx.$length>0&&(n=m.zone,o=(p=m.tx,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])).index,((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o])).isDST){r=((q=m.tx,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])).index>>0)-1>>0;while(true){if(!(r>=0)){break;}if(!(s=m.zone,((r<0||r>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+r])).isDST){return r;}r=r-(1)>>0;}}t=m.zone;u=0;while(true){if(!(u<t.$length)){break;}v=u;if(!(w=m.zone,((v<0||v>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+v])).isDST){return v;}u++;}return 0;};CH.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CH.ptr.prototype.firstZoneUsed=function(){var $ptr,m,n,o,p;m=this;n=m.tx;o=0;while(true){if(!(o<n.$length)){break;}p=$clone(((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]),CJ);if(p.index===0){return true;}o++;}return false;};CH.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CH.ptr.prototype.lookupName=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=0;p=false;q=false;r=this;s=r.get();$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r.zone;u=0;case 2:if(!(u<t.$length)){$s=3;continue;}v=u;x=(w=r.zone,((v<0||v>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+v]));if(x.name===m){$s=4;continue;}$s=5;continue;case 4:aa=r.lookup((z=new $Int64(0,x.offset),new $Int64(n.$high-z.$high,n.$low-z.$low)));$s=6;case 6:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}y=aa;ab=y[0];ac=y[1];ad=y[2];if(ab===x.name){ae=ac;af=ad;ag=true;o=ae;p=af;q=ag;$s=-1;return[o,p,q];}case 5:u++;$s=2;continue;case 3:ah=r.zone;ai=0;while(true){if(!(ai<ah.$length)){break;}aj=ai;al=(ak=r.zone,((aj<0||aj>=ak.$length)?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+aj]));if(al.name===m){am=al.offset;an=al.isDST;ao=true;o=am;p=an;q=ao;$s=-1;return[o,p,q];}ai++;}$s=-1;return[o,p,q];}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.lookupName};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.lookupName=function(m,n){return this.$val.lookupName(m,n);};DT.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"AppendFormat",name:"AppendFormat",pkg:"",typ:$funcType([DI,$String],[DI],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"IsZero",name:"IsZero",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"abs",name:"abs",pkg:"time",typ:$funcType([],[$Uint64],false)},{prop:"locabs",name:"locabs",pkg:"time",typ:$funcType([],[$String,$Int,$Uint64],false)},{prop:"Date",name:"Date",pkg:"",typ:$funcType([],[$Int,BN,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BN],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BP],false)},{prop:"ISOWeek",name:"ISOWeek",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Clock",name:"Clock",pkg:"",typ:$funcType([],[$Int,$Int,$Int],false)},{prop:"Hour",name:"Hour",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Minute",name:"Minute",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Second",name:"Second",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Nanosecond",name:"Nanosecond",pkg:"",typ:$funcType([],[$Int],false)},{prop:"YearDay",name:"YearDay",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([BT],[BM],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BM],[BT],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BM],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BN,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BM],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BM],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DL],[BM],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DL],false)},{prop:"Zone",name:"Zone",pkg:"",typ:$funcType([],[$String,$Int],false)},{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"UnixNano",name:"UnixNano",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BT],[BM],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BT],[BM],false)}];DX.methods=[{prop:"setLoc",name:"setLoc",pkg:"time",typ:$funcType([DL],[],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DI],[$error],false)}];BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BP.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BT.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Nanoseconds",name:"Nanoseconds",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seconds",name:"Seconds",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Minutes",name:"Minutes",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Hours",name:"Hours",pkg:"",typ:$funcType([],[$Float64],false)}];DL.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"lookup",name:"lookup",pkg:"time",typ:$funcType([$Int64],[$String,$Int,$Bool,$Int64,$Int64],false)},{prop:"lookupFirstZone",name:"lookupFirstZone",pkg:"time",typ:$funcType([],[$Int],false)},{prop:"firstZoneUsed",name:"firstZoneUsed",pkg:"time",typ:$funcType([],[$Bool],false)},{prop:"lookupName",name:"lookupName",pkg:"time",typ:$funcType([$String,$Int64],[$Int,$Bool,$Bool],false)}];AF.init("",[{prop:"Layout",name:"Layout",exported:true,typ:$String,tag:""},{prop:"Value",name:"Value",exported:true,typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",exported:true,typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",exported:true,typ:$String,tag:""},{prop:"Message",name:"Message",exported:true,typ:$String,tag:""}]);BM.init("time",[{prop:"sec",name:"sec",exported:false,typ:$Int64,tag:""},{prop:"nsec",name:"nsec",exported:false,typ:$Int32,tag:""},{prop:"loc",name:"loc",exported:false,typ:DL,tag:""}]);CH.init("time",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"zone",name:"zone",exported:false,typ:DC,tag:""},{prop:"tx",name:"tx",exported:false,typ:DD,tag:""},{prop:"cacheStart",name:"cacheStart",exported:false,typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",exported:false,typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",exported:false,typ:DE,tag:""}]);CI.init("time",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"offset",name:"offset",exported:false,typ:$Int,tag:""},{prop:"isDST",name:"isDST",exported:false,typ:$Bool,tag:""}]);CJ.init("time",[{prop:"when",name:"when",exported:false,typ:$Int64,tag:""},{prop:"index",name:"index",exported:false,typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",exported:false,typ:$Bool,tag:""},{prop:"isutc",name:"isutc",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CL=new CH.ptr("",DC.nil,DD.nil,new $Int64(0,0),new $Int64(0,0),DE.nil);CM=new E.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DF(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DF(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DF(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DF(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=C.New("time: invalid number");AE=C.New("bad value for field");AR=C.New("time: bad [0-9]*");BO=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BQ=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);AU=$makeMap($String.keyFor,[{k:"ns",v:new $Int64(0,1)},{k:"us",v:new $Int64(0,1000)},{k:"\xC2\xB5s",v:new $Int64(0,1000)},{k:"\xCE\xBCs",v:new $Int64(0,1000)},{k:"ms",v:new $Int64(0,1000000)},{k:"s",v:new $Int64(0,1000000000)},{k:"m",v:new $Int64(13,4165425152)},{k:"h",v:new $Int64(838,817405952)}]);BZ=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CK=new CH.ptr("UTC",DC.nil,DD.nil,new $Int64(0,0),new $Int64(0,0),DE.nil);$pkg.UTC=CK;$pkg.Local=CL;l=D.Getenv("ZONEINFO");$s=6;case 6:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;CO=k[0];CS=C.New("malformed time zone information");F();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["os"]=(function(){var $pkg={},$init,A,B,C,E,F,G,D,H,X,Y,AU,BL,BN,CU,CV,CW,CY,DB,DC,DD,DE,DF,DG,DH,DI,DU,DV,DZ,EA,ED,EE,AR,AZ,I,J,K,R,Z,AB,AD,AF,AX,BB,BC,BE,BF,BM,BO,BP,CB,CD,CE,CG,CJ,CK,CL,CN,CO,CT;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["io"];E=$packages["runtime"];F=$packages["sync"];G=$packages["sync/atomic"];D=$packages["syscall"];H=$packages["time"];X=$pkg.PathError=$newType(0,$kindStruct,"os.PathError",true,"os",true,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_;});Y=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError",true,"os",true,function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AU=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError",true,"os",true,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_;});BL=$pkg.file=$newType(0,$kindStruct,"os.file",true,"os",false,function(fd_,name_,dirinfo_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DE.nil;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;});BN=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo",true,"os",false,function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DF.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CU=$pkg.File=$newType(0,$kindStruct,"os.File",true,"os",true,function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});CV=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo",true,"os",true,null);CW=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode",true,"os",true,null);CY=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat",true,"os",false,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 H.Time.ptr(new $Int64(0,0),0,DZ.nil);this.sys=new D.Stat_t.ptr(new $Uint64(0,0),new $Uint64(0,0),new $Uint64(0,0),0,0,0,0,new $Uint64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),EA.zero());return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(CU);DD=$sliceType(CV);DE=$ptrType(BN);DF=$sliceType($Uint8);DG=$ptrType(X);DH=$ptrType(AU);DI=$ptrType(Y);DU=$ptrType(BL);DV=$funcType([DU],[$error],false);DZ=$ptrType(H.Location);EA=$arrayType($Int64,3);ED=$arrayType($Uint8,32);EE=$ptrType(CY);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"),undefined):$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;};CU.ptr.prototype.Readdir=function(c){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;if(d===DC.nil){$s=-1;return[DD.nil,$pkg.ErrInvalid];}e=d.readdir(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:CU.ptr.prototype.Readdir};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};CU.prototype.Readdir=function(c){return this.$val.Readdir(c);};CU.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DC.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];};CU.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};CU.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=DD.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DD,0,i.$length);j=i;k=0;case 1:if(!(k<j.$length)){$s=2;continue;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);n=AZ(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(AB(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;$s=-1;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:if((d.$length===0)&&$interfaceIsEqual(e,$ifaceNil)&&c>0){e=C.EOF;}s=d;t=e;d=s;e=t;$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:CU.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;};CU.prototype.readdir=function(c){return this.$val.readdir(c);};CU.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===DE.nil){f.file.dirinfo=new BN.ptr(DF.nil,0,0);f.file.dirinfo.buf=$makeSlice(DF,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=D.ReadDirent(f.file.fd,g.buf);j=BB(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=Z("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=D.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=C.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};CU.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};R=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:e=D.Getenv(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];$s=-1;return f;}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Getenv=R;X.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=-1;return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Error=function(){return this.$val.Error();};Y.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=-1;return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:Y.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Y.prototype.Error=function(){return this.$val.Error();};Z=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new Y.ptr(c,d);};$pkg.NewSyscallError=Z;AB=function(c){var $ptr,c;return AF(c);};$pkg.IsNotExist=AB;AD=function(c){var $ptr,c,d,e,f,g;d=c;if($assertType(d,DG,true)[1]){e=d.$val;return e.Err;}else if($assertType(d,DH,true)[1]){f=d.$val;return f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;return g.Err;}return c;};AF=function(c){var $ptr,c;c=AD(c);return $interfaceIsEqual(c,new D.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};CU.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};CU.prototype.Name=function(){return this.$val.Name();};AU.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=-1;return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AU.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AU.prototype.Error=function(){return this.$val.Error();};CU.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;d=0;e=$ifaceNil;f=this;g=f.checkValid("read");if(!($interfaceIsEqual(g,$ifaceNil))){h=0;i=g;d=h;e=i;return[d,e];}j=f.read(c);d=j[0];k=j[1];if((d===0)&&c.$length>0&&$interfaceIsEqual(k,$ifaceNil)){l=0;m=C.EOF;d=l;e=m;return[d,e];}if(!($interfaceIsEqual(k,$ifaceNil))){e=new X.ptr("read",f.file.name,k);}n=d;o=e;d=n;e=o;return[d,e];};CU.prototype.Read=function(c){return this.$val.Read(c);};CU.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=0;f=$ifaceNil;g=this;h=g.checkValid("read");if(!($interfaceIsEqual(h,$ifaceNil))){i=0;j=h;e=i;f=j;return[e,f];}while(true){if(!(c.$length>0)){break;}k=g.pread(c,d);l=k[0];m=k[1];if((l===0)&&$interfaceIsEqual(m,$ifaceNil)){n=e;o=C.EOF;e=n;f=o;return[e,f];}if(!($interfaceIsEqual(m,$ifaceNil))){f=new X.ptr("read",g.file.name,m);break;}e=e+(l)>>0;c=$subslice(c,l);d=(p=new $Int64(0,l),new $Int64(d.$high+p.$high,d.$low+p.$low));}return[e,f];};CU.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};CU.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;g=f.checkValid("write");if(!($interfaceIsEqual(g,$ifaceNil))){h=0;i=g;d=h;e=i;return[d,e];}j=f.write(c);d=j[0];k=j[1];if(d<0){d=0;}if(!((d===c.$length))){e=C.ErrShortWrite;}BO(f,k);if(!($interfaceIsEqual(k,$ifaceNil))){e=new X.ptr("write",f.file.name,k);}l=d;m=e;d=l;e=m;return[d,e];};CU.prototype.Write=function(c){return this.$val.Write(c);};CU.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;e=0;f=$ifaceNil;g=this;h=g.checkValid("write");if(!($interfaceIsEqual(h,$ifaceNil))){i=0;j=h;e=i;f=j;return[e,f];}while(true){if(!(c.$length>0)){break;}k=g.pwrite(c,d);l=k[0];m=k[1];if(!($interfaceIsEqual(m,$ifaceNil))){f=new X.ptr("write",g.file.name,m);break;}e=e+(l)>>0;c=$subslice(c,l);d=(n=new $Int64(0,l),new $Int64(d.$high+n.$high,d.$low+n.$low));}return[e,f];};CU.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};CU.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;e=new $Int64(0,0);f=$ifaceNil;g=this;h=g.checkValid("seek");if(!($interfaceIsEqual(h,$ifaceNil))){i=new $Int64(0,0);j=h;e=i;f=j;return[e,f];}k=g.seek(c,d);l=k[0];m=k[1];if($interfaceIsEqual(m,$ifaceNil)&&!(g.file.dirinfo===DE.nil)&&!((l.$high===0&&l.$low===0))){m=new D.Errno(21);}if(!($interfaceIsEqual(m,$ifaceNil))){n=new $Int64(0,0);o=new X.ptr("seek",g.file.name,m);e=n;f=o;return[e,f];}p=l;q=$ifaceNil;e=p;f=q;return[e,f];};CU.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};CU.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=f.Write(new DF($stringToBytes(c)));d=g[0];e=g[1];return[d,e];};CU.prototype.WriteString=function(c){return this.$val.WriteString(c);};CU.ptr.prototype.Chdir=function(){var $ptr,c,d,e;c=this;d=c.checkValid("chdir");if(!($interfaceIsEqual(d,$ifaceNil))){return d;}e=D.Fchdir(c.file.fd);if(!($interfaceIsEqual(e,$ifaceNil))){return new X.ptr("chdir",c.file.name,e);}return $ifaceNil;};CU.prototype.Chdir=function(){return this.$val.Chdir();};AX=function(c){var $ptr,c;return BP(c,0,0);};$pkg.Open=AX;BB=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};CU.ptr.prototype.checkValid=function(c){var $ptr,c,d;d=this;if(d===DC.nil){return $pkg.ErrInvalid;}if(d.file.fd===-1){return new X.ptr(c,d.file.name,$pkg.ErrClosed);}return $ifaceNil;};CU.prototype.checkValid=function(c){return this.$val.checkValid(c);};BC=function(){$throwRuntimeError("native function not implemented: os.sigpipe");};BE=function(c){var $ptr,c,d;d=0;d=(d|((new CW(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;};BF=function(c,d){var $ptr,c,d,e;e=D.Chmod(c,BE(d));if(!($interfaceIsEqual(e,$ifaceNil))){return new X.ptr("chmod",c,e);}return $ifaceNil;};$pkg.Chmod=BF;CU.ptr.prototype.Chmod=function(c){var $ptr,c,d,e,f;d=this;e=d.checkValid("chmod");if(!($interfaceIsEqual(e,$ifaceNil))){return e;}f=D.Fchmod(d.file.fd,BE(c));if(!($interfaceIsEqual(f,$ifaceNil))){return new X.ptr("chmod",d.file.name,f);}return $ifaceNil;};CU.prototype.Chmod=function(c){return this.$val.Chmod(c);};CU.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f,g;e=this;f=e.checkValid("chown");if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=D.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(g,$ifaceNil))){return new X.ptr("chown",e.file.name,g);}return $ifaceNil;};CU.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};CU.ptr.prototype.Truncate=function(c){var $ptr,c,d,e,f;d=this;e=d.checkValid("truncate");if(!($interfaceIsEqual(e,$ifaceNil))){return e;}f=D.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(f,$ifaceNil))){return new X.ptr("truncate",d.file.name,f);}return $ifaceNil;};CU.prototype.Truncate=function(c){return this.$val.Truncate(c);};CU.ptr.prototype.Sync=function(){var $ptr,c,d,e;c=this;d=c.checkValid("sync");if(!($interfaceIsEqual(d,$ifaceNil))){return d;}e=D.Fsync(c.file.fd);if(!($interfaceIsEqual(e,$ifaceNil))){return new X.ptr("sync",c.file.name,e);}return $ifaceNil;};CU.prototype.Sync=function(){return this.$val.Sync();};CU.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DC.nil){return 4294967295;}return(c.file.fd>>>0);};CU.prototype.Fd=function(){return this.$val.Fd();};BM=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DC.nil;}f=new CU.ptr(new BL.ptr(e,d,DE.nil));E.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BM;BO=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new D.Errno(32))&&((c.file.fd===1)||(c.file.fd===2))){BC();}};BP=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=false;if(false&&!(((d&64)===0))&&!((((e&1048576)>>>0)===0))){g=CN(c);h=g[1];if(AB(h)){f=true;}}i=0;while(true){j=$ifaceNil;k=D.Open(c,d|524288,BE(e));i=k[0];j=k[1];if($interfaceIsEqual(j,$ifaceNil)){break;}if(false&&$interfaceIsEqual(j,new D.Errno(4))){continue;}return[DC.nil,new X.ptr("open",c,j)];}if(f){BF(c,e);}if(false){D.CloseOnExec(i);}return[BM((i>>>0),c),$ifaceNil];};$pkg.OpenFile=BP;CU.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DC.nil){return $pkg.ErrInvalid;}return c.file.close();};CU.prototype.Close=function(){return this.$val.Close();};BL.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||(c.fd===-1)){return new D.Errno(22);}d=$ifaceNil;e=D.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new X.ptr("close",c.name,e);}c.fd=-1;E.SetFinalizer(c,$ifaceNil);return d;};BL.prototype.close=function(){return this.$val.close();};CU.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(false&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=D.Read(f.file.fd,c);g=BB(h[0],h[1]);d=g[0];e=g[1];return[d,e];};CU.prototype.read=function(c){return this.$val.read(c);};CU.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(false&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=D.Pread(g.file.fd,c,d);h=BB(i[0],i[1]);e=h[0];f=h[1];return[e,f];};CU.prototype.pread=function(c,d){return this.$val.pread(c,d);};CU.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(false&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=D.Write(f.file.fd,g);h=BB(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(0<j&&j<g.$length||$interfaceIsEqual(k,new D.Errno(4))){c=$subslice(c,j);continue;}if(false&&!((g.$length===c.$length))&&$interfaceIsEqual(k,$ifaceNil)){c=$subslice(c,j);continue;}l=d;m=k;d=l;e=m;return[d,e];}};CU.prototype.write=function(c){return this.$val.write(c);};CU.ptr.prototype.pwrite=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(false&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=D.Pwrite(g.file.fd,c,d);h=BB(i[0],i[1]);e=h[0];f=h[1];return[e,f];};CU.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};CU.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=D.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};CU.prototype.seek=function(c,d){return this.$val.seek(c,d);};CB=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=$substring(c,0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=$substring(c,(d+1>>0));break;}d=d-(1)>>0;}return c;};CD=function(){var $ptr;if(false){return;}$pkg.Args=I();};CE=function(){var $ptr;return D.Getuid();};$pkg.Getuid=CE;CG=function(){var $ptr;return D.Getgid();};$pkg.Getgid=CG;CJ=function(c){var $ptr,c;if(c===0){K();}D.Exit(c);};$pkg.Exit=CJ;CK=function(c,d){var $ptr,c,d,e;c.name=CB(d);c.size=c.sys.Size;H.Time.copy(c.modTime,CL($clone(c.sys.Mtim,D.Timespec)));c.mode=(((c.sys.Mode&511)>>>0)>>>0);e=(c.sys.Mode&61440)>>>0;if(e===(24576)){c.mode=(c.mode|(67108864))>>>0;}else if(e===(8192)){c.mode=(c.mode|(69206016))>>>0;}else if(e===(16384)){c.mode=(c.mode|(2147483648))>>>0;}else if(e===(4096)){c.mode=(c.mode|(33554432))>>>0;}else if(e===(40960)){c.mode=(c.mode|(134217728))>>>0;}else if(e===(32768)){}else if(e===(49152)){c.mode=(c.mode|(16777216))>>>0;}if(!((((c.sys.Mode&1024)>>>0)===0))){c.mode=(c.mode|(4194304))>>>0;}if(!((((c.sys.Mode&2048)>>>0)===0))){c.mode=(c.mode|(8388608))>>>0;}if(!((((c.sys.Mode&512)>>>0)===0))){c.mode=(c.mode|(1048576))>>>0;}};CL=function(c){var $ptr,c;return H.Unix(c.Sec,c.Nsec);};CU.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DC.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new CY.ptr("",new $Int64(0,0),0,new H.Time.ptr(new $Int64(0,0),0,DZ.nil),new D.Stat_t.ptr(new $Uint64(0,0),new $Uint64(0,0),new $Uint64(0,0),0,0,0,0,new $Uint64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),EA.zero()));e=D.Fstat(c.file.fd,d.sys);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new X.ptr("stat",c.file.name,e)];}CK(d,c.file.name);return[d,$ifaceNil];};CU.prototype.Stat=function(){return this.$val.Stat();};CN=function(c){var $ptr,c,d,e;d=new CY.ptr("",new $Int64(0,0),0,new H.Time.ptr(new $Int64(0,0),0,DZ.nil),new D.Stat_t.ptr(new $Uint64(0,0),new $Uint64(0,0),new $Uint64(0,0),0,0,0,0,new $Uint64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),EA.zero()));e=D.Stat(c,d.sys);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new X.ptr("stat",c,e)];}CK(d,c);return[d,$ifaceNil];};$pkg.Stat=CN;CO=function(c){var $ptr,c,d,e;d=new CY.ptr("",new $Int64(0,0),0,new H.Time.ptr(new $Int64(0,0),0,DZ.nil),new D.Stat_t.ptr(new $Uint64(0,0),new $Uint64(0,0),new $Uint64(0,0),0,0,0,0,new $Uint64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new D.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),EA.zero()));e=D.Lstat(c,d.sys);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new X.ptr("lstat",c,e)];}CK(d,c);return[d,$ifaceNil];};$pkg.Lstat=CO;CT=function(){var $ptr;return D.Getpagesize();};$pkg.Getpagesize=CT;CW.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<f.length)){break;}h=$decodeRune(f,g);i=g;j=h[0];if(!((((c&(((k=((31-i>>0)>>>0),k<32?(1<<k):0)>>>0)))>>>0)===0))){((e<0||e>=d.length)?($throwRuntimeError("index out of range"),undefined):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"),undefined):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m<l.length)){break;}n=$decodeRune(l,m);o=m;p=n[0];if(!((((c&(((q=((8-o>>0)>>>0),q<32?(1<<q):0)>>>0)))>>>0)===0))){((e<0||e>=d.length)?($throwRuntimeError("index out of range"),undefined):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?($throwRuntimeError("index out of range"),undefined):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DF(d),0,e));};$ptrType(CW).prototype.String=function(){return new CW(this.$get()).String();};CW.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CW).prototype.IsDir=function(){return new CW(this.$get()).IsDir();};CW.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CW).prototype.IsRegular=function(){return new CW(this.$get()).IsRegular();};CW.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CW).prototype.Perm=function(){return new CW(this.$get()).Perm();};CY.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CY.prototype.Name=function(){return this.$val.Name();};CY.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CW(c.Mode()).IsDir();};CY.prototype.IsDir=function(){return this.$val.IsDir();};CY.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CY.prototype.Size=function(){return this.$val.Size();};CY.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CY.prototype.Mode=function(){return this.$val.Mode();};CY.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CY.prototype.ModTime=function(){return this.$val.ModTime();};CY.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CY.prototype.Sys=function(){return this.$val.Sys();};DG.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];DC.methods=[{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DD,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DD,$error],false)},{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DF],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DF,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DF],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DF,$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:"checkValid",name:"checkValid",pkg:"os",typ:$funcType([$String],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CW],[$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:"read",name:"read",pkg:"os",typ:$funcType([DF],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DF,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DF],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DF,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CV,$error],false)}];CW.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([],[CW],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([],[CW],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[H.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];X.init("",[{prop:"Op",name:"Op",exported:true,typ:$String,tag:""},{prop:"Path",name:"Path",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);Y.init("",[{prop:"Syscall",name:"Syscall",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);AU.init("",[{prop:"Op",name:"Op",exported:true,typ:$String,tag:""},{prop:"Old",name:"Old",exported:true,typ:$String,tag:""},{prop:"New",name:"New",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);BL.init("os",[{prop:"fd",name:"fd",exported:false,typ:$Int,tag:""},{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",exported:false,typ:DE,tag:""}]);BN.init("os",[{prop:"buf",name:"buf",exported:false,typ:DF,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"bufp",name:"bufp",exported:false,typ:$Int,tag:""}]);CU.init("os",[{prop:"file",name:"",exported:false,typ:DU,tag:""}]);CV.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[H.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CW],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)}]);CY.init("os",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"size",name:"size",exported:false,typ:$Int64,tag:""},{prop:"mode",name:"mode",exported:false,typ:CW,tag:""},{prop:"modTime",name:"modTime",exported:false,typ:H.Time,tag:""},{prop:"sys",name:"sys",exported:false,typ:D.Stat_t,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=E.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$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=D.$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;}$pkg.Args=DB.nil;$pkg.ErrInvalid=A.New("invalid argument");$pkg.ErrPermission=A.New("permission denied");$pkg.ErrExist=A.New("file already exists");$pkg.ErrNotExist=A.New("file does not exist");$pkg.ErrClosed=A.New("file already closed");AR=A.New("os: process already finished");AZ=CO;$pkg.Stdin=BM((D.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BM((D.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BM((D.Stderr>>>0),"/dev/stderr");J();CD();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["unicode/utf8"]=(function(){var $pkg={},$init,B,A,C,F,G,H,I,J,K,L,M,N,Q;B=$pkg.acceptRange=$newType(0,$kindStruct,"utf8.acceptRange",true,"unicode/utf8",false,function(lo_,hi_){this.$val=this;if(arguments.length===0){this.lo=0;this.hi=0;return;}this.lo=lo_;this.hi=hi_;});F=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.$length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=((h>>0)<<31>>0)>>31>>0;j=((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>0)&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=(h&7)>>>0;n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<(l>>0)){o=65533;p=1;b=o;c=p;return[b,c];}q=(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l===2){t=((((g&31)>>>0)>>0)<<6>>0)|(((q&63)>>>0)>>0);u=2;b=t;c=u;return[b,c];}v=(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l===3){y=(((((g&15)>>>0)>>0)<<12>>0)|((((q&63)>>>0)>>0)<<6>>0))|(((v&63)>>>0)>>0);z=3;b=y;c=z;return[b,c];}aa=(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=((((((g&7)>>>0)>>0)<<18>>0)|((((q&63)>>>0)>>0)<<12>>0))|((((v&63)>>>0)>>0)<<6>>0))|(((aa&63)>>>0)>>0);ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRune=F;G=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=a.charCodeAt(0);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=((h>>0)<<31>>0)>>31>>0;j=(((a.charCodeAt(0)>>0)&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=(h&7)>>>0;n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<(l>>0)){o=65533;p=1;b=o;c=p;return[b,c];}q=a.charCodeAt(1);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l===2){t=((((g&31)>>>0)>>0)<<6>>0)|(((q&63)>>>0)>>0);u=2;b=t;c=u;return[b,c];}v=a.charCodeAt(2);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l===3){y=(((((g&15)>>>0)>>0)<<12>>0)|((((q&63)>>>0)>>0)<<6>>0))|(((v&63)>>>0)>>0);z=3;b=y;c=z;return[b,c];}aa=a.charCodeAt(3);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=((((((g&7)>>>0)>>0)<<18>>0)|((((q&63)>>>0)>>0)<<12>>0))|((((v&63)>>>0)>>0)<<6>>0))|(((aa&63)>>>0)>>0);ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRuneInString=G;H=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.$length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])>>0);if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(N(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=F($subslice(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRune=H;I=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=(a.charCodeAt(g)>>0);if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(N(a.charCodeAt(g))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=G($substring(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRuneInString=I;J=function(a){var $ptr,a;if(a<0){return-1;}else if(a<=127){return 1;}else if(a<=2047){return 2;}else if(55296<=a&&a<=57343){return-1;}else if(a<=65535){return 3;}else if(a<=1114111){return 4;}return-1;};$pkg.RuneLen=J;K=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if((c>1114111)||(55296<=c&&c<=57343)){b=65533;$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=K;L=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=a.$length;c=0;d=0;while(true){if(!(d<b)){break;}c=c+(1)>>0;e=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);if(e<128){d=d+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;continue;}g=(((f&7)>>>0)>>0);if((d+g>>0)>b){d=d+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);k=(j=d+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]));if(k<i.lo||i.hi<k){g=1;}else if(g===2){}else{m=(l=d+2>>0,((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]));if(m<128||191<m){g=1;}else if(g===3){}else{o=(n=d+3>>0,((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]));if(o<128||191<o){g=1;}}}d=d+(g)>>0;}return c;};$pkg.RuneCount=L;M=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=a.length;d=0;while(true){if(!(d<c)){break;}e=a.charCodeAt(d);if(e<128){d=d+(1)>>0;b=b+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;b=b+(1)>>0;continue;}g=(((f&7)>>>0)>>0);if((d+g>>0)>c){d=d+(1)>>0;b=b+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);j=a.charCodeAt((d+1>>0));if(j<i.lo||i.hi<j){g=1;}else if(g===2){}else{k=a.charCodeAt((d+2>>0));if(k<128||191<k){g=1;}else if(g===3){}else{l=a.charCodeAt((d+3>>0));if(l<128||191<l){g=1;}}}d=d+(g)>>0;b=b+(1)>>0;}b=b;return b;};$pkg.RuneCountInString=M;N=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=N;Q=function(a){var $ptr,a;if(0<=a&&a<55296){return true;}else if(57343<a&&a<=1114111){return true;}return false;};$pkg.ValidRune=Q;B.init("unicode/utf8",[{prop:"lo",name:"lo",exported:false,typ:$Uint8,tag:""},{prop:"hi",name:"hi",exported:false,typ:$Uint8,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:A=$toNativeArray($kindUint8,[240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,19,3,3,3,3,3,3,3,3,3,3,3,3,35,3,3,52,4,4,4,68,241,241,241,241,241,241,241,241,241,241,241]);C=$toNativeArray($kindStruct,[new B.ptr(128,191),new B.ptr(160,191),new B.ptr(128,159),new B.ptr(144,191),new B.ptr(128,143)]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["strconv"]=(function(){var $pkg={},$init,B,A,C,S,Y,AC,AH,AO,AX,CS,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DI,G,K,L,M,AD,AI,AJ,AK,AP,CQ,AQ,CR,BD,BE,BF,BG,BH,BN,D,E,H,I,J,N,O,P,Q,R,T,U,V,W,X,Z,AA,AB,AE,AF,AG,AL,AM,AN,AR,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BK,BM,BO,BP,BR,BS,BT,BU,BV,BW,BX,CB,CD,CG,CH,CI,CJ,CK,CL,CM,CN,CP;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];S=$pkg.NumError=$newType(0,$kindStruct,"strconv.NumError",true,"strconv",true,function(Func_,Num_,Err_){this.$val=this;if(arguments.length===0){this.Func="";this.Num="";this.Err=$ifaceNil;return;}this.Func=Func_;this.Num=Num_;this.Err=Err_;});Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal",true,"strconv",false,function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CY.zero();this.nd=0;this.dp=0;this.neg=false;this.trunc=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;this.trunc=trunc_;});AC=$pkg.leftCheat=$newType(0,$kindStruct,"strconv.leftCheat",true,"strconv",false,function(delta_,cutoff_){this.$val=this;if(arguments.length===0){this.delta=0;this.cutoff="";return;}this.delta=delta_;this.cutoff=cutoff_;});AH=$pkg.extFloat=$newType(0,$kindStruct,"strconv.extFloat",true,"strconv",false,function(mant_,exp_,neg_){this.$val=this;if(arguments.length===0){this.mant=new $Uint64(0,0);this.exp=0;this.neg=false;return;}this.mant=mant_;this.exp=exp_;this.neg=neg_;});AO=$pkg.floatInfo=$newType(0,$kindStruct,"strconv.floatInfo",true,"strconv",false,function(mantbits_,expbits_,bias_){this.$val=this;if(arguments.length===0){this.mantbits=0;this.expbits=0;this.bias=0;return;}this.mantbits=mantbits_;this.expbits=expbits_;this.bias=bias_;});AX=$pkg.decimalSlice=$newType(0,$kindStruct,"strconv.decimalSlice",true,"strconv",false,function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=DA.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CS=$sliceType($Int);CT=$sliceType($Float64);CU=$sliceType($Float32);CV=$sliceType(AC);CW=$sliceType($Uint16);CX=$sliceType($Uint32);CY=$arrayType($Uint8,800);CZ=$ptrType(S);DA=$sliceType($Uint8);DB=$arrayType($Uint8,24);DC=$arrayType($Uint8,32);DD=$ptrType(AO);DE=$arrayType($Uint8,65);DF=$arrayType($Uint8,4);DG=$ptrType(Y);DH=$ptrType(AX);DI=$ptrType(AH);D=function(a){var $ptr,a,b;b=a;if(b===("1")||b===("t")||b===("T")||b===("true")||b===("TRUE")||b===("True")){return[true,$ifaceNil];}else if(b===("0")||b===("f")||b===("F")||b===("false")||b===("FALSE")||b===("False")){return[false,$ifaceNil];}return[false,T("ParseBool",a)];};$pkg.ParseBool=D;E=function(a){var $ptr,a;if(a){return"true";}return"false";};$pkg.FormatBool=E;H=function(a,b){var $ptr,a,b,c,d,e;if(!((a.length===b.length))){return false;}c=0;while(true){if(!(c<a.length)){break;}d=a.charCodeAt(c);if(65<=d&&d<=90){d=d+(32)<<24>>>24;}e=b.charCodeAt(c);if(65<=e&&e<=90){e=e+(32)<<24>>>24;}if(!((d===e))){return false;}c=c+(1)>>0;}return true;};I=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=false;if(a.length===0){return[b,c];}d=a.charCodeAt(0);if(d===(43)){if(H(a,"+inf")||H(a,"+infinity")){e=A.Inf(1);f=true;b=e;c=f;return[b,c];}}else if(d===(45)){if(H(a,"-inf")||H(a,"-infinity")){g=A.Inf(-1);h=true;b=g;c=h;return[b,c];}}else if((d===(110))||(d===(78))){if(H(a,"nan")){i=A.NaN();j=true;b=i;c=j;return[b,c];}}else if((d===(105))||(d===(73))){if(H(a,"inf")||H(a,"infinity")){k=A.Inf(1);l=true;b=k;c=l;return[b,c];}}else{return[b,c];}return[b,c];};Y.ptr.prototype.set=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=false;c=this;d=0;c.neg=false;c.trunc=false;if(d>=a.length){return b;}if((a.charCodeAt(d)===43)){d=d+(1)>>0;}else if((a.charCodeAt(d)===45)){c.neg=true;d=d+(1)>>0;}e=false;f=false;while(true){if(!(d<a.length)){break;}if((a.charCodeAt(d)===46)){if(e){return b;}e=true;c.dp=c.nd;d=d+(1)>>0;continue;}else if(48<=a.charCodeAt(d)&&a.charCodeAt(d)<=57){f=true;if((a.charCodeAt(d)===48)&&(c.nd===0)){c.dp=c.dp-(1)>>0;d=d+(1)>>0;continue;}if(c.nd<800){(g=c.d,h=c.nd,((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]=a.charCodeAt(d)));c.nd=c.nd+(1)>>0;}else if(!((a.charCodeAt(d)===48))){c.trunc=true;}d=d+(1)>>0;continue;}break;}if(!f){return b;}if(!e){c.dp=c.nd;}if(d<a.length&&((a.charCodeAt(d)===101)||(a.charCodeAt(d)===69))){d=d+(1)>>0;if(d>=a.length){return b;}i=1;if(a.charCodeAt(d)===43){d=d+(1)>>0;}else if(a.charCodeAt(d)===45){d=d+(1)>>0;i=-1;}if(d>=a.length||a.charCodeAt(d)<48||a.charCodeAt(d)>57){return b;}j=0;while(true){if(!(d<a.length&&48<=a.charCodeAt(d)&&a.charCodeAt(d)<=57)){break;}if(j<10000){j=(($imul(j,10))+(a.charCodeAt(d)>>0)>>0)-48>>0;}d=d+(1)>>0;}c.dp=c.dp+(($imul(j,i)))>>0;}if(!((d===a.length))){return b;}b=true;return b;};Y.prototype.set=function(a){return this.$val.set(a);};J=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;b=new $Uint64(0,0);c=0;d=false;e=false;f=false;g=0;if(g>=a.length){return[b,c,d,e,f];}if((a.charCodeAt(g)===43)){g=g+(1)>>0;}else if((a.charCodeAt(g)===45)){d=true;g=g+(1)>>0;}h=false;i=false;j=0;k=0;l=0;while(true){if(!(g<a.length)){break;}m=a.charCodeAt(g);n=true;if(n===((m===46))){if(h){return[b,c,d,e,f];}h=true;l=j;g=g+(1)>>0;continue;}else if(n===(48<=m&&m<=57)){i=true;if((m===48)&&(j===0)){l=l-(1)>>0;g=g+(1)>>0;continue;}j=j+(1)>>0;if(k<19){b=$mul64(b,(new $Uint64(0,10)));b=(o=new $Uint64(0,(m-48<<24>>>24)),new $Uint64(b.$high+o.$high,b.$low+o.$low));k=k+(1)>>0;}else if(!((a.charCodeAt(g)===48))){e=true;}g=g+(1)>>0;continue;}break;}if(!i){return[b,c,d,e,f];}if(!h){l=j;}if(g<a.length&&((a.charCodeAt(g)===101)||(a.charCodeAt(g)===69))){g=g+(1)>>0;if(g>=a.length){return[b,c,d,e,f];}p=1;if(a.charCodeAt(g)===43){g=g+(1)>>0;}else if(a.charCodeAt(g)===45){g=g+(1)>>0;p=-1;}if(g>=a.length||a.charCodeAt(g)<48||a.charCodeAt(g)>57){return[b,c,d,e,f];}q=0;while(true){if(!(g<a.length&&48<=a.charCodeAt(g)&&a.charCodeAt(g)<=57)){break;}if(q<10000){q=(($imul(q,10))+(a.charCodeAt(g)>>0)>>0)-48>>0;}g=g+(1)>>0;}l=l+(($imul(q,p)))>>0;}if(!((g===a.length))){return[b,c,d,e,f];}if(!((b.$high===0&&b.$low===0))){c=l-k>>0;}f=true;return[b,c,d,e,f];};Y.ptr.prototype.floatBits=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s;$s=0;s:while(true){switch($s){case 0:b=new $Uint64(0,0);c=false;d=this;e=0;f=new $Uint64(0,0);if(d.nd===0){$s=1;continue;}$s=2;continue;case 1:f=new $Uint64(0,0);e=a.bias;$s=3;continue;case 2:if(d.dp>310){$s=4;continue;}$s=5;continue;case 4:$s=6;continue;case 5:if(d.dp<-330){$s=7;continue;}$s=8;continue;case 7:f=new $Uint64(0,0);e=a.bias;$s=3;continue;case 8:e=0;while(true){if(!(d.dp>0)){break;}g=0;if(d.dp>=K.$length){g=27;}else{g=(h=d.dp,((h<0||h>=K.$length)?($throwRuntimeError("index out of range"),undefined):K.$array[K.$offset+h]));}d.Shift(-g);e=e+(g)>>0;}while(true){if(!(d.dp<0||(d.dp===0)&&d.d[0]<53)){break;}i=0;if(-d.dp>=K.$length){i=27;}else{i=(j=-d.dp,((j<0||j>=K.$length)?($throwRuntimeError("index out of range"),undefined):K.$array[K.$offset+j]));}d.Shift(i);e=e-(i)>>0;}e=e-(1)>>0;if(e<(a.bias+1>>0)){k=(a.bias+1>>0)-e>>0;d.Shift(-k);e=e+(k)>>0;}if((e-a.bias>>0)>=(((l=a.expbits,l<32?(1<<l):0)>>0)-1>>0)){$s=9;continue;}$s=10;continue;case 9:$s=6;continue;case 10:d.Shift(((1+a.mantbits>>>0)>>0));f=d.RoundedInteger();if((m=$shiftLeft64(new $Uint64(0,2),a.mantbits),(f.$high===m.$high&&f.$low===m.$low))){$s=11;continue;}$s=12;continue;case 11:f=$shiftRightUint64(f,(1));e=e+(1)>>0;if((e-a.bias>>0)>=(((n=a.expbits,n<32?(1<<n):0)>>0)-1>>0)){$s=13;continue;}$s=14;continue;case 13:$s=6;continue;case 14:case 12:if((o=(p=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(f.$high&p.$high,(f.$low&p.$low)>>>0)),(o.$high===0&&o.$low===0))){e=a.bias;}$s=3;continue;case 6:f=new $Uint64(0,0);e=(((q=a.expbits,q<32?(1<<q):0)>>0)-1>>0)+a.bias>>0;c=true;case 3:t=(r=(s=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(s.$high-0,s.$low-1)),new $Uint64(f.$high&r.$high,(f.$low&r.$low)>>>0));t=(u=$shiftLeft64(new $Uint64(0,(((e-a.bias>>0))&((((v=a.expbits,v<32?(1<<v):0)>>0)-1>>0)))),a.mantbits),new $Uint64(t.$high|u.$high,(t.$low|u.$low)>>>0));if(d.neg){t=(w=$shiftLeft64($shiftLeft64(new $Uint64(0,1),a.mantbits),a.expbits),new $Uint64(t.$high|w.$high,(t.$low|w.$low)>>>0));}x=t;y=c;b=x;c=y;$s=-1;return[b,c];}return;}};Y.prototype.floatBits=function(a){return this.$val.floatBits(a);};N=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=false;if(!((f=$shiftRightUint64(a,AQ.mantbits),(f.$high===0&&f.$low===0)))){return[d,e];}d=$flatten64(a);if(c){d=-d;}if((b===0)){g=d;h=true;d=g;e=h;return[d,e];}else if(b>0&&b<=37){if(b>22){d=d*((i=b-22>>0,((i<0||i>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+i])));b=22;}if(d>1e+15||d<-1e+15){return[d,e];}j=d*((b<0||b>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+b]);k=true;d=j;e=k;return[d,e];}else if(b<0&&b>=-22){l=d/(m=-b,((m<0||m>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+m]));n=true;d=l;e=n;return[d,e];}return[d,e];};O=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=false;if(!((f=$shiftRightUint64(a,AP.mantbits),(f.$high===0&&f.$low===0)))){return[d,e];}d=$flatten64(a);if(c){d=-d;}if((b===0)){g=d;h=true;d=g;e=h;return[d,e];}else if(b>0&&b<=17){if(b>10){d=$fround(d*((i=b-10>>0,((i<0||i>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+i]))));b=10;}if(d>1e+07||d<-1e+07){return[d,e];}j=$fround(d*((b<0||b>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+b]));k=true;d=j;e=k;return[d,e];}else if(b<0&&b>=-10){l=$fround(d/(m=-b,((m<0||m>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+m])));n=true;d=l;e=n;return[d,e];}return[d,e];};P=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=$ifaceNil;d=I(a);e=d[0];f=d[1];if(f){g=$fround(e);h=$ifaceNil;b=g;c=h;return[b,c];}if(G){i=J(a);j=i[0];k=i[1];l=i[2];m=i[3];n=i[4];if(n){if(!m){o=O(j,k,l);p=o[0];q=o[1];if(q){r=p;s=$ifaceNil;b=r;c=s;return[b,c];}}t=new AH.ptr(new $Uint64(0,0),0,false);u=t.AssignDecimal(j,k,l,m,AP);if(u){v=t.floatBits(AP);w=v[0];x=v[1];b=A.Float32frombits((w.$low>>>0));if(x){c=U("ParseFloat",a);}y=b;z=c;b=y;c=z;return[b,c];}}}aa=new Y.ptr(CY.zero(),0,0,false,false);if(!aa.set(a)){ab=0;ac=T("ParseFloat",a);b=ab;c=ac;return[b,c];}ad=aa.floatBits(AP);ae=ad[0];af=ad[1];b=A.Float32frombits((ae.$low>>>0));if(af){c=U("ParseFloat",a);}ag=b;ah=c;b=ag;c=ah;return[b,c];};Q=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=$ifaceNil;d=I(a);e=d[0];f=d[1];if(f){g=e;h=$ifaceNil;b=g;c=h;return[b,c];}if(G){i=J(a);j=i[0];k=i[1];l=i[2];m=i[3];n=i[4];if(n){if(!m){o=N(j,k,l);p=o[0];q=o[1];if(q){r=p;s=$ifaceNil;b=r;c=s;return[b,c];}}t=new AH.ptr(new $Uint64(0,0),0,false);u=t.AssignDecimal(j,k,l,m,AQ);if(u){v=t.floatBits(AQ);w=v[0];x=v[1];b=A.Float64frombits(w);if(x){c=U("ParseFloat",a);}y=b;z=c;b=y;c=z;return[b,c];}}}aa=new Y.ptr(CY.zero(),0,0,false,false);if(!aa.set(a)){ab=0;ac=T("ParseFloat",a);b=ab;c=ac;return[b,c];}ad=aa.floatBits(AQ);ae=ad[0];af=ad[1];b=A.Float64frombits(ae);if(af){c=U("ParseFloat",a);}ag=b;ah=c;b=ag;c=ah;return[b,c];};R=function(a,b){var $ptr,a,b,c,d,e;if(b===32){c=P(a);d=c[0];e=c[1];return[d,e];}return Q(a);};$pkg.ParseFloat=R;S.ptr.prototype.Error=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.Err.Error();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return"strconv."+a.Func+": "+"parsing "+BU(a.Num)+": "+b;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.Error=function(){return this.$val.Error();};T=function(a,b){var $ptr,a,b;return new S.ptr(a,b,$pkg.ErrSyntax);};U=function(a,b){var $ptr,a,b;return new S.ptr(a,b,$pkg.ErrRange);};V=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s;$s=0;s:while(true){switch($s){case 0:d=new $Uint64(0,0);e=$ifaceNil;f=new $Uint64(0,0);g=new $Uint64(0,0);h=f;i=g;if(c===0){c=32;}j=0;if(a.length<1){$s=2;continue;}if(2<=b&&b<=36){$s=3;continue;}if((b===0)){$s=4;continue;}$s=5;continue;case 2:e=$pkg.ErrSyntax;$s=7;continue;$s=6;continue;case 3:$s=6;continue;case 4:if((a.charCodeAt(0)===48)&&a.length>1&&((a.charCodeAt(1)===120)||(a.charCodeAt(1)===88))){$s=9;continue;}if((a.charCodeAt(0)===48)){$s=10;continue;}$s=11;continue;case 9:if(a.length<3){$s=13;continue;}$s=14;continue;case 13:e=$pkg.ErrSyntax;$s=7;continue;case 14:b=16;j=2;$s=12;continue;case 10:b=8;j=1;$s=12;continue;case 11:b=10;case 12:case 8:$s=6;continue;case 5:e=B.New("invalid base "+BK(b));$s=7;continue;case 6:case 1:k=b;if(k===(10)){h=new $Uint64(429496729,2576980378);}else if(k===(16)){h=new $Uint64(268435456,0);}else{h=(l=$div64(new $Uint64(4294967295,4294967295),new $Uint64(0,b),false),new $Uint64(l.$high+0,l.$low+1));}i=(m=$shiftLeft64(new $Uint64(0,1),(c>>>0)),new $Uint64(m.$high-0,m.$low-1));case 15:if(!(j<a.length)){$s=16;continue;}n=0;o=a.charCodeAt(j);if(48<=o&&o<=57){$s=18;continue;}if(97<=o&&o<=122){$s=19;continue;}if(65<=o&&o<=90){$s=20;continue;}$s=21;continue;case 18:n=o-48<<24>>>24;$s=22;continue;case 19:n=(o-97<<24>>>24)+10<<24>>>24;$s=22;continue;case 20:n=(o-65<<24>>>24)+10<<24>>>24;$s=22;continue;case 21:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=7;continue;case 22:case 17:if(n>=(b<<24>>>24)){$s=23;continue;}$s=24;continue;case 23:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=7;continue;case 24:if((d.$high>h.$high||(d.$high===h.$high&&d.$low>=h.$low))){$s=25;continue;}$s=26;continue;case 25:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=7;continue;case 26:d=$mul64(d,(new $Uint64(0,b)));q=(p=new $Uint64(0,n),new $Uint64(d.$high+p.$high,d.$low+p.$low));if((q.$high<d.$high||(q.$high===d.$high&&q.$low<d.$low))||(q.$high>i.$high||(q.$high===i.$high&&q.$low>i.$low))){$s=27;continue;}$s=28;continue;case 27:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=7;continue;case 28:d=q;j=j+(1)>>0;$s=15;continue;case 16:$s=-1;return[d,$ifaceNil];case 7:$s=-1;return[d,new S.ptr("ParseUint",a,e)];$s=-1;return[new $Uint64(0,0),$ifaceNil];}return;}};$pkg.ParseUint=V;W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;d=new $Int64(0,0);e=$ifaceNil;if(c===0){c=32;}if(a.length===0){f=new $Int64(0,0);g=T("ParseInt",a);d=f;e=g;return[d,e];}h=a;i=false;if(a.charCodeAt(0)===43){a=$substring(a,1);}else if(a.charCodeAt(0)===45){i=true;a=$substring(a,1);}j=new $Uint64(0,0);k=V(a,b,c);j=k[0];e=k[1];if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual($assertType(e,CZ).Err,$pkg.ErrRange))){$assertType(e,CZ).Func="ParseInt";$assertType(e,CZ).Num=h;l=new $Int64(0,0);m=e;d=l;e=m;return[d,e];}n=$shiftLeft64(new $Uint64(0,1),((c-1>>0)>>>0));if(!i&&(j.$high>n.$high||(j.$high===n.$high&&j.$low>=n.$low))){o=(p=new $Uint64(n.$high-0,n.$low-1),new $Int64(p.$high,p.$low));q=U("ParseInt",h);d=o;e=q;return[d,e];}if(i&&(j.$high>n.$high||(j.$high===n.$high&&j.$low>n.$low))){r=(s=new $Int64(n.$high,n.$low),new $Int64(-s.$high,-s.$low));t=U("ParseInt",h);d=r;e=t;return[d,e];}u=new $Int64(j.$high,j.$low);if(i){u=new $Int64(-u.$high,-u.$low);}v=u;w=$ifaceNil;d=v;e=w;return[d,e];};$pkg.ParseInt=W;X=function(a){var $ptr,a,b,c,d,e,f,g;b=W(a,10,0);c=b[0];d=b[1];e=$assertType(d,CZ,true);f=e[0];g=e[1];if(g){f.Func="Atoi";}return[((c.$low+((c.$high>>31)*4294967296))>>0),d];};$pkg.Atoi=X;Y.ptr.prototype.String=function(){var $ptr,a,b,c,d;a=this;b=10+a.nd>>0;if(a.dp>0){b=b+(a.dp)>>0;}if(a.dp<0){b=b+(-a.dp)>>0;}c=$makeSlice(DA,b);d=0;if((a.nd===0)){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+(Z($subslice(c,d,(d+-a.dp>>0))))>>0;d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.nd)))>>0;}else if(a.dp<a.nd){d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.dp)))>>0;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.nd)))>>0;d=d+(Z($subslice(c,d,((d+a.dp>>0)-a.nd>>0))))>>0;}return $bytesToString($subslice(c,0,d));};Y.prototype.String=function(){return this.$val.String();};Z=function(a){var $ptr,a,b,c,d;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=c;((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=48);c++;}return a.$length;};AA=function(a){var $ptr,a,b,c;while(true){if(!(a.nd>0&&((b=a.d,c=a.nd-1>>0,((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]))===48))){break;}a.nd=a.nd-(1)>>0;}if(a.nd===0){a.dp=0;}};Y.ptr.prototype.Assign=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=DB.zero();d=0;while(true){if(!((a.$high>0||(a.$high===0&&a.$low>0)))){break;}e=$div64(a,new $Uint64(0,10),false);a=(f=$mul64(new $Uint64(0,10),e),new $Uint64(a.$high-f.$high,a.$low-f.$low));((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d]=(new $Uint64(a.$high+0,a.$low+48).$low<<24>>>24));d=d+(1)>>0;a=e;}b.nd=0;d=d-(1)>>0;while(true){if(!(d>=0)){break;}(g=b.d,h=b.nd,((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]=((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d])));b.nd=b.nd+(1)>>0;d=d-(1)>>0;}b.dp=b.nd;AA(b);};Y.prototype.Assign=function(a){return this.$val.Assign(a);};AB=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;c=0;d=0;e=0;while(true){if(!(((f=b,f<32?(e>>>f):0)>>>0)===0)){break;}if(c>=a.nd){if(e===0){a.nd=0;return;}while(true){if(!(((g=b,g<32?(e>>>g):0)>>>0)===0)){break;}e=e*10>>>0;c=c+(1)>>0;}break;}i=((h=a.d,((c<0||c>=h.length)?($throwRuntimeError("index out of range"),undefined):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;k=(((j=b,j<32?(1<<j):0)>>>0))-1>>>0;while(true){if(!(c<a.nd)){break;}m=((l=a.d,((c<0||c>=l.length)?($throwRuntimeError("index out of range"),undefined):l[c]))>>>0);o=(n=b,n<32?(e>>>n):0)>>>0;e=(e&(k))>>>0;(p=a.d,((d<0||d>=p.length)?($throwRuntimeError("index out of range"),undefined):p[d]=((o+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+m>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}r=(q=b,q<32?(e>>>q):0)>>>0;e=(e&(k))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?($throwRuntimeError("index out of range"),undefined):s[d]=((r+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(r>0){a.trunc=true;}e=e*10>>>0;}a.nd=d;AA(a);};AE=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c<b.length)){break;}if(c>=a.$length){return true;}if(!((((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])<b.charCodeAt(c);}c=c+(1)>>0;}return false;};AF=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;c=((b<0||b>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new DA(a.d),0,a.nd),((b<0||b>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+b]).cutoff)){c=c-(1)>>0;}d=a.nd;e=a.nd+c>>0;f=0;d=d-(1)>>0;while(true){if(!(d>=0)){break;}f=f+(((g=b,g<32?(((((h=a.d,((d<0||d>=h.length)?($throwRuntimeError("index out of range"),undefined):h[d]))>>>0)-48>>>0))<<g):0)>>>0))>>>0;j=(i=f/10,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));k=f-(10*j>>>0)>>>0;e=e-(1)>>0;if(e<800){(l=a.d,((e<0||e>=l.length)?($throwRuntimeError("index out of range"),undefined):l[e]=((k+48>>>0)<<24>>>24)));}else if(!((k===0))){a.trunc=true;}f=j;d=d-(1)>>0;}while(true){if(!(f>0)){break;}n=(m=f/10,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));o=f-(10*n>>>0)>>>0;e=e-(1)>>0;if(e<800){(p=a.d,((e<0||e>=p.length)?($throwRuntimeError("index out of range"),undefined):p[e]=((o+48>>>0)<<24>>>24)));}else if(!((o===0))){a.trunc=true;}f=n;}a.nd=a.nd+(c)>>0;if(a.nd>=800){a.nd=800;}a.dp=a.dp+(c)>>0;AA(a);};Y.ptr.prototype.Shift=function(a){var $ptr,a,b;b=this;if((b.nd===0)){}else if(a>0){while(true){if(!(a>28)){break;}AF(b,28);a=a-(28)>>0;}AF(b,(a>>>0));}else if(a<0){while(true){if(!(a<-28)){break;}AB(b,28);a=a+(28)>>0;}AB(b,(-a>>>0));}};Y.prototype.Shift=function(a){return this.$val.Shift(a);};AG=function(a,b){var $ptr,a,b,c,d,e,f,g;if(b<0||b>=a.nd){return false;}if(((c=a.d,((b<0||b>=c.length)?($throwRuntimeError("index out of range"),undefined):c[b]))===53)&&((b+1>>0)===a.nd)){if(a.trunc){return true;}return b>0&&!(((d=(((e=a.d,f=b-1>>0,((f<0||f>=e.length)?($throwRuntimeError("index out of range"),undefined):e[f]))-48<<24>>>24))%2,d===d?d:$throwRuntimeError("integer divide by zero"))===0));}return(g=a.d,((b<0||b>=g.length)?($throwRuntimeError("index out of range"),undefined):g[b]))>=53;};Y.ptr.prototype.Round=function(a){var $ptr,a,b;b=this;if(a<0||a>=b.nd){return;}if(AG(b,a)){b.RoundUp(a);}else{b.RoundDown(a);}};Y.prototype.Round=function(a){return this.$val.Round(a);};Y.ptr.prototype.RoundDown=function(a){var $ptr,a,b;b=this;if(a<0||a>=b.nd){return;}b.nd=a;AA(b);};Y.prototype.RoundDown=function(a){return this.$val.RoundDown(a);};Y.ptr.prototype.RoundUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;if(a<0||a>=b.nd){return;}c=a-1>>0;while(true){if(!(c>=0)){break;}e=(d=b.d,((c<0||c>=d.length)?($throwRuntimeError("index out of range"),undefined):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?($throwRuntimeError("index out of range"),undefined):g[c]=((f=b.d,((c<0||c>=f.length)?($throwRuntimeError("index out of range"),undefined):f[c]))+(1)<<24>>>24)));b.nd=c+1>>0;return;}c=c-(1)>>0;}b.d[0]=49;b.nd=1;b.dp=b.dp+(1)>>0;};Y.prototype.RoundUp=function(a){return this.$val.RoundUp(a);};Y.ptr.prototype.RoundedInteger=function(){var $ptr,a,b,c,d,e,f,g;a=this;if(a.dp>20){return new $Uint64(4294967295,4294967295);}b=0;c=new $Uint64(0,0);b=0;while(true){if(!(b<a.dp&&b<a.nd)){break;}c=(d=$mul64(c,new $Uint64(0,10)),e=new $Uint64(0,((f=a.d,((b<0||b>=f.length)?($throwRuntimeError("index out of range"),undefined):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b<a.dp)){break;}c=$mul64(c,(new $Uint64(0,10)));b=b+(1)>>0;}if(AG(a,a.dp)){c=(g=new $Uint64(0,1),new $Uint64(c.$high+g.$high,c.$low+g.$low));}return c;};Y.prototype.RoundedInteger=function(){return this.$val.RoundedInteger();};AH.ptr.prototype.floatBits=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;b=new $Uint64(0,0);c=false;d=this;d.Normalize();e=d.exp+63>>0;if(e<(a.bias+1>>0)){f=(a.bias+1>>0)-e>>0;d.mant=$shiftRightUint64(d.mant,((f>>>0)));e=e+(f)>>0;}g=$shiftRightUint64(d.mant,((63-a.mantbits>>>0)));if(!((h=(i=d.mant,j=$shiftLeft64(new $Uint64(0,1),((62-a.mantbits>>>0))),new $Uint64(i.$high&j.$high,(i.$low&j.$low)>>>0)),(h.$high===0&&h.$low===0)))){g=(k=new $Uint64(0,1),new $Uint64(g.$high+k.$high,g.$low+k.$low));}if((l=$shiftLeft64(new $Uint64(0,2),a.mantbits),(g.$high===l.$high&&g.$low===l.$low))){g=$shiftRightUint64(g,(1));e=e+(1)>>0;}if((e-a.bias>>0)>=(((m=a.expbits,m<32?(1<<m):0)>>0)-1>>0)){g=new $Uint64(0,0);e=(((p=a.expbits,p<32?(1<<p):0)>>0)-1>>0)+a.bias>>0;c=true;}else if((n=(o=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(g.$high&o.$high,(g.$low&o.$low)>>>0)),(n.$high===0&&n.$low===0))){e=a.bias;}b=(q=(r=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(r.$high-0,r.$low-1)),new $Uint64(g.$high&q.$high,(g.$low&q.$low)>>>0));b=(s=$shiftLeft64(new $Uint64(0,(((e-a.bias>>0))&((((t=a.expbits,t<32?(1<<t):0)>>0)-1>>0)))),a.mantbits),new $Uint64(b.$high|s.$high,(b.$low|s.$low)>>>0));if(d.neg){b=(u=$shiftLeft64(new $Uint64(0,1),((a.mantbits+a.expbits>>>0))),new $Uint64(b.$high|u.$high,(b.$low|u.$low)>>>0));}return[b,c];};AH.prototype.floatBits=function(a){return this.$val.floatBits(a);};AH.ptr.prototype.AssignComputeBounds=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=new AH.ptr(new $Uint64(0,0),0,false);f=new AH.ptr(new $Uint64(0,0),0,false);g=this;g.mant=a;g.exp=b-(d.mantbits>>0)>>0;g.neg=c;if(g.exp<=0&&(h=$shiftLeft64(($shiftRightUint64(a,(-g.exp>>>0))),(-g.exp>>>0)),(a.$high===h.$high&&a.$low===h.$low))){g.mant=$shiftRightUint64(g.mant,((-g.exp>>>0)));g.exp=0;i=$clone(g,AH);j=$clone(g,AH);AH.copy(e,i);AH.copy(f,j);return[e,f];}k=b-d.bias>>0;AH.copy(f,new AH.ptr((l=$mul64(new $Uint64(0,2),g.mant),new $Uint64(l.$high+0,l.$low+1)),g.exp-1>>0,g.neg));if(!((m=$shiftLeft64(new $Uint64(0,1),d.mantbits),(a.$high===m.$high&&a.$low===m.$low)))||(k===1)){AH.copy(e,new AH.ptr((n=$mul64(new $Uint64(0,2),g.mant),new $Uint64(n.$high-0,n.$low-1)),g.exp-1>>0,g.neg));}else{AH.copy(e,new AH.ptr((o=$mul64(new $Uint64(0,4),g.mant),new $Uint64(o.$high-0,o.$low-1)),g.exp-2>>0,g.neg));}return[e,f];};AH.prototype.AssignComputeBounds=function(a,b,c,d){return this.$val.AssignComputeBounds(a,b,c,d);};AH.ptr.prototype.Normalize=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;a=0;b=this;c=b.mant;d=b.exp;e=c;f=d;if((e.$high===0&&e.$low===0)){a=0;return a;}if((g=$shiftRightUint64(e,32),(g.$high===0&&g.$low===0))){e=$shiftLeft64(e,(32));f=f-(32)>>0;}if((h=$shiftRightUint64(e,48),(h.$high===0&&h.$low===0))){e=$shiftLeft64(e,(16));f=f-(16)>>0;}if((i=$shiftRightUint64(e,56),(i.$high===0&&i.$low===0))){e=$shiftLeft64(e,(8));f=f-(8)>>0;}if((j=$shiftRightUint64(e,60),(j.$high===0&&j.$low===0))){e=$shiftLeft64(e,(4));f=f-(4)>>0;}if((k=$shiftRightUint64(e,62),(k.$high===0&&k.$low===0))){e=$shiftLeft64(e,(2));f=f-(2)>>0;}if((l=$shiftRightUint64(e,63),(l.$high===0&&l.$low===0))){e=$shiftLeft64(e,(1));f=f-(1)>>0;}a=((b.exp-f>>0)>>>0);m=e;n=f;b.mant=m;b.exp=n;return a;};AH.prototype.Normalize=function(){return this.$val.Normalize();};AH.ptr.prototype.Multiply=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;b=this;c=$shiftRightUint64(b.mant,32);d=new $Uint64(0,(b.mant.$low>>>0));e=c;f=d;g=$shiftRightUint64(a.mant,32);h=new $Uint64(0,(a.mant.$low>>>0));i=g;j=h;k=$mul64(e,j);l=$mul64(f,i);b.mant=(m=(n=$mul64(e,i),o=$shiftRightUint64(k,32),new $Uint64(n.$high+o.$high,n.$low+o.$low)),p=$shiftRightUint64(l,32),new $Uint64(m.$high+p.$high,m.$low+p.$low));u=(q=(r=new $Uint64(0,(k.$low>>>0)),s=new $Uint64(0,(l.$low>>>0)),new $Uint64(r.$high+s.$high,r.$low+s.$low)),t=$shiftRightUint64(($mul64(f,j)),32),new $Uint64(q.$high+t.$high,q.$low+t.$low));u=(v=new $Uint64(0,2147483648),new $Uint64(u.$high+v.$high,u.$low+v.$low));b.mant=(w=b.mant,x=($shiftRightUint64(u,32)),new $Uint64(w.$high+x.$high,w.$low+x.$low));b.exp=(b.exp+a.exp>>0)+64>>0;};AH.prototype.Multiply=function(a){return this.$val.Multiply(a);};AH.ptr.prototype.AssignDecimal=function(a,b,c,d,e){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=false;g=this;h=0;if(d){h=h+(4)>>0;}g.mant=a;g.exp=0;g.neg=c;j=(i=((b- -348>>0))/8,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"));if(b<-348||j>=87){f=false;return f;}l=(k=((b- -348>>0))%8,k===k?k:$throwRuntimeError("integer divide by zero"));if(l<19&&(m=(n=19-l>>0,((n<0||n>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[n])),(a.$high<m.$high||(a.$high===m.$high&&a.$low<m.$low)))){g.mant=$mul64(g.mant,(((l<0||l>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply($clone(((l<0||l>=AI.length)?($throwRuntimeError("index out of range"),undefined):AI[l]),AH));h=h+(4)>>0;}g.Multiply($clone(((j<0||j>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[j]),AH));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<<p):0)>>0;q=e.bias-63>>0;r=0;if(g.exp<=q){r=((63-e.mantbits>>>0)+1>>>0)+((q-g.exp>>0)>>>0)>>>0;}else{r=63-e.mantbits>>>0;}s=$shiftLeft64(new $Uint64(0,1),((r-1>>>0)));w=(t=g.mant,u=(v=$shiftLeft64(new $Uint64(0,1),r),new $Uint64(v.$high-0,v.$low-1)),new $Uint64(t.$high&u.$high,(t.$low&u.$low)>>>0));if((x=(y=new $Int64(s.$high,s.$low),z=new $Int64(0,h),new $Int64(y.$high-z.$high,y.$low-z.$low)),aa=new $Int64(w.$high,w.$low),(x.$high<aa.$high||(x.$high===aa.$high&&x.$low<aa.$low)))&&(ab=new $Int64(w.$high,w.$low),ac=(ad=new $Int64(s.$high,s.$low),ae=new $Int64(0,h),new $Int64(ad.$high+ae.$high,ad.$low+ae.$low)),(ab.$high<ac.$high||(ab.$high===ac.$high&&ab.$low<ac.$low)))){f=false;return f;}f=true;return f;};AH.prototype.AssignDecimal=function(a,b,c,d,e){return this.$val.AssignDecimal(a,b,c,d,e);};AH.ptr.prototype.frexp10=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=this;e=(d=($imul(((-46-c.exp>>0)),28))/93,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));g=(f=((e- -348>>0))/8,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));Loop:while(true){h=(c.exp+((g<0||g>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[g]).exp>>0)+64>>0;if(h<-60){g=g+(1)>>0;}else if(h>-32){g=g-(1)>>0;}else{break Loop;}}c.Multiply($clone(((g<0||g>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[g]),AH));i=-((-348+($imul(g,8))>>0));j=g;a=i;b=j;return[a,b];};AH.prototype.frexp10=function(){return this.$val.frexp10();};AL=function(a,b,c){var $ptr,a,b,c,d,e,f;d=0;e=c.frexp10();d=e[0];f=e[1];a.Multiply($clone(((f<0||f>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[f]),AH));b.Multiply($clone(((f<0||f>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[f]),AH));return d;};AH.ptr.prototype.FixedDecimal=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if((d=c.mant,(d.$high===0&&d.$low===0))){a.nd=0;a.dp=0;a.neg=c.neg;return true;}if(b===0){$panic(new $String("strconv: internal error: extFloat.FixedDecimal called with n == 0"));}c.Normalize();e=c.frexp10();f=e[0];g=(-c.exp>>>0);h=($shiftRightUint64(c.mant,g).$low>>>0);k=(i=c.mant,j=$shiftLeft64(new $Uint64(0,h),g),new $Uint64(i.$high-j.$high,i.$low-j.$low));l=new $Uint64(0,1);m=b;n=0;o=new $Uint64(0,1);p=0;q=new $Uint64(0,1);r=p;s=q;while(true){if(!(r<20)){break;}if((t=new $Uint64(0,h),(s.$high>t.$high||(s.$high===t.$high&&s.$low>t.$low)))){n=r;break;}s=$mul64(s,(new $Uint64(0,10)));r=r+(1)>>0;}u=h;if(n>m){o=(v=n-m>>0,((v<0||v>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[v]));h=(w=h/((o.$low>>>0)),(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));u=u-(($imul(h,(o.$low>>>0))>>>0))>>>0;}else{u=0;}x=DC.zero();y=32;z=h;while(true){if(!(z>0)){break;}ab=(aa=z/10,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>>0:$throwRuntimeError("integer divide by zero"));z=z-(($imul(10,ab)>>>0))>>>0;y=y-(1)>>0;((y<0||y>=x.length)?($throwRuntimeError("index out of range"),undefined):x[y]=((z+48>>>0)<<24>>>24));z=ab;}ac=y;while(true){if(!(ac<32)){break;}(ad=a.d,ae=ac-y>>0,((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?($throwRuntimeError("index out of range"),undefined):x[ac])));ac=ac+(1)>>0;}af=32-y>>0;a.nd=af;a.dp=n+f>>0;m=m-(af)>>0;if(m>0){if(!((u===0))||!((o.$high===0&&o.$low===1))){$panic(new $String("strconv: internal error, rest != 0 but needed > 0"));}while(true){if(!(m>0)){break;}k=$mul64(k,(new $Uint64(0,10)));l=$mul64(l,(new $Uint64(0,10)));if((ag=$mul64(new $Uint64(0,2),l),ah=$shiftLeft64(new $Uint64(0,1),g),(ag.$high>ah.$high||(ag.$high===ah.$high&&ag.$low>ah.$low)))){return false;}ai=$shiftRightUint64(k,g);(aj=a.d,((af<0||af>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+af]=(new $Uint64(ai.$high+0,ai.$low+48).$low<<24>>>24)));k=(ak=$shiftLeft64(ai,g),new $Uint64(k.$high-ak.$high,k.$low-ak.$low));af=af+(1)>>0;m=m-(1)>>0;}a.nd=af;}am=AM(a,(al=$shiftLeft64(new $Uint64(0,u),g),new $Uint64(al.$high|k.$high,(al.$low|k.$low)>>>0)),o,g,l);if(!am){return false;}an=a.nd-1>>0;while(true){if(!(an>=0)){break;}if(!(((ao=a.d,((an<0||an>=ao.$length)?($throwRuntimeError("index out of range"),undefined):ao.$array[ao.$offset+an]))===48))){a.nd=an+1>>0;break;}an=an-(1)>>0;}return true;};AH.prototype.FixedDecimal=function(a,b){return this.$val.FixedDecimal(a,b);};AM=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;if((f=$shiftLeft64(c,d),(b.$high>f.$high||(b.$high===f.$high&&b.$low>f.$low)))){$panic(new $String("strconv: num > den<<shift in adjustLastDigitFixed"));}if((g=$mul64(new $Uint64(0,2),e),h=$shiftLeft64(c,d),(g.$high>h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<<shift)/2"));}if((i=$mul64(new $Uint64(0,2),(new $Uint64(b.$high+e.$high,b.$low+e.$low))),j=$shiftLeft64(c,d),(i.$high<j.$high||(i.$high===j.$high&&i.$low<j.$low)))){return true;}if((k=$mul64(new $Uint64(0,2),(new $Uint64(b.$high-e.$high,b.$low-e.$low))),l=$shiftLeft64(c,d),(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))){m=a.nd-1>>0;while(true){if(!(m>=0)){break;}if((n=a.d,((m<0||m>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+m]))===57){a.nd=a.nd-(1)>>0;}else{break;}m=m-(1)>>0;}if(m<0){(o=a.d,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]=49));a.nd=1;a.dp=a.dp+(1)>>0;}else{(q=a.d,((m<0||m>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+m]))+(1)<<24>>>24)));}return true;}return false;};AH.ptr.prototype.ShortestDecimal=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;d=this;if((e=d.mant,(e.$high===0&&e.$low===0))){a.nd=0;a.dp=0;a.neg=d.neg;return true;}if((d.exp===0)&&$equal(b,d,AH)&&$equal(b,c,AH)){f=DB.zero();g=23;h=d.mant;while(true){if(!((h.$high>0||(h.$high===0&&h.$low>0)))){break;}i=$div64(h,new $Uint64(0,10),false);h=(j=$mul64(new $Uint64(0,10),i),new $Uint64(h.$high-j.$high,h.$low-j.$low));((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g]=(new $Uint64(h.$high+0,h.$low+48).$low<<24>>>24));g=g-(1)>>0;h=i;}k=(24-g>>0)-1>>0;l=0;while(true){if(!(l<k)){break;}(n=a.d,((l<0||l>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?($throwRuntimeError("index out of range"),undefined):f[m]))));l=l+(1)>>0;}o=k;p=k;a.nd=o;a.dp=p;while(true){if(!(a.nd>0&&((q=a.d,r=a.nd-1>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]))===48))){break;}a.nd=a.nd-(1)>>0;}if(a.nd===0){a.dp=0;}a.neg=d.neg;return true;}c.Normalize();if(d.exp>c.exp){d.mant=$shiftLeft64(d.mant,(((d.exp-c.exp>>0)>>>0)));d.exp=c.exp;}if(b.exp>c.exp){b.mant=$shiftLeft64(b.mant,(((b.exp-c.exp>>0)>>>0)));b.exp=c.exp;}s=AL(b,d,c);c.mant=(t=c.mant,u=new $Uint64(0,1),new $Uint64(t.$high+u.$high,t.$low+u.$low));b.mant=(v=b.mant,w=new $Uint64(0,1),new $Uint64(v.$high-w.$high,v.$low-w.$low));x=(-c.exp>>>0);y=($shiftRightUint64(c.mant,x).$low>>>0);ab=(z=c.mant,aa=$shiftLeft64(new $Uint64(0,y),x),new $Uint64(z.$high-aa.$high,z.$low-aa.$low));ae=(ac=c.mant,ad=b.mant,new $Uint64(ac.$high-ad.$high,ac.$low-ad.$low));ah=(af=c.mant,ag=d.mant,new $Uint64(af.$high-ag.$high,af.$low-ag.$low));ai=0;aj=0;ak=new $Uint64(0,1);al=aj;am=ak;while(true){if(!(al<20)){break;}if((an=new $Uint64(0,y),(am.$high>an.$high||(am.$high===an.$high&&am.$low>an.$low)))){ai=al;break;}am=$mul64(am,(new $Uint64(0,10)));al=al+(1)>>0;}ao=0;while(true){if(!(ao<ai)){break;}aq=(ap=(ai-ao>>0)-1>>0,((ap<0||ap>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[ap]));as=(ar=y/(aq.$low>>>0),(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"));(at=a.d,((ao<0||ao>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+ao]=((as+48>>>0)<<24>>>24)));y=y-(($imul(as,(aq.$low>>>0))>>>0))>>>0;av=(au=$shiftLeft64(new $Uint64(0,y),x),new $Uint64(au.$high+ab.$high,au.$low+ab.$low));if((av.$high<ae.$high||(av.$high===ae.$high&&av.$low<ae.$low))){a.nd=ao+1>>0;a.dp=ai+s>>0;a.neg=d.neg;return AN(a,av,ah,ae,$shiftLeft64(aq,x),new $Uint64(0,2));}ao=ao+(1)>>0;}a.nd=ai;a.dp=a.nd+s>>0;a.neg=d.neg;aw=0;ax=new $Uint64(0,1);while(true){ab=$mul64(ab,(new $Uint64(0,10)));ax=$mul64(ax,(new $Uint64(0,10)));aw=($shiftRightUint64(ab,x).$low>>0);(ay=a.d,az=a.nd,((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]=((aw+48>>0)<<24>>>24)));a.nd=a.nd+(1)>>0;ab=(ba=$shiftLeft64(new $Uint64(0,aw),x),new $Uint64(ab.$high-ba.$high,ab.$low-ba.$low));if((bb=$mul64(ae,ax),(ab.$high<bb.$high||(ab.$high===bb.$high&&ab.$low<bb.$low)))){return AN(a,ab,$mul64(ah,ax),$mul64(ae,ax),$shiftLeft64(new $Uint64(0,1),x),$mul64(ax,new $Uint64(0,2)));}}};AH.prototype.ShortestDecimal=function(a,b,c){return this.$val.ShortestDecimal(a,b,c);};AN=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;if((g=$mul64(new $Uint64(0,2),f),(e.$high<g.$high||(e.$high===g.$high&&e.$low<g.$low)))){return false;}while(true){if(!((h=(i=(j=$div64(e,new $Uint64(0,2),false),new $Uint64(b.$high+j.$high,b.$low+j.$low)),new $Uint64(i.$high+f.$high,i.$low+f.$low)),(h.$high<c.$high||(h.$high===c.$high&&h.$low<c.$low))))){break;}k=a.nd-1>>0;(m=a.d,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]))-(1)<<24>>>24)));b=(n=e,new $Uint64(b.$high+n.$high,b.$low+n.$low));}if((o=new $Uint64(b.$high+e.$high,b.$low+e.$low),p=(q=(r=$div64(e,new $Uint64(0,2),false),new $Uint64(c.$high+r.$high,c.$low+r.$low)),new $Uint64(q.$high+f.$high,q.$low+f.$low)),(o.$high<p.$high||(o.$high===p.$high&&o.$low<=p.$low)))){return false;}if((b.$high<f.$high||(b.$high===f.$high&&b.$low<f.$low))||(s=new $Uint64(d.$high-f.$high,d.$low-f.$low),(b.$high>s.$high||(b.$high===s.$high&&b.$low>s.$low)))){return false;}if((a.nd===1)&&((t=a.d,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};AR=function(a,b,c,d){var $ptr,a,b,c,d;return $bytesToString(AT($makeSlice(DA,0,BC(c+4>>0,24)),a,b,c,d));};$pkg.FormatFloat=AR;AS=function(a,b,c,d,e){var $ptr,a,b,c,d,e;return AT(a,b,c,d,e);};$pkg.AppendFloat=AS;AT=function(a,b,c,d,e){var $ptr,a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=new $Uint64(0,0);g=DD.nil;h=e;if(h===(32)){f=new $Uint64(0,A.Float32bits($fround(b)));g=AP;}else if(h===(64)){f=A.Float64bits(b);g=AQ;}else{$panic(new $String("strconv: illegal AppendFloat/FormatFloat bitSize"));}j=!((i=$shiftRightUint64(f,((g.expbits+g.mantbits>>>0))),(i.$high===0&&i.$low===0)));l=($shiftRightUint64(f,g.mantbits).$low>>0)&((((k=g.expbits,k<32?(1<<k):0)>>0)-1>>0));o=(m=(n=$shiftLeft64(new $Uint64(0,1),g.mantbits),new $Uint64(n.$high-0,n.$low-1)),new $Uint64(f.$high&m.$high,(f.$low&m.$low)>>>0));p=l;if(p===((((q=g.expbits,q<32?(1<<q):0)>>0)-1>>0))){r="";if(!((o.$high===0&&o.$low===0))){r="NaN";}else if(j){r="-Inf";}else{r="+Inf";}return $appendSlice(a,r);}else if(p===(0)){l=l+(1)>>0;}else{o=(s=$shiftLeft64(new $Uint64(0,1),g.mantbits),new $Uint64(o.$high|s.$high,(o.$low|s.$low)>>>0));}l=l+(g.bias)>>0;if(c===98){return BA(a,j,o,l,g);}if(!G){return AU(a,d,c,j,o,l,g);}t=new AX.ptr(DA.nil,0,0,false);u=false;v=d<0;if(v){w=new AH.ptr(new $Uint64(0,0),0,false);x=w.AssignComputeBounds(o,l,j,g);y=$clone(x[0],AH);z=$clone(x[1],AH);aa=DC.zero();t.d=new DA(aa);u=w.ShortestDecimal(t,y,z);if(!u){return AU(a,d,c,j,o,l,g);}ab=c;if((ab===(101))||(ab===(69))){d=BC(t.nd-1>>0,0);}else if(ab===(102)){d=BC(t.nd-t.dp>>0,0);}else if((ab===(103))||(ab===(71))){d=t.nd;}}else if(!((c===102))){ac=d;ad=c;if((ad===(101))||(ad===(69))){ac=ac+(1)>>0;}else if((ad===(103))||(ad===(71))){if(d===0){d=1;}ac=d;}if(ac<=15){ae=DB.zero();t.d=new DA(ae);af=new AH.ptr(o,l-(g.mantbits>>0)>>0,j);u=af.FixedDecimal(t,ac);}}if(!u){return AU(a,d,c,j,o,l,g);}return AV(a,v,j,$clone(t,AX),d,c);};AU=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;h=new Y.ptr(CY.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(DA.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new DA(h.d),h.nd,h.dp,false));k=c;if((k===(101))||(k===(69))){b=i.nd-1>>0;}else if(k===(102)){b=BC(i.nd-i.dp>>0,0);}else if((k===(103))||(k===(71))){b=i.nd;}}else{l=c;if((l===(101))||(l===(69))){h.Round(b+1>>0);}else if(l===(102)){h.Round(h.dp+b>>0);}else if((l===(103))||(l===(71))){if(b===0){b=1;}h.Round(b);}AX.copy(i,new AX.ptr(new DA(h.d),h.nd,h.dp,false));}return AV(a,j,d,$clone(i,AX),b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;g=f;if((g===(101))||(g===(69))){return AY(a,c,$clone(d,AX),e,f);}else if(g===(102)){return AZ(a,c,$clone(d,AX),e);}else if((g===(103))||(g===(71))){h=e;if(h>d.nd&&d.nd>=d.dp){h=d.nd;}if(b){h=6;}i=d.dp-1>>0;if(i<-4||i>=h){if(e>d.nd){e=d.nd;}return AY(a,c,$clone(d,AX),e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,$clone(d,AX),BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;if((b.$high===0&&b.$low===0)){a.nd=0;return;}e=d.bias+1>>0;if(c>e&&($imul(332,((a.dp-a.nd>>0))))>=($imul(100,((c-(d.mantbits>>0)>>0))))){return;}f=new Y.ptr(CY.zero(),0,0,false,false);f.Assign((g=$mul64(b,new $Uint64(0,2)),new $Uint64(g.$high+0,g.$low+1)));f.Shift((c-(d.mantbits>>0)>>0)-1>>0);h=new $Uint64(0,0);i=0;if((j=$shiftLeft64(new $Uint64(0,1),d.mantbits),(b.$high>j.$high||(b.$high===j.$high&&b.$low>j.$low)))||(c===e)){h=new $Uint64(b.$high-0,b.$low-1);i=c;}else{h=(k=$mul64(b,new $Uint64(0,2)),new $Uint64(k.$high-0,k.$low-1));i=c-1>>0;}l=new Y.ptr(CY.zero(),0,0,false,false);l.Assign((m=$mul64(h,new $Uint64(0,2)),new $Uint64(m.$high+0,m.$low+1)));l.Shift((i-(d.mantbits>>0)>>0)-1>>0);o=(n=$div64(b,new $Uint64(0,2),true),(n.$high===0&&n.$low===0));p=0;while(true){if(!(p<a.nd)){break;}q=48;if(p<l.nd){q=(r=l.d,((p<0||p>=r.length)?($throwRuntimeError("index out of range"),undefined):r[p]));}t=(s=a.d,((p<0||p>=s.length)?($throwRuntimeError("index out of range"),undefined):s[p]));u=48;if(p<f.nd){u=(v=f.d,((p<0||p>=v.length)?($throwRuntimeError("index out of range"),undefined):v[p]));}w=!((q===t))||o&&((p+1>>0)===l.nd);x=!((t===u))&&(o||(t+1<<24>>>24)<u||(p+1>>0)<f.nd);if(w&&x){a.Round(p+1>>0);return;}else if(w){a.RoundDown(p+1>>0);return;}else if(x){a.RoundUp(p+1>>0);return;}p=p+(1)>>0;}};AY=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]));}a=$append(a,f);if(d>0){a=$append(a,46);h=1;i=BB(c.nd,d+1>>0);if(h<i){a=$appendSlice(a,$subslice(c.d,h,i));h=i;}while(true){if(!(h<=d)){break;}a=$append(a,48);h=h+(1)>>0;}}a=$append(a,e);j=c.dp-1>>0;if(c.nd===0){j=0;}if(j<0){f=45;j=-j;}else{f=43;}a=$append(a,f);if(j<10){a=$append(a,48,(j<<24>>>24)+48<<24>>>24);}else if(j<100){a=$append(a,((k=j/10,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24,((l=j%10,l===l?l:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24);}else{a=$append(a,((m=j/100,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24,(n=((o=j/10,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)%10,n===n?n:$throwRuntimeError("integer divide by zero"))+48<<24>>>24,((p=j%10,p===p?p:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24);}return a;};AZ=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;if(b){a=$append(a,45);}if(c.dp>0){e=BB(c.nd,c.dp);a=$appendSlice(a,$subslice(c.d,0,e));while(true){if(!(e<c.dp)){break;}a=$append(a,48);e=e+(1)>>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f<d)){break;}g=48;h=c.dp+f>>0;if(0<=h&&h<c.nd){g=(i=c.d,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]));}a=$append(a,g);f=f+(1)>>0;}}return a;};BA=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g;if(b){a=$append(a,45);}f=BO(a,c,10,false,true);a=f[0];a=$append(a,112);d=d-((e.mantbits>>0))>>0;if(d>=0){a=$append(a,43);}g=BO(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(a<b){return a;}return b;};BC=function(a,b){var $ptr,a,b;if(a>b){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BO(DA.nil,a,b,false,false);d=c[1];return d;};$pkg.FormatUint=BI;BJ=function(a,b){var $ptr,a,b,c,d;c=BO(DA.nil,new $Uint64(a.$high,a.$low),b,(a.$high<0||(a.$high===0&&a.$low<0)),false);d=c[1];return d;};$pkg.FormatInt=BJ;BK=function(a){var $ptr,a;return BJ(new $Int64(0,a),10);};$pkg.Itoa=BK;BM=function(a,b,c){var $ptr,a,b,c,d;d=BO(a,b,c,false,true);a=d[0];return a;};$pkg.AppendUint=BM;BO=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;f=DA.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=DE.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){if(true){while(true){if(!((b.$high>0||(b.$high===0&&b.$low>4294967295)))){break;}j=$div64(b,new $Uint64(0,1000000000),false);l=((k=$mul64(j,new $Uint64(0,1000000000)),new $Uint64(b.$high-k.$high,b.$low-k.$low)).$low>>>0);m=9;while(true){if(!(m>0)){break;}i=i-(1)>>0;o=(n=l/10,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=(((l-($imul(o,10)>>>0)>>>0)+48>>>0)<<24>>>24));l=o;m=m-(1)>>0;}b=j;}}p=(b.$low>>>0);while(true){if(!(p>=10)){break;}i=i-(1)>>0;r=(q=p/10,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=(((p-($imul(r,10)>>>0)>>>0)+48>>>0)<<24>>>24));p=r;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BN.length)?($throwRuntimeError("index out of range"),undefined):BN[c]);if(s>0){t=new $Uint64(0,c);u=(t.$low>>>0)-1>>>0;while(true){if(!((b.$high>t.$high||(b.$high===t.$high&&b.$low>=t.$low)))){break;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((((b.$low>>>0)&u)>>>0)));b=$shiftRightUint64(b,(s));}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}else{v=new $Uint64(0,c);while(true){if(!((b.$high>v.$high||(b.$high===v.$high&&b.$low>=v.$low)))){break;}i=i-(1)>>0;w=$div64(b,v,false);((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((x=$mul64(w,v),new $Uint64(b.$high-x.$high,b.$low-x.$low)).$low>>>0)));b=w;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new DA(h),i));return[f,g];}g=$bytesToString($subslice(new DA(h),i));return[f,g];};BP=function(a,b,c,d){var $ptr,a,b,c,d,e;return $bytesToString(BR($makeSlice(DA,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"))),a,b,c,d));};BR=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h;a=$append(a,c);f=0;while(true){if(!(b.length>0)){break;}g=(b.charCodeAt(0)>>0);f=1;if(g>=128){h=C.DecodeRuneInString(b);g=h[0];f=h[1];}if((f===1)&&(g===65533)){a=$appendSlice(a,"\\x");a=$append(a,"0123456789abcdef".charCodeAt((b.charCodeAt(0)>>>4<<24>>>24)));a=$append(a,"0123456789abcdef".charCodeAt(((b.charCodeAt(0)&15)>>>0)));b=$substring(b,f);continue;}a=BT(a,g,f,c,d,e);b=$substring(b,f);}a=$append(a,c);return a;};BS=function(a,b,c,d,e){var $ptr,a,b,c,d,e;a=$append(a,c);if(!C.ValidRune(b)){b=65533;}a=BT(a,b,C.RuneLen(b),c,d,e);a=$append(a,c);return a;};BT=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k;g=DF.zero();if((b===(d>>0))||(b===92)){a=$append(a,92);a=$append(a,(b<<24>>>24));return a;}if(e){if(b<128&&CN(b)){a=$append(a,(b<<24>>>24));return a;}}else if(CN(b)||f&&CP(b)){h=C.EncodeRune(new DA(g),b);a=$appendSlice(a,$subslice(new DA(g),0,h));return a;}i=b;if(i===(7)){a=$appendSlice(a,"\\a");}else if(i===(8)){a=$appendSlice(a,"\\b");}else if(i===(12)){a=$appendSlice(a,"\\f");}else if(i===(10)){a=$appendSlice(a,"\\n");}else if(i===(13)){a=$appendSlice(a,"\\r");}else if(i===(9)){a=$appendSlice(a,"\\t");}else if(i===(11)){a=$appendSlice(a,"\\v");}else{if(b<32){a=$appendSlice(a,"\\x");a=$append(a,"0123456789abcdef".charCodeAt(((b<<24>>>24)>>>4<<24>>>24)));a=$append(a,"0123456789abcdef".charCodeAt((((b<<24>>>24)&15)>>>0)));}else if(b>1114111){b=65533;a=$appendSlice(a,"\\u");j=12;while(true){if(!(j>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((j>>>0),31))>>0)&15)));j=j-(4)>>0;}}else if(b<65536){a=$appendSlice(a,"\\u");j=12;while(true){if(!(j>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((j>>>0),31))>>0)&15)));j=j-(4)>>0;}}else{a=$appendSlice(a,"\\U");k=28;while(true){if(!(k>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((k>>>0),31))>>0)&15)));k=k-(4)>>0;}}}return a;};BU=function(a){var $ptr,a;return BP(a,34,false,false);};$pkg.Quote=BU;BV=function(a,b){var $ptr,a,b;return BR(a,b,34,false,false);};$pkg.AppendQuote=BV;BW=function(a){var $ptr,a;return BP(a,34,true,false);};$pkg.QuoteToASCII=BW;BX=function(a,b){var $ptr,a,b;return BR(a,b,34,true,false);};$pkg.AppendQuoteToASCII=BX;CB=function(a,b){var $ptr,a,b;return BS(a,b,39,false,false);};$pkg.AppendQuoteRune=CB;CD=function(a,b){var $ptr,a,b;return BS(a,b,39,true,false);};$pkg.AppendQuoteRuneToASCII=CD;CG=function(a){var $ptr,a,b,c,d;while(true){if(!(a.length>0)){break;}b=C.DecodeRuneInString(a);c=b[0];d=b[1];a=$substring(a,d);if(d>1){if(c===65279){return false;}continue;}if(c===65533){return false;}if((c<32&&!((c===9)))||(c===96)||(c===127)){return false;}}return true;};$pkg.CanBackquote=CG;CH=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=false;d=(a>>0);if(48<=d&&d<=57){e=d-48>>0;f=true;b=e;c=f;return[b,c];}else if(97<=d&&d<=102){g=(d-97>>0)+10>>0;h=true;b=g;c=h;return[b,c];}else if(65<=d&&d<=70){i=(d-65>>0)+10>>0;j=true;b=i;c=j;return[b,c];}return[b,c];};CI=function(a,b){var $ptr,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=0;d=false;e="";f=$ifaceNil;g=a.charCodeAt(0);if((g===b)&&((b===39)||(b===34))){f=$pkg.ErrSyntax;return[c,d,e,f];}else if(g>=128){h=C.DecodeRuneInString(a);i=h[0];j=h[1];k=i;l=true;m=$substring(a,j);n=$ifaceNil;c=k;d=l;e=m;f=n;return[c,d,e,f];}else if(!((g===92))){o=(a.charCodeAt(0)>>0);p=false;q=$substring(a,1);r=$ifaceNil;c=o;d=p;e=q;f=r;return[c,d,e,f];}if(a.length<=1){f=$pkg.ErrSyntax;return[c,d,e,f];}s=a.charCodeAt(1);a=$substring(a,2);switch(0){default:t=s;if(t===(97)){c=7;}else if(t===(98)){c=8;}else if(t===(102)){c=12;}else if(t===(110)){c=10;}else if(t===(114)){c=13;}else if(t===(116)){c=9;}else if(t===(118)){c=11;}else if((t===(120))||(t===(117))||(t===(85))){u=0;v=s;if(v===(120)){u=2;}else if(v===(117)){u=4;}else if(v===(85)){u=8;}w=0;if(a.length<u){f=$pkg.ErrSyntax;return[c,d,e,f];}x=0;while(true){if(!(x<u)){break;}y=CH(a.charCodeAt(x));z=y[0];aa=y[1];if(!aa){f=$pkg.ErrSyntax;return[c,d,e,f];}w=(w<<4>>0)|z;x=x+(1)>>0;}a=$substring(a,u);if(s===120){c=w;break;}if(w>1114111){f=$pkg.ErrSyntax;return[c,d,e,f];}c=w;d=true;}else if((t===(48))||(t===(49))||(t===(50))||(t===(51))||(t===(52))||(t===(53))||(t===(54))||(t===(55))){ab=(s>>0)-48>>0;if(a.length<2){f=$pkg.ErrSyntax;return[c,d,e,f];}ac=0;while(true){if(!(ac<2)){break;}ad=(a.charCodeAt(ac)>>0)-48>>0;if(ad<0||ad>7){f=$pkg.ErrSyntax;return[c,d,e,f];}ab=((ab<<3>>0))|ad;ac=ac+(1)>>0;}a=$substring(a,2);if(ab>255){f=$pkg.ErrSyntax;return[c,d,e,f];}c=ab;}else if(t===(92)){c=92;}else if((t===(39))||(t===(34))){if(!((s===b))){f=$pkg.ErrSyntax;return[c,d,e,f];}c=(s>>0);}else{f=$pkg.ErrSyntax;return[c,d,e,f];}}e=a;return[c,d,e,f];};$pkg.UnquoteChar=CI;CJ=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;b=a.length;if(b<2){return["",$pkg.ErrSyntax];}c=a.charCodeAt(0);if(!((c===a.charCodeAt((b-1>>0))))){return["",$pkg.ErrSyntax];}a=$substring(a,1,(b-1>>0));if(c===96){if(CK(a,96)){return["",$pkg.ErrSyntax];}if(CK(a,13)){d=$makeSlice(DA,0,(a.length-1>>0));e=0;while(true){if(!(e<a.length)){break;}if(!((a.charCodeAt(e)===13))){d=$append(d,a.charCodeAt(e));}e=e+(1)>>0;}return[$bytesToString(d),$ifaceNil];}return[a,$ifaceNil];}if(!((c===34))&&!((c===39))){return["",$pkg.ErrSyntax];}if(CK(a,10)){return["",$pkg.ErrSyntax];}if(!CK(a,92)&&!CK(a,c)){f=c;if(f===(34)){return[a,$ifaceNil];}else if(f===(39)){g=C.DecodeRuneInString(a);h=g[0];i=g[1];if((i===a.length)&&(!((h===65533))||!((i===1)))){return[a,$ifaceNil];}}}j=DF.zero();l=$makeSlice(DA,0,(k=($imul(3,a.length))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}m=CI(a,c);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){return["",q];}a=p;if(n<128||!o){l=$append(l,(n<<24>>>24));}else{r=C.EncodeRune(new DA(j),n);l=$appendSlice(l,$subslice(new DA(j),0,r));}if((c===39)&&!((a.length===0))){return["",$pkg.ErrSyntax];}}return[$bytesToString(l),$ifaceNil];};$pkg.Unquote=CJ;CK=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c<a.length)){break;}if(a.charCodeAt(c)===b){return true;}c=c+(1)>>0;}return false;};CL=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=0;d=a.$length;e=c;f=d;while(true){if(!(e<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;if(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h])<b){e=h+1>>0;}else{f=h;}}return e;};CM=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=0;d=a.$length;e=c;f=d;while(true){if(!(e<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;if(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h])<b){e=h+1>>0;}else{f=h;}}return e;};CN=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;if(a<=255){if(32<=a&&a<=126){return true;}if(161<=a&&a<=255){return!((a===173));}return false;}if(0<=a&&a<65536){b=(a<<16>>>16);c=BD;d=BE;e=b;f=c;g=d;h=CL(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]))<e){return false;}k=CL(g,e);return k>=g.$length||!((((k<0||k>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CM(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+t]))<o){return false;}if(a>=131072){return true;}a=a-(65536)>>0;u=CL(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CN;CP=function(a){var $ptr,a,b,c;if(a>65535){return false;}b=(a<<16>>>16);c=CL(BH,b);return c<BH.$length&&(b===((c<0||c>=BH.$length)?($throwRuntimeError("index out of range"),undefined):BH.$array[BH.$offset+c]));};CZ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([DD],[$Uint64,$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Assign",name:"Assign",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"Shift",name:"Shift",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundDown",name:"RoundDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundUp",name:"RoundUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundedInteger",name:"RoundedInteger",pkg:"",typ:$funcType([],[$Uint64],false)}];DI.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([DD],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,DD],[AH,AH],false)},{prop:"Normalize",name:"Normalize",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Multiply",name:"Multiply",pkg:"",typ:$funcType([AH],[],false)},{prop:"AssignDecimal",name:"AssignDecimal",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,$Bool,DD],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([DH,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([DH,DI,DI],[$Bool],false)}];S.init("",[{prop:"Func",name:"Func",exported:true,typ:$String,tag:""},{prop:"Num",name:"Num",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);Y.init("strconv",[{prop:"d",name:"d",exported:false,typ:CY,tag:""},{prop:"nd",name:"nd",exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""},{prop:"trunc",name:"trunc",exported:false,typ:$Bool,tag:""}]);AC.init("strconv",[{prop:"delta",name:"delta",exported:false,typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",exported:false,typ:$String,tag:""}]);AH.init("strconv",[{prop:"mant",name:"mant",exported:false,typ:$Uint64,tag:""},{prop:"exp",name:"exp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""}]);AO.init("strconv",[{prop:"mantbits",name:"mantbits",exported:false,typ:$Uint,tag:""},{prop:"expbits",name:"expbits",exported:false,typ:$Uint,tag:""},{prop:"bias",name:"bias",exported:false,typ:$Int,tag:""}]);AX.init("strconv",[{prop:"d",name:"d",exported:false,typ:DA,tag:""},{prop:"nd",name:"nd",exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;K=new CS([1,3,6,9,13,16,19,23,26]);L=new CT([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10,1e+11,1e+12,1e+13,1e+14,1e+15,1e+16,1e+17,1e+18,1e+19,1e+20,1e+21,1e+22]);M=new CU([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10]);$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CV([new AC.ptr(0,""),new AC.ptr(1,"5"),new AC.ptr(1,"25"),new AC.ptr(1,"125"),new AC.ptr(2,"625"),new AC.ptr(2,"3125"),new AC.ptr(2,"15625"),new AC.ptr(3,"78125"),new AC.ptr(3,"390625"),new AC.ptr(3,"1953125"),new AC.ptr(4,"9765625"),new AC.ptr(4,"48828125"),new AC.ptr(4,"244140625"),new AC.ptr(4,"1220703125"),new AC.ptr(5,"6103515625"),new AC.ptr(5,"30517578125"),new AC.ptr(5,"152587890625"),new AC.ptr(6,"762939453125"),new AC.ptr(6,"3814697265625"),new AC.ptr(6,"19073486328125"),new AC.ptr(7,"95367431640625"),new AC.ptr(7,"476837158203125"),new AC.ptr(7,"2384185791015625"),new AC.ptr(7,"11920928955078125"),new AC.ptr(8,"59604644775390625"),new AC.ptr(8,"298023223876953125"),new AC.ptr(8,"1490116119384765625"),new AC.ptr(9,"7450580596923828125"),new AC.ptr(9,"37252902984619140625"),new AC.ptr(9,"186264514923095703125"),new AC.ptr(10,"931322574615478515625"),new AC.ptr(10,"4656612873077392578125"),new AC.ptr(10,"23283064365386962890625"),new AC.ptr(10,"116415321826934814453125"),new AC.ptr(11,"582076609134674072265625"),new AC.ptr(11,"2910383045673370361328125"),new AC.ptr(11,"14551915228366851806640625"),new AC.ptr(12,"72759576141834259033203125"),new AC.ptr(12,"363797880709171295166015625"),new AC.ptr(12,"1818989403545856475830078125"),new AC.ptr(13,"9094947017729282379150390625"),new AC.ptr(13,"45474735088646411895751953125"),new AC.ptr(13,"227373675443232059478759765625"),new AC.ptr(13,"1136868377216160297393798828125"),new AC.ptr(14,"5684341886080801486968994140625"),new AC.ptr(14,"28421709430404007434844970703125"),new AC.ptr(14,"142108547152020037174224853515625"),new AC.ptr(15,"710542735760100185871124267578125"),new AC.ptr(15,"3552713678800500929355621337890625"),new AC.ptr(15,"17763568394002504646778106689453125"),new AC.ptr(16,"88817841970012523233890533447265625"),new AC.ptr(16,"444089209850062616169452667236328125"),new AC.ptr(16,"2220446049250313080847263336181640625"),new AC.ptr(16,"11102230246251565404236316680908203125"),new AC.ptr(17,"55511151231257827021181583404541015625"),new AC.ptr(17,"277555756156289135105907917022705078125"),new AC.ptr(17,"1387778780781445675529539585113525390625"),new AC.ptr(18,"6938893903907228377647697925567626953125"),new AC.ptr(18,"34694469519536141888238489627838134765625"),new AC.ptr(18,"173472347597680709441192448139190673828125"),new AC.ptr(19,"867361737988403547205962240695953369140625")]);AI=$toNativeArray($kindStruct,[new AH.ptr(new $Uint64(2147483648,0),-63,false),new AH.ptr(new $Uint64(2684354560,0),-60,false),new AH.ptr(new $Uint64(3355443200,0),-57,false),new AH.ptr(new $Uint64(4194304000,0),-54,false),new AH.ptr(new $Uint64(2621440000,0),-50,false),new AH.ptr(new $Uint64(3276800000,0),-47,false),new AH.ptr(new $Uint64(4096000000,0),-44,false),new AH.ptr(new $Uint64(2560000000,0),-40,false)]);AJ=$toNativeArray($kindStruct,[new AH.ptr(new $Uint64(4203730336,136053384),-1220,false),new AH.ptr(new $Uint64(3132023167,2722021238),-1193,false),new AH.ptr(new $Uint64(2333539104,810921078),-1166,false),new AH.ptr(new $Uint64(3477244234,1573795306),-1140,false),new AH.ptr(new $Uint64(2590748842,1432697645),-1113,false),new AH.ptr(new $Uint64(3860516611,1025131999),-1087,false),new AH.ptr(new $Uint64(2876309015,3348809418),-1060,false),new AH.ptr(new $Uint64(4286034428,3200048207),-1034,false),new AH.ptr(new $Uint64(3193344495,1097586188),-1007,false),new AH.ptr(new $Uint64(2379227053,2424306748),-980,false),new AH.ptr(new $Uint64(3545324584,827693699),-954,false),new AH.ptr(new $Uint64(2641472655,2913388981),-927,false),new AH.ptr(new $Uint64(3936100983,602835915),-901,false),new AH.ptr(new $Uint64(2932623761,1081627501),-874,false),new AH.ptr(new $Uint64(2184974969,1572261463),-847,false),new AH.ptr(new $Uint64(3255866422,1308317239),-821,false),new AH.ptr(new $Uint64(2425809519,944281679),-794,false),new AH.ptr(new $Uint64(3614737867,629291719),-768,false),new AH.ptr(new $Uint64(2693189581,2545915892),-741,false),new AH.ptr(new $Uint64(4013165208,388672741),-715,false),new AH.ptr(new $Uint64(2990041083,708162190),-688,false),new AH.ptr(new $Uint64(2227754207,3536207675),-661,false),new AH.ptr(new $Uint64(3319612455,450088378),-635,false),new AH.ptr(new $Uint64(2473304014,3139815830),-608,false),new AH.ptr(new $Uint64(3685510180,2103616900),-582,false),new AH.ptr(new $Uint64(2745919064,224385782),-555,false),new AH.ptr(new $Uint64(4091738259,3737383206),-529,false),new AH.ptr(new $Uint64(3048582568,2868871352),-502,false),new AH.ptr(new $Uint64(2271371013,1820084875),-475,false),new AH.ptr(new $Uint64(3384606560,885076051),-449,false),new AH.ptr(new $Uint64(2521728396,2444895829),-422,false),new AH.ptr(new $Uint64(3757668132,1881767613),-396,false),new AH.ptr(new $Uint64(2799680927,3102062735),-369,false),new AH.ptr(new $Uint64(4171849679,2289335700),-343,false),new AH.ptr(new $Uint64(3108270227,2410191823),-316,false),new AH.ptr(new $Uint64(2315841784,3205436779),-289,false),new AH.ptr(new $Uint64(3450873173,1697722806),-263,false),new AH.ptr(new $Uint64(2571100870,3497754540),-236,false),new AH.ptr(new $Uint64(3831238852,707476230),-210,false),new AH.ptr(new $Uint64(2854495385,1769181907),-183,false),new AH.ptr(new $Uint64(4253529586,2197867022),-157,false),new AH.ptr(new $Uint64(3169126500,2450594539),-130,false),new AH.ptr(new $Uint64(2361183241,1867548876),-103,false),new AH.ptr(new $Uint64(3518437208,3793315116),-77,false),new AH.ptr(new $Uint64(2621440000,0),-50,false),new AH.ptr(new $Uint64(3906250000,0),-24,false),new AH.ptr(new $Uint64(2910383045,2892103680),3,false),new AH.ptr(new $Uint64(2168404344,4170451332),30,false),new AH.ptr(new $Uint64(3231174267,3372684723),56,false),new AH.ptr(new $Uint64(2407412430,2078956656),83,false),new AH.ptr(new $Uint64(3587324068,2884206696),109,false),new AH.ptr(new $Uint64(2672764710,395977285),136,false),new AH.ptr(new $Uint64(3982729777,3569679143),162,false),new AH.ptr(new $Uint64(2967364920,2361961896),189,false),new AH.ptr(new $Uint64(2210859150,447440347),216,false),new AH.ptr(new $Uint64(3294436857,1114709402),242,false),new AH.ptr(new $Uint64(2454546732,2786846552),269,false),new AH.ptr(new $Uint64(3657559652,443583978),295,false),new AH.ptr(new $Uint64(2725094297,2599384906),322,false),new AH.ptr(new $Uint64(4060706939,3028118405),348,false),new AH.ptr(new $Uint64(3025462433,2044532855),375,false),new AH.ptr(new $Uint64(2254145170,1536935362),402,false),new AH.ptr(new $Uint64(3358938053,3365297469),428,false),new AH.ptr(new $Uint64(2502603868,4204241075),455,false),new AH.ptr(new $Uint64(3729170365,2577424355),481,false),new AH.ptr(new $Uint64(2778448436,3677981733),508,false),new AH.ptr(new $Uint64(4140210802,2744688476),534,false),new AH.ptr(new $Uint64(3084697427,1424604878),561,false),new AH.ptr(new $Uint64(2298278679,4062331362),588,false),new AH.ptr(new $Uint64(3424702107,3546052773),614,false),new AH.ptr(new $Uint64(2551601907,2065781727),641,false),new AH.ptr(new $Uint64(3802183132,2535403578),667,false),new AH.ptr(new $Uint64(2832847187,1558426518),694,false),new AH.ptr(new $Uint64(4221271257,2762425404),720,false),new AH.ptr(new $Uint64(3145092172,2812560400),747,false),new AH.ptr(new $Uint64(2343276271,3057687578),774,false),new AH.ptr(new $Uint64(3491753744,2790753324),800,false),new AH.ptr(new $Uint64(2601559269,3918606633),827,false),new AH.ptr(new $Uint64(3876625403,2711358621),853,false),new AH.ptr(new $Uint64(2888311001,1648096297),880,false),new AH.ptr(new $Uint64(2151959390,2057817989),907,false),new AH.ptr(new $Uint64(3206669376,61660461),933,false),new AH.ptr(new $Uint64(2389154863,1581580175),960,false),new AH.ptr(new $Uint64(3560118173,2626467905),986,false),new AH.ptr(new $Uint64(2652494738,3034782633),1013,false),new AH.ptr(new $Uint64(3952525166,3135207385),1039,false),new AH.ptr(new $Uint64(2944860731,2616258155),1066,false)]);AK=$toNativeArray($kindUint64,[new $Uint64(0,1),new $Uint64(0,10),new $Uint64(0,100),new $Uint64(0,1000),new $Uint64(0,10000),new $Uint64(0,100000),new $Uint64(0,1000000),new $Uint64(0,10000000),new $Uint64(0,100000000),new $Uint64(0,1000000000),new $Uint64(2,1410065408),new $Uint64(23,1215752192),new $Uint64(232,3567587328),new $Uint64(2328,1316134912),new $Uint64(23283,276447232),new $Uint64(232830,2764472320),new $Uint64(2328306,1874919424),new $Uint64(23283064,1569325056),new $Uint64(232830643,2808348672),new $Uint64(2328306436,2313682944)]);AP=new AO.ptr(23,8,-127);AQ=new AO.ptr(52,11,-1023);BD=new CW([32,126,161,887,890,895,900,1366,1369,1418,1421,1479,1488,1514,1520,1524,1542,1563,1566,1805,1808,1866,1869,1969,1984,2042,2048,2093,2096,2139,2142,2142,2208,2237,2260,2444,2447,2448,2451,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2531,2534,2555,2561,2570,2575,2576,2579,2617,2620,2626,2631,2632,2635,2637,2641,2641,2649,2654,2662,2677,2689,2745,2748,2765,2768,2768,2784,2787,2790,2801,2809,2809,2817,2828,2831,2832,2835,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2915,2918,2935,2946,2954,2958,2965,2969,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3021,3024,3024,3031,3031,3046,3066,3072,3129,3133,3149,3157,3162,3168,3171,3174,3183,3192,3257,3260,3277,3285,3286,3294,3299,3302,3314,3329,3386,3389,3407,3412,3427,3430,3455,3458,3478,3482,3517,3520,3526,3530,3530,3535,3551,3558,3567,3570,3572,3585,3642,3647,3675,3713,3716,3719,3722,3725,3725,3732,3751,3754,3773,3776,3789,3792,3801,3804,3807,3840,3948,3953,4058,4096,4295,4301,4301,4304,4685,4688,4701,4704,4749,4752,4789,4792,4805,4808,4885,4888,4954,4957,4988,4992,5017,5024,5109,5112,5117,5120,5788,5792,5880,5888,5908,5920,5942,5952,5971,5984,6003,6016,6109,6112,6121,6128,6137,6144,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6443,6448,6459,6464,6464,6468,6509,6512,6516,6528,6571,6576,6601,6608,6618,6622,6683,6686,6780,6783,6793,6800,6809,6816,6829,6832,6846,6912,6987,6992,7036,7040,7155,7164,7223,7227,7241,7245,7304,7360,7367,7376,7417,7424,7669,7675,7957,7960,7965,7968,8005,8008,8013,8016,8061,8064,8147,8150,8175,8178,8190,8208,8231,8240,8286,8304,8305,8308,8348,8352,8382,8400,8432,8448,8587,8592,9254,9280,9290,9312,11123,11126,11157,11160,11193,11197,11217,11244,11247,11264,11507,11513,11559,11565,11565,11568,11623,11631,11632,11647,11670,11680,11844,11904,12019,12032,12245,12272,12283,12289,12438,12441,12543,12549,12589,12593,12730,12736,12771,12784,19893,19904,40917,40960,42124,42128,42182,42192,42539,42560,42743,42752,42935,42999,43051,43056,43065,43072,43127,43136,43205,43214,43225,43232,43261,43264,43347,43359,43388,43392,43481,43486,43574,43584,43597,43600,43609,43612,43714,43739,43766,43777,43782,43785,43790,43793,43798,43808,43877,43888,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64449,64467,64831,64848,64911,64914,64967,65008,65021,65024,65049,65056,65131,65136,65276,65281,65470,65474,65479,65482,65487,65490,65495,65498,65500,65504,65518,65532,65533]);BE=new CW([173,907,909,930,1328,1376,1416,1424,1757,2111,2229,2274,2436,2473,2481,2526,2564,2601,2609,2612,2615,2621,2653,2692,2702,2706,2729,2737,2740,2758,2762,2820,2857,2865,2868,2910,2948,2961,2971,2973,3017,3076,3085,3089,3113,3141,3145,3159,3204,3213,3217,3241,3252,3269,3273,3295,3312,3332,3341,3345,3397,3401,3460,3506,3516,3541,3543,3715,3721,3736,3744,3748,3750,3756,3770,3781,3783,3912,3992,4029,4045,4294,4681,4695,4697,4745,4785,4799,4801,4823,4881,5760,5901,5997,6001,6431,6751,7415,8024,8026,8028,8030,8117,8133,8156,8181,8335,9215,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,42927,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CX([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65947,65952,65952,66000,66045,66176,66204,66208,66256,66272,66299,66304,66339,66352,66378,66384,66426,66432,66499,66504,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66927,66927,67072,67382,67392,67413,67424,67431,67584,67589,67592,67640,67644,67644,67647,67742,67751,67759,67808,67829,67835,67867,67871,67897,67903,67903,67968,68023,68028,68047,68050,68102,68108,68147,68152,68154,68159,68167,68176,68184,68192,68255,68288,68326,68331,68342,68352,68405,68409,68437,68440,68466,68472,68497,68505,68508,68521,68527,68608,68680,68736,68786,68800,68850,68858,68863,69216,69246,69632,69709,69714,69743,69759,69825,69840,69864,69872,69881,69888,69955,69968,70006,70016,70093,70096,70132,70144,70206,70272,70313,70320,70378,70384,70393,70400,70412,70415,70416,70419,70457,70460,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70749,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71264,71276,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,72704,72773,72784,72812,72816,72847,72850,72886,73728,74649,74752,74868,74880,75075,77824,78894,82944,83526,92160,92728,92736,92777,92782,92783,92880,92909,92912,92917,92928,92997,93008,93047,93053,93071,93952,94020,94032,94078,94095,94111,94176,94176,94208,100332,100352,101106,110592,110593,113664,113770,113776,113788,113792,113800,113808,113817,113820,113823,118784,119029,119040,119078,119081,119154,119163,119272,119296,119365,119552,119638,119648,119665,119808,119967,119970,119970,119973,119974,119977,120074,120077,120134,120138,120485,120488,120779,120782,121483,121499,121519,122880,122904,122907,122922,124928,125124,125127,125142,125184,125258,125264,125273,125278,125279,126464,126500,126503,126523,126530,126530,126535,126548,126551,126564,126567,126619,126625,126651,126704,126705,126976,127019,127024,127123,127136,127150,127153,127221,127232,127244,127248,127339,127344,127404,127462,127490,127504,127547,127552,127560,127568,127569,127744,128722,128736,128748,128752,128758,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129319,129328,129328,129331,129355,129360,129374,129408,129425,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CW([12,39,59,62,399,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,5210,5212,7177,7223,7336,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,57351,57378,57381,60932,60960,60963,60968,60979,60984,60986,61000,61002,61004,61008,61011,61016,61018,61020,61022,61024,61027,61035,61043,61048,61053,61055,61066,61092,61098,61632,61648,61743,63775,63807]);BH=new CW([160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288]);BN=$toNativeArray($kindUint,[0,0,1,0,2,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["reflect"]=(function(){var $pkg={},$init,A,C,F,D,B,E,L,N,O,P,AU,BY,BZ,CA,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CP,CY,CZ,DA,DE,DF,DG,EZ,FA,FD,HM,HN,HO,HP,HQ,HR,IG,IH,II,IJ,IK,IL,IM,IN,IO,IP,IQ,IR,IS,IT,IU,IX,IY,IZ,JA,JB,JC,JN,JP,JQ,JS,JT,JU,KB,KC,G,M,Q,S,U,BG,BH,BL,CQ,DB,FM,H,I,J,K,R,T,V,W,X,Y,Z,AA,AB,AC,AF,AH,AI,AJ,AK,AM,AP,AQ,AR,AS,AT,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BI,BJ,BK,BM,BN,DI,DK,DL,DM,DN,ER,EW,FN,FS,FU,FV,GD,GE,GF,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HB,HC;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];L=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType",true,"reflect",false,function(pkgPath_,mcount_,_$2_,moff_,_$4_,_methods_){this.$val=this;if(arguments.length===0){this.pkgPath=0;this.mcount=0;this._$2=0;this.moff=0;this._$4=0;this._methods=HP.nil;return;}this.pkgPath=pkgPath_;this.mcount=mcount_;this._$2=_$2_;this.moff=moff_;this._$4=_$4_;this._methods=_methods_;});N=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType",true,"reflect",false,function(rtype_,inCount_,outCount_,_in_,_out_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.inCount=0;this.outCount=0;this._in=HO.nil;this._out=HO.nil;return;}this.rtype=rtype_;this.inCount=inCount_;this.outCount=outCount_;this._in=_in_;this._out=_out_;});O=$pkg.name=$newType(0,$kindStruct,"reflect.name",true,"reflect",false,function(bytes_){this.$val=this;if(arguments.length===0){this.bytes=IL.nil;return;}this.bytes=bytes_;});P=$pkg.nameData=$newType(0,$kindStruct,"reflect.nameData",true,"reflect",false,function(name_,tag_,pkgPath_,exported_){this.$val=this;if(arguments.length===0){this.name="";this.tag="";this.pkgPath="";this.exported=false;return;}this.name=name_;this.tag=tag_;this.pkgPath=pkgPath_;this.exported=exported_;});AU=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter",true,"reflect",false,function(t_,m_,keys_,i_){this.$val=this;if(arguments.length===0){this.t=$ifaceNil;this.m=null;this.keys=null;this.i=0;return;}this.t=t_;this.m=m_;this.keys=keys_;this.i=i_;});BY=$pkg.Type=$newType(8,$kindInterface,"reflect.Type",true,"reflect",true,null);BZ=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind",true,"reflect",true,null);CA=$pkg.tflag=$newType(1,$kindUint8,"reflect.tflag",true,"reflect",false,null);CB=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype",true,"reflect",false,function(size_,ptrdata_,hash_,tflag_,align_,fieldAlign_,kind_,alg_,gcdata_,str_,ptrToThis_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this.tflag=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=IK.nil;this.gcdata=IL.nil;this.str=0;this.ptrToThis=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this.tflag=tflag_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.str=str_;this.ptrToThis=ptrToThis_;});CC=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg",true,"reflect",false,function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});CD=$pkg.method=$newType(0,$kindStruct,"reflect.method",true,"reflect",false,function(name_,mtyp_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=0;this.mtyp=0;this.ifn=0;this.tfn=0;return;}this.name=name_;this.mtyp=mtyp_;this.ifn=ifn_;this.tfn=tfn_;});CE=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir",true,"reflect",true,null);CF=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType",true,"reflect",false,function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;this.slice=HN.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});CG=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType",true,"reflect",false,function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});CH=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod",true,"reflect",false,function(name_,typ_){this.$val=this;if(arguments.length===0){this.name=0;this.typ=0;return;}this.name=name_;this.typ=typ_;});CI=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType",true,"reflect",false,function(rtype_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.pkgPath=new O.ptr(IL.nil);this.methods=IM.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.methods=methods_;});CJ=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType",true,"reflect",false,function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_,needkeyupdate_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.key=HN.nil;this.elem=HN.nil;this.bucket=HN.nil;this.hmap=HN.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=false;this.needkeyupdate=false;return;}this.rtype=rtype_;this.key=key_;this.elem=elem_;this.bucket=bucket_;this.hmap=hmap_;this.keysize=keysize_;this.indirectkey=indirectkey_;this.valuesize=valuesize_;this.indirectvalue=indirectvalue_;this.bucketsize=bucketsize_;this.reflexivekey=reflexivekey_;this.needkeyupdate=needkeyupdate_;});CK=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;return;}this.rtype=rtype_;this.elem=elem_;});CL=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;return;}this.rtype=rtype_;this.elem=elem_;});CM=$pkg.structField=$newType(0,$kindStruct,"reflect.structField",true,"reflect",false,function(name_,typ_,offset_){this.$val=this;if(arguments.length===0){this.name=new O.ptr(IL.nil);this.typ=HN.nil;this.offset=0;return;}this.name=name_;this.typ=typ_;this.offset=offset_;});CN=$pkg.structType=$newType(0,$kindStruct,"reflect.structType",true,"reflect",false,function(rtype_,pkgPath_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.pkgPath=new O.ptr(IL.nil);this.fields=IN.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.fields=fields_;});CP=$pkg.Method=$newType(0,$kindStruct,"reflect.Method",true,"reflect",true,function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new EZ.ptr(HN.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CY=$pkg.nameOff=$newType(4,$kindInt32,"reflect.nameOff",true,"reflect",false,null);CZ=$pkg.typeOff=$newType(4,$kindInt32,"reflect.typeOff",true,"reflect",false,null);DA=$pkg.textOff=$newType(4,$kindInt32,"reflect.textOff",true,"reflect",false,null);DE=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField",true,"reflect",true,function(Name_,PkgPath_,Type_,Tag_,Offset_,Index_,Anonymous_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Tag="";this.Offset=0;this.Index=IZ.nil;this.Anonymous=false;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Tag=Tag_;this.Offset=Offset_;this.Index=Index_;this.Anonymous=Anonymous_;});DF=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag",true,"reflect",true,null);DG=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan",true,"reflect",false,function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=JB.nil;this.index=IZ.nil;return;}this.typ=typ_;this.index=index_;});EZ=$pkg.Value=$newType(0,$kindStruct,"reflect.Value",true,"reflect",true,function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=HN.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});FA=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag",true,"reflect",false,null);FD=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError",true,"reflect",true,function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});HM=$sliceType(O);HN=$ptrType(CB);HO=$sliceType(HN);HP=$sliceType(CD);HQ=$mapType(HN,HP);HR=$structType("reflect",[{prop:"RWMutex",name:"",exported:true,typ:E.RWMutex,tag:""},{prop:"m",name:"m",exported:false,typ:HQ,tag:""}]);IG=$sliceType($emptyInterface);IH=$ptrType(C.Object);II=$funcType([IG],[IH],true);IJ=$sliceType($String);IK=$ptrType(CC);IL=$ptrType($Uint8);IM=$sliceType(CH);IN=$sliceType(CM);IO=$ptrType(L);IP=$ptrType(P);IQ=$structType("reflect",[{prop:"str",name:"str",exported:false,typ:$String,tag:""}]);IR=$sliceType(IH);IS=$sliceType(EZ);IT=$sliceType(BY);IU=$sliceType(IR);IX=$ptrType(CI);IY=$ptrType(CH);IZ=$sliceType($Int);JA=$sliceType(DG);JB=$ptrType(CN);JC=$sliceType($Uint8);JN=$ptrType($UnsafePointer);JP=$sliceType($Int32);JQ=$ptrType(N);JS=$funcType([$String],[$Bool],false);JT=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);JU=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);KB=$arrayType($Uintptr,2);KC=$ptrType(FD);H=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=(function(am){var $ptr,am;});$r=am((an=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new an.constructor.elem(an)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ao=new L.ptr(0,0,0,0,0,HP.nil),new ao.constructor.elem(ao)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ap=new CD.ptr(0,0,0,0),new ap.constructor.elem(ap)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((aq=new CF.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,HN.nil,0),new aq.constructor.elem(aq)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ar=new CG.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,0),new ar.constructor.elem(ar)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((as=new N.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),0,0,HO.nil,HO.nil),new as.constructor.elem(as)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((at=new CI.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new O.ptr(IL.nil),IM.nil),new at.constructor.elem(at)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((au=new CJ.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,HN.nil,HN.nil,HN.nil,0,0,0,0,0,false,false),new au.constructor.elem(au)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((av=new CK.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil),new av.constructor.elem(av)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((aw=new CL.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil),new aw.constructor.elem(aw)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ax=new CN.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new O.ptr(IL.nil),IN.nil),new ax.constructor.elem(ax)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ay=new CH.ptr(0,0),new ay.constructor.elem(ay)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((az=new CM.ptr(new O.ptr(IL.nil),HN.nil,0),new az.constructor.elem(az)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;FM=$assertType(AB(new $Uint8(0)),HN);$s=-1;return;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};I=function(am){var $ptr,am;return am.jsType;};J=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu;if(am.reflectType===undefined){an=new CB.ptr((($parseInt(am.size)>>0)>>>0),0,0,0,0,0,(($parseInt(am.kind)>>0)<<24>>>24),IK.nil,IL.nil,T($clone(R(W(am.string),"","",!!(am.exported)),O)),0);an.jsType=am;am.reflectType=an;ao=$methodSet(am);if(!(($parseInt(ao.length)===0))||!!(am.named)){an.tflag=(an.tflag|(1))>>>0;if(!!(am.named)){an.tflag=(an.tflag|(4))>>>0;}ap=$makeSlice(HP,$parseInt(ao.length));aq=ap;ar=0;while(true){if(!(ar<aq.$length)){break;}as=ar;at=ao[as];CD.copy(((as<0||as>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+as]),new CD.ptr(T($clone(R(W(at.name),"","",W(at.pkg)===""),O)),V(J(at.typ)),0,0));ar++;}au=new L.ptr(T($clone(R(W(am.pkg),"","",false),O)),($parseInt(ao.length)<<16>>>16),0,0,0,ap);av=an;(M||$throwRuntimeError("assignment to entry in nil map"))[HN.keyFor(av)]={k:av,v:au};au.jsType=am;}aw=an.Kind();if(aw===(17)){K(an,new CF.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem),HN.nil,(($parseInt(am.len)>>0)>>>0)));}else if(aw===(18)){ax=3;if(!!(am.sendOnly)){ax=2;}if(!!(am.recvOnly)){ax=1;}K(an,new CG.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem),(ax>>>0)));}else if(aw===(19)){ay=am.params;az=$makeSlice(HO,$parseInt(ay.length));ba=az;bb=0;while(true){if(!(bb<ba.$length)){break;}bc=bb;((bc<0||bc>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+bc]=J(ay[bc]));bb++;}bd=am.results;be=$makeSlice(HO,$parseInt(bd.length));bf=be;bg=0;while(true){if(!(bg<bf.$length)){break;}bh=bg;((bh<0||bh>=be.$length)?($throwRuntimeError("index out of range"),undefined):be.$array[be.$offset+bh]=J(bd[bh]));bg++;}bi=($parseInt(bd.length)<<16>>>16);if(!!(am.variadic)){bi=(bi|(32768))>>>0;}K(an,new N.ptr($clone(an,CB),($parseInt(ay.length)<<16>>>16),bi,az,be));}else if(aw===(20)){bj=am.methods;bk=$makeSlice(IM,$parseInt(bj.length));bl=bk;bm=0;while(true){if(!(bm<bl.$length)){break;}bn=bm;bo=bj[bn];CH.copy(((bn<0||bn>=bk.$length)?($throwRuntimeError("index out of range"),undefined):bk.$array[bk.$offset+bn]),new CH.ptr(T($clone(R(W(bo.name),"","",W(bo.pkg)===""),O)),V(J(bo.typ))));bm++;}K(an,new CI.ptr($clone(an,CB),new O.ptr(IL.nil),bk));}else if(aw===(21)){K(an,new CJ.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.key),J(am.elem),HN.nil,HN.nil,0,0,0,0,0,false,false));}else if(aw===(22)){K(an,new CK.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem)));}else if(aw===(23)){K(an,new CL.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem)));}else if(aw===(25)){bp=am.fields;bq=$makeSlice(IN,$parseInt(bp.length));br=bq;bs=0;while(true){if(!(bs<br.$length)){break;}bt=bs;bu=bp[bt];CM.copy(((bt<0||bt>=bq.$length)?($throwRuntimeError("index out of range"),undefined):bq.$array[bq.$offset+bt]),new CM.ptr($clone(R(W(bu.name),W(bu.tag),"",!!(bu.exported)),O),J(bu.typ),(bt>>>0)));bs++;}K(an,new CN.ptr($clone(an,CB),$clone(R(W(am.pkgPath),"","",false),O),bq));}}return am.reflectType;};K=function(am,an){var $ptr,am,an;am.kindType=an;an.rtype=am;};L.ptr.prototype.methods=function(){var $ptr,am;am=this;return am._methods;};L.prototype.methods=function(){return this.$val.methods();};CB.ptr.prototype.uncommon=function(){var $ptr,am,an;am=this;return(an=M[HN.keyFor(am)],an!==undefined?an.v:IO.nil);};CB.prototype.uncommon=function(){return this.$val.uncommon();};N.ptr.prototype.in$=function(){var $ptr,am;am=this;return am._in;};N.prototype.in$=function(){return this.$val.in$();};N.ptr.prototype.out=function(){var $ptr,am;am=this;return am._out;};N.prototype.out=function(){return this.$val.out();};O.ptr.prototype.name=function(){var $ptr,am,an,ao;am="";an=this;am=(ao=Q[IL.keyFor(an.bytes)],ao!==undefined?ao.v:IP.nil).name;return am;};O.prototype.name=function(){return this.$val.name();};O.ptr.prototype.tag=function(){var $ptr,am,an,ao;am="";an=this;am=(ao=Q[IL.keyFor(an.bytes)],ao!==undefined?ao.v:IP.nil).tag;return am;};O.prototype.tag=function(){return this.$val.tag();};O.ptr.prototype.pkgPath=function(){var $ptr,am,an;am=this;return(an=Q[IL.keyFor(am.bytes)],an!==undefined?an.v:IP.nil).pkgPath;};O.prototype.pkgPath=function(){return this.$val.pkgPath();};O.ptr.prototype.isExported=function(){var $ptr,am,an;am=this;return(an=Q[IL.keyFor(am.bytes)],an!==undefined?an.v:IP.nil).exported;};O.prototype.isExported=function(){return this.$val.isExported();};R=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar;aq=$newDataPointer(0,IL);ar=aq;(Q||$throwRuntimeError("assignment to entry in nil map"))[IL.keyFor(ar)]={k:ar,v:new P.ptr(am,an,ao,ap)};return new O.ptr(aq);};CB.ptr.prototype.nameOff=function(am){var $ptr,am,an,ao;an=this;return(ao=(am>>0),((ao<0||ao>=S.$length)?($throwRuntimeError("index out of range"),undefined):S.$array[S.$offset+ao]));};CB.prototype.nameOff=function(am){return this.$val.nameOff(am);};T=function(am){var $ptr,am,an;an=S.$length;S=$append(S,am);return(an>>0);};CB.ptr.prototype.typeOff=function(am){var $ptr,am,an,ao;an=this;return(ao=(am>>0),((ao<0||ao>=U.$length)?($throwRuntimeError("index out of range"),undefined):U.$array[U.$offset+ao]));};CB.prototype.typeOff=function(am){return this.$val.typeOff(am);};V=function(am){var $ptr,am,an;an=U.$length;U=$append(U,am);return(an>>0);};W=function(am){var $ptr,am,an;an=new IQ.ptr("");an.str=am;return an.str;};X=function(am){var $ptr,am;return!!(I(am).wrapped);};Y=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar;ap=I(ao).fields;aq=0;while(true){if(!(aq<$parseInt(ap.length))){break;}ar=$internalize(ap[aq].prop,$String);am[$externalize(ar,$String)]=an[$externalize(ar,$String)];aq=aq+(1)>>0;}};Z=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=am.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;at=am.Kind();$s=6;case 6:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===17){as=true;$s=5;continue s;}au=am.Kind();$s=7;case 7:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au===25;case 5:if(as){ar=true;$s=4;continue s;}av=am.Kind();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}ar=av===22;case 4:if(ar){$s=2;continue;}$s=3;continue;case 2:aw=am.Kind();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,an,(ao|(aw>>>0))>>>0);case 3:ax=am.Kind();$s=10;case 10:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,$newDataPointer(an,I(aq.ptrTo())),(((ao|(ax>>>0))>>>0)|128)>>>0);}return;}if($f===undefined){$f={$blk:Z};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};AA=function(am,an,ao){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];ap=am[0].Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!((ap===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(an<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ao<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(an>ao){$panic(new $String("reflect.MakeSlice: len > cap"));}aq=Z(am[0],$makeSlice(I(am[0]),an,ao,(function(am){return function $b(){var $ptr,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=am[0].Elem();$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=I(aq);$s=2;case 2:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};})(am)),0);$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return aq;}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=AA;AB=function(am){var $ptr,am;if(!G){return new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);}if($interfaceIsEqual(am,$ifaceNil)){return $ifaceNil;}return J(am.constructor);};$pkg.TypeOf=AB;AC=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(am,$ifaceNil)){$s=-1;return new EZ.ptr(HN.nil,0,0);}an=Z(J(am.constructor),am.$val,0);$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=AC;AF=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(ao)){ap=false;$s=3;continue s;}if(am.$length===0){aq=true;$s=4;continue s;}as=(ar=am.$length-1>>0,((ar<0||ar>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+ar])).Kind();$s=5;case 5:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}aq=!((as===23));case 4:ap=aq;case 3:if(ap){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.FuncOf: last arg of variadic func must be slice"));case 2:at=$makeSlice(IR,am.$length);au=am;av=0;while(true){if(!(av<au.$length)){break;}aw=av;ax=((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]);((aw<0||aw>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+aw]=I(ax));av++;}ay=$makeSlice(IR,an.$length);az=an;ba=0;while(true){if(!(ba<az.$length)){break;}bb=ba;bc=((ba<0||ba>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+ba]);((bb<0||bb>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+bb]=I(bc));ba++;}$s=-1;return J($funcType($externalize(at,IR),$externalize(ay,IR),$externalize(ao,$Bool)));}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.$s=$s;$f.$r=$r;return $f;};$pkg.FuncOf=AF;CB.ptr.prototype.ptrTo=function(){var $ptr,am;am=this;return J($ptrType(I(am)));};CB.prototype.ptrTo=function(){return this.$val.ptrTo();};AH=function(am){var $ptr,am;return J($sliceType(I(am)));};$pkg.SliceOf=AH;AI=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=Z(am,I(am).zero(),0);$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=AI;AJ=function(am){var $ptr,am,an;an=am.Kind();if(an===(25)){return new(I(am).ptr)();}else if(an===(17)){return I(am).zero();}else{return $newDataPointer(I(am).zero(),I(am.ptrTo()));}};AK=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.Kind();if(as===(3)){ar.$set((an.$low<<24>>24));}else if(as===(4)){ar.$set((an.$low<<16>>16));}else if((as===(2))||(as===(5))){ar.$set((an.$low>>0));}else if(as===(6)){ar.$set(new $Int64(an.$high,an.$low));}else if(as===(8)){ar.$set((an.$low<<24>>>24));}else if(as===(9)){ar.$set((an.$low<<16>>>16));}else if((as===(7))||(as===(10))||(as===(12))){ar.$set((an.$low>>>0));}else if(as===(11)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};AM=function(am,an,ao){var $ptr,am,an,ao;an.$set(ao.$get());};AP=function(am){var $ptr,am,an;an=0;an=new($global.Object)();return an;};AQ=function(am,an){var $ptr,am,an,ao,ap;ao=an;if(!(ao.$get===undefined)){ao=ao.$get();}ap=$internalize(I(am.Key()).keyFor(ao),$String);return[ao,ap];};AR=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar;ap=AQ(am,ao);aq=ap[1];ar=an[$externalize(aq,$String)];if(ar===undefined){return 0;}return $newDataPointer(ar.v,I(DI(am.Elem())));};AS=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=AQ(am,ao);ar=aq[0];as=aq[1];at=ap.$get();au=am.Elem();av=au.Kind();$s=3;case 3:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(av===25){$s=1;continue;}$s=2;continue;case 1:aw=I(au).zero();Y(aw,at,au);at=aw;case 2:ax=new($global.Object)();ax.k=ar;ax.v=at;an[$externalize(as,$String)]=ax;$s=-1;return;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};AT=function(am,an,ao){var $ptr,am,an,ao,ap,aq;ap=AQ(am,ao);aq=ap[1];delete an[$externalize(aq,$String)];};AV=function(am,an){var $ptr,am,an;return new AU.ptr(am,an,$keys(an),0);};AW=function(am){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=am;ao=an.keys[an.i];ap=an.t.Key();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=DI(ap);$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=I(aq);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return $newDataPointer(an.m[$externalize($internalize(ao,$String),$String)].k,ar);}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};AX=function(am){var $ptr,am,an;an=am;an.i=an.i+(1)>>0;};AY=function(am){var $ptr,am;return $parseInt($keys(am).length);};AZ=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=$clone(am,EZ).object();if(ao===I(am.typ).nil){$s=1;continue;}$s=2;continue;case 1:ap=Z(an,I(an).nil,am.flag);$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;case 2:aq=null;ar=an.Kind();$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;at=as;if(at===(23)){$s=6;continue;}if(at===(22)){$s=7;continue;}if(at===(25)){$s=8;continue;}if((at===(17))||(at===(1))||(at===(18))||(at===(19))||(at===(20))||(at===(21))||(at===(24))){$s=9;continue;}$s=10;continue;case 6:au=new(I(an))(ao.$array);au.$offset=ao.$offset;au.$length=ao.$length;au.$capacity=ao.$capacity;aq=$newDataPointer(au,I(DI(an)));$s=11;continue;case 7:av=an.Elem();$s=14;case 14:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av.Kind();$s=15;case 15:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw===25){$s=12;continue;}$s=13;continue;case 12:ax=an.Elem();$s=18;case 18:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if($interfaceIsEqual(ax,am.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:aq=ao;$s=4;continue;case 17:aq=new(I(an))();ay=aq;az=ao;ba=an.Elem();$s=19;case 19:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$r=Y(ay,az,bb);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=4;continue;case 13:aq=new(I(an))(ao.$get,ao.$set);$s=11;continue;case 8:aq=new(I(an).ptr)();Y(aq,ao,an);$s=11;continue;case 9:aq=am.ptr;$s=11;continue;case 10:$panic(new FD.ptr("reflect.Convert",as));case 11:case 4:bc=an.common();$s=21;case 21:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=an.Kind();$s=22;case 22:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(bc,aq,(((am.flag&224)>>>0)|(bd>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AZ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};BA=function(am,an){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=new FA(am.flag).kind();if(!((ao===17))&&!((ao===23))){$panic(new FD.ptr("reflect.Copy",ao));}if(ao===17){new FA(am.flag).mustBeAssignable();}new FA(am.flag).mustBeExported();ap=new FA(an.flag).kind();if(!((ap===17))&&!((ap===23))){$panic(new FD.ptr("reflect.Copy",ap));}new FA(an.flag).mustBeExported();$r=FS("reflect.Copy",am.typ.Elem(),an.typ.Elem());$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}aq=$clone(am,EZ).object();if(ao===17){aq=new(I(AH(am.typ.Elem())))(aq);}ar=$clone(an,EZ).object();if(ap===17){ar=new(I(AH(an.typ.Elem())))(ar);}$s=-1;return $parseInt($copySlice(aq,ar))>>0;}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Copy=BA;BB=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;ap=HN.nil;aq=HN.nil;ar=0;as="";if(an.typ.Kind()===20){at=an.typ.kindType;if(ao<0||ao>=at.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}av=(au=at.methods,((ao<0||ao>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+ao]));if(!$clone(at.rtype.nameOff(av.name),O).isExported()){$panic(new $String("reflect: "+am+" of unexported method"));}aq=at.rtype.typeOff(av.typ);as=$clone(at.rtype.nameOff(av.name),O).name();}else{aw=an.typ.uncommon();if(aw===IO.nil||(ao>>>0)>=(aw.mcount>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ay=$clone((ax=aw.methods(),((ao<0||ao>=ax.$length)?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+ao])),CD);if(!$clone(an.typ.nameOff(ay.name),O).isExported()){$panic(new $String("reflect: "+am+" of unexported method"));}aq=an.typ.typeOff(ay.mtyp);as=$internalize($methodSet(I(an.typ))[ao].prop,$String);}az=$clone(an,EZ).object();if(X(an.typ)){az=new(I(an.typ))(az);}ar=az[$externalize(as,$String)];return[ap,aq,ar];};BC=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am.flag===0){$panic(new FD.ptr("reflect.Value.Interface",0));}if(an&&!((((am.flag&96)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((am.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ao=BF("Interface",$clone(am,EZ));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;case 2:if(X(am.typ)){$s=-1;return new(I(am.typ))($clone(am,EZ).object());}$s=-1;return $clone(am,EZ).object();}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};BD=function(am,an,ao){var $ptr,am,an,ao;ao.$set(an);};BE=function(){var $ptr;return"?FIXME?";};BF=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=[ao];ap=[ap];if(((an.flag&512)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}aq=BB(am,$clone(an,EZ),(an.flag>>0)>>10>>0);ao[0]=aq[2];ap[0]=$clone(an,EZ).object();if(X(an.typ)){ap[0]=new(I(an.typ))(ap[0]);}ar=C.MakeFunc((function(ao,ap){return function(ar,as){var $ptr,ar,as;return new $jsObjectPtr(ao[0].apply(ap[0],$externalize(as,IR)));};})(ao,ap));as=$clone(an,EZ).Type().common();$s=1;case 1:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(as,ar,(((an.flag&96)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:BF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};CB.ptr.prototype.pointers=function(){var $ptr,am,an;am=this;an=am.Kind();if((an===(22))||(an===(21))||(an===(18))||(an===(19))||(an===(25))||(an===(17))){return true;}else{return false;}};CB.prototype.pointers=function(){return this.$val.pointers();};CB.ptr.prototype.Comparable=function(){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=am.Kind();if((an===(19))||(an===(23))||(an===(21))){$s=2;continue;}if(an===(17)){$s=3;continue;}if(an===(25)){$s=4;continue;}$s=5;continue;case 2:$s=-1;return false;case 3:ao=am.Elem().Comparable();$s=6;case 6:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;case 4:ap=0;case 7:if(!(ap<am.NumField())){$s=8;continue;}aq=am.Field(ap);$s=11;case 11:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Type.Comparable();$s=12;case 12:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(!ar){$s=9;continue;}$s=10;continue;case 9:$s=-1;return false;case 10:ap=ap+(1)>>0;$s=7;continue;case 8:case 5:case 1:$s=-1;return true;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Comparable=function(){return this.$val.Comparable();};CB.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=[an];ao=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ap=this;if(ap.Kind()===20){aq=ap.kindType;CP.copy(ao,aq.Method(am));$s=-1;return ao;}ar=ap.exportedMethods();$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(am<0||am>=as.$length){$panic(new $String("reflect: Method index out of range"));}at=$clone(((am<0||am>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+am]),CD);au=$clone(ap.nameOff(at.name),O);ao.Name=$clone(au,O).name();av=19;aw=ap.typeOff(at.mtyp);ax=aw.kindType;ay=$makeSlice(IT,0,(1+ax.in$().$length>>0));ay=$append(ay,ap);az=ax.in$();ba=0;while(true){if(!(ba<az.$length)){break;}bb=((ba<0||ba>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+ba]);ay=$append(ay,bb);ba++;}bc=$makeSlice(IT,0,ax.out().$length);bd=ax.out();be=0;while(true){if(!(be<bd.$length)){break;}bf=((be<0||be>=bd.$length)?($throwRuntimeError("index out of range"),undefined):bd.$array[bd.$offset+be]);bc=$append(bc,bf);be++;}bg=AF(ay,bc,ax.rtype.IsVariadic());$s=2;case 2:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bh=bg;ao.Type=bh;an[0]=$internalize($methodSet(ap.jsType)[am].prop,$String);bi=C.MakeFunc((function(an){return function(bi,bj){var $ptr,bi,bj,bk;bk=(0>=bj.$length?($throwRuntimeError("index out of range"),undefined):bj.$array[bj.$offset+0]);return new $jsObjectPtr(bk[$externalize(an[0],$String)].apply(bk,$externalize($subslice(bj,1),IR)));};})(an));ao.Func=new EZ.ptr($assertType(bh,HN),bi,av);ao.Index=am;CP.copy(ao,ao);$s=-1;return ao;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Method};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Method=function(am){return this.$val.Method(am);};EZ.ptr.prototype.object=function(){var $ptr,am,an,ao,ap;am=this;if((am.typ.Kind()===17)||(am.typ.Kind()===25)){return am.ptr;}if(!((((am.flag&128)>>>0)===0))){an=am.ptr.$get();if(!(an===$ifaceNil)&&!(an.constructor===I(am.typ))){switch(0){default:ao=am.typ.Kind();if((ao===(11))||(ao===(6))){an=new(I(am.typ))(an.$high,an.$low);}else if((ao===(15))||(ao===(16))){an=new(I(am.typ))(an.$real,an.$imag);}else if(ao===(23)){if(an===an.constructor.nil){an=I(am.typ).nil;break;}ap=new(I(am.typ))(an.$array);ap.$offset=an.$offset;ap.$length=an.$length;ap.$capacity=an.$capacity;an=ap;}}}return an;}return am.ptr;};EZ.prototype.object=function(){return this.$val.object();};EZ.ptr.prototype.call=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;ce=$f.ce;cf=$f.cf;cg=$f.cg;ch=$f.ch;ci=$f.ci;cj=$f.cj;ck=$f.ck;cl=$f.cl;cm=$f.cm;cn=$f.cn;co=$f.co;cp=$f.cp;cq=$f.cq;cr=$f.cr;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;ap=HN.nil;aq=0;ar=null;if(!((((ao.flag&512)>>>0)===0))){as=BB(am,$clone(ao,EZ),(ao.flag>>0)>>10>>0);ap=as[1];aq=as[2];ar=$clone(ao,EZ).object();if(X(ao.typ)){ar=new(I(ao.typ))(ar);}}else{ap=ao.typ;aq=$clone(ao,EZ).object();ar=undefined;}if(aq===0){$panic(new $String("reflect.Value.Call: call of nil function"));}at=am==="CallSlice";au=ap.NumIn();if(at){if(!ap.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(an.$length<au){$panic(new $String("reflect: CallSlice with too few input arguments"));}if(an.$length>au){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(ap.IsVariadic()){au=au-(1)>>0;}if(an.$length<au){$panic(new $String("reflect: Call with too few input arguments"));}if(!ap.IsVariadic()&&an.$length>au){$panic(new $String("reflect: Call with too many input arguments"));}}av=an;aw=0;while(true){if(!(aw<av.$length)){break;}ax=((aw<0||aw>=av.$length)?($throwRuntimeError("index out of range"),undefined):av.$array[av.$offset+aw]);if($clone(ax,EZ).Kind()===0){$panic(new $String("reflect: "+am+" using zero Value argument"));}aw++;}ay=0;case 1:if(!(ay<au)){$s=2;continue;}az=$clone(((ay<0||ay>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+ay]),EZ).Type();ba=ap.In(ay);bb=az;bc=ba;bd=bb.AssignableTo(bc);$s=5;case 5:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}if(!bd){$s=3;continue;}$s=4;continue;case 3:be=bb.String();$s=6;case 6:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=bc.String();$s=7;case 7:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}$panic(new $String("reflect: "+am+" using "+be+" as type "+bf));case 4:ay=ay+(1)>>0;$s=1;continue;case 2:if(!at&&ap.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:bg=an.$length-au>>0;bh=AA(ap.In(au),bg,bg);$s=10;case 10:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=ap.In(au).Elem();$s=11;case 11:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bk=bj;bl=0;case 12:if(!(bl<bg)){$s=13;continue;}bn=(bm=au+bl>>0,((bm<0||bm>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+bm]));bo=$clone(bn,EZ).Type();bp=bo.AssignableTo(bk);$s=16;case 16:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}if(!bp){$s=14;continue;}$s=15;continue;case 14:bq=bo.String();$s=17;case 17:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bk.String();$s=18;case 18:if($c){$c=false;br=br.$blk();}if(br&&br.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bq+" as type "+br+" in "+am));case 15:bs=$clone(bi,EZ).Index(bl);$s=19;case 19:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}$r=$clone(bs,EZ).Set($clone(bn,EZ));$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bl=bl+(1)>>0;$s=12;continue;case 13:bt=an;an=$makeSlice(IS,(au+1>>0));$copySlice($subslice(an,0,au),bt);((au<0||au>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+au]=bi);case 9:bu=an.$length;if(!((bu===ap.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bv=ap.NumOut();bw=new($global.Array)(ap.NumIn());bx=an;by=0;case 21:if(!(by<bx.$length)){$s=22;continue;}bz=by;ca=((by<0||by>=bx.$length)?($throwRuntimeError("index out of range"),undefined):bx.$array[bx.$offset+by]);cb=ap.In(bz);cc=ap.In(bz).common();$s=23;case 23:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cd=cc;ce=0;cf=$clone(ca,EZ).assignTo("reflect.Value.Call",cd,ce);$s=24;case 24:if($c){$c=false;cf=cf.$blk();}if(cf&&cf.$blk!==undefined){break s;}cg=$clone(cf,EZ).object();$s=25;case 25:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}ch=cg;ci=BJ(cb,ch);$s=26;case 26:if($c){$c=false;ci=ci.$blk();}if(ci&&ci.$blk!==undefined){break s;}bw[bz]=ci;by++;$s=21;continue;case 22:cj=BG(new IG([new $jsObjectPtr(aq),new $jsObjectPtr(ar),new $jsObjectPtr(bw)]));$s=27;case 27:if($c){$c=false;cj=cj.$blk();}if(cj&&cj.$blk!==undefined){break s;}ck=cj;cl=bv;if(cl===(0)){$s=29;continue;}if(cl===(1)){$s=30;continue;}$s=31;continue;case 29:$s=-1;return IS.nil;case 30:cm=Z(ap.Out(0),BI(ap.Out(0),ck),0);$s=33;case 33:if($c){$c=false;cm=cm.$blk();}if(cm&&cm.$blk!==undefined){break s;}$s=-1;return new IS([$clone(cm,EZ)]);case 31:cn=$makeSlice(IS,bv);co=cn;cp=0;case 34:if(!(cp<co.$length)){$s=35;continue;}cq=cp;cr=Z(ap.Out(cq),BI(ap.Out(cq),ck[cq]),0);$s=36;case 36:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}((cq<0||cq>=cn.$length)?($throwRuntimeError("index out of range"),undefined):cn.$array[cn.$offset+cq]=cr);cp++;$s=34;continue;case 35:$s=-1;return cn;case 32:case 28:$s=-1;return IS.nil;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.call};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.ce=ce;$f.cf=cf;$f.cg=cg;$f.ch=ch;$f.ci=ci;$f.cj=cj;$f.ck=ck;$f.cl=cl;$f.cm=cm;$f.cn=cn;$f.co=co;$f.cp=cp;$f.cq=cq;$f.cr=cr;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.call=function(am,an){return this.$val.call(am,an);};EZ.ptr.prototype.Cap=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(17)){return am.typ.Len();}else if((ao===(18))||(ao===(23))){return $parseInt($clone(am,EZ).object().$capacity)>>0;}$panic(new FD.ptr("reflect.Value.Cap",an));};EZ.prototype.Cap=function(){return this.$val.Cap();};BI=function(am,an){var $ptr,am,an;if($interfaceIsEqual(am,BH)){return new(I(BH))(an);}return an;};BJ=function(am,an){var $ptr,am,an;if($interfaceIsEqual(am,BH)){return an.object;}return an;};EZ.ptr.prototype.Elem=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=new FA(am.flag).kind();ao=an;if(ao===(20)){$s=2;continue;}if(ao===(22)){$s=3;continue;}$s=4;continue;case 2:ap=$clone(am,EZ).object();if(ap===$ifaceNil){$s=-1;return new EZ.ptr(HN.nil,0,0);}aq=J(ap.constructor);ar=Z(aq,ap.$val,(am.flag&96)>>>0);$s=6;case 6:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar;case 3:if($clone(am,EZ).IsNil()){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=$clone(am,EZ).object();at=am.typ.kindType;au=(((((am.flag&96)>>>0)|128)>>>0)|256)>>>0;au=(au|((at.elem.Kind()>>>0)))>>>0;$s=-1;return new EZ.ptr(at.elem,BI(at.elem,as),au);case 4:$panic(new FD.ptr("reflect.Value.Elem",an));case 5:case 1:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Elem};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Elem=function(){return this.$val.Elem();};EZ.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=[an];ao=[ao];ap=[ap];aq=[aq];ar=this;if(!((new FA(ar.flag).kind()===25))){$panic(new FD.ptr("reflect.Value.Field",new FA(ar.flag).kind()));}as=ar.typ.kindType;if((am>>>0)>=(as.fields.$length>>>0)){$panic(new $String("reflect: Field index out of range"));}ao[0]=$internalize(I(ar.typ).fields[am].prop,$String);au=(at=as.fields,((am<0||am>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+am]));aq[0]=au.typ;av=(((ar.flag&416)>>>0)|(aq[0].Kind()>>>0))>>>0;if(!$clone(au.name,O).isExported()){if($clone(au.name,O).name()===""){av=(av|(64))>>>0;}else{av=(av|(32))>>>0;}}ax=$clone((aw=as.fields,((am<0||am>=aw.$length)?($throwRuntimeError("index out of range"),undefined):aw.$array[aw.$offset+am])).name,O).tag();if(!(ax==="")&&!((am===0))){$s=1;continue;}$s=2;continue;case 1:an[0]=BK(ax);if(!(an[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:ay=[ay];az=$clone(ar,EZ).Field(0);$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ar=az;if(ar.typ===BH){$s=8;continue;}$s=9;continue;case 8:ay[0]=$clone(ar,EZ).object().object;$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(an,ao,ap,aq,ay){return function(){var $ptr;return $internalize(ay[0][$externalize(an[0],$String)],I(aq[0]));};})(an,ao,ap,aq,ay),(function(an,ao,ap,aq,ay){return function(ba){var $ptr,ba;ay[0][$externalize(an[0],$String)]=$externalize(ba,I(aq[0]));};})(an,ao,ap,aq,ay)),av);case 9:if(ar.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:ba=$clone(ar,EZ).Elem();$s=12;case 12:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}ar=ba;case 11:$s=5;continue;case 6:case 4:case 2:ap[0]=ar.ptr;if(!((((av&128)>>>0)===0))&&!((aq[0].Kind()===17))&&!((aq[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(an,ao,ap,aq){return function(){var $ptr;return BI(aq[0],ap[0][$externalize(ao[0],$String)]);};})(an,ao,ap,aq),(function(an,ao,ap,aq){return function(bb){var $ptr,bb;ap[0][$externalize(ao[0],$String)]=BJ(aq[0],bb);};})(an,ao,ap,aq)),av);case 14:bb=Z(aq[0],BI(aq[0],ap[0][$externalize(ao[0],$String)]),av);$s=15;case 15:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Field=function(am){return this.$val.Field(am);};BK=function(am){var $ptr,am,an,ao,ap,aq,ar;while(true){if(!(!(am===""))){break;}an=0;while(true){if(!(an<am.length&&(am.charCodeAt(an)===32))){break;}an=an+(1)>>0;}am=$substring(am,an);if(am===""){break;}an=0;while(true){if(!(an<am.length&&!((am.charCodeAt(an)===32))&&!((am.charCodeAt(an)===58))&&!((am.charCodeAt(an)===34)))){break;}an=an+(1)>>0;}if((an+1>>0)>=am.length||!((am.charCodeAt(an)===58))||!((am.charCodeAt((an+1>>0))===34))){break;}ao=$substring(am,0,an);am=$substring(am,(an+1>>0));an=1;while(true){if(!(an<am.length&&!((am.charCodeAt(an)===34)))){break;}if(am.charCodeAt(an)===92){an=an+(1)>>0;}an=an+(1)>>0;}if(an>=am.length){break;}ap=$substring(am,0,(an+1>>0));am=$substring(am,(an+1>>0));if(ao==="js"){aq=B.Unquote(ap);ar=aq[0];return ar;}}return"";};EZ.ptr.prototype.Index=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];an=[an];ao=[ao];ap=[ap];aq=[aq];ar=[ar];as=this;at=new FA(as.flag).kind();au=at;if(au===(17)){$s=2;continue;}if(au===(23)){$s=3;continue;}if(au===(24)){$s=4;continue;}$s=5;continue;case 2:av=as.typ.kindType;if(am[0]<0||am[0]>(av.len>>0)){$panic(new $String("reflect: array index out of range"));}aq[0]=av.elem;aw=(as.flag&480)>>>0;aw=(aw|((aq[0].Kind()>>>0)))>>>0;ao[0]=as.ptr;if(!((((aw&128)>>>0)===0))&&!((aq[0].Kind()===17))&&!((aq[0].Kind()===25))){$s=7;continue;}$s=8;continue;case 7:$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(am,an,ao,ap,aq,ar){return function(){var $ptr;return BI(aq[0],ao[0][am[0]]);};})(am,an,ao,ap,aq,ar),(function(am,an,ao,ap,aq,ar){return function(ax){var $ptr,ax;ao[0][am[0]]=BJ(aq[0],ax);};})(am,an,ao,ap,aq,ar)),aw);case 8:ax=Z(aq[0],BI(aq[0],ao[0][am[0]]),aw);$s=9;case 9:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return ax;case 3:ay=$clone(as,EZ).object();if(am[0]<0||am[0]>=($parseInt(ay.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}az=as.typ.kindType;ar[0]=az.elem;ba=(384|((as.flag&96)>>>0))>>>0;ba=(ba|((ar[0].Kind()>>>0)))>>>0;am[0]=am[0]+(($parseInt(ay.$offset)>>0))>>0;an[0]=ay.$array;if(!((((ba&128)>>>0)===0))&&!((ar[0].Kind()===17))&&!((ar[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:$s=-1;return new EZ.ptr(ar[0],new(I(DI(ar[0])))((function(am,an,ao,ap,aq,ar){return function(){var $ptr;return BI(ar[0],an[0][am[0]]);};})(am,an,ao,ap,aq,ar),(function(am,an,ao,ap,aq,ar){return function(bb){var $ptr,bb;an[0][am[0]]=BJ(ar[0],bb);};})(am,an,ao,ap,aq,ar)),ba);case 11:bb=Z(ar[0],BI(ar[0],an[0][am[0]]),ba);$s=12;case 12:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;case 4:bc=as.ptr.$get();if(am[0]<0||am[0]>=bc.length){$panic(new $String("reflect: string index out of range"));}bd=(((as.flag&96)>>>0)|8)>>>0;ap[0]=bc.charCodeAt(am[0]);$s=-1;return new EZ.ptr(FM,(ap.$ptr||(ap.$ptr=new IL(function(){return this.$target[0];},function($v){this.$target[0]=$v;},ap))),(bd|128)>>>0);case 5:$panic(new FD.ptr("reflect.Value.Index",at));case 6:case 1:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Index};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Index=function(am){return this.$val.Index(am);};EZ.ptr.prototype.InterfaceData=function(){var $ptr,am;am=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};EZ.prototype.InterfaceData=function(){return this.$val.InterfaceData();};EZ.ptr.prototype.IsNil=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(22))||(ao===(23))){return $clone(am,EZ).object()===I(am.typ).nil;}else if(ao===(18)){return $clone(am,EZ).object()===$chanNil;}else if(ao===(19)){return $clone(am,EZ).object()===$throwNilPointerError;}else if(ao===(21)){return $clone(am,EZ).object()===false;}else if(ao===(20)){return $clone(am,EZ).object()===$ifaceNil;}else{$panic(new FD.ptr("reflect.Value.IsNil",an));}};EZ.prototype.IsNil=function(){return this.$val.IsNil();};EZ.ptr.prototype.Len=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(17))||(ao===(24))){return $parseInt($clone(am,EZ).object().length);}else if(ao===(23)){return $parseInt($clone(am,EZ).object().$length)>>0;}else if(ao===(18)){return $parseInt($clone(am,EZ).object().$buffer.length)>>0;}else if(ao===(21)){return $parseInt($keys($clone(am,EZ).object()).length);}else{$panic(new FD.ptr("reflect.Value.Len",an));}};EZ.prototype.Len=function(){return this.$val.Len();};EZ.ptr.prototype.Pointer=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(18))||(ao===(21))||(ao===(22))||(ao===(26))){if($clone(am,EZ).IsNil()){return 0;}return $clone(am,EZ).object();}else if(ao===(19)){if($clone(am,EZ).IsNil()){return 0;}return 1;}else if(ao===(23)){if($clone(am,EZ).IsNil()){return 0;}return $clone(am,EZ).object().$array;}else{$panic(new FD.ptr("reflect.Value.Pointer",an));}};EZ.prototype.Pointer=function(){return this.$val.Pointer();};EZ.ptr.prototype.Set=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(am.flag).mustBeExported();ao=$clone(am,EZ).assignTo("reflect.Set",an.typ,0);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;if(!((((an.flag&128)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:ap=an.typ.Kind();if(ap===(17)){$s=5;continue;}if(ap===(20)){$s=6;continue;}if(ap===(25)){$s=7;continue;}$s=8;continue;case 5:I(an.typ).copy(an.ptr,am.ptr);$s=9;continue;case 6:aq=BC($clone(am,EZ),false);$s=10;case 10:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}an.ptr.$set(aq);$s=9;continue;case 7:Y(an.ptr,am.ptr,an.typ);$s=9;continue;case 8:an.ptr.$set($clone(am,EZ).object());case 9:case 4:$s=-1;return;case 3:an.ptr=am.ptr;$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Set};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Set=function(am){return this.$val.Set(am);};EZ.ptr.prototype.SetBytes=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ap=am;if(!(an.typ.Name()==="")){aq=true;$s=6;continue s;}ar=an.typ.Elem().Name();$s=7;case 7:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=!(ar==="");case 6:if(aq){$s=4;continue;}$s=5;continue;case 4:as=new(I(an.typ))(ap.$array);as.$offset=ap.$offset;as.$length=ap.$length;as.$capacity=ap.$capacity;ap=as;case 5:an.ptr.$set(ap);$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.SetBytes=function(am){return this.$val.SetBytes(am);};EZ.ptr.prototype.SetCap=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.ptr.$get();if(am<($parseInt(ao.$length)>>0)||am>($parseInt(ao.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}ap=new(I(an.typ))(ao.$array);ap.$offset=ao.$offset;ap.$length=ao.$length;ap.$capacity=am;an.ptr.$set(ap);};EZ.prototype.SetCap=function(am){return this.$val.SetCap(am);};EZ.ptr.prototype.SetLen=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.ptr.$get();if(am<0||am>($parseInt(ao.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}ap=new(I(an.typ))(ao.$array);ap.$offset=ao.$offset;ap.$length=am;ap.$capacity=ao.$capacity;an.ptr.$set(ap);};EZ.prototype.SetLen=function(am){return this.$val.SetLen(am);};EZ.ptr.prototype.Slice=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;ap=0;aq=$ifaceNil;ar=null;as=new FA(ao.flag).kind();at=as;if(at===(17)){$s=2;continue;}if(at===(23)){$s=3;continue;}if(at===(24)){$s=4;continue;}$s=5;continue;case 2:if(((ao.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}au=ao.typ.kindType;ap=(au.len>>0);aq=AH(au.elem);ar=new(I(aq))($clone(ao,EZ).object());$s=6;continue;case 3:aq=ao.typ;ar=$clone(ao,EZ).object();ap=$parseInt(ar.$capacity)>>0;$s=6;continue;case 4:av=ao.ptr.$get();if(am<0||an<am||an>av.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aw=AC(new $String($substring(av,am,an)));$s=7;case 7:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return aw;case 5:$panic(new FD.ptr("reflect.Value.Slice",as));case 6:case 1:if(am<0||an<am||an>ap){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ax=Z(aq,$subslice(ar,am,an),(ao.flag&96)>>>0);$s=8;case 8:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return ax;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Slice};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Slice=function(am,an){return this.$val.Slice(am,an);};EZ.ptr.prototype.Slice3=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=this;aq=0;ar=$ifaceNil;as=null;at=new FA(ap.flag).kind();au=at;if(au===(17)){if(((ap.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}av=ap.typ.kindType;aq=(av.len>>0);ar=AH(av.elem);as=new(I(ar))($clone(ap,EZ).object());}else if(au===(23)){ar=ap.typ;as=$clone(ap,EZ).object();aq=$parseInt(as.$capacity)>>0;}else{$panic(new FD.ptr("reflect.Value.Slice3",at));}if(am<0||an<am||ao<an||ao>aq){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aw=Z(ar,$subslice(as,am,an,ao),(ap.flag&96)>>>0);$s=1;case 1:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return aw;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Slice3};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Slice3=function(am,an,ao){return this.$val.Slice3(am,an,ao);};EZ.ptr.prototype.Close=function(){var $ptr,am;am=this;new FA(am.flag).mustBe(18);new FA(am.flag).mustBeExported();$close($clone(am,EZ).object());};EZ.prototype.Close=function(){return this.$val.Close();};BM=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=false;ar=false;as=new IU([new IR([an])]);if(ao){as=$append(as,new IR([]));}at=BL(new IG([as]));$s=1;case 1:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;if(ao&&(($parseInt(au[0])>>0)===1)){av=false;aw=false;aq=av;ar=aw;$s=-1;return[aq,ar];}ax=au[1];ap.$set(ax[0]);ay=true;az=!!(ax[1]);aq=ay;ar=az;$s=-1;return[aq,ar];}return;}if($f===undefined){$f={$blk:BM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};BN=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=new IU([new IR([an,ao.$get()])]);if(ap){aq=$append(aq,new IR([]));}ar=BL(new IG([aq]));$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(ap&&(($parseInt(as[0])>>0)===1)){$s=-1;return false;}$s=-1;return true;}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};BZ.prototype.String=function(){var $ptr,am;am=this.$val;if((am>>0)<CQ.$length){return((am<0||am>=CQ.$length)?($throwRuntimeError("index out of range"),undefined):CQ.$array[CQ.$offset+am]);}return"kind"+B.Itoa((am>>0));};$ptrType(BZ).prototype.String=function(){return new BZ(this.$get()).String();};CB.ptr.prototype.String=function(){var $ptr,am,an;am=this;an=$clone(am.nameOff(am.str),O).name();if(!((((am.tflag&2)>>>0)===0))){return $substring(an,1);}return an;};CB.prototype.String=function(){return this.$val.String();};CB.ptr.prototype.Size=function(){var $ptr,am;am=this;return am.size;};CB.prototype.Size=function(){return this.$val.Size();};CB.ptr.prototype.Bits=function(){var $ptr,am,an;am=this;if(am===HN.nil){$panic(new $String("reflect: Bits of nil Type"));}an=am.Kind();if(an<2||an>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+am.String()));}return $imul((am.size>>0),8);};CB.prototype.Bits=function(){return this.$val.Bits();};CB.ptr.prototype.Align=function(){var $ptr,am;am=this;return(am.align>>0);};CB.prototype.Align=function(){return this.$val.Align();};CB.ptr.prototype.FieldAlign=function(){var $ptr,am;am=this;return(am.fieldAlign>>0);};CB.prototype.FieldAlign=function(){return this.$val.FieldAlign();};CB.ptr.prototype.Kind=function(){var $ptr,am;am=this;return(((am.kind&31)>>>0)>>>0);};CB.prototype.Kind=function(){return this.$val.Kind();};CB.ptr.prototype.common=function(){var $ptr,am;am=this;return am;};CB.prototype.common=function(){return this.$val.common();};CB.ptr.prototype.exportedMethods=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;$r=DB.RWMutex.RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}an=(ao=DB.m[HN.keyFor(am)],ao!==undefined?[ao.v,true]:[HP.nil,false]);ap=an[0];aq=an[1];$r=DB.RWMutex.RUnlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(aq){$s=-1;return ap;}ar=am.uncommon();if(ar===IO.nil){$s=-1;return HP.nil;}as=ar.methods();at=true;au=as;av=0;while(true){if(!(av<au.$length)){break;}aw=$clone(((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]),CD);ax=$clone(am.nameOff(aw.name),O);if(!$clone(ax,O).isExported()){at=false;break;}av++;}if(at){ap=as;}else{ap=$makeSlice(HP,0,as.$length);ay=as;az=0;while(true){if(!(az<ay.$length)){break;}ba=$clone(((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]),CD);bb=$clone(am.nameOff(ba.name),O);if($clone(bb,O).isExported()){ap=$append(ap,ba);}az++;}ap=$subslice(ap,0,ap.$length,ap.$length);}$r=DB.RWMutex.Lock();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(DB.m===false){DB.m={};}bc=am;(DB.m||$throwRuntimeError("assignment to entry in nil map"))[HN.keyFor(bc)]={k:bc,v:ap};$r=DB.RWMutex.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.exportedMethods};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.exportedMethods=function(){return this.$val.exportedMethods();};CB.ptr.prototype.NumMethod=function(){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;if(am.Kind()===20){an=am.kindType;$s=-1;return an.NumMethod();}if(((am.tflag&1)>>>0)===0){$s=-1;return 0;}ao=am.exportedMethods();$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao.$length;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.NumMethod};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.NumMethod=function(){return this.$val.NumMethod();};CB.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=false;ap=this;if(ap.Kind()===20){aq=ap.kindType;ar=aq.MethodByName(am);CP.copy(an,ar[0]);ao=ar[1];$s=-1;return[an,ao];}as=ap.uncommon();if(as===IO.nil){at=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);au=false;CP.copy(an,at);ao=au;$s=-1;return[an,ao];}av=as.methods();aw=0;case 1:if(!(aw<(as.mcount>>0))){$s=2;continue;}ax=$clone(((aw<0||aw>=av.$length)?($throwRuntimeError("index out of range"),undefined):av.$array[av.$offset+aw]),CD);ay=$clone(ap.nameOff(ax.name),O);if($clone(ay,O).isExported()&&$clone(ay,O).name()===am){$s=3;continue;}$s=4;continue;case 3:ba=ap.Method(aw);$s=5;case 5:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}az=$clone(ba,CP);bb=true;CP.copy(an,az);ao=bb;$s=-1;return[an,ao];case 4:aw=aw+(1)>>0;$s=1;continue;case 2:bc=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);bd=false;CP.copy(an,bc);ao=bd;$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.MethodByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};CB.ptr.prototype.PkgPath=function(){var $ptr,am,an;am=this;if(((am.tflag&4)>>>0)===0){return"";}an=am.uncommon();if(an===IO.nil){return"";}return $clone(am.nameOff(an.pkgPath),O).name();};CB.prototype.PkgPath=function(){return this.$val.PkgPath();};CB.ptr.prototype.Name=function(){var $ptr,am,an,ao;am=this;if(((am.tflag&4)>>>0)===0){return"";}an=am.String();ao=an.length-1>>0;while(true){if(!(ao>=0)){break;}if(an.charCodeAt(ao)===46){break;}ao=ao-(1)>>0;}return $substring(an,(ao+1>>0));};CB.prototype.Name=function(){return this.$val.Name();};CB.ptr.prototype.ChanDir=function(){var $ptr,am,an;am=this;if(!((am.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}an=am.kindType;return(an.dir>>0);};CB.prototype.ChanDir=function(){return this.$val.ChanDir();};CB.ptr.prototype.IsVariadic=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}an=am.kindType;return!((((an.outCount&32768)>>>0)===0));};CB.prototype.IsVariadic=function(){return this.$val.IsVariadic();};CB.ptr.prototype.Elem=function(){var $ptr,am,an,ao,ap,aq,ar,as;am=this;an=am.Kind();if(an===(17)){ao=am.kindType;return ER(ao.elem);}else if(an===(18)){ap=am.kindType;return ER(ap.elem);}else if(an===(21)){aq=am.kindType;return ER(aq.elem);}else if(an===(22)){ar=am.kindType;return ER(ar.elem);}else if(an===(23)){as=am.kindType;return ER(as.elem);}$panic(new $String("reflect: Elem of invalid type"));};CB.prototype.Elem=function(){return this.$val.Elem();};CB.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ao=an.kindType;ap=ao.Field(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Field=function(am){return this.$val.Field(am);};CB.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ao=an.kindType;ap=ao.FieldByIndex(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};CB.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ao=an.kindType;ap=ao.FieldByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};CB.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ao=an.kindType;ap=ao.FieldByNameFunc(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};CB.ptr.prototype.In=function(am){var $ptr,am,an,ao,ap;an=this;if(!((an.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ao=an.kindType;return ER((ap=ao.in$(),((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am])));};CB.prototype.In=function(am){return this.$val.In(am);};CB.ptr.prototype.Key=function(){var $ptr,am,an;am=this;if(!((am.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}an=am.kindType;return ER(an.key);};CB.prototype.Key=function(){return this.$val.Key();};CB.ptr.prototype.Len=function(){var $ptr,am,an;am=this;if(!((am.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}an=am.kindType;return(an.len>>0);};CB.prototype.Len=function(){return this.$val.Len();};CB.ptr.prototype.NumField=function(){var $ptr,am,an;am=this;if(!((am.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}an=am.kindType;return an.fields.$length;};CB.prototype.NumField=function(){return this.$val.NumField();};CB.ptr.prototype.NumIn=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}an=am.kindType;return(an.inCount>>0);};CB.prototype.NumIn=function(){return this.$val.NumIn();};CB.ptr.prototype.NumOut=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}an=am.kindType;return an.out().$length;};CB.prototype.NumOut=function(){return this.$val.NumOut();};CB.ptr.prototype.Out=function(am){var $ptr,am,an,ao,ap;an=this;if(!((an.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ao=an.kindType;return ER((ap=ao.out(),((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am])));};CB.prototype.Out=function(am){return this.$val.Out(am);};CE.prototype.String=function(){var $ptr,am,an;am=this.$val;an=am;if(an===(2)){return"chan<-";}else if(an===(1)){return"<-chan";}else if(an===(3)){return"chan";}return"ChanDir"+B.Itoa((am>>0));};$ptrType(CE).prototype.String=function(){return new CE(this.$get()).String();};CI.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,ar;an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=this;if(am<0||am>=ao.methods.$length){return an;}aq=(ap=ao.methods,((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am]));ar=$clone(ao.rtype.nameOff(aq.name),O);an.Name=$clone(ar,O).name();if(!$clone(ar,O).isExported()){an.PkgPath=$clone(ar,O).pkgPath();if(an.PkgPath===""){an.PkgPath=$clone(ao.pkgPath,O).name();}}an.Type=ER(ao.rtype.typeOff(aq.typ));an.Index=am;return an;};CI.prototype.Method=function(am){return this.$val.Method(am);};CI.ptr.prototype.NumMethod=function(){var $ptr,am;am=this;return am.methods.$length;};CI.prototype.NumMethod=function(){return this.$val.NumMethod();};CI.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw;an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=false;ap=this;if(ap===IX.nil){return[an,ao];}aq=IY.nil;ar=ap.methods;as=0;while(true){if(!(as<ar.$length)){break;}at=as;aq=(au=ap.methods,((at<0||at>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+at]));if($clone(ap.rtype.nameOff(aq.name),O).name()===am){av=$clone(ap.Method(at),CP);aw=true;CP.copy(an,av);ao=aw;return[an,ao];}as++;}return[an,ao];};CI.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};DF.prototype.Get=function(am){var $ptr,am,an,ao,ap;an=this.$val;ao=new DF(an).Lookup(am);ap=ao[0];return ap;};$ptrType(DF).prototype.Get=function(am){return new DF(this.$get()).Get(am);};DF.prototype.Lookup=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;an="";ao=false;ap=this.$val;while(true){if(!(!(ap===""))){break;}aq=0;while(true){if(!(aq<ap.length&&(ap.charCodeAt(aq)===32))){break;}aq=aq+(1)>>0;}ap=$substring(ap,aq);if(ap===""){break;}aq=0;while(true){if(!(aq<ap.length&&ap.charCodeAt(aq)>32&&!((ap.charCodeAt(aq)===58))&&!((ap.charCodeAt(aq)===34))&&!((ap.charCodeAt(aq)===127)))){break;}aq=aq+(1)>>0;}if((aq===0)||(aq+1>>0)>=ap.length||!((ap.charCodeAt(aq)===58))||!((ap.charCodeAt((aq+1>>0))===34))){break;}ar=$substring(ap,0,aq);ap=$substring(ap,(aq+1>>0));aq=1;while(true){if(!(aq<ap.length&&!((ap.charCodeAt(aq)===34)))){break;}if(ap.charCodeAt(aq)===92){aq=aq+(1)>>0;}aq=aq+(1)>>0;}if(aq>=ap.length){break;}as=$substring(ap,0,(aq+1>>0));ap=$substring(ap,(aq+1>>0));if(am===ar){at=B.Unquote(as);au=at[0];av=at[1];if(!($interfaceIsEqual(av,$ifaceNil))){break;}aw=au;ax=true;an=aw;ao=ax;return[an,ao];}}ay="";az=false;an=ay;ao=az;return[an,ao];};$ptrType(DF).prototype.Lookup=function(am){return new DF(this.$get()).Lookup(am);};CN.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=this;if(am<0||am>=ao.fields.$length){$panic(new $String("reflect: Field index out of bounds"));}aq=(ap=ao.fields,((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am]));an.Type=ER(aq.typ);ar=$clone(aq.name,O).name();if(!(ar==="")){$s=1;continue;}$s=2;continue;case 1:an.Name=ar;$s=3;continue;case 2:as=an.Type;at=as.Kind();$s=6;case 6:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===22){$s=4;continue;}$s=5;continue;case 4:au=as.Elem();$s=7;case 7:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;case 5:av=as.Name();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}an.Name=av;an.Anonymous=true;case 3:if(!$clone(aq.name,O).isExported()){an.PkgPath=$clone(aq.name,O).pkgPath();if(an.PkgPath===""){an.PkgPath=$clone(ao.pkgPath,O).name();}}aw=$clone(aq.name,O).tag();if(!(aw==="")){an.Tag=aw;}an.Offset=aq.offset;an.Index=new IZ([am]);$s=-1;return an;}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.Field=function(am){return this.$val.Field(am);};CN.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=this;an.Type=ER(ao.rtype);ap=am;aq=0;case 1:if(!(aq<ap.$length)){$s=2;continue;}ar=aq;as=((aq<0||aq>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+aq]);if(ar>0){$s=3;continue;}$s=4;continue;case 3:at=an.Type;av=at.Kind();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(!(av===22)){au=false;$s=7;continue s;}aw=at.Elem();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw.Kind();$s=10;case 10:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}au=ax===25;case 7:if(au){$s=5;continue;}$s=6;continue;case 5:ay=at.Elem();$s=11;case 11:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}at=ay;case 6:an.Type=at;case 4:az=an.Type.Field(as);$s=12;case 12:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}DE.copy(an,az);aq++;$s=1;continue;case 2:$s=-1;return an;}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};CN.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=false;ap=this;aq=new JA([]);ar=new JA([new DG.ptr(ap,IZ.nil)]);as=false;at=$makeMap(JB.keyFor,[]);case 1:if(!(ar.$length>0)){$s=2;continue;}au=ar;av=$subslice(aq,0,0);aq=au;ar=av;aw=as;as=false;ax=aq;ay=0;case 3:if(!(ay<ax.$length)){$s=4;continue;}az=$clone(((ay<0||ay>=ax.$length)?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+ay]),DG);ba=az.typ;if((bb=at[JB.keyFor(ba)],bb!==undefined?bb.v:false)){$s=5;continue;}$s=6;continue;case 5:ay++;$s=3;continue;case 6:bc=ba;(at||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bc)]={k:bc,v:true};bd=ba.fields;be=0;case 7:if(!(be<bd.$length)){$s=8;continue;}bf=be;bh=(bg=ba.fields,((bf<0||bf>=bg.$length)?($throwRuntimeError("index out of range"),undefined):bg.$array[bg.$offset+bf]));bi="";bj=HN.nil;bk=$clone(bh.name,O).name();if(!(bk==="")){$s=9;continue;}$s=10;continue;case 9:bi=bk;$s=11;continue;case 10:bj=bh.typ;if(bj.Kind()===22){$s=12;continue;}$s=13;continue;case 12:bl=bj.Elem().common();$s=14;case 14:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bj=bl;case 13:bi=bj.Name();case 11:bm=am(bi);$s=17;case 17:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}if(bm){$s=15;continue;}$s=16;continue;case 15:if((bn=aw[JB.keyFor(ba)],bn!==undefined?bn.v:0)>1||ao){bo=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);bp=false;DE.copy(an,bo);ao=bp;$s=-1;return[an,ao];}bq=ba.Field(bf);$s=18;case 18:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}DE.copy(an,bq);an.Index=IZ.nil;an.Index=$appendSlice(an.Index,az.index);an.Index=$append(an.Index,bf);ao=true;be++;$s=7;continue;case 16:if(ao||bj===HN.nil||!((bj.Kind()===25))){be++;$s=7;continue;}br=bj.kindType;if((bs=as[JB.keyFor(br)],bs!==undefined?bs.v:0)>0){bt=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bt)]={k:bt,v:2};be++;$s=7;continue;}if(as===false){as=$makeMap(JB.keyFor,[]);}bu=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bu)]={k:bu,v:1};if((bv=aw[JB.keyFor(ba)],bv!==undefined?bv.v:0)>1){bw=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bw)]={k:bw,v:2};}bx=IZ.nil;bx=$appendSlice(bx,az.index);bx=$append(bx,bf);ar=$append(ar,new DG.ptr(br,bx));be++;$s=7;continue;case 8:ay++;$s=3;continue;case 4:if(ao){$s=2;continue;}$s=1;continue;case 2:$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};CN.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=false;ap=this;aq=false;if(!(am[0]==="")){$s=1;continue;}$s=2;continue;case 1:ar=ap.fields;as=0;case 3:if(!(as<ar.$length)){$s=4;continue;}at=as;av=(au=ap.fields,((at<0||at>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+at]));aw=$clone(av.name,O).name();if(aw===""){$s=5;continue;}$s=6;continue;case 5:aq=true;as++;$s=3;continue;case 6:if(aw===am[0]){$s=7;continue;}$s=8;continue;case 7:ay=ap.Field(at);$s=9;case 9:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ax=$clone(ay,DE);az=true;DE.copy(an,ax);ao=az;$s=-1;return[an,ao];case 8:as++;$s=3;continue;case 4:case 2:if(!aq){$s=-1;return[an,ao];}bb=ap.FieldByNameFunc((function(am){return function(bb){var $ptr,bb;return bb===am[0];};})(am));$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;DE.copy(an,ba[0]);ao=ba[1];$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};DI=function(am){var $ptr,am;return $assertType(am,HN).ptrTo();};$pkg.PtrTo=DI;CB.ptr.prototype.Implements=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ao=am.Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:$s=-1;return DK($assertType(am,HN),an);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Implements=function(am){return this.$val.Implements(am);};CB.ptr.prototype.AssignableTo=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ao=$assertType(am,HN);ap=DL(ao,an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap||DK(ao,an);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.AssignableTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.AssignableTo=function(am){return this.$val.AssignableTo(am);};CB.ptr.prototype.ConvertibleTo=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ao=$assertType(am,HN);ap=GH(ao,an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return!(ap===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.ConvertibleTo=function(am){return this.$val.ConvertibleTo(am);};DK=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc;if(!((am.Kind()===20))){return false;}ao=am.kindType;if(ao.methods.$length===0){return true;}if(an.Kind()===20){ap=an.kindType;aq=0;ar=0;while(true){if(!(ar<ap.methods.$length)){break;}at=(as=ao.methods,((aq<0||aq>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+aq]));av=(au=ap.methods,((ar<0||ar>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+ar]));if($clone(an.nameOff(av.name),O).name()===$clone(ao.rtype.nameOff(at.name),O).name()&&an.typeOff(av.typ)===ao.rtype.typeOff(at.typ)){aq=aq+(1)>>0;if(aq>=ao.methods.$length){return true;}}ar=ar+(1)>>0;}return false;}aw=an.uncommon();if(aw===IO.nil){return false;}ax=0;ay=aw.methods();az=0;while(true){if(!(az<(aw.mcount>>0))){break;}bb=(ba=ao.methods,((ax<0||ax>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+ax]));bc=$clone(((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]),CD);if($clone(an.nameOff(bc.name),O).name()===$clone(ao.rtype.nameOff(bb.name),O).name()&&an.typeOff(bc.mtyp)===ao.rtype.typeOff(bb.typ)){ax=ax+(1)>>0;if(ax>=ao.methods.$length){return true;}}az=az+(1)>>0;}return false;};DL=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am===an){$s=-1;return true;}if(!(am.Name()==="")&&!(an.Name()==="")||!((am.Kind()===an.Kind()))){$s=-1;return false;}ao=DN(am,an,true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:DL};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};DM=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(ao){$s=-1;return $interfaceIsEqual(am,an);}aq=am.Name();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=an.Name();$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(!(aq===ar)){ap=true;$s=3;continue s;}as=am.Kind();$s=6;case 6:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}at=an.Kind();$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}ap=!((as===at));case 3:if(ap){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:au=am.common();$s=8;case 8:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;aw=an.common();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=DN(av,ax,false);$s=10;case 10:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}$s=-1;return ay;}return;}if($f===undefined){$f={$blk:DM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.$s=$s;$f.$r=$r;return $f;};DN=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am===an){$s=-1;return true;}ap=am.Kind();if(!((ap===an.Kind()))){$s=-1;return false;}if(1<=ap&&ap<=16||(ap===24)||(ap===26)){$s=-1;return true;}aq=ap;if(aq===(17)){$s=2;continue;}if(aq===(18)){$s=3;continue;}if(aq===(19)){$s=4;continue;}if(aq===(20)){$s=5;continue;}if(aq===(21)){$s=6;continue;}if((aq===(22))||(aq===(23))){$s=7;continue;}if(aq===(25)){$s=8;continue;}$s=9;continue;case 2:if(!(am.Len()===an.Len())){ar=false;$s=10;continue s;}as=DM(am.Elem(),an.Elem(),ao);$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;case 10:$s=-1;return ar;case 3:if(!(an.ChanDir()===3)){at=false;$s=14;continue s;}au=DM(am.Elem(),an.Elem(),ao);$s=15;case 15:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;case 14:if(at){$s=12;continue;}$s=13;continue;case 12:$s=-1;return true;case 13:if(!(an.ChanDir()===am.ChanDir())){av=false;$s=16;continue s;}aw=DM(am.Elem(),an.Elem(),ao);$s=17;case 17:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}av=aw;case 16:$s=-1;return av;case 4:ax=am.kindType;ay=an.kindType;if(!((ax.outCount===ay.outCount))||!((ax.inCount===ay.inCount))){$s=-1;return false;}az=0;case 18:if(!(az<ax.rtype.NumIn())){$s=19;continue;}ba=DM(ax.rtype.In(az),ay.rtype.In(az),ao);$s=22;case 22:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}if(!ba){$s=20;continue;}$s=21;continue;case 20:$s=-1;return false;case 21:az=az+(1)>>0;$s=18;continue;case 19:bb=0;case 23:if(!(bb<ax.rtype.NumOut())){$s=24;continue;}bc=DM(ax.rtype.Out(bb),ay.rtype.Out(bb),ao);$s=27;case 27:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}if(!bc){$s=25;continue;}$s=26;continue;case 25:$s=-1;return false;case 26:bb=bb+(1)>>0;$s=23;continue;case 24:$s=-1;return true;case 5:bd=am.kindType;be=an.kindType;if((bd.methods.$length===0)&&(be.methods.$length===0)){$s=-1;return true;}$s=-1;return false;case 6:bg=DM(am.Key(),an.Key(),ao);$s=29;case 29:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}if(!(bg)){bf=false;$s=28;continue s;}bh=DM(am.Elem(),an.Elem(),ao);$s=30;case 30:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bf=bh;case 28:$s=-1;return bf;case 7:bi=DM(am.Elem(),an.Elem(),ao);$s=31;case 31:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}$s=-1;return bi;case 8:bj=am.kindType;bk=an.kindType;if(!((bj.fields.$length===bk.fields.$length))){$s=-1;return false;}bl=bj.fields;bm=0;case 32:if(!(bm<bl.$length)){$s=33;continue;}bn=bm;bp=(bo=bj.fields,((bn<0||bn>=bo.$length)?($throwRuntimeError("index out of range"),undefined):bo.$array[bo.$offset+bn]));br=(bq=bk.fields,((bn<0||bn>=bq.$length)?($throwRuntimeError("index out of range"),undefined):bq.$array[bq.$offset+bn]));if(!($clone(bp.name,O).name()===$clone(br.name,O).name())){$s=-1;return false;}bs=DM(bp.typ,br.typ,ao);$s=36;case 36:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}if(!bs){$s=34;continue;}$s=35;continue;case 34:$s=-1;return false;case 35:if(ao&&!($clone(bp.name,O).tag()===$clone(br.name,O).tag())){$s=-1;return false;}if(!((bp.offset===br.offset))){$s=-1;return false;}if(!$clone(bp.name,O).isExported()){bt=$clone(bp.name,O).pkgPath();if(bt===""){bt=$clone(bj.pkgPath,O).name();}bu=$clone(br.name,O).pkgPath();if(bu===""){bu=$clone(bk.pkgPath,O).name();}if(!(bt===bu)){$s=-1;return false;}}bm++;$s=32;continue;case 33:$s=-1;return true;case 9:case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:DN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.$s=$s;$f.$r=$r;return $f;};ER=function(am){var $ptr,am;if(am===HN.nil){return $ifaceNil;}return am;};EW=function(am){var $ptr,am;return((am.kind&32)>>>0)===0;};FA.prototype.kind=function(){var $ptr,am;am=this.$val;return(((am&31)>>>0)>>>0);};$ptrType(FA).prototype.kind=function(){return new FA(this.$get()).kind();};EZ.ptr.prototype.pointer=function(){var $ptr,am;am=this;if(!((am.typ.size===4))||!am.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((am.flag&128)>>>0)===0))){return am.ptr.$get();}return am.ptr;};EZ.prototype.pointer=function(){return this.$val.pointer();};FD.ptr.prototype.Error=function(){var $ptr,am;am=this;if(am.Kind===0){return"reflect: call of "+am.Method+" on zero Value";}return"reflect: call of "+am.Method+" on "+new BZ(am.Kind).String()+" Value";};FD.prototype.Error=function(){return this.$val.Error();};FA.prototype.mustBe=function(am){var $ptr,am,an;an=this.$val;if(!((new FA(an).kind()===am))){$panic(new FD.ptr(BE(),new FA(an).kind()));}};$ptrType(FA).prototype.mustBe=function(am){return new FA(this.$get()).mustBe(am);};FA.prototype.mustBeExported=function(){var $ptr,am;am=this.$val;if(am===0){$panic(new FD.ptr(BE(),0));}if(!((((am&96)>>>0)===0))){$panic(new $String("reflect: "+BE()+" using value obtained using unexported field"));}};$ptrType(FA).prototype.mustBeExported=function(){return new FA(this.$get()).mustBeExported();};FA.prototype.mustBeAssignable=function(){var $ptr,am;am=this.$val;if(am===0){$panic(new FD.ptr(BE(),0));}if(!((((am&96)>>>0)===0))){$panic(new $String("reflect: "+BE()+" using value obtained using unexported field"));}if(((am&256)>>>0)===0){$panic(new $String("reflect: "+BE()+" using unaddressable value"));}};$ptrType(FA).prototype.mustBeAssignable=function(){return new FA(this.$get()).mustBeAssignable();};EZ.ptr.prototype.Addr=function(){var $ptr,am;am=this;if(((am.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new EZ.ptr(am.typ.ptrTo(),am.ptr,((((am.flag&96)>>>0))|22)>>>0);};EZ.prototype.Addr=function(){return this.$val.Addr();};EZ.ptr.prototype.Bool=function(){var $ptr,am;am=this;new FA(am.flag).mustBe(1);return am.ptr.$get();};EZ.prototype.Bool=function(){return this.$val.Bool();};EZ.ptr.prototype.Bytes=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(23);an=am.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:$s=-1;return am.ptr.$get();}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Bytes=function(){return this.$val.Bytes();};EZ.ptr.prototype.runes=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(23);an=am.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:$s=-1;return am.ptr.$get();}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.runes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.runes=function(){return this.$val.runes();};EZ.ptr.prototype.CanAddr=function(){var $ptr,am;am=this;return!((((am.flag&256)>>>0)===0));};EZ.prototype.CanAddr=function(){return this.$val.CanAddr();};EZ.ptr.prototype.CanSet=function(){var $ptr,am;am=this;return((am.flag&352)>>>0)===256;};EZ.prototype.CanSet=function(){return this.$val.CanSet();};EZ.ptr.prototype.Call=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(19);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).call("Call",am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Call};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Call=function(am){return this.$val.Call(am);};EZ.ptr.prototype.CallSlice=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(19);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).call("CallSlice",am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.CallSlice=function(am){return this.$val.CallSlice(am);};EZ.ptr.prototype.Complex=function(){var $ptr,am,an,ao,ap;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(15)){return(ap=am.ptr.$get(),new $Complex128(ap.$real,ap.$imag));}else if(ao===(16)){return am.ptr.$get();}$panic(new FD.ptr("reflect.Value.Complex",new FA(am.flag).kind()));};EZ.prototype.Complex=function(){return this.$val.Complex();};EZ.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(am.$length===1){$s=1;continue;}$s=2;continue;case 1:ao=$clone(an,EZ).Field((0>=am.$length?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+0]));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;case 2:new FA(an.flag).mustBe(25);ap=am;aq=0;case 4:if(!(aq<ap.$length)){$s=5;continue;}ar=aq;as=((aq<0||aq>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+aq]);if(ar>0){$s=6;continue;}$s=7;continue;case 6:if(!($clone(an,EZ).Kind()===22)){at=false;$s=10;continue s;}au=an.typ.Elem().Kind();$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au===25;case 10:if(at){$s=8;continue;}$s=9;continue;case 8:if($clone(an,EZ).IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}av=$clone(an,EZ).Elem();$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}an=av;case 9:case 7:aw=$clone(an,EZ).Field(as);$s=13;case 13:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}an=aw;aq++;$s=4;continue;case 5:$s=-1;return an;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};EZ.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(25);ap=an.typ.FieldByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],DE);ar=ao[1];if(ar){$s=2;continue;}$s=3;continue;case 2:as=$clone(an,EZ).FieldByIndex(aq.Index);$s=4;case 4:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 3:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};EZ.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;ap=an.typ.FieldByNameFunc(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],DE);ar=ao[1];if(ar){$s=2;continue;}$s=3;continue;case 2:as=$clone(an,EZ).FieldByIndex(aq.Index);$s=4;case 4:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 3:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};EZ.ptr.prototype.Float=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(13)){return am.ptr.$get();}else if(ao===(14)){return am.ptr.$get();}$panic(new FD.ptr("reflect.Value.Float",new FA(am.flag).kind()));};EZ.prototype.Float=function(){return this.$val.Float();};EZ.ptr.prototype.Int=function(){var $ptr,am,an,ao,ap;am=this;an=new FA(am.flag).kind();ao=am.ptr;ap=an;if(ap===(2)){return new $Int64(0,ao.$get());}else if(ap===(3)){return new $Int64(0,ao.$get());}else if(ap===(4)){return new $Int64(0,ao.$get());}else if(ap===(5)){return new $Int64(0,ao.$get());}else if(ap===(6)){return ao.$get();}$panic(new FD.ptr("reflect.Value.Int",new FA(am.flag).kind()));};EZ.prototype.Int=function(){return this.$val.Int();};EZ.ptr.prototype.CanInterface=function(){var $ptr,am;am=this;if(am.flag===0){$panic(new FD.ptr("reflect.Value.CanInterface",0));}return((am.flag&96)>>>0)===0;};EZ.prototype.CanInterface=function(){return this.$val.CanInterface();};EZ.ptr.prototype.Interface=function(){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=$ifaceNil;an=this;ao=BC($clone(an,EZ),true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;$s=-1;return am;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Interface=function(){return this.$val.Interface();};EZ.ptr.prototype.IsValid=function(){var $ptr,am;am=this;return!((am.flag===0));};EZ.prototype.IsValid=function(){return this.$val.IsValid();};EZ.ptr.prototype.Kind=function(){var $ptr,am;am=this;return new FA(am.flag).kind();};EZ.prototype.Kind=function(){return this.$val.Kind();};EZ.ptr.prototype.MapIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(21);ao=an.typ.kindType;ap=$clone(am,EZ).assignTo("reflect.Value.MapIndex",ao.key,0);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}am=ap;aq=0;if(!((((am.flag&128)>>>0)===0))){aq=am.ptr;}else{aq=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}ar=AR(an.typ,$clone(an,EZ).pointer(),aq);if(ar===0){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=ao.elem;at=((((an.flag|am.flag)>>>0))&96)>>>0;at=(at|((as.Kind()>>>0)))>>>0;if(EW(as)){au=AJ(as);AM(as,au,ar);$s=-1;return new EZ.ptr(as,au,(at|128)>>>0);}else{$s=-1;return new EZ.ptr(as,ar.$get(),at);}$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MapIndex=function(am){return this.$val.MapIndex(am);};EZ.ptr.prototype.MapKeys=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(21);an=am.typ.kindType;ao=an.key;ap=(((am.flag&96)>>>0)|(ao.Kind()>>>0))>>>0;aq=$clone(am,EZ).pointer();ar=0;if(!(aq===0)){ar=AY(aq);}as=AV(am.typ,aq);at=$makeSlice(IS,ar);au=0;au=0;case 1:if(!(au<at.$length)){$s=2;continue;}av=AW(as);$s=3;case 3:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if(aw===0){$s=2;continue;}if(EW(ao)){ax=AJ(ao);AM(ao,ax,aw);((au<0||au>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+au]=new EZ.ptr(ao,ax,(ap|128)>>>0));}else{((au<0||au>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+au]=new EZ.ptr(ao,aw.$get(),ap));}AX(as);au=au+(1)>>0;$s=1;continue;case 2:$s=-1;return $subslice(at,0,au);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MapKeys=function(){return this.$val.MapKeys();};EZ.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(an.typ===HN.nil){$panic(new FD.ptr("reflect.Value.Method",0));}if(!((((an.flag&512)>>>0)===0))){ao=true;$s=3;continue s;}ap=an.typ.NumMethod();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=(am>>>0)>=(ap>>>0);case 3:if(ao){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: Method index out of range"));case 2:if((an.typ.Kind()===20)&&$clone(an,EZ).IsNil()){$panic(new $String("reflect: Method on nil interface value"));}aq=(an.flag&160)>>>0;aq=(aq|(19))>>>0;aq=(aq|(((((am>>>0)<<10>>>0)|512)>>>0)))>>>0;$s=-1;return new EZ.ptr(an.typ,an.ptr,aq);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Method};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Method=function(am){return this.$val.Method(am);};EZ.ptr.prototype.NumMethod=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;if(am.typ===HN.nil){$panic(new FD.ptr("reflect.Value.NumMethod",0));}if(!((((am.flag&512)>>>0)===0))){$s=-1;return 0;}an=am.typ.NumMethod();$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.NumMethod};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.NumMethod=function(){return this.$val.NumMethod();};EZ.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(an.typ===HN.nil){$panic(new FD.ptr("reflect.Value.MethodByName",0));}if(!((((an.flag&512)>>>0)===0))){$s=-1;return new EZ.ptr(HN.nil,0,0);}ap=an.typ.MethodByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],CP);ar=ao[1];if(!ar){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=$clone(an,EZ).Method(aq.Index);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MethodByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};EZ.ptr.prototype.NumField=function(){var $ptr,am,an;am=this;new FA(am.flag).mustBe(25);an=am.typ.kindType;return an.fields.$length;};EZ.prototype.NumField=function(){return this.$val.NumField();};EZ.ptr.prototype.OverflowComplex=function(am){var $ptr,am,an,ao,ap;an=this;ao=new FA(an.flag).kind();ap=ao;if(ap===(15)){return FN(am.$real)||FN(am.$imag);}else if(ap===(16)){return false;}$panic(new FD.ptr("reflect.Value.OverflowComplex",new FA(an.flag).kind()));};EZ.prototype.OverflowComplex=function(am){return this.$val.OverflowComplex(am);};EZ.ptr.prototype.OverflowFloat=function(am){var $ptr,am,an,ao,ap;an=this;ao=new FA(an.flag).kind();ap=ao;if(ap===(13)){return FN(am);}else if(ap===(14)){return false;}$panic(new FD.ptr("reflect.Value.OverflowFloat",new FA(an.flag).kind()));};EZ.prototype.OverflowFloat=function(am){return this.$val.OverflowFloat(am);};FN=function(am){var $ptr,am;if(am<0){am=-am;}return 3.4028234663852886e+38<am&&am<=1.7976931348623157e+308;};EZ.ptr.prototype.OverflowInt=function(am){var $ptr,am,an,ao,ap,aq,ar;an=this;ao=new FA(an.flag).kind();ap=ao;if((ap===(2))||(ap===(3))||(ap===(4))||(ap===(5))||(ap===(6))){aq=$imul(an.typ.size,8)>>>0;ar=$shiftRightInt64(($shiftLeft64(am,((64-aq>>>0)))),((64-aq>>>0)));return!((am.$high===ar.$high&&am.$low===ar.$low));}$panic(new FD.ptr("reflect.Value.OverflowInt",new FA(an.flag).kind()));};EZ.prototype.OverflowInt=function(am){return this.$val.OverflowInt(am);};EZ.ptr.prototype.OverflowUint=function(am){var $ptr,am,an,ao,ap,aq,ar;an=this;ao=new FA(an.flag).kind();ap=ao;if((ap===(7))||(ap===(12))||(ap===(8))||(ap===(9))||(ap===(10))||(ap===(11))){aq=$imul(an.typ.size,8)>>>0;ar=$shiftRightUint64(($shiftLeft64(am,((64-aq>>>0)))),((64-aq>>>0)));return!((am.$high===ar.$high&&am.$low===ar.$low));}$panic(new FD.ptr("reflect.Value.OverflowUint",new FA(an.flag).kind()));};EZ.prototype.OverflowUint=function(am){return this.$val.OverflowUint(am);};EZ.ptr.prototype.Recv=function(){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=new EZ.ptr(HN.nil,0,0);an=false;ao=this;new FA(ao.flag).mustBe(18);new FA(ao.flag).mustBeExported();aq=$clone(ao,EZ).recv(false);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;am=ap[0];an=ap[1];$s=-1;return[am,an];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Recv=function(){return this.$val.Recv();};EZ.ptr.prototype.recv=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new EZ.ptr(HN.nil,0,0);ao=false;ap=this;aq=ap.typ.kindType;if(((aq.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}ar=aq.elem;an=new EZ.ptr(ar,0,(ar.Kind()>>>0));as=0;if(EW(ar)){as=AJ(ar);an.ptr=as;an.flag=(an.flag|(128))>>>0;}else{as=(an.$ptr_ptr||(an.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},an)));}au=BM(ap.typ,$clone(ap,EZ).pointer(),am,as);$s=1;case 1:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;av=at[0];ao=at[1];if(!av){an=new EZ.ptr(HN.nil,0,0);}$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.recv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.recv=function(am){return this.$val.recv(am);};EZ.ptr.prototype.Send=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(18);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).send($clone(am,EZ),false);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ao;$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Send};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Send=function(am){return this.$val.Send(am);};EZ.ptr.prototype.send=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=false;ap=this;aq=ap.typ.kindType;if(((aq.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new FA(am.flag).mustBeExported();ar=$clone(am,EZ).assignTo("reflect.Value.Send",aq.elem,0);$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}am=ar;as=0;if(!((((am.flag&128)>>>0)===0))){as=am.ptr;}else{as=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}at=BN(ap.typ,$clone(ap,EZ).pointer(),as,an);$s=2;case 2:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}ao=at;$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.send};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.send=function(am,an){return this.$val.send(am,an);};EZ.ptr.prototype.SetBool=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(1);an.ptr.$set(am);};EZ.prototype.SetBool=function(am){return this.$val.SetBool(am);};EZ.ptr.prototype.setRunes=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:an.ptr.$set(am);$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.setRunes=function(am){return this.$val.setRunes(am);};EZ.ptr.prototype.SetComplex=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(15)){an.ptr.$set(new $Complex64(am.$real,am.$imag));}else if(ap===(16)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetComplex",new FA(an.flag).kind()));}};EZ.prototype.SetComplex=function(am){return this.$val.SetComplex(am);};EZ.ptr.prototype.SetFloat=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(13)){an.ptr.$set($fround(am));}else if(ap===(14)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetFloat",new FA(an.flag).kind()));}};EZ.prototype.SetFloat=function(am){return this.$val.SetFloat(am);};EZ.ptr.prototype.SetInt=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(2)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))>>0));}else if(ap===(3)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))<<24>>24));}else if(ap===(4)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))<<16>>16));}else if(ap===(5)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))>>0));}else if(ap===(6)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetInt",new FA(an.flag).kind()));}};EZ.prototype.SetInt=function(am){return this.$val.SetInt(am);};EZ.ptr.prototype.SetMapIndex=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;new FA(ao.flag).mustBe(21);new FA(ao.flag).mustBeExported();new FA(am.flag).mustBeExported();ap=ao.typ.kindType;aq=$clone(am,EZ).assignTo("reflect.Value.SetMapIndex",ap.key,0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}am=aq;ar=0;if(!((((am.flag&128)>>>0)===0))){ar=am.ptr;}else{ar=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}if(an.typ===HN.nil){AT(ao.typ,$clone(ao,EZ).pointer(),ar);$s=-1;return;}new FA(an.flag).mustBeExported();as=$clone(an,EZ).assignTo("reflect.Value.SetMapIndex",ap.elem,0);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;at=0;if(!((((an.flag&128)>>>0)===0))){at=an.ptr;}else{at=(an.$ptr_ptr||(an.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},an)));}$r=AS(ao.typ,$clone(ao,EZ).pointer(),ar,at);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.SetMapIndex=function(am,an){return this.$val.SetMapIndex(am,an);};EZ.ptr.prototype.SetUint=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(7)){an.ptr.$set((am.$low>>>0));}else if(ap===(8)){an.ptr.$set((am.$low<<24>>>24));}else if(ap===(9)){an.ptr.$set((am.$low<<16>>>16));}else if(ap===(10)){an.ptr.$set((am.$low>>>0));}else if(ap===(11)){an.ptr.$set(am);}else if(ap===(12)){an.ptr.$set((am.$low>>>0));}else{$panic(new FD.ptr("reflect.Value.SetUint",new FA(an.flag).kind()));}};EZ.prototype.SetUint=function(am){return this.$val.SetUint(am);};EZ.ptr.prototype.SetPointer=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(26);an.ptr.$set(am);};EZ.prototype.SetPointer=function(am){return this.$val.SetPointer(am);};EZ.ptr.prototype.SetString=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(24);an.ptr.$set(am);};EZ.prototype.SetString=function(am){return this.$val.SetString(am);};EZ.ptr.prototype.String=function(){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=new FA(am.flag).kind();ao=an;if(ao===(0)){$s=-1;return"<invalid Value>";}else if(ao===(24)){$s=-1;return am.ptr.$get();}ap=$clone(am,EZ).Type().String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return"<"+ap+" Value>";}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.String};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.String=function(){return this.$val.String();};EZ.ptr.prototype.TryRecv=function(){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=new EZ.ptr(HN.nil,0,0);an=false;ao=this;new FA(ao.flag).mustBe(18);new FA(ao.flag).mustBeExported();aq=$clone(ao,EZ).recv(true);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;am=ap[0];an=ap[1];$s=-1;return[am,an];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.TryRecv=function(){return this.$val.TryRecv();};EZ.ptr.prototype.TrySend=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(18);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).send($clone(am,EZ),true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.TrySend=function(am){return this.$val.TrySend(am);};EZ.ptr.prototype.Type=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au;am=this;an=am.flag;if(an===0){$panic(new FD.ptr("reflect.Value.Type",0));}if(((an&512)>>>0)===0){return am.typ;}ao=(am.flag>>0)>>10>>0;if(am.typ.Kind()===20){ap=am.typ.kindType;if((ao>>>0)>=(ap.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ar=(aq=ap.methods,((ao<0||ao>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ao]));return am.typ.typeOff(ar.typ);}as=am.typ.uncommon();if(as===IO.nil||(ao>>>0)>=(as.mcount>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}au=$clone((at=as.methods(),((ao<0||ao>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+ao])),CD);return am.typ.typeOff(au.mtyp);};EZ.prototype.Type=function(){return this.$val.Type();};EZ.ptr.prototype.Uint=function(){var $ptr,am,an,ao,ap,aq;am=this;an=new FA(am.flag).kind();ao=am.ptr;ap=an;if(ap===(7)){return new $Uint64(0,ao.$get());}else if(ap===(8)){return new $Uint64(0,ao.$get());}else if(ap===(9)){return new $Uint64(0,ao.$get());}else if(ap===(10)){return new $Uint64(0,ao.$get());}else if(ap===(11)){return ao.$get();}else if(ap===(12)){return(aq=ao.$get(),new $Uint64(0,aq.constructor===Number?aq:1));}$panic(new FD.ptr("reflect.Value.Uint",new FA(am.flag).kind()));};EZ.prototype.Uint=function(){return this.$val.Uint();};EZ.ptr.prototype.UnsafeAddr=function(){var $ptr,am;am=this;if(am.typ===HN.nil){$panic(new FD.ptr("reflect.Value.UnsafeAddr",0));}if(((am.flag&256)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return am.ptr;};EZ.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};FS=function(am,an,ao){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!($interfaceIsEqual(an,ao))){$s=1;continue;}$s=2;continue;case 1:ap=an.String();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ao.String();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$panic(new $String(am+": "+ap+" != "+aq));case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:FS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};FU=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=$clone(am,EZ).Len();ap=ao+an>>0;if(ap<ao){$panic(new $String("reflect.Append: slice overflow"));}aq=$clone(am,EZ).Cap();if(ap<=aq){$s=1;continue;}$s=2;continue;case 1:ar=$clone(am,EZ).Slice(0,ap);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return[ar,ao,ap];case 2:if(aq===0){aq=an;}else{while(true){if(!(aq<ap)){break;}if(ao<1024){aq=aq+(aq)>>0;}else{aq=aq+((as=aq/4,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero")))>>0;}}}at=AA($clone(am,EZ).Type(),ap,aq);$s=4;case 4:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;av=BA($clone(au,EZ),$clone(am,EZ));$s=5;case 5:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}av;$s=-1;return[au,ao,ap];}return;}if($f===undefined){$f={$blk:FU};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};FV=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:new FA(am.flag).mustBe(23);ap=FU($clone(am,EZ),an.$length);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;am=ao[0];aq=ao[1];ar=ao[2];as=aq;at=0;au=as;av=at;case 2:if(!(au<ar)){$s=3;continue;}aw=$clone(am,EZ).Index(au);$s=4;case 4:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$r=$clone(aw,EZ).Set($clone(((av<0||av>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+av]),EZ));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ax=au+1>>0;ay=av+1>>0;au=ax;av=ay;$s=2;continue;case 3:$s=-1;return am;}return;}if($f===undefined){$f={$blk:FV};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Append=FV;GD=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=am.Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===21))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeMap of non-map type"));case 2:ao=AP($assertType(am,HN));ap=am.common();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(ap,ao,21);}return;}if($f===undefined){$f={$blk:GD};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeMap=GD;GE=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(($clone(am,EZ).Kind()===22))){$s=-1;return am;}an=$clone(am,EZ).Elem();$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:GE};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Indirect=GE;GF=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}an=AJ($assertType(am,HN));ao=22;ap=am.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.ptrTo();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,an,ao);}return;}if($f===undefined){$f={$blk:GF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=GF;EZ.ptr.prototype.assignTo=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=this;if(!((((ap.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:aq=BF(am,$clone(ap,EZ));$s=3;case 3:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;case 2:ar=DL(an,ap.typ);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(ar){$s=5;continue;}if(DK(an,ap.typ)){$s=6;continue;}$s=7;continue;case 5:ap.typ=an;as=(ap.flag&480)>>>0;as=(as|((an.Kind()>>>0)))>>>0;$s=-1;return new EZ.ptr(an,ap.ptr,as);case 6:if(ao===0){ao=AJ(an);}at=BC($clone(ap,EZ),false);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;av=an.NumMethod();$s=13;case 13:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(av===0){$s=10;continue;}$s=11;continue;case 10:ao.$set(au);$s=12;continue;case 11:BD(an,au,ao);case 12:$s=-1;return new EZ.ptr(an,ao,148);case 7:case 4:$panic(new $String(am+": value of type "+ap.typ.String()+" is not assignable to type "+an.String()));$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.assignTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.assignTo=function(am,an,ao){return this.$val.assignTo(am,an,ao);};EZ.ptr.prototype.Convert=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((((an.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ao=BF("Convert",$clone(an,EZ));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;case 2:ap=am.common();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=GH(ap,an.typ);$s=5;case 5:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;if(ar===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:as=am.String();$s=8;case 8:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+an.typ.String()+" cannot be converted to type "+as));case 7:at=ar($clone(an,EZ),am);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=-1;return at;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Convert=function(am){return this.$val.Convert(am);};GH=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=an.Kind();if((ao===(2))||(ao===(3))||(ao===(4))||(ao===(5))||(ao===(6))){$s=2;continue;}if((ao===(7))||(ao===(8))||(ao===(9))||(ao===(10))||(ao===(11))||(ao===(12))){$s=3;continue;}if((ao===(13))||(ao===(14))){$s=4;continue;}if((ao===(15))||(ao===(16))){$s=5;continue;}if(ao===(24)){$s=6;continue;}if(ao===(23)){$s=7;continue;}$s=8;continue;case 2:ap=am.Kind();if((ap===(2))||(ap===(3))||(ap===(4))||(ap===(5))||(ap===(6))||(ap===(7))||(ap===(8))||(ap===(9))||(ap===(10))||(ap===(11))||(ap===(12))){$s=-1;return GN;}else if((ap===(13))||(ap===(14))){$s=-1;return GR;}else if(ap===(24)){$s=-1;return GV;}$s=8;continue;case 3:aq=am.Kind();if((aq===(2))||(aq===(3))||(aq===(4))||(aq===(5))||(aq===(6))||(aq===(7))||(aq===(8))||(aq===(9))||(aq===(10))||(aq===(11))||(aq===(12))){$s=-1;return GO;}else if((aq===(13))||(aq===(14))){$s=-1;return GS;}else if(aq===(24)){$s=-1;return GW;}$s=8;continue;case 4:ar=am.Kind();if((ar===(2))||(ar===(3))||(ar===(4))||(ar===(5))||(ar===(6))){$s=-1;return GP;}else if((ar===(7))||(ar===(8))||(ar===(9))||(ar===(10))||(ar===(11))||(ar===(12))){$s=-1;return GQ;}else if((ar===(13))||(ar===(14))){$s=-1;return GT;}$s=8;continue;case 5:as=am.Kind();if((as===(15))||(as===(16))){$s=-1;return GU;}$s=8;continue;case 6:if(!(am.Kind()===23)){at=false;$s=11;continue s;}au=am.Elem().PkgPath();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au==="";case 11:if(at){$s=9;continue;}$s=10;continue;case 9:av=am.Elem().Kind();$s=14;case 14:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if(aw===(8)){$s=-1;return GY;}else if(aw===(5)){$s=-1;return HA;}case 13:case 10:$s=8;continue;case 7:if(!(am.Kind()===24)){ax=false;$s=17;continue s;}ay=an.Elem().PkgPath();$s=18;case 18:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ax=ay==="";case 17:if(ax){$s=15;continue;}$s=16;continue;case 15:az=an.Elem().Kind();$s=20;case 20:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;if(ba===(8)){$s=-1;return GX;}else if(ba===(5)){$s=-1;return GZ;}case 19:case 16:case 8:case 1:bb=DN(am,an,false);$s=23;case 23:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}if(bb){$s=21;continue;}$s=22;continue;case 21:$s=-1;return AZ;case 22:if(!((am.Kind()===22)&&am.Name()===""&&(an.Kind()===22)&&an.Name()==="")){bc=false;$s=26;continue s;}bd=am.Elem().common();$s=27;case 27:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=an.Elem().common();$s=28;case 28:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf;bh=DN(be,bg,false);$s=29;case 29:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bc=bh;case 26:if(bc){$s=24;continue;}$s=25;continue;case 24:$s=-1;return AZ;case 25:if(DK(am,an)){if(an.Kind()===20){$s=-1;return HC;}$s=-1;return HB;}$s=-1;return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:GH};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.$s=$s;$f.$r=$r;return $f;};GI=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.size;if(as===(4)){ar.$set($fround(an));}else if(as===(8)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:GI};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GJ=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.size;if(as===(8)){ar.$set(new $Complex64(an.$real,an.$imag));}else if(as===(16)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:GJ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GK=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$clone(ar,EZ).SetString(an);ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GK};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GL=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=$clone(ar,EZ).SetBytes(an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GL};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GM=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=$clone(ar,EZ).setRunes(an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GN=function(am,an){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=AK((am.flag&96)>>>0,(ao=$clone(am,EZ).Int(),new $Uint64(ao.$high,ao.$low)),an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:GN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};GO=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=AK((am.flag&96)>>>0,$clone(am,EZ).Uint(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GO};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GP=function(am,an){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=AK((am.flag&96)>>>0,(ao=new $Int64(0,$clone(am,EZ).Float()),new $Uint64(ao.$high,ao.$low)),an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:GP};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};GQ=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=AK((am.flag&96)>>>0,new $Uint64(0,$clone(am,EZ).Float()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GQ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GR=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$flatten64($clone(am,EZ).Int()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GR};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GS=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$flatten64($clone(am,EZ).Uint()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GT=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$clone(am,EZ).Float(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GT};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GU=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GJ((am.flag&96)>>>0,$clone(am,EZ).Complex(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GU};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GV=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GK((am.flag&96)>>>0,$encodeRune($clone(am,EZ).Int().$low),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GV};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GW=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GK((am.flag&96)>>>0,$encodeRune($clone(am,EZ).Uint().$low),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GW};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GX=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).Bytes();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$bytesToString(ap);ar=an;as=GK(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GX};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GY=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=new JC($stringToBytes(ap));ar=an;as=GL(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GY};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GZ=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).runes();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$runesToString(ap);ar=an;as=GK(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GZ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};HA=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=new JP($stringToRunes(ap));ar=an;as=GM(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:HA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};HB=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=an.common();$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=AJ(ao);$s=2;case 2:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=BC($clone(am,EZ),false);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;at=an.NumMethod();$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===0){$s=4;continue;}$s=5;continue;case 4:aq.$set(as);$s=6;continue;case 5:BD($assertType(an,HN),as,aq);case 6:au=an.common();$s=8;case 8:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(au,aq,(((((am.flag&96)>>>0)|128)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:HB};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};HC=function(am,an){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(am,EZ).IsNil()){$s=1;continue;}$s=2;continue;case 1:ao=AI(an);$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=ao;ap.flag=(ap.flag|(((am.flag&96)>>>0)))>>>0;$s=-1;return ap;case 2:aq=$clone(am,EZ).Elem();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=HB($clone(aq,EZ),an);$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar;}return;}if($f===undefined){$f={$blk:HC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};IO.methods=[{prop:"methods",name:"methods",pkg:"reflect",typ:$funcType([],[HP],false)}];JQ.methods=[{prop:"in$",name:"in",pkg:"reflect",typ:$funcType([],[HO],false)},{prop:"out",name:"out",pkg:"reflect",typ:$funcType([],[HO],false)}];O.methods=[{prop:"name",name:"name",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"tag",name:"tag",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"isExported",name:"isExported",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"data",name:"data",pkg:"reflect",typ:$funcType([$Int],[IL],false)},{prop:"nameLen",name:"nameLen",pkg:"reflect",typ:$funcType([],[$Int],false)},{prop:"tagLen",name:"tagLen",pkg:"reflect",typ:$funcType([],[$Int],false)}];BZ.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HN.methods=[{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[IO],false)},{prop:"nameOff",name:"nameOff",pkg:"reflect",typ:$funcType([CY],[O],false)},{prop:"typeOff",name:"typeOff",pkg:"reflect",typ:$funcType([CZ],[HN],false)},{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"textOff",name:"textOff",pkg:"reflect",typ:$funcType([DA],[$UnsafePointer],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"exportedMethods",name:"exportedMethods",pkg:"reflect",typ:$funcType([],[HP],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CE],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BY],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BY],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BY],[$Bool],false)}];CE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];IX.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)}];JB.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)}];DF.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Lookup",name:"Lookup",pkg:"",typ:$funcType([$String],[$String,$Bool],false)}];EZ.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[IH],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,IS],[IS],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[EZ],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[KB],false)},{prop:"IsNil",name:"IsNil",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Pointer",name:"Pointer",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([EZ],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([JC],[],false)},{prop:"SetCap",name:"SetCap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetLen",name:"SetLen",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Slice",name:"Slice",pkg:"",typ:$funcType([$Int,$Int],[EZ],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[EZ],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[],false)},{prop:"pointer",name:"pointer",pkg:"reflect",typ:$funcType([],[$UnsafePointer],false)},{prop:"Addr",name:"Addr",pkg:"",typ:$funcType([],[EZ],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[JC],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[JP],false)},{prop:"CanAddr",name:"CanAddr",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"CanSet",name:"CanSet",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([IS],[IS],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([IS],[IS],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[EZ],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[EZ],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[EZ],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"CanInterface",name:"CanInterface",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"IsValid",name:"IsValid",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([EZ],[EZ],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[IS],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[EZ],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"OverflowComplex",name:"OverflowComplex",pkg:"",typ:$funcType([$Complex128],[$Bool],false)},{prop:"OverflowFloat",name:"OverflowFloat",pkg:"",typ:$funcType([$Float64],[$Bool],false)},{prop:"OverflowInt",name:"OverflowInt",pkg:"",typ:$funcType([$Int64],[$Bool],false)},{prop:"OverflowUint",name:"OverflowUint",pkg:"",typ:$funcType([$Uint64],[$Bool],false)},{prop:"Recv",name:"Recv",pkg:"",typ:$funcType([],[EZ,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[EZ,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([EZ],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([EZ,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([JP],[],false)},{prop:"SetComplex",name:"SetComplex",pkg:"",typ:$funcType([$Complex128],[],false)},{prop:"SetFloat",name:"SetFloat",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"SetInt",name:"SetInt",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"SetMapIndex",name:"SetMapIndex",pkg:"",typ:$funcType([EZ,EZ],[],false)},{prop:"SetUint",name:"SetUint",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"SetPointer",name:"SetPointer",pkg:"",typ:$funcType([$UnsafePointer],[],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"TryRecv",name:"TryRecv",pkg:"",typ:$funcType([],[EZ,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([EZ],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BY],false)},{prop:"Uint",name:"Uint",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"UnsafeAddr",name:"UnsafeAddr",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"assignTo",name:"assignTo",pkg:"reflect",typ:$funcType([$String,HN,$UnsafePointer],[EZ],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BY],[EZ],false)}];FA.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BZ],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BZ],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];KC.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];L.init("reflect",[{prop:"pkgPath",name:"pkgPath",exported:false,typ:CY,tag:""},{prop:"mcount",name:"mcount",exported:false,typ:$Uint16,tag:""},{prop:"_$2",name:"_",exported:false,typ:$Uint16,tag:""},{prop:"moff",name:"moff",exported:false,typ:$Uint32,tag:""},{prop:"_$4",name:"_",exported:false,typ:$Uint32,tag:""},{prop:"_methods",name:"_methods",exported:false,typ:HP,tag:""}]);N.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"func\""},{prop:"inCount",name:"inCount",exported:false,typ:$Uint16,tag:""},{prop:"outCount",name:"outCount",exported:false,typ:$Uint16,tag:""},{prop:"_in",name:"_in",exported:false,typ:HO,tag:""},{prop:"_out",name:"_out",exported:false,typ:HO,tag:""}]);O.init("reflect",[{prop:"bytes",name:"bytes",exported:false,typ:IL,tag:""}]);P.init("reflect",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"tag",name:"tag",exported:false,typ:$String,tag:""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:$String,tag:""},{prop:"exported",name:"exported",exported:false,typ:$Bool,tag:""}]);AU.init("reflect",[{prop:"t",name:"t",exported:false,typ:BY,tag:""},{prop:"m",name:"m",exported:false,typ:IH,tag:""},{prop:"keys",name:"keys",exported:false,typ:IH,tag:""},{prop:"i",name:"i",exported:false,typ:$Int,tag:""}]);BY.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CE],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BY],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BY],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[IO],false)}]);CB.init("reflect",[{prop:"size",name:"size",exported:false,typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",exported:false,typ:$Uintptr,tag:""},{prop:"hash",name:"hash",exported:false,typ:$Uint32,tag:""},{prop:"tflag",name:"tflag",exported:false,typ:CA,tag:""},{prop:"align",name:"align",exported:false,typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",exported:false,typ:$Uint8,tag:""},{prop:"kind",name:"kind",exported:false,typ:$Uint8,tag:""},{prop:"alg",name:"alg",exported:false,typ:IK,tag:""},{prop:"gcdata",name:"gcdata",exported:false,typ:IL,tag:""},{prop:"str",name:"str",exported:false,typ:CY,tag:""},{prop:"ptrToThis",name:"ptrToThis",exported:false,typ:CZ,tag:""}]);CC.init("reflect",[{prop:"hash",name:"hash",exported:false,typ:JT,tag:""},{prop:"equal",name:"equal",exported:false,typ:JU,tag:""}]);CD.init("reflect",[{prop:"name",name:"name",exported:false,typ:CY,tag:""},{prop:"mtyp",name:"mtyp",exported:false,typ:CZ,tag:""},{prop:"ifn",name:"ifn",exported:false,typ:DA,tag:""},{prop:"tfn",name:"tfn",exported:false,typ:DA,tag:""}]);CF.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"array\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"slice",name:"slice",exported:false,typ:HN,tag:""},{prop:"len",name:"len",exported:false,typ:$Uintptr,tag:""}]);CG.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"dir",name:"dir",exported:false,typ:$Uintptr,tag:""}]);CH.init("reflect",[{prop:"name",name:"name",exported:false,typ:CY,tag:""},{prop:"typ",name:"typ",exported:false,typ:CZ,tag:""}]);CI.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"interface\""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:O,tag:""},{prop:"methods",name:"methods",exported:false,typ:IM,tag:""}]);CJ.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"map\""},{prop:"key",name:"key",exported:false,typ:HN,tag:""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"bucket",name:"bucket",exported:false,typ:HN,tag:""},{prop:"hmap",name:"hmap",exported:false,typ:HN,tag:""},{prop:"keysize",name:"keysize",exported:false,typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",exported:false,typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",exported:false,typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",exported:false,typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",exported:false,typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",exported:false,typ:$Bool,tag:""},{prop:"needkeyupdate",name:"needkeyupdate",exported:false,typ:$Bool,tag:""}]);CK.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""}]);CL.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""}]);CM.init("reflect",[{prop:"name",name:"name",exported:false,typ:O,tag:""},{prop:"typ",name:"typ",exported:false,typ:HN,tag:""},{prop:"offset",name:"offset",exported:false,typ:$Uintptr,tag:""}]);CN.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"struct\""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:O,tag:""},{prop:"fields",name:"fields",exported:false,typ:IN,tag:""}]);CP.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",exported:true,typ:BY,tag:""},{prop:"Func",name:"Func",exported:true,typ:EZ,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Int,tag:""}]);DE.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",exported:true,typ:BY,tag:""},{prop:"Tag",name:"Tag",exported:true,typ:DF,tag:""},{prop:"Offset",name:"Offset",exported:true,typ:$Uintptr,tag:""},{prop:"Index",name:"Index",exported:true,typ:IZ,tag:""},{prop:"Anonymous",name:"Anonymous",exported:true,typ:$Bool,tag:""}]);DG.init("reflect",[{prop:"typ",name:"typ",exported:false,typ:JB,tag:""},{prop:"index",name:"index",exported:false,typ:IZ,tag:""}]);EZ.init("reflect",[{prop:"typ",name:"typ",exported:false,typ:HN,tag:""},{prop:"ptr",name:"ptr",exported:false,typ:$UnsafePointer,tag:""},{prop:"flag",name:"",exported:false,typ:FA,tag:""}]);FD.init("",[{prop:"Method",name:"Method",exported:true,typ:$String,tag:""},{prop:"Kind",name:"Kind",exported:true,typ:BZ,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}S=HM.nil;U=HO.nil;DB=new HR.ptr(new E.RWMutex.ptr(new E.Mutex.ptr(0,0),0,0,0,0),false);G=false;M={};Q={};BG=$assertType($internalize($call,$emptyInterface),II);BL=$assertType($internalize($select,$emptyInterface),II);BH=J($jsObjectPtr);CQ=new IJ(["invalid","bool","int","int8","int16","int32","int64","uint","uint8","uint16","uint32","uint64","uintptr","float32","float64","complex64","complex128","array","chan","func","interface","map","ptr","slice","string","struct","unsafe.Pointer"]);FM=$assertType(AB(new $Uint8(0)),HN);$r=H();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["fmt"]=(function(){var $pkg={},$init,C,D,H,E,F,A,G,B,I,J,K,L,M,N,O,P,AI,AU,AV,AW,BI,BJ,BK,BL,BM,BN,BO,BP,BS,CN,CO,Q,AF,AX,BB,BD,BE,R,S,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AG,AH,AY,AZ,BF;C=$packages["errors"];D=$packages["io"];H=$packages["math"];E=$packages["os"];F=$packages["reflect"];A=$packages["strconv"];G=$packages["sync"];B=$packages["unicode/utf8"];I=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags",true,"fmt",false,function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,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.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.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});J=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt",true,"fmt",false,function(buf_,fmtFlags_,wid_,prec_,intbuf_){this.$val=this;if(arguments.length===0){this.buf=BK.nil;this.fmtFlags=new I.ptr(false,false,false,false,false,false,false,false,false);this.wid=0;this.prec=0;this.intbuf=BL.zero();return;}this.buf=buf_;this.fmtFlags=fmtFlags_;this.wid=wid_;this.prec=prec_;this.intbuf=intbuf_;});K=$pkg.State=$newType(8,$kindInterface,"fmt.State",true,"fmt",true,null);L=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter",true,"fmt",true,null);M=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer",true,"fmt",true,null);N=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer",true,"fmt",true,null);O=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer",true,"fmt",false,null);P=$pkg.pp=$newType(0,$kindStruct,"fmt.pp",true,"fmt",false,function(buf_,arg_,value_,fmt_,reordered_,goodArgNum_,panicking_,erroring_){this.$val=this;if(arguments.length===0){this.buf=O.nil;this.arg=$ifaceNil;this.value=new F.Value.ptr(BJ.nil,0,0);this.fmt=new J.ptr(BK.nil,new I.ptr(false,false,false,false,false,false,false,false,false),0,0,BL.zero());this.reordered=false;this.goodArgNum=false;this.panicking=false;this.erroring=false;return;}this.buf=buf_;this.arg=arg_;this.value=value_;this.fmt=fmt_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.panicking=panicking_;this.erroring=erroring_;});AI=$pkg.ScanState=$newType(8,$kindInterface,"fmt.ScanState",true,"fmt",true,null);AU=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError",true,"fmt",false,function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});AV=$pkg.ss=$newType(0,$kindStruct,"fmt.ss",true,"fmt",false,function(rs_,buf_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rs=$ifaceNil;this.buf=O.nil;this.count=0;this.atEOF=false;this.ssave=new AW.ptr(false,false,false,0,0,0);return;}this.rs=rs_;this.buf=buf_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});AW=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave",true,"fmt",false,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_;});BI=$sliceType($emptyInterface);BJ=$ptrType(F.rtype);BK=$ptrType(O);BL=$arrayType($Uint8,68);BM=$arrayType($Uint16,2);BN=$sliceType(BM);BO=$sliceType($Uint8);BP=$ptrType(P);BS=$ptrType(AV);CN=$ptrType(J);CO=$funcType([$Int32],[$Bool],false);J.ptr.prototype.clearflags=function(){var $ptr,a;a=this;I.copy(a.fmtFlags,new I.ptr(false,false,false,false,false,false,false,false,false));};J.prototype.clearflags=function(){return this.$val.clearflags();};J.ptr.prototype.init=function(a){var $ptr,a,b;b=this;b.buf=a;b.clearflags();};J.prototype.init=function(a){return this.$val.init(a);};J.ptr.prototype.writePadding=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=this;if(a<=0){return;}c=b.buf.$get();d=c.$length;e=d+a>>0;if(e>c.$capacity){c=$makeSlice(O,(($imul(c.$capacity,2))+a>>0));$copySlice(c,b.buf.$get());}f=32;if(b.fmtFlags.zero){f=48;}g=$subslice(c,d,e);h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=f);i++;}b.buf.$set($subslice(c,0,e));};J.prototype.writePadding=function(a){return this.$val.writePadding(a);};J.ptr.prototype.pad=function(a){var $ptr,a,b,c;b=this;if(!b.fmtFlags.widPresent||(b.wid===0)){b.buf.Write(a);return;}c=b.wid-B.RuneCount(a)>>0;if(!b.fmtFlags.minus){b.writePadding(c);b.buf.Write(a);}else{b.buf.Write(a);b.writePadding(c);}};J.prototype.pad=function(a){return this.$val.pad(a);};J.ptr.prototype.padString=function(a){var $ptr,a,b,c;b=this;if(!b.fmtFlags.widPresent||(b.wid===0)){b.buf.WriteString(a);return;}c=b.wid-B.RuneCountInString(a)>>0;if(!b.fmtFlags.minus){b.writePadding(c);b.buf.WriteString(a);}else{b.buf.WriteString(a);b.writePadding(c);}};J.prototype.padString=function(a){return this.$val.padString(a);};J.ptr.prototype.fmt_boolean=function(a){var $ptr,a,b;b=this;if(a){b.padString("true");}else{b.padString("false");}};J.prototype.fmt_boolean=function(a){return this.$val.fmt_boolean(a);};J.ptr.prototype.fmt_unicode=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=$subslice(new BO(b.intbuf),0);d=4;if(b.fmtFlags.precPresent&&b.prec>4){d=b.prec;e=(((2+d>>0)+2>>0)+4>>0)+1>>0;if(e>c.$length){c=$makeSlice(BO,e);}}f=c.$length;if(b.fmtFlags.sharp&&(a.$high<0||(a.$high===0&&a.$low<=1114111))&&A.IsPrint((a.$low>>0))){f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=39);f=f-(B.RuneLen((a.$low>>0)))>>0;B.EncodeRune($subslice(c,f),(a.$low>>0));f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=39);f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=32);}while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=16)))){break;}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]="0123456789ABCDEFX".charCodeAt($flatten64(new $Uint64(a.$high&0,(a.$low&15)>>>0))));d=d-(1)>>0;a=$shiftRightUint64(a,(4));}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]="0123456789ABCDEFX".charCodeAt($flatten64(a)));d=d-(1)>>0;while(true){if(!(d>0)){break;}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=48);d=d-(1)>>0;}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=43);f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=85);g=b.fmtFlags.zero;b.fmtFlags.zero=false;b.pad($subslice(c,f));b.fmtFlags.zero=g;};J.prototype.fmt_unicode=function(a){return this.$val.fmt_unicode(a);};J.ptr.prototype.fmt_integer=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;e=this;g=c&&(f=new $Int64(a.$high,a.$low),(f.$high<0||(f.$high===0&&f.$low<0)));if(g){a=new $Uint64(-a.$high,-a.$low);}h=$subslice(new BO(e.intbuf),0);if(e.fmtFlags.widPresent||e.fmtFlags.precPresent){i=(3+e.wid>>0)+e.prec>>0;if(i>h.$length){h=$makeSlice(BO,i);}}j=0;if(e.fmtFlags.precPresent){j=e.prec;if((j===0)&&(a.$high===0&&a.$low===0)){k=e.fmtFlags.zero;e.fmtFlags.zero=false;e.writePadding(e.wid);e.fmtFlags.zero=k;return;}}else if(e.fmtFlags.zero&&e.fmtFlags.widPresent){j=e.wid;if(g||e.fmtFlags.plus||e.fmtFlags.space){j=j-(1)>>0;}}l=h.$length;m=b;if(m===(10)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=10)))){break;}l=l-(1)>>0;n=$div64(a,new $Uint64(0,10),false);((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=((o=new $Uint64(0+a.$high,48+a.$low),p=$mul64(n,new $Uint64(0,10)),new $Uint64(o.$high-p.$high,o.$low-p.$low)).$low<<24>>>24));a=n;}}else if(m===(16)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=d.charCodeAt($flatten64(new $Uint64(a.$high&0,(a.$low&15)>>>0))));a=$shiftRightUint64(a,(4));}}else if(m===(8)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=((q=new $Uint64(a.$high&0,(a.$low&7)>>>0),new $Uint64(0+q.$high,48+q.$low)).$low<<24>>>24));a=$shiftRightUint64(a,(3));}}else if(m===(2)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=((r=new $Uint64(a.$high&0,(a.$low&1)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));a=$shiftRightUint64(a,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=d.charCodeAt($flatten64(a)));while(true){if(!(l>0&&j>(h.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=48);}if(e.fmtFlags.sharp){s=b;if(s===(8)){if(!((((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=48);}}else if(s===(16)){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=d.charCodeAt(16));l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=48);}}if(g){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=45);}else if(e.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=43);}else if(e.fmtFlags.space){l=l-(1)>>0;((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]=32);}t=e.fmtFlags.zero;e.fmtFlags.zero=false;e.pad($subslice(h,l));e.fmtFlags.zero=t;};J.prototype.fmt_integer=function(a,b,c,d){return this.$val.fmt_integer(a,b,c,d);};J.ptr.prototype.truncate=function(a){var $ptr,a,b,c,d,e,f,g;b=this;if(b.fmtFlags.precPresent){c=b.prec;d=a;e=0;while(true){if(!(e<d.length)){break;}f=$decodeRune(d,e);g=e;c=c-(1)>>0;if(c<0){return $substring(a,0,g);}e+=f[1];}}return a;};J.prototype.truncate=function(a){return this.$val.truncate(a);};J.ptr.prototype.fmt_s=function(a){var $ptr,a,b;b=this;a=b.truncate(a);b.padString(a);};J.prototype.fmt_s=function(a){return this.$val.fmt_s(a);};J.ptr.prototype.fmt_sbx=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=this;e=b.$length;if(b===BO.nil){e=a.length;}if(d.fmtFlags.precPresent&&d.prec<e){e=d.prec;}f=$imul(2,e);if(f>0){if(d.fmtFlags.space){if(d.fmtFlags.sharp){f=$imul(f,(2));}f=f+((e-1>>0))>>0;}else if(d.fmtFlags.sharp){f=f+(2)>>0;}}else{if(d.fmtFlags.widPresent){d.writePadding(d.wid);}return;}if(d.fmtFlags.widPresent&&d.wid>f&&!d.fmtFlags.minus){d.writePadding(d.wid-f>>0);}g=d.buf.$get();if(d.fmtFlags.sharp){g=$append(g,48,c.charCodeAt(16));}h=0;i=0;while(true){if(!(i<e)){break;}if(d.fmtFlags.space&&i>0){g=$append(g,32);if(d.fmtFlags.sharp){g=$append(g,48,c.charCodeAt(16));}}if(!(b===BO.nil)){h=((i<0||i>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+i]);}else{h=a.charCodeAt(i);}g=$append(g,c.charCodeAt((h>>>4<<24>>>24)),c.charCodeAt(((h&15)>>>0)));i=i+(1)>>0;}d.buf.$set(g);if(d.fmtFlags.widPresent&&d.wid>f&&d.fmtFlags.minus){d.writePadding(d.wid-f>>0);}};J.prototype.fmt_sbx=function(a,b,c){return this.$val.fmt_sbx(a,b,c);};J.ptr.prototype.fmt_sx=function(a,b){var $ptr,a,b,c;c=this;c.fmt_sbx(a,BO.nil,b);};J.prototype.fmt_sx=function(a,b){return this.$val.fmt_sx(a,b);};J.ptr.prototype.fmt_bx=function(a,b){var $ptr,a,b,c;c=this;c.fmt_sbx("",a,b);};J.prototype.fmt_bx=function(a,b){return this.$val.fmt_bx(a,b);};J.ptr.prototype.fmt_q=function(a){var $ptr,a,b,c;b=this;a=b.truncate(a);if(b.fmtFlags.sharp&&A.CanBackquote(a)){b.padString("`"+a+"`");return;}c=$subslice(new BO(b.intbuf),0,0);if(b.fmtFlags.plus){b.pad(A.AppendQuoteToASCII(c,a));}else{b.pad(A.AppendQuote(c,a));}};J.prototype.fmt_q=function(a){return this.$val.fmt_q(a);};J.ptr.prototype.fmt_c=function(a){var $ptr,a,b,c,d,e;b=this;c=(a.$low>>0);if((a.$high>0||(a.$high===0&&a.$low>1114111))){c=65533;}d=$subslice(new BO(b.intbuf),0,0);e=B.EncodeRune($subslice(d,0,4),c);b.pad($subslice(d,0,e));};J.prototype.fmt_c=function(a){return this.$val.fmt_c(a);};J.ptr.prototype.fmt_qc=function(a){var $ptr,a,b,c,d;b=this;c=(a.$low>>0);if((a.$high>0||(a.$high===0&&a.$low>1114111))){c=65533;}d=$subslice(new BO(b.intbuf),0,0);if(b.fmtFlags.plus){b.pad(A.AppendQuoteRuneToASCII(d,c));}else{b.pad(A.AppendQuoteRune(d,c));}};J.prototype.fmt_qc=function(a){return this.$val.fmt_qc(a);};J.ptr.prototype.fmt_float=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=this;if(e.fmtFlags.precPresent){d=e.prec;}f=A.AppendFloat($subslice(new BO(e.intbuf),0,1),a,(c<<24>>>24),d,b);if(((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===45)||((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===43)){f=$subslice(f,1);}else{(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=43);}if(e.fmtFlags.space&&((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])===43)&&!e.fmtFlags.plus){(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=32);}if(((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===73)||((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===78)){g=e.fmtFlags.zero;e.fmtFlags.zero=false;if(((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===78)&&!e.fmtFlags.space&&!e.fmtFlags.plus){f=$subslice(f,1);}e.pad(f);e.fmtFlags.zero=g;return;}if(e.fmtFlags.plus||!(((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])===43))){if(e.fmtFlags.zero&&e.fmtFlags.widPresent&&e.wid>f.$length){e.buf.WriteByte((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]));e.writePadding(e.wid-f.$length>>0);e.buf.Write($subslice(f,1));return;}e.pad(f);return;}e.pad($subslice(f,1));};J.prototype.fmt_float=function(a,b,c,d){return this.$val.fmt_float(a,b,c,d);};$ptrType(O).prototype.Write=function(a){var $ptr,a,b;b=this;b.$set($appendSlice(b.$get(),a));};$ptrType(O).prototype.WriteString=function(a){var $ptr,a,b;b=this;b.$set($appendSlice(b.$get(),a));};$ptrType(O).prototype.WriteByte=function(a){var $ptr,a,b;b=this;b.$set($append(b.$get(),a));};$ptrType(O).prototype.WriteRune=function(a){var $ptr,a,b,c,d,e,f;b=this;if(a<128){b.$set($append(b.$get(),(a<<24>>>24)));return;}c=b.$get();d=c.$length;while(true){if(!((d+4>>0)>c.$capacity)){break;}c=$append(c,0);}f=B.EncodeRune((e=$subslice(c,d,(d+4>>0)),$subslice(new BO(e.$array),e.$offset,e.$offset+e.$length)),a);b.$set($subslice(c,0,(d+f>>0)));};R=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=Q.Get();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}b=$assertType(a,BP);b.panicking=false;b.erroring=false;b.fmt.init((b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))));$s=-1;return b;}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};P.ptr.prototype.free=function(){var $ptr,a;a=this;a.buf=$subslice(a.buf,0,0);a.arg=$ifaceNil;a.value=new F.Value.ptr(BJ.nil,0,0);Q.Put(a);};P.prototype.free=function(){return this.$val.free();};P.ptr.prototype.Width=function(){var $ptr,a,b,c,d,e;a=0;b=false;c=this;d=c.fmt.wid;e=c.fmt.fmtFlags.widPresent;a=d;b=e;return[a,b];};P.prototype.Width=function(){return this.$val.Width();};P.ptr.prototype.Precision=function(){var $ptr,a,b,c,d,e;a=0;b=false;c=this;d=c.fmt.prec;e=c.fmt.fmtFlags.precPresent;a=d;b=e;return[a,b];};P.prototype.Precision=function(){return this.$val.Precision();};P.ptr.prototype.Flag=function(a){var $ptr,a,b,c;b=this;c=a;if(c===(45)){return b.fmt.fmtFlags.minus;}else if(c===(43)){return b.fmt.fmtFlags.plus||b.fmt.fmtFlags.plusV;}else if(c===(35)){return b.fmt.fmtFlags.sharp||b.fmt.fmtFlags.sharpV;}else if(c===(32)){return b.fmt.fmtFlags.space;}else if(c===(48)){return b.fmt.fmtFlags.zero;}return false;};P.prototype.Flag=function(a){return this.$val.Flag(a);};P.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(a);e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};P.prototype.Write=function(a){return this.$val.Write(a);};S=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;f=R();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$r=g.doPrintf(b,c);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=a.Write((i=g.buf,$subslice(new BO(i.$array),i.$offset,i.$offset+i.$length)));$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}h=j;d=h[0];e=h[1];g.free();$s=-1;return[d,e];}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.$s=$s;$f.$r=$r;return $f;};$pkg.Fprintf=S;U=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=R();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$r=d.doPrintf(a,b);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=$bytesToString(d.buf);d.free();$s=-1;return e;}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.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=U;V=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=U(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=C.New(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:V};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=V;W=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=$ifaceNil;e=R();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrint(b);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=a.Write((h=f.buf,$subslice(new BO(h.$array),h.$offset,h.$offset+h.$length)));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=i;c=g[0];d=g[1];f.free();$s=-1;return[c,d];}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.Fprint=W;X=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;e=W(E.Stdout,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;b=d[0];c=d[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:X};}$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.Print=X;Y=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=R();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$r=c.doPrint(a);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$bytesToString(c.buf);c.free();$s=-1;return d;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=Y;Z=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=$ifaceNil;e=R();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintln(b);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=a.Write((h=f.buf,$subslice(new BO(h.$array),h.$offset,h.$offset+h.$length)));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=i;c=g[0];d=g[1];f.free();$s=-1;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.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fprintln=Z;AA=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;e=Z(E.Stdout,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;b=d[0];c=d[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:AA};}$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.Println=AA;AB=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=R();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$r=c.doPrintln(a);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$bytesToString(c.buf);c.free();$s=-1;return d;}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AB;AC=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=$clone(a,F.Value).Field(b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(($clone(d,F.Value).Kind()===20)&&!$clone(d,F.Value).IsNil()){$s=2;continue;}$s=3;continue;case 2:e=$clone(d,F.Value).Elem();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 3:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AD=function(a){var $ptr,a;return a>1000000||a<-1000000;};AE=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=0;e=false;f=0;if(b>=c){g=0;h=false;i=c;d=g;e=h;f=i;return[d,e,f];}f=b;while(true){if(!(f<c&&48<=a.charCodeAt(f)&&a.charCodeAt(f)<=57)){break;}if(AD(d)){j=0;k=false;l=c;d=j;e=k;f=l;return[d,e,f];}d=($imul(d,10))+((a.charCodeAt(f)-48<<24>>>24)>>0)>>0;e=true;f=f+(1)>>0;}return[d,e,f];};P.ptr.prototype.unknownType=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(!$clone(a,F.Value).IsValid()){(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("<nil>");$s=-1;return;}(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(63);c=$clone(a,F.Value).Type().String();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$r=(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString(c);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(63);$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.unknownType=function(a){return this.$val.unknownType(a);};P.ptr.prototype.badVerb=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.erroring=true;(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("%!");(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteRune(a);(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(40);if(!($interfaceIsEqual(b.arg,$ifaceNil))){$s=2;continue;}if($clone(b.value,F.Value).IsValid()){$s=3;continue;}$s=4;continue;case 2:c=F.TypeOf(b.arg).String();$s=6;case 6:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$r=(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString(c);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(61);$r=b.printArg(b.arg,118);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 3:d=$clone(b.value,F.Value).Type().String();$s=9;case 9:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$r=(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString(d);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(61);$r=b.printValue($clone(b.value,F.Value),118,0);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("<nil>");case 5:case 1:(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(41);b.erroring=false;$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.badVerb};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.badVerb=function(a){return this.$val.badVerb(a);};P.ptr.prototype.fmtBool=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;d=b;if((d===(116))||(d===(118))){$s=2;continue;}$s=3;continue;case 2:c.fmt.fmt_boolean(a);$s=4;continue;case 3:$r=c.badVerb(b);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtBool=function(a,b){return this.$val.fmtBool(a,b);};P.ptr.prototype.fmt0x64=function(a,b){var $ptr,a,b,c,d;c=this;d=c.fmt.fmtFlags.sharp;c.fmt.fmtFlags.sharp=b;c.fmt.fmt_integer(a,16,false,"0123456789abcdefx");c.fmt.fmtFlags.sharp=d;};P.prototype.fmt0x64=function(a,b){return this.$val.fmt0x64(a,b);};P.ptr.prototype.fmtInteger=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=c;if(e===(118)){$s=2;continue;}if(e===(100)){$s=3;continue;}if(e===(98)){$s=4;continue;}if(e===(111)){$s=5;continue;}if(e===(120)){$s=6;continue;}if(e===(88)){$s=7;continue;}if(e===(99)){$s=8;continue;}if(e===(113)){$s=9;continue;}if(e===(85)){$s=10;continue;}$s=11;continue;case 2:if(d.fmt.fmtFlags.sharpV&&!b){d.fmt0x64(a,true);}else{d.fmt.fmt_integer(a,10,b,"0123456789abcdefx");}$s=12;continue;case 3:d.fmt.fmt_integer(a,10,b,"0123456789abcdefx");$s=12;continue;case 4:d.fmt.fmt_integer(a,2,b,"0123456789abcdefx");$s=12;continue;case 5:d.fmt.fmt_integer(a,8,b,"0123456789abcdefx");$s=12;continue;case 6:d.fmt.fmt_integer(a,16,b,"0123456789abcdefx");$s=12;continue;case 7:d.fmt.fmt_integer(a,16,b,"0123456789ABCDEFX");$s=12;continue;case 8:d.fmt.fmt_c(a);$s=12;continue;case 9:if((a.$high<0||(a.$high===0&&a.$low<=1114111))){$s=13;continue;}$s=14;continue;case 13:d.fmt.fmt_qc(a);$s=15;continue;case 14:$r=d.badVerb(c);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:$s=12;continue;case 10:d.fmt.fmt_unicode(a);$s=12;continue;case 11:$r=d.badVerb(c);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 12:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtInteger};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtInteger=function(a,b,c){return this.$val.fmtInteger(a,b,c);};P.ptr.prototype.fmtFloat=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=c;if(e===(118)){$s=2;continue;}if((e===(98))||(e===(103))||(e===(71))){$s=3;continue;}if((e===(102))||(e===(101))||(e===(69))){$s=4;continue;}if(e===(70)){$s=5;continue;}$s=6;continue;case 2:d.fmt.fmt_float(a,b,103,-1);$s=7;continue;case 3:d.fmt.fmt_float(a,b,c,-1);$s=7;continue;case 4:d.fmt.fmt_float(a,b,c,6);$s=7;continue;case 5:d.fmt.fmt_float(a,b,102,6);$s=7;continue;case 6:$r=d.badVerb(c);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtFloat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtFloat=function(a,b,c){return this.$val.fmtFloat(a,b,c);};P.ptr.prototype.fmtComplex=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:d=this;e=c;if((e===(118))||(e===(98))||(e===(103))||(e===(71))||(e===(102))||(e===(70))||(e===(101))||(e===(69))){$s=2;continue;}$s=3;continue;case 2:f=d.fmt.fmtFlags.plus;(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(40);$r=d.fmtFloat(a.$real,(g=b/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),c);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.fmt.fmtFlags.plus=true;$r=d.fmtFloat(a.$imag,(h=b/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),c);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("i)");d.fmt.fmtFlags.plus=f;$s=4;continue;case 3:$r=d.badVerb(c);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtComplex};}$f.$ptr=$ptr;$f.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.fmtComplex=function(a,b,c){return this.$val.fmtComplex(a,b,c);};P.ptr.prototype.fmtString=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;d=b;if(d===(118)){$s=2;continue;}if(d===(115)){$s=3;continue;}if(d===(120)){$s=4;continue;}if(d===(88)){$s=5;continue;}if(d===(113)){$s=6;continue;}$s=7;continue;case 2:if(c.fmt.fmtFlags.sharpV){c.fmt.fmt_q(a);}else{c.fmt.fmt_s(a);}$s=8;continue;case 3:c.fmt.fmt_s(a);$s=8;continue;case 4:c.fmt.fmt_sx(a,"0123456789abcdefx");$s=8;continue;case 5:c.fmt.fmt_sx(a,"0123456789ABCDEFX");$s=8;continue;case 6:c.fmt.fmt_q(a);$s=8;continue;case 7:$r=c.badVerb(b);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtString=function(a,b){return this.$val.fmtString(a,b);};P.ptr.prototype.fmtBytes=function(a,b,c){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:d=this;e=b;if((e===(118))||(e===(100))){$s=2;continue;}if(e===(115)){$s=3;continue;}if(e===(120)){$s=4;continue;}if(e===(88)){$s=5;continue;}if(e===(113)){$s=6;continue;}$s=7;continue;case 2:if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(c);if(a===BO.nil){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("(nil)");$s=-1;return;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(123);f=a;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(h>0){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(", ");}d.fmt0x64(new $Uint64(0,i),true);g++;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(125);}else{(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(91);j=a;k=0;while(true){if(!(k<j.$length)){break;}l=k;m=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);if(l>0){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(32);}d.fmt.fmt_integer(new $Uint64(0,m),10,false,"0123456789abcdefx");k++;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(93);}$s=8;continue;case 3:d.fmt.fmt_s($bytesToString(a));$s=8;continue;case 4:d.fmt.fmt_bx(a,"0123456789abcdefx");$s=8;continue;case 5:d.fmt.fmt_bx(a,"0123456789ABCDEFX");$s=8;continue;case 6:d.fmt.fmt_q($bytesToString(a));$s=8;continue;case 7:n=F.ValueOf(a);$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=d.printValue($clone(n,F.Value),b,0);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtBytes};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.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;};P.prototype.fmtBytes=function(a,b,c){return this.$val.fmtBytes(a,b,c);};P.ptr.prototype.fmtPointer=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=0;e=$clone(a,F.Value).Kind();if((e===(18))||(e===(19))||(e===(21))||(e===(22))||(e===(23))||(e===(26))){$s=2;continue;}$s=3;continue;case 2:d=$clone(a,F.Value).Pointer();$s=4;continue;case 3:$r=c.badVerb(b);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 4:case 1:f=b;if(f===(118)){$s=7;continue;}if(f===(112)){$s=8;continue;}if((f===(98))||(f===(111))||(f===(100))||(f===(120))||(f===(88))){$s=9;continue;}$s=10;continue;case 7:if(c.fmt.fmtFlags.sharpV){$s=12;continue;}$s=13;continue;case 12:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(40);g=$clone(a,F.Value).Type().String();$s=15;case 15:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$r=(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString(g);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString(")(");if(d===0){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("nil");}else{c.fmt0x64(new $Uint64(0,d.constructor===Number?d:1),true);}(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(41);$s=14;continue;case 13:if(d===0){c.fmt.padString("<nil>");}else{c.fmt0x64(new $Uint64(0,d.constructor===Number?d:1),!c.fmt.fmtFlags.sharp);}case 14:$s=11;continue;case 8:c.fmt0x64(new $Uint64(0,d.constructor===Number?d:1),!c.fmt.fmtFlags.sharp);$s=11;continue;case 9:$r=c.fmtInteger(new $Uint64(0,d.constructor===Number?d:1),false,b);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 10:$r=c.badVerb(b);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:case 6:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.fmtPointer};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.fmtPointer=function(a,b){return this.$val.fmtPointer(a,b);};P.ptr.prototype.catchPanic=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=$recover();if(!($interfaceIsEqual(d,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:e=F.ValueOf(a);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(($clone(f,F.Value).Kind()===22)&&$clone(f,F.Value).IsNil()){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("<nil>");$s=-1;return;}if(c.panicking){$panic(d);}g=$clone(c.fmt.fmtFlags,I);c.fmt.clearflags();(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!");(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteRune(b);(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("(PANIC=");c.panicking=true;$r=c.printArg(d,118);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.panicking=false;(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(41);I.copy(c.fmt.fmtFlags,g);case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.catchPanic};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.catchPanic=function(a,b){return this.$val.catchPanic(a,b);};P.ptr.prototype.handleMethods=function(a){var $ptr,a,b,c,d,e,f,g,h,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;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;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);b=false;c=this;if(c.erroring){$s=-1;return b;}d=$assertType(c.arg,L,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a]]);$r=e.Format(c,a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b;case 2:if(c.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:g=$assertType(c.arg,N,true);h=g[0];i=g[1];if(i){$s=7;continue;}$s=8;continue;case 7:b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a]]);j=h.GoString();$s=9;case 9:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$r=c.fmt.fmt_s(j);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b;case 8:$s=6;continue;case 5:k=a;if((k===(118))||(k===(115))||(k===(120))||(k===(88))||(k===(113))){$s=12;continue;}$s=13;continue;case 12:l=c.arg;if($assertType(l,$error,true)[1]){$s=14;continue;}if($assertType(l,M,true)[1]){$s=15;continue;}$s=16;continue;case 14:m=l;b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a]]);o=m.Error();$s=17;case 17:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$r=c.fmtString(o,a);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b;case 15:n=l;b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a]]);p=n.String();$s=19;case 19:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=c.fmtString(p,a);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b;case 16:case 13:case 11:case 6:b=false;$s=-1;return b;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return b;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.handleMethods};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.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;}}};P.prototype.handleMethods=function(a){return this.$val.handleMethods(a);};P.ptr.prototype.printArg=function(a,b){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:c=this;c.arg=a;c.value=new F.Value.ptr(BJ.nil,0,0);if($interfaceIsEqual(a,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:d=b;if((d===(84))||(d===(118))){$s=4;continue;}$s=5;continue;case 4:c.fmt.padString("<nil>");$s=6;continue;case 5:$r=c.badVerb(b);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:case 3:$s=-1;return;case 2:e=b;if(e===(84)){$s=9;continue;}if(e===(112)){$s=10;continue;}$s=11;continue;case 9:f=F.TypeOf(a).String();$s=12;case 12:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=c.fmt.fmt_s(f);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 10:g=F.ValueOf(a);$s=14;case 14:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$r=c.fmtPointer($clone(g,F.Value),112);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 11:case 8:h=a;if($assertType(h,$Bool,true)[1]){$s=16;continue;}if($assertType(h,$Float32,true)[1]){$s=17;continue;}if($assertType(h,$Float64,true)[1]){$s=18;continue;}if($assertType(h,$Complex64,true)[1]){$s=19;continue;}if($assertType(h,$Complex128,true)[1]){$s=20;continue;}if($assertType(h,$Int,true)[1]){$s=21;continue;}if($assertType(h,$Int8,true)[1]){$s=22;continue;}if($assertType(h,$Int16,true)[1]){$s=23;continue;}if($assertType(h,$Int32,true)[1]){$s=24;continue;}if($assertType(h,$Int64,true)[1]){$s=25;continue;}if($assertType(h,$Uint,true)[1]){$s=26;continue;}if($assertType(h,$Uint8,true)[1]){$s=27;continue;}if($assertType(h,$Uint16,true)[1]){$s=28;continue;}if($assertType(h,$Uint32,true)[1]){$s=29;continue;}if($assertType(h,$Uint64,true)[1]){$s=30;continue;}if($assertType(h,$Uintptr,true)[1]){$s=31;continue;}if($assertType(h,$String,true)[1]){$s=32;continue;}if($assertType(h,BO,true)[1]){$s=33;continue;}if($assertType(h,F.Value,true)[1]){$s=34;continue;}$s=35;continue;case 16:i=h.$val;$r=c.fmtBool(i,b);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 17:j=h.$val;$r=c.fmtFloat(j,32,b);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 18:k=h.$val;$r=c.fmtFloat(k,64,b);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 19:l=h.$val;$r=c.fmtComplex(new $Complex128(l.$real,l.$imag),64,b);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 20:m=h.$val;$r=c.fmtComplex(m,128,b);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 21:n=h.$val;$r=c.fmtInteger(new $Uint64(0,n),true,b);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 22:o=h.$val;$r=c.fmtInteger(new $Uint64(0,o),true,b);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 23:p=h.$val;$r=c.fmtInteger(new $Uint64(0,p),true,b);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 24:q=h.$val;$r=c.fmtInteger(new $Uint64(0,q),true,b);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 25:r=h.$val;$r=c.fmtInteger(new $Uint64(r.$high,r.$low),true,b);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 26:s=h.$val;$r=c.fmtInteger(new $Uint64(0,s),false,b);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 27:t=h.$val;$r=c.fmtInteger(new $Uint64(0,t),false,b);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 28:u=h.$val;$r=c.fmtInteger(new $Uint64(0,u),false,b);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 29:v=h.$val;$r=c.fmtInteger(new $Uint64(0,v),false,b);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 30:w=h.$val;$r=c.fmtInteger(w,false,b);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 31:x=h.$val;$r=c.fmtInteger(new $Uint64(0,x.constructor===Number?x:1),false,b);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 32:y=h.$val;$r=c.fmtString(y,b);$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 33:z=h.$val;$r=c.fmtBytes(z,b,"[]byte");$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 34:aa=h.$val;if($clone(aa,F.Value).IsValid()&&$clone(aa,F.Value).CanInterface()){$s=55;continue;}$s=56;continue;case 55:ac=$clone(aa,F.Value).Interface();$s=57;case 57:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}c.arg=ac;ad=c.handleMethods(b);$s=60;case 60:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}if(ad){$s=58;continue;}$s=59;continue;case 58:$s=-1;return;case 59:case 56:$r=c.printValue($clone(aa,F.Value),b,0);$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 35:ab=h;ae=c.handleMethods(b);$s=64;case 64:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}if(!ae){$s=62;continue;}$s=63;continue;case 62:af=F.ValueOf(ab);$s=65;case 65:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}$r=c.printValue($clone(af,F.Value),b,0);$s=66;case 66:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 63:case 36:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.printArg};}$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;};P.prototype.printArg=function(a,b){return this.$val.printArg(a,b);};P.ptr.prototype.printValue=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,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;if(c>0&&$clone(a,F.Value).IsValid()&&$clone(a,F.Value).CanInterface()){$s=1;continue;}$s=2;continue;case 1:e=$clone(a,F.Value).Interface();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.arg=e;f=d.handleMethods(b);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f){$s=4;continue;}$s=5;continue;case 4:$s=-1;return;case 5:case 2:d.arg=$ifaceNil;d.value=a;g=a;h=$clone(a,F.Value).Kind();if(h===(0)){$s=8;continue;}if(h===(1)){$s=9;continue;}if((h===(2))||(h===(3))||(h===(4))||(h===(5))||(h===(6))){$s=10;continue;}if((h===(7))||(h===(8))||(h===(9))||(h===(10))||(h===(11))||(h===(12))){$s=11;continue;}if(h===(13)){$s=12;continue;}if(h===(14)){$s=13;continue;}if(h===(15)){$s=14;continue;}if(h===(16)){$s=15;continue;}if(h===(24)){$s=16;continue;}if(h===(21)){$s=17;continue;}if(h===(25)){$s=18;continue;}if(h===(20)){$s=19;continue;}if((h===(17))||(h===(23))){$s=20;continue;}if(h===(22)){$s=21;continue;}if((h===(18))||(h===(19))||(h===(26))){$s=22;continue;}$s=23;continue;case 8:if(c===0){$s=25;continue;}$s=26;continue;case 25:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("<invalid reflect.Value>");$s=27;continue;case 26:i=b;if(i===(118)){$s=29;continue;}$s=30;continue;case 29:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("<nil>");$s=31;continue;case 30:$r=d.badVerb(b);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 31:case 28:case 27:$s=24;continue;case 9:$r=d.fmtBool($clone(g,F.Value).Bool(),b);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 10:$r=d.fmtInteger((j=$clone(g,F.Value).Int(),new $Uint64(j.$high,j.$low)),true,b);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 11:$r=d.fmtInteger($clone(g,F.Value).Uint(),false,b);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 12:$r=d.fmtFloat($clone(g,F.Value).Float(),32,b);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 13:$r=d.fmtFloat($clone(g,F.Value).Float(),64,b);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 14:$r=d.fmtComplex($clone(g,F.Value).Complex(),64,b);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 15:$r=d.fmtComplex($clone(g,F.Value).Complex(),128,b);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 16:k=$clone(g,F.Value).String();$s=40;case 40:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=d.fmtString(k,b);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 17:if(d.fmt.fmtFlags.sharpV){$s=42;continue;}$s=43;continue;case 42:l=$clone(g,F.Value).Type().String();$s=45;case 45:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(l);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if($clone(g,F.Value).IsNil()){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("(nil)");$s=-1;return;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(123);$s=44;continue;case 43:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("map[");case 44:m=$clone(g,F.Value).MapKeys();$s=47;case 47:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=n;p=0;case 48:if(!(p<o.$length)){$s=49;continue;}q=p;r=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if(q>0){if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(", ");}else{(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(32);}}$r=d.printValue($clone(r,F.Value),b,c+1>>0);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(58);s=$clone(g,F.Value).MapIndex($clone(r,F.Value));$s=51;case 51:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=d.printValue($clone(s,F.Value),b,c+1>>0);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p++;$s=48;continue;case 49:if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(125);}else{(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(93);}$s=24;continue;case 18:if(d.fmt.fmtFlags.sharpV){$s=53;continue;}$s=54;continue;case 53:t=$clone(g,F.Value).Type().String();$s=55;case 55:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(t);$s=56;case 56:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 54:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(123);u=0;case 57:if(!(u<$clone(g,F.Value).NumField())){$s=58;continue;}if(u>0){if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(", ");}else{(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(32);}}if(d.fmt.fmtFlags.plusV||d.fmt.fmtFlags.sharpV){$s=59;continue;}$s=60;continue;case 59:v=$clone(g,F.Value).Type().Field(u);$s=61;case 61:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v.Name;if(!(w==="")){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(w);(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(58);}case 60:x=AC($clone(g,F.Value),u);$s=62;case 62:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=d.printValue($clone(x,F.Value),b,c+1>>0);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u=u+(1)>>0;$s=57;continue;case 58:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(125);$s=24;continue;case 19:y=$clone(g,F.Value).Elem();$s=64;case 64:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(!$clone(z,F.Value).IsValid()){$s=65;continue;}$s=66;continue;case 65:if(d.fmt.fmtFlags.sharpV){$s=68;continue;}$s=69;continue;case 68:aa=$clone(g,F.Value).Type().String();$s=71;case 71:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(aa);$s=72;case 72:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("(nil)");$s=70;continue;case 69:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("<nil>");case 70:$s=67;continue;case 66:$r=d.printValue($clone(z,F.Value),b,c+1>>0);$s=73;case 73:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 67:$s=24;continue;case 20:ab=b;if((ab===(115))||(ab===(113))||(ab===(120))||(ab===(88))){$s=75;continue;}$s=76;continue;case 75:ac=$clone(g,F.Value).Type();ad=ac.Elem();$s=79;case 79:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad.Kind();$s=80;case 80:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}if(ae===8){$s=77;continue;}$s=78;continue;case 77:af=BO.nil;if($clone(g,F.Value).Kind()===23){$s=81;continue;}if($clone(g,F.Value).CanAddr()){$s=82;continue;}$s=83;continue;case 81:ag=$clone(g,F.Value).Bytes();$s=85;case 85:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;$s=84;continue;case 82:ah=$clone(g,F.Value).Slice(0,$clone(g,F.Value).Len());$s=86;case 86:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value).Bytes();$s=87;case 87:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}af=ai;$s=84;continue;case 83:af=$makeSlice(BO,$clone(g,F.Value).Len());aj=af;ak=0;case 88:if(!(ak<aj.$length)){$s=89;continue;}al=ak;am=$clone(g,F.Value).Index(al);$s=90;case 90:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=$clone(am,F.Value).Uint();$s=91;case 91:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}((al<0||al>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+al]=(an.$low<<24>>>24));ak++;$s=88;continue;case 89:case 84:ao=af;ap=b;aq=ac.String();$s=92;case 92:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=d.fmtBytes(ao,ap,ar);$s=93;case 93:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 78:case 76:case 74:if(d.fmt.fmtFlags.sharpV){$s=94;continue;}$s=95;continue;case 94:as=$clone(g,F.Value).Type().String();$s=97;case 97:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(as);$s=98;case 98:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(($clone(g,F.Value).Kind()===23)&&$clone(g,F.Value).IsNil()){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString("(nil)");$s=-1;return;}(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(123);at=0;case 99:if(!(at<$clone(g,F.Value).Len())){$s=100;continue;}if(at>0){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(", ");}au=$clone(g,F.Value).Index(at);$s=101;case 101:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}$r=d.printValue($clone(au,F.Value),b,c+1>>0);$s=102;case 102:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}at=at+(1)>>0;$s=99;continue;case 100:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(125);$s=96;continue;case 95:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(91);av=0;case 103:if(!(av<$clone(g,F.Value).Len())){$s=104;continue;}if(av>0){(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(32);}aw=$clone(g,F.Value).Index(av);$s=105;case 105:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$r=d.printValue($clone(aw,F.Value),b,c+1>>0);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}av=av+(1)>>0;$s=103;continue;case 104:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(93);case 96:$s=24;continue;case 21:if((c===0)&&!(($clone(g,F.Value).Pointer()===0))){$s=107;continue;}$s=108;continue;case 107:ax=$clone(g,F.Value).Elem();$s=110;case 110:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ay=ax;az=$clone(ay,F.Value).Kind();if((az===(17))||(az===(23))||(az===(25))||(az===(21))){$s=111;continue;}$s=112;continue;case 111:(d.$ptr_buf||(d.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(38);$r=d.printValue($clone(ay,F.Value),b,c+1>>0);$s=113;case 113:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 112:case 109:case 108:$r=d.fmtPointer($clone(g,F.Value),b);$s=114;case 114:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 22:$r=d.fmtPointer($clone(g,F.Value),b);$s=115;case 115:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 23:$r=d.unknownType($clone(g,F.Value));$s=116;case 116:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:case 7:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.printValue};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.printValue=function(a,b,c){return this.$val.printValue(a,b,c);};AG=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=0;d=false;e=0;e=b;if(b<a.$length){$s=1;continue;}$s=2;continue;case 1:f=$assertType(((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]),$Int,true);c=f[0];d=f[1];if(!d){$s=3;continue;}$s=4;continue;case 3:g=F.ValueOf(((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]));$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h,F.Value).Kind();if((i===(2))||(i===(3))||(i===(4))||(i===(5))||(i===(6))){j=$clone(h,F.Value).Int();if((k=new $Int64(0,((j.$low+((j.$high>>31)*4294967296))>>0)),(k.$high===j.$high&&k.$low===j.$low))){c=((j.$low+((j.$high>>31)*4294967296))>>0);d=true;}}else if((i===(7))||(i===(8))||(i===(9))||(i===(10))||(i===(11))||(i===(12))){l=$clone(h,F.Value).Uint();if((m=new $Int64(l.$high,l.$low),(m.$high>0||(m.$high===0&&m.$low>=0)))&&(n=new $Uint64(0,(l.$low>>0)),(n.$high===l.$high&&n.$low===l.$low))){c=(l.$low>>0);d=true;}}case 5:case 4:e=b+1>>0;if(AD(c)){c=0;d=false;}case 2:$s=-1;return[c,d,e];}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.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;};AH=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=0;c=0;d=false;if(a.length<3){e=0;f=1;g=false;b=e;c=f;d=g;return[b,c,d];}h=1;while(true){if(!(h<a.length)){break;}if(a.charCodeAt(h)===93){i=AE(a,1,h);j=i[0];k=i[1];l=i[2];if(!k||!((l===h))){m=0;n=h+1>>0;o=false;b=m;c=n;d=o;return[b,c,d];}p=j-1>>0;q=h+1>>0;r=true;b=p;c=q;d=r;return[b,c,d];}h=h+(1)>>0;}s=0;t=1;u=false;b=s;c=t;d=u;return[b,c,d];};P.ptr.prototype.argNumber=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;e=0;f=0;g=false;h=this;if(b.length<=c||!((b.charCodeAt(c)===91))){i=a;j=c;k=false;e=i;f=j;g=k;return[e,f,g];}h.reordered=true;l=AH($substring(b,c));m=l[0];n=l[1];o=l[2];if(o&&0<=m&&m<d){p=m;q=c+n>>0;r=true;e=p;f=q;g=r;return[e,f,g];}h.goodArgNum=false;s=a;t=c+n>>0;u=o;e=s;f=t;g=u;return[e,f,g];};P.prototype.argNumber=function(a,b,c,d){return this.$val.argNumber(a,b,c,d);};P.ptr.prototype.badArgNum=function(a){var $ptr,a,b;b=this;(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("%!");(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteRune(a);(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("(BADINDEX)");};P.prototype.badArgNum=function(a){return this.$val.badArgNum(a);};P.ptr.prototype.missingArg=function(a){var $ptr,a,b;b=this;(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("%!");(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteRune(a);(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteString("(MISSING)");};P.prototype.missingArg=function(a){return this.$val.missingArg(a);};P.ptr.prototype.doPrintf=function(a,b){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:c=this;d=a.length;e=0;f=false;c.reordered=false;g=0;case 1:if(!(g<d)){$s=2;continue;}c.goodArgNum=true;h=g;while(true){if(!(g<d&&!((a.charCodeAt(g)===37)))){break;}g=g+(1)>>0;}if(g>h){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString($substring(a,h,g));}if(g>=d){$s=2;continue;}g=g+(1)>>0;c.fmt.clearflags();case 3:if(!(g<d)){$s=4;continue;}i=a.charCodeAt(g);j=i;if(j===(35)){$s=6;continue;}if(j===(48)){$s=7;continue;}if(j===(43)){$s=8;continue;}if(j===(45)){$s=9;continue;}if(j===(32)){$s=10;continue;}$s=11;continue;case 6:c.fmt.fmtFlags.sharp=true;$s=12;continue;case 7:c.fmt.fmtFlags.zero=!c.fmt.fmtFlags.minus;$s=12;continue;case 8:c.fmt.fmtFlags.plus=true;$s=12;continue;case 9:c.fmt.fmtFlags.minus=true;c.fmt.fmtFlags.zero=false;$s=12;continue;case 10:c.fmt.fmtFlags.space=true;$s=12;continue;case 11:if(97<=i&&i<=122&&e<b.$length){$s=13;continue;}$s=14;continue;case 13:if(i===118){c.fmt.fmtFlags.sharpV=c.fmt.fmtFlags.sharp;c.fmt.fmtFlags.sharp=false;c.fmt.fmtFlags.plusV=c.fmt.fmtFlags.plus;c.fmt.fmtFlags.plus=false;}$r=c.printArg(((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]),(i>>0));$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;g=g+(1)>>0;$s=1;continue s;case 14:$s=4;continue s;case 12:case 5:g=g+(1)>>0;$s=3;continue;case 4:k=c.argNumber(e,a,g,b.$length);e=k[0];g=k[1];f=k[2];if(g<d&&(a.charCodeAt(g)===42)){$s=16;continue;}$s=17;continue;case 16:g=g+(1)>>0;m=AG(b,e);$s=19;case 19:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;c.fmt.wid=l[0];c.fmt.fmtFlags.widPresent=l[1];e=l[2];if(!c.fmt.fmtFlags.widPresent){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!(BADWIDTH)");}if(c.fmt.wid<0){c.fmt.wid=-c.fmt.wid;c.fmt.fmtFlags.minus=true;c.fmt.fmtFlags.zero=false;}f=false;$s=18;continue;case 17:n=AE(a,g,d);c.fmt.wid=n[0];c.fmt.fmtFlags.widPresent=n[1];g=n[2];if(f&&c.fmt.fmtFlags.widPresent){c.goodArgNum=false;}case 18:if((g+1>>0)<d&&(a.charCodeAt(g)===46)){$s=20;continue;}$s=21;continue;case 20:g=g+(1)>>0;if(f){c.goodArgNum=false;}o=c.argNumber(e,a,g,b.$length);e=o[0];g=o[1];f=o[2];if(g<d&&(a.charCodeAt(g)===42)){$s=22;continue;}$s=23;continue;case 22:g=g+(1)>>0;q=AG(b,e);$s=25;case 25:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;c.fmt.prec=p[0];c.fmt.fmtFlags.precPresent=p[1];e=p[2];if(c.fmt.prec<0){c.fmt.prec=0;c.fmt.fmtFlags.precPresent=false;}if(!c.fmt.fmtFlags.precPresent){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!(BADPREC)");}f=false;$s=24;continue;case 23:r=AE(a,g,d);c.fmt.prec=r[0];c.fmt.fmtFlags.precPresent=r[1];g=r[2];if(!c.fmt.fmtFlags.precPresent){c.fmt.prec=0;c.fmt.fmtFlags.precPresent=true;}case 24:case 21:if(!f){s=c.argNumber(e,a,g,b.$length);e=s[0];g=s[1];f=s[2];}if(g>=d){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!(NOVERB)");$s=2;continue;}t=B.DecodeRuneInString($substring(a,g));u=t[0];v=t[1];g=g+(v)>>0;if((u===37)){$s=27;continue;}if(!c.goodArgNum){$s=28;continue;}if(e>=b.$length){$s=29;continue;}if((u===118)){$s=30;continue;}$s=31;continue;case 27:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(37);$s=32;continue;case 28:c.badArgNum(u);$s=32;continue;case 29:c.missingArg(u);$s=32;continue;case 30:c.fmt.fmtFlags.sharpV=c.fmt.fmtFlags.sharp;c.fmt.fmtFlags.sharp=false;c.fmt.fmtFlags.plusV=c.fmt.fmtFlags.plus;c.fmt.fmtFlags.plus=false;$r=c.printArg(((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]),u);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=32;continue;case 31:$r=c.printArg(((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]),u);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;case 32:case 26:$s=1;continue;case 2:if(!c.reordered&&e<b.$length){$s=35;continue;}$s=36;continue;case 35:c.fmt.clearflags();(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("%!(EXTRA ");w=$subslice(b,e);x=0;case 37:if(!(x<w.$length)){$s=38;continue;}y=x;z=((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]);if(y>0){(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString(", ");}if($interfaceIsEqual(z,$ifaceNil)){$s=39;continue;}$s=40;continue;case 39:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString("<nil>");$s=41;continue;case 40:aa=F.TypeOf(z).String();$s=42;case 42:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$r=(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteString(aa);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(61);$r=c.printArg(z,118);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 41:x++;$s=37;continue;case 38:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteByte(41);case 36:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.doPrintf};}$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;};P.prototype.doPrintf=function(a,b){return this.$val.doPrintf(a,b);};P.ptr.prototype.doPrint=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;c=false;d=a;e=0;case 1:if(!(e<d.$length)){$s=2;continue;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(!(!($interfaceIsEqual(g,$ifaceNil)))){h=false;$s=3;continue s;}i=F.TypeOf(g).Kind();$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i===24;case 3:j=h;if(f>0&&!j&&!c){(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(32);}$r=b.printArg(g,118);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=j;e++;$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.doPrint};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.doPrint=function(a){return this.$val.doPrint(a);};P.ptr.prototype.doPrintln=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=a;d=0;case 1:if(!(d<c.$length)){$s=2;continue;}e=d;f=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e>0){(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(32);}$r=b.printArg(f,118);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d++;$s=1;continue;case 2:(b.$ptr_buf||(b.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).WriteByte(10);$s=-1;return;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.doPrintln};}$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;};P.prototype.doPrintln=function(a){return this.$val.doPrintln(a);};AV.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;e=0;f=C.New("ScanState's Read should not be called. Use ReadRune");b=e;c=f;return[b,c];};AV.prototype.Read=function(a){return this.$val.Read(a);};AV.ptr.prototype.ReadRune=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=0;b=0;c=$ifaceNil;d=this;if(d.atEOF||d.count>=d.ssave.argLimit){c=D.EOF;$s=-1;return[a,b,c];}f=d.rs.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];b=e[1];c=e[2];if($interfaceIsEqual(c,$ifaceNil)){d.count=d.count+(1)>>0;if(d.ssave.nlIsEnd&&(a===10)){d.atEOF=true;}}else if($interfaceIsEqual(c,D.EOF)){d.atEOF=true;}$s=-1;return[a,b,c];}return;}if($f===undefined){$f={$blk:AV.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.$s=$s;$f.$r=$r;return $f;};AV.prototype.ReadRune=function(){return this.$val.ReadRune();};AV.ptr.prototype.Width=function(){var $ptr,a,b,c,d,e,f,g;a=0;b=false;c=this;if(c.ssave.maxWid===1073741824){d=0;e=false;a=d;b=e;return[a,b];}f=c.ssave.maxWid;g=true;a=f;b=g;return[a,b];};AV.prototype.Width=function(){return this.$val.Width();};AV.ptr.prototype.getRune=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=0;b=this;d=b.ReadRune();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;a=c[0];e=c[2];if(!($interfaceIsEqual(e,$ifaceNil))){if($interfaceIsEqual(e,D.EOF)){a=-1;$s=-1;return a;}b.error(e);}$s=-1;return a;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.getRune};}$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;};AV.prototype.getRune=function(){return this.$val.getRune();};AV.ptr.prototype.UnreadRune=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.rs.UnreadRune();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;a.atEOF=false;a.count=a.count-(1)>>0;$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AV.prototype.UnreadRune=function(){return this.$val.UnreadRune();};AV.ptr.prototype.error=function(a){var $ptr,a,b,c;b=this;$panic((c=new AU.ptr(a),new c.constructor.elem(c)));};AV.prototype.error=function(a){return this.$val.error(a);};AV.ptr.prototype.errorString=function(a){var $ptr,a,b,c;b=this;$panic((c=new AU.ptr(C.New(a)),new c.constructor.elem(c)));};AV.prototype.errorString=function(a){return this.$val.errorString(a);};AV.ptr.prototype.Token=function(a,b){var $ptr,a,b,c,d,e,f,$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;$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=BO.nil;c[0]=$ifaceNil;e=this;$deferred.push([(function(c){return function(){var $ptr,f,g,h,i;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){g=$assertType(f,AU,true);h=$clone(g[0],AU);i=g[1];if(i){c[0]=h.err;}else{$panic(f);}}};})(c),[]]);if(b===$throwNilPointerError){b=AZ;}e.buf=$subslice(e.buf,0,0);f=e.token(a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;$s=-1;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:AV.ptr.prototype.Token};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AV.prototype.Token=function(a,b){return this.$val.Token(a,b);};AY=function(a){var $ptr,a,b,c,d,e;if(a>=65536){return false;}b=(a<<16>>>16);c=AX;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),BM);if(b<e[0]){return false;}if(b<=e[1]){return true;}d++;}return false;};AZ=function(a){var $ptr,a;return!AY(a);};AV.ptr.prototype.SkipSpace=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=a.skipSpace(false);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.SkipSpace};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AV.prototype.SkipSpace=function(){return this.$val.SkipSpace();};AV.ptr.prototype.free=function(a){var $ptr,a,b;b=this;if(a.validSave){AW.copy(b.ssave,a);return;}if(b.buf.$capacity>1024){return;}b.buf=$subslice(b.buf,0,0);b.rs=$ifaceNil;BB.Put(b);};AV.prototype.free=function(a){return this.$val.free(a);};AV.ptr.prototype.skipSpace=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:c=b.getRune();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(d===-1){$s=-1;return;}if(!(d===13)){e=false;$s=6;continue s;}f=b.peek("\n");$s=7;case 7:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 6:if(e){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(d===10){$s=8;continue;}$s=9;continue;case 8:if(a){$s=2;continue;}if(b.ssave.nlIsSpace){$s=1;continue;}b.errorString("unexpected newline");$s=-1;return;case 9:if(!AY(d)){$s=10;continue;}$s=11;continue;case 10:g=b.UnreadRune();$s=12;case 12:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.skipSpace};}$f.$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;};AV.prototype.skipSpace=function(a){return this.$val.skipSpace(a);};AV.ptr.prototype.token=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;if(a){$s=1;continue;}$s=2;continue;case 1:$r=c.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:d=c.getRune();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===-1){$s=5;continue;}f=b(e);$s=9;case 9:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!f){$s=7;continue;}$s=8;continue;case 7:g=c.UnreadRune();$s=10;case 10:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=5;continue;case 8:(c.$ptr_buf||(c.$ptr_buf=new BK(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).WriteRune(e);$s=4;continue;case 5:$s=-1;return(h=c.buf,$subslice(new BO(h.$array),h.$offset,h.$offset+h.$length));}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.token};}$f.$ptr=$ptr;$f.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;};AV.prototype.token=function(a,b){return this.$val.token(a,b);};BF=function(a,b){var $ptr,a,b,c,d,e,f,g;c=a;d=0;while(true){if(!(d<c.length)){break;}e=$decodeRune(c,d);f=d;g=e[0];if(g===b){return f;}d+=e[1];}return-1;};AV.ptr.prototype.peek=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=b.getRune();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!((d===-1))){$s=2;continue;}$s=3;continue;case 2:e=b.UnreadRune();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 3:$s=-1;return BF(a,d)>=0;}return;}if($f===undefined){$f={$blk:AV.ptr.prototype.peek};}$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;};AV.prototype.peek=function(a){return this.$val.peek(a);};CN.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([BK],[],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([BO],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"fmt_unicode",name:"fmt_unicode",pkg:"fmt",typ:$funcType([$Uint64],[],false)},{prop:"fmt_integer",name:"fmt_integer",pkg:"fmt",typ:$funcType([$Uint64,$Int,$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,BO,$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([BO,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_c",name:"fmt_c",pkg:"fmt",typ:$funcType([$Uint64],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Uint64],[],false)},{prop:"fmt_float",name:"fmt_float",pkg:"fmt",typ:$funcType([$Float64,$Int,$Int32,$Int],[],false)}];BK.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([BO],[],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[],false)}];BP.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:"Write",name:"Write",pkg:"",typ:$funcType([BO],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([F.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtInteger",name:"fmtInteger",pkg:"fmt",typ:$funcType([$Uint64,$Bool,$Int32],[],false)},{prop:"fmtFloat",name:"fmtFloat",pkg:"fmt",typ:$funcType([$Float64,$Int,$Int32],[],false)},{prop:"fmtComplex",name:"fmtComplex",pkg:"fmt",typ:$funcType([$Complex128,$Int,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([BO,$Int32,$String],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([F.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([F.Value,$Int32,$Int],[],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"badArgNum",name:"badArgNum",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"missingArg",name:"missingArg",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,BI],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([BI],[],false)},{prop:"doPrintln",name:"doPrintln",pkg:"fmt",typ:$funcType([BI],[],false)}];BS.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([BO],[$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,CO],[BO,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([AW],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,CO],[BO],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([BI],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,BI],[$Int,$error],false)}];I.init("fmt",[{prop:"widPresent",name:"widPresent",exported:false,typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",exported:false,typ:$Bool,tag:""},{prop:"minus",name:"minus",exported:false,typ:$Bool,tag:""},{prop:"plus",name:"plus",exported:false,typ:$Bool,tag:""},{prop:"sharp",name:"sharp",exported:false,typ:$Bool,tag:""},{prop:"space",name:"space",exported:false,typ:$Bool,tag:""},{prop:"zero",name:"zero",exported:false,typ:$Bool,tag:""},{prop:"plusV",name:"plusV",exported:false,typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",exported:false,typ:$Bool,tag:""}]);J.init("fmt",[{prop:"buf",name:"buf",exported:false,typ:BK,tag:""},{prop:"fmtFlags",name:"",exported:false,typ:I,tag:""},{prop:"wid",name:"wid",exported:false,typ:$Int,tag:""},{prop:"prec",name:"prec",exported:false,typ:$Int,tag:""},{prop:"intbuf",name:"intbuf",exported:false,typ:BL,tag:""}]);K.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([BO],[$Int,$error],false)}]);L.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([K,$Int32],[],false)}]);M.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);N.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);O.init($Uint8);P.init("fmt",[{prop:"buf",name:"buf",exported:false,typ:O,tag:""},{prop:"arg",name:"arg",exported:false,typ:$emptyInterface,tag:""},{prop:"value",name:"value",exported:false,typ:F.Value,tag:""},{prop:"fmt",name:"fmt",exported:false,typ:J,tag:""},{prop:"reordered",name:"reordered",exported:false,typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",exported:false,typ:$Bool,tag:""},{prop:"panicking",name:"panicking",exported:false,typ:$Bool,tag:""},{prop:"erroring",name:"erroring",exported:false,typ:$Bool,tag:""}]);AI.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BO],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,CO],[BO,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)}]);AU.init("fmt",[{prop:"err",name:"err",exported:false,typ:$error,tag:""}]);AV.init("fmt",[{prop:"rs",name:"rs",exported:false,typ:D.RuneScanner,tag:""},{prop:"buf",name:"buf",exported:false,typ:O,tag:""},{prop:"count",name:"count",exported:false,typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",exported:false,typ:$Bool,tag:""},{prop:"ssave",name:"",exported:false,typ:AW,tag:""}]);AW.init("fmt",[{prop:"validSave",name:"validSave",exported:false,typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",exported:false,typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",exported:false,typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",exported:false,typ:$Int,tag:""},{prop:"limit",name:"limit",exported:false,typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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=F.$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;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new G.Pool.ptr(0,0,BI.nil,(function(){var $ptr;return new P.ptr(O.nil,$ifaceNil,new F.Value.ptr(BJ.nil,0,0),new J.ptr(BK.nil,new I.ptr(false,false,false,false,false,false,false,false,false),0,0,BL.zero()),false,false,false,false);}));AF=F.TypeOf(new $Uint8(0));AX=new BN([$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])]);BB=new G.Pool.ptr(0,0,BI.nil,(function(){var $ptr;return new AV.ptr($ifaceNil,O.nil,0,false,new AW.ptr(false,false,false,0,0,0));}));BD=C.New("syntax error scanning complex number");BE=C.New("syntax error scanning boolean");}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,K,M,AF,AH,AL,AM,AN,AO,AP,AQ,AS,AT,C,D,E,G,H,I,P,AG,F,L,N,O,AI;B=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["math"];J=$pkg.Source=$newType(8,$kindInterface,"rand.Source",true,"math/rand",true,null);K=$pkg.Source64=$newType(8,$kindInterface,"rand.Source64",true,"math/rand",true,null);M=$pkg.Rand=$newType(0,$kindStruct,"rand.Rand",true,"math/rand",true,function(src_,s64_,readVal_,readPos_){this.$val=this;if(arguments.length===0){this.src=$ifaceNil;this.s64=$ifaceNil;this.readVal=new $Int64(0,0);this.readPos=0;return;}this.src=src_;this.s64=s64_;this.readVal=readVal_;this.readPos=readPos_;});AF=$pkg.lockedSource=$newType(0,$kindStruct,"rand.lockedSource",true,"math/rand",false,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_;});AH=$pkg.rngSource=$newType(0,$kindStruct,"rand.rngSource",true,"math/rand",false,function(tap_,feed_,vec_){this.$val=this;if(arguments.length===0){this.tap=0;this.feed=0;this.vec=AL.zero();return;}this.tap=tap_;this.feed=feed_;this.vec=vec_;});AL=$arrayType($Int64,607);AM=$ptrType(AF);AN=$ptrType($Int8);AO=$sliceType($Int);AP=$ptrType($Int64);AQ=$ptrType(M);AS=$sliceType($Uint8);AT=$ptrType(AH);M.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"),undefined):D[d]);if(c<((d<0||d>=C.length)?($throwRuntimeError("index out of range"),undefined):C[d])){$s=-1;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=-1;return 7.69711747013105-g;case 5:h=a.Float64();$s=10;case 10: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"),undefined):E[d])+$fround($fround(h)*($fround((i=d-1>>>0,((i<0||i>=E.length)?($throwRuntimeError("index out of range"),undefined):E[i]))-((d<0||d>=E.length)?($throwRuntimeError("index out of range"),undefined):E[d])))))<$fround(A.Exp(-e))){$s=8;continue;}$s=9;continue;case 8:$s=-1;return e;case 9:$s=1;continue;case 2:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.ExpFloat64=function(){return this.$val.ExpFloat64();};F=function(a){var $ptr,a;if(a<0){return(-a>>>0);}return(a>>>0);};M.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"),undefined):H[d]);if(F(c)<((d<0||d>=G.length)?($throwRuntimeError("index out of range"),undefined):G[d])){$s=-1;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){$s=-1;return 3.442619855899+e;}$s=-1;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"),undefined):I[d])+$fround($fround(k)*($fround((l=d-1>>0,((l<0||l>=I.length)?($throwRuntimeError("index out of range"),undefined):I[l]))-((d<0||d>=I.length)?($throwRuntimeError("index out of range"),undefined):I[d])))))<$fround(A.Exp(-0.5*e*e))){$s=12;continue;}$s=13;continue;case 12:$s=-1;return e;case 13:$s=1;continue;case 2:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.NormFloat64=function(){return this.$val.NormFloat64();};L=function(a){var $ptr,a,b;b=new AH.ptr(0,0,AL.zero());b.Seed(a);return b;};$pkg.NewSource=L;N=function(a){var $ptr,a,b,c;b=$assertType(a,K,true);c=b[0];return new M.ptr(a,c,new $Int64(0,0),0);};$pkg.New=N;M.ptr.prototype.Seed=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=$assertType(b.src,AM,true);d=c[0];e=c[1];if(e){$s=1;continue;}$s=2;continue;case 1:$r=d.seedPos(a,(b.$ptr_readPos||(b.$ptr_readPos=new AN(function(){return this.$target.readPos;},function($v){this.$target.readPos=$v;},b))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 2:$r=b.src.Seed(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.readPos=0;$s=-1;return;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Seed};}$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;};M.prototype.Seed=function(a){return this.$val.Seed(a);};M.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=-1;return b;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Int63};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Int63=function(){return this.$val.Int63();};M.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=-1;return($shiftRightInt64(b,31).$low>>>0);}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Uint32=function(){return this.$val.Uint32();};M.ptr.prototype.Uint64=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(!($interfaceIsEqual(a.s64,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:b=a.s64.Uint64();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;case 2:e=a.Int63();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}h=a.Int63();$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return(c=$shiftRightUint64((d=e,new $Uint64(d.$high,d.$low)),31),f=$shiftLeft64((g=h,new $Uint64(g.$high,g.$low)),32),new $Uint64(c.$high|f.$high,(c.$low|f.$low)>>>0));}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Uint64};}$f.$ptr=$ptr;$f.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;};M.prototype.Uint64=function(){return this.$val.Uint64();};M.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=-1;return((b=$shiftRightInt64(c,32),b.$low+((b.$high>>31)*4294967296))>>0);}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Int31};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Int31=function(){return this.$val.Int31();};M.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);$s=-1;return(((c<<1>>>0)>>>1>>>0)>>0);}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Int};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Int=function(){return this.$val.Int();};M.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=-1;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=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;case 5:if(!((l.$high>j.$high||(l.$high===j.$high&&l.$low>j.$low)))){$s=6;continue;}m=b.Int63();$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;$s=5;continue;case 6:$s=-1;return $div64(l,a,true);}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.Int63n=function(a){return this.$val.Int63n(a);};M.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=-1;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=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;case 5:if(!(g>e)){$s=6;continue;}h=b.Int31();$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;$s=5;continue;case 6:$s=-1;return(i=g%a,i===i?i:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.Int31n=function(a){return this.$val.Int31n(a);};M.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=-1;return(c>>0);case 2:e=b.Int63n(new $Int64(0,a));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return((d=e,d.$low+((d.$high>>31)*4294967296))>>0);}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.Intn=function(a){return this.$val.Intn(a);};M.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;case 1:b=a.Int63();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=$flatten64(b)/9.223372036854776e+18;if(c===1){$s=3;continue;}$s=4;continue;case 3:$s=1;continue;case 4:$s=-1;return c;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Float64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Float64=function(){return this.$val.Float64();};M.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;case 1:b=a.Float64();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=$fround(b);if(c===1){$s=3;continue;}$s=4;continue;case 3:$s=1;continue;case 4:$s=-1;return c;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Float32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Float32=function(){return this.$val.Float32();};M.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(AO,a);d=0;case 1:if(!(d<a)){$s=2;continue;}e=b.Intn(d+1>>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"),undefined):c.$array[c.$offset+d]=((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]));((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=d);d=d+(1)>>0;$s=1;continue;case 2:$s=-1;return c;}return;}if($f===undefined){$f={$blk:M.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;};M.prototype.Perm=function(a){return this.$val.Perm(a);};M.ptr.prototype.Read=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=0;c=$ifaceNil;d=this;e=$assertType(d.src,AM,true);f=e[0];g=e[1];if(g){$s=1;continue;}$s=2;continue;case 1:i=f.read(a,(d.$ptr_readVal||(d.$ptr_readVal=new AP(function(){return this.$target.readVal;},function($v){this.$target.readVal=$v;},d))),(d.$ptr_readPos||(d.$ptr_readPos=new AN(function(){return this.$target.readPos;},function($v){this.$target.readPos=$v;},d))));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;b=h[0];c=h[1];$s=-1;return[b,c];case 2:k=O(a,$methodVal(d,"Int63"),(d.$ptr_readVal||(d.$ptr_readVal=new AP(function(){return this.$target.readVal;},function($v){this.$target.readVal=$v;},d))),(d.$ptr_readPos||(d.$ptr_readPos=new AN(function(){return this.$target.readPos;},function($v){this.$target.readPos=$v;},d))));$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;b=j[0];c=j[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Read=function(a){return this.$val.Read(a);};O=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=0;f=$ifaceNil;g=d.$get();h=c.$get();e=0;case 1:if(!(e<a.$length)){$s=2;continue;}if(g===0){$s=3;continue;}$s=4;continue;case 3:i=b();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;g=7;case 4:((e<0||e>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+e]=(h.$low<<24>>>24));h=$shiftRightInt64(h,(8));g=g-(1)<<24>>24;e=e+(1)>>0;$s=1;continue;case 2:d.$set(g);c.$set(h);$s=-1;return[e,f];}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.$s=$s;$f.$r=$r;return $f;};AF.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();$s=-1;return a;}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Int63};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Int63=function(){return this.$val.Int63();};AF.ptr.prototype.Uint64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=new $Uint64(0,0);b=this;b.lk.Lock();c=b.src.Uint64();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a=c;b.lk.Unlock();$s=-1;return a;}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Uint64=function(){return this.$val.Uint64();};AF.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;return;}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Seed};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Seed=function(a){return this.$val.Seed(a);};AF.ptr.prototype.seedPos=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=this;c.lk.Lock();$r=c.src.Seed(a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.$set(0);c.lk.Unlock();$s=-1;return;}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.seedPos};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.seedPos=function(a,b){return this.$val.seedPos(a,b);};AF.ptr.prototype.read=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:d=0;e=$ifaceNil;f=this;f.lk.Lock();h=O(a,$methodVal(f.src,"Int63"),b,c);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;d=g[0];e=g[1];f.lk.Unlock();$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:AF.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;};AF.prototype.read=function(a,b,c){return this.$val.read(a,b,c);};AI=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;};AH.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=AI(d);if(e>=0){f=new $Int64(0,0);f=$shiftLeft64(new $Int64(0,d),40);d=AI(d);f=(g=$shiftLeft64(new $Int64(0,d),20),new $Int64(f.$high^g.$high,(f.$low^g.$low)>>>0));d=AI(d);f=(h=new $Int64(0,d),new $Int64(f.$high^h.$high,(f.$low^h.$low)>>>0));f=(i=((e<0||e>=AG.length)?($throwRuntimeError("index out of range"),undefined):AG[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"),undefined):j[e]=f));}e=e+(1)>>0;}};AH.prototype.Seed=function(a){return this.$val.Seed(a);};AH.ptr.prototype.Int63=function(){var $ptr,a,b,c;a=this;return(b=(c=a.Uint64(),new $Uint64(c.$high&2147483647,(c.$low&4294967295)>>>0)),new $Int64(b.$high,b.$low));};AH.prototype.Int63=function(){return this.$val.Int63();};AH.ptr.prototype.Uint64=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;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;}h=(b=(c=a.vec,d=a.feed,((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d])),e=(f=a.vec,g=a.tap,((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g])),new $Int64(b.$high+e.$high,b.$low+e.$low));(i=a.vec,j=a.feed,((j<0||j>=i.length)?($throwRuntimeError("index out of range"),undefined):i[j]=h));return new $Uint64(h.$high,h.$low);};AH.prototype.Uint64=function(){return this.$val.Uint64();};AQ.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:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],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],[AO],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AS],[$Int,$error],false)}];AM.methods=[{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"seedPos",name:"seedPos",pkg:"math/rand",typ:$funcType([$Int64,AN],[],false)},{prop:"read",name:"read",pkg:"math/rand",typ:$funcType([AS,AP,AN],[$Int,$error],false)}];AT.methods=[{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)}];J.init([{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)}]);K.init([{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)}]);M.init("math/rand",[{prop:"src",name:"src",exported:false,typ:J,tag:""},{prop:"s64",name:"s64",exported:false,typ:K,tag:""},{prop:"readVal",name:"readVal",exported:false,typ:$Int64,tag:""},{prop:"readPos",name:"readPos",exported:false,typ:$Int8,tag:""}]);AF.init("math/rand",[{prop:"lk",name:"lk",exported:false,typ:B.Mutex,tag:""},{prop:"src",name:"src",exported:false,typ:K,tag:""}]);AH.init("math/rand",[{prop:"tap",name:"tap",exported:false,typ:$Int,tag:""},{prop:"feed",name:"feed",exported:false,typ:$Int,tag:""},{prop:"vec",name:"vec",exported:false,typ:AL,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]);AG=$toNativeArray($kindInt64,[new $Int64(-973649357,3952672746),new $Int64(-1065661887,3130416987),new $Int64(324977939,3414273807),new $Int64(1241840476,2806224363),new $Int64(-1477934308,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(-1654874170,1609182556),new $Int64(1069394745,1241596776),new $Int64(1895445337,1771189259),new $Int64(-1374618802,3467012610),new $Int64(-140526423,2344407434),new $Int64(-1745367887,782467244),new $Int64(26335124,3404933915),new $Int64(1063924276,618867887),new $Int64(-968700782,520164395),new $Int64(-1591572833,1341358184),new $Int64(-1515085039,665794848),new $Int64(1527227641,3183648150),new $Int64(1781176124,696329606),new $Int64(1789146075,4151988961),new $Int64(-2087444114,998951326),new $Int64(-612324923,1364957564),new $Int64(63173359,4090230633),new $Int64(-1498029007,4009697548),new $Int64(248009524,2569622517),new $Int64(778703922,3742421481),new $Int64(-1109106023,1506914633),new $Int64(1738099768,1983412561),new $Int64(236311649,1436266083),new $Int64(-1111517500,3922894967),new $Int64(-1336974714,1792680179),new $Int64(563141142,1188796351),new $Int64(1349617468,405968250),new $Int64(1044074554,433754187),new $Int64(870549669,4073162024),new $Int64(-1094251604,433121399),new $Int64(2451824,4162580594),new $Int64(-137262572,4132415622),new $Int64(-1536231048,3033822028),new $Int64(2016407895,824682382),new $Int64(2366218,3583765414),new $Int64(-624604839,535386927),new $Int64(1637219058,2286693689),new $Int64(1453075389,2968466525),new $Int64(193683513,1351410206),new $Int64(-283806096,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(-2067810156,3430061722),new $Int64(-1484435135,3820169661),new $Int64(-1665985194,2981816134),new $Int64(1017155588,4184371017),new $Int64(206574701,2119206761),new $Int64(-852109057,2472200560),new $Int64(-560457548,2853524696),new $Int64(1307803389,1681119904),new $Int64(-174986835,95608918),new $Int64(392686347,3690479145),new $Int64(-1205570926,1397922290),new $Int64(-1159314025,1516129515),new $Int64(-320178155,1547420459),new $Int64(1311333971,1470949486),new $Int64(-1953469798,1336785672),new $Int64(-45086614,4131677129),new $Int64(-1392278100,4246329084),new $Int64(-1142500187,3788585631),new $Int64(-66478285,3080389532),new $Int64(-646438364,2215402037),new $Int64(391002300,1171593935),new $Int64(1408774047,1423855166),new $Int64(-519177718,2276716302),new $Int64(-368453140,2068027241),new $Int64(1369359303,3427553297),new $Int64(189241615,3289637845),new $Int64(1057480830,3486407650),new $Int64(-1512910664,3071877822),new $Int64(1159653919,3363620705),new $Int64(-934256930,4159821533),new $Int64(-76621938,1894661),new $Int64(-674493898,1156868282),new $Int64(348271067,776219088),new $Int64(-501428838,2425634259),new $Int64(1716021749,680510161),new $Int64(-574263456,1310101429),new $Int64(1095885995,2964454134),new $Int64(-325695512,3467098407),new $Int64(1990672920,2109628894),new $Int64(-2139648704,1232604732),new $Int64(-1838070714,3261916179),new $Int64(1699175360,434597899),new $Int64(235436061,1624796439),new $Int64(-1626402839,3589632480),new $Int64(1198416575,864579159),new $Int64(-1938748161,1380889830),new $Int64(619206309,2654509477),new $Int64(1419738251,1468209306),new $Int64(-1744284772,100794388),new $Int64(-1191421458,2991674471),new $Int64(-208666741,2224662036),new $Int64(-173659161,977097250),new $Int64(1351320195,726419512),new $Int64(-183459897,1747974366),new $Int64(-753095183,1556430604),new $Int64(-1049492215,1080776742),new $Int64(-385846958,280794874),new $Int64(117767733,919835643),new $Int64(-967009426,3434019658),new $Int64(-1951414480,2461941785),new $Int64(133215641,3615001066),new $Int64(417204809,3103414427),new $Int64(790056561,3380809712),new $Int64(-1267681408,2724693469),new $Int64(547796833,598827710),new $Int64(-1846559452,3452273442),new $Int64(-75778224,649274915),new $Int64(-801301329,2585724112),new $Int64(-1510934263,3165579553),new $Int64(1185578221,2635894283),new $Int64(-52910178,2053289721),new $Int64(985976581,3169337108),new $Int64(1170569632,144717764),new $Int64(1079216270,1383666384),new $Int64(-124804942,681540375),new $Int64(1375448925,537050586),new $Int64(-1964768344,315246468),new $Int64(226402871,849323088),new $Int64(-885062465,45543944),new $Int64(-946445250,2319052083),new $Int64(-40708194,3613090841),new $Int64(560472520,2992171180),new $Int64(-381863169,2068244785),new $Int64(917538188,4239862634),new $Int64(-1369555809,3892253031),new $Int64(720683925,958186149),new $Int64(-423297785,1877702262),new $Int64(1357886971,837674867),new $Int64(1837048883,1507589294),new $Int64(1905518400,873336795),new $Int64(-1879761037,2764496274),new $Int64(-1806480530,4196182374),new $Int64(-1066765755,550964545),new $Int64(818747069,420611474),new $Int64(-1924830376,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(-1367475956,2099949527),new $Int64(1424094358,338442522),new $Int64(490737398,637158004),new $Int64(-1727621530,281976339),new $Int64(574970164,3619802330),new $Int64(-431930823,3084554784),new $Int64(-1264611183,4129772886),new $Int64(-2104399043,1680378557),new $Int64(-1621962591,3339087776),new $Int64(1680500332,4220317857),new $Int64(-1935828963,2959322499),new $Int64(1675600481,1488354890),new $Int64(-834863562,3958162143),new $Int64(-1226511573,2773705983),new $Int64(1876039582,225908689),new $Int64(-1183735113,908216283),new $Int64(-605696219,3574646075),new $Int64(-1827723091,1936937569),new $Int64(1519770881,75492235),new $Int64(816689472,1935193178),new $Int64(2142521206,2018250883),new $Int64(455141620,3943126022),new $Int64(-601399488,3066544345),new $Int64(1932392669,2793082663),new $Int64(-1239009361,3297036421),new $Int64(1640597065,2206987825),new $Int64(-553246738,807894872),new $Int64(-1781325307,766252117),new $Int64(2060649606,3833114345),new $Int64(845619743,1255067973),new $Int64(1201145605,741697208),new $Int64(-1476242608,2810093753),new $Int64(1109032642,4229340371),new $Int64(1462188720,1361684224),new $Int64(-1159399429,1906263026),new $Int64(475781207,3904421704),new $Int64(-623537128,1769075545),new $Int64(1062308525,2621599764),new $Int64(1279509432,3431891480),new $Int64(-1742751146,1871896503),new $Int64(128756421,1412808876),new $Int64(1605404688,952876175),new $Int64(-230443691,1824438899),new $Int64(1662295856,1005035476),new $Int64(-156574141,527508597),new $Int64(1288873303,3066806859),new $Int64(565995893,3244940914),new $Int64(-889746188,209092916),new $Int64(-247669406,1242699167),new $Int64(-713830396,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(-1197583895,3803658212),new $Int64(1883670356,479946959),new $Int64(685713571,1562982345),new $Int64(-1946242443,1766109365),new $Int64(700596547,3257093788),new $Int64(-184714929,2365720207),new $Int64(93384808,3742754173),new $Int64(-458385235,2878193673),new $Int64(1096135042,2174002182),new $Int64(-834260953,3573511231),new $Int64(-754572527,1760299077),new $Int64(-1375627191,2260779833),new $Int64(-866019274,1452805722),new $Int64(-1229671918,2940011802),new $Int64(1890251082,1886183802),new $Int64(893897673,2514369088),new $Int64(1644345561,3924317791),new $Int64(-1974867432,500935732),new $Int64(1403501753,676580929),new $Int64(-1565912283,1184984890),new $Int64(-691968413,1271474274),new $Int64(-1828754738,3163791473),new $Int64(2051027584,2842487377),new $Int64(1511537551,2170968612),new $Int64(573262976,3535856740),new $Int64(-2053227187,1488599718),new $Int64(-1180531831,3408913763),new $Int64(-2086531912,2501050084),new $Int64(-875130448,1639124157),new $Int64(-2009482504,4088176393),new $Int64(1574896563,3989947576),new $Int64(-165243708,3414355209),new $Int64(-792329287,2275136352),new $Int64(-2057774345,2151835223),new $Int64(-931144933,1654534827),new $Int64(-679921451,377892833),new $Int64(-482716010,660204544),new $Int64(85706799,390828249),new $Int64(-1422172693,3402783878),new $Int64(-1468634160,3717936603),new $Int64(1113532086,2211058823),new $Int64(1564224320,2692150867),new $Int64(1952770442,1928910388),new $Int64(788716862,3931011137),new $Int64(1083670504,1112701047),new $Int64(-68150572,2452299106),new $Int64(-896164822,2337204777),new $Int64(1774877857,273889282),new $Int64(1798719843,1462008793),new $Int64(2138834788,1554494002),new $Int64(-1194967131,182675323),new $Int64(-1598554764,1882802136),new $Int64(589279648,3700220025),new $Int64(381039426,3083431543),new $Int64(-851859191,3622207527),new $Int64(338126939,432729309),new $Int64(-1667470126,2391914317),new $Int64(-1849558151,235747924),new $Int64(2120733629,3088823825),new $Int64(-745079795,2314658321),new $Int64(1165929723,2957634338),new $Int64(501323675,4117056981),new $Int64(1564699815,1482500298),new $Int64(-740826490,840489337),new $Int64(799522364,3483178565),new $Int64(532129761,2074004656),new $Int64(724246478,3643392642),new $Int64(-665153481,1583624461),new $Int64(-885822954,287473085),new $Int64(1667835381,3136843981),new $Int64(1138806821,1266970974),new $Int64(135185781,1998688839),new $Int64(392094735,1492900209),new $Int64(1031326774,1538112737),new $Int64(-2070568842,2207265429),new $Int64(-1886797613,963263315),new $Int64(1671145500,2295892134),new $Int64(1068469660,2002560897),new $Int64(-356250305,1369254035),new $Int64(33436120,3353312708),new $Int64(57507843,947771099),new $Int64(-1945755145,1747061399),new $Int64(1507240140,2047354631),new $Int64(720000810,4165367136),new $Int64(479265078,3388864963),new $Int64(-952181250,286492130),new $Int64(2045622690,2795735007),new $Int64(-715730566,3703961339),new $Int64(-148436487,1797825479),new $Int64(1429039600,1116589674),new $Int64(-1665420098,2593309206),new $Int64(1329049334,3404995677),new $Int64(-750579440,3453462936),new $Int64(1014767077,3016498634),new $Int64(75698599,1650371545),new $Int64(1592007860,212344364),new $Int64(1127766888,3843932156),new $Int64(-748019856,3573129983),new $Int64(-890581831,665897820),new $Int64(1071492673,1675628772),new $Int64(243225682,2831752928),new $Int64(2120298836,1486294219),new $Int64(-1954407413,268782709),new $Int64(-1002123503,4186179080),new $Int64(624342951,1613720397),new $Int64(857179861,2703686015),new $Int64(-911618704,2205342611),new $Int64(-672703993,1411666394),new $Int64(-1528454899,677744900),new $Int64(-1876628533,4172867247),new $Int64(135494707,2163418403),new $Int64(849547544,2841526879),new $Int64(-1117516959,1082141470),new $Int64(-1770111792,4046134367),new $Int64(51415528,2142943655),new $Int64(-249824333,3124627521),new $Int64(998228909,219992939),new $Int64(-1078790951,1756846531),new $Int64(1283749206,1225118210),new $Int64(-525858006,1647770243),new $Int64(-2035959705,444807907),new $Int64(2036369448,3952076173),new $Int64(53201823,1461839639),new $Int64(315761893,3699250910),new $Int64(702974850,1373688981),new $Int64(734022261,147523747),new $Int64(-2047330906,1211276581),new $Int64(1294440951,2548832680),new $Int64(1144696256,1995631888),new $Int64(-1992983070,2011457303),new $Int64(-1351022674,3057425772),new $Int64(667839456,81484597),new $Int64(-1681980888,3646681560),new $Int64(-1372462725,635548515),new $Int64(602489502,2508044581),new $Int64(-1794220117,1014917157),new $Int64(719992433,3214891315),new $Int64(-1294799037,959582252),new $Int64(226415134,3347040449),new $Int64(-362868096,4102971975),new $Int64(397887437,4078022210),new $Int64(-536803826,2851767182),new $Int64(-1398321012,1540160644),new $Int64(-1549098876,1057290595),new $Int64(-112592988,3907769253),new $Int64(579300318,4248952684),new $Int64(-1054576049,132554364),new $Int64(-1085862414,1029351092),new $Int64(697840928,2583007416),new $Int64(298619124,1486185789),new $Int64(55905697,2871589073),new $Int64(2017643612,723203291),new $Int64(146250550,2494333952),new $Int64(-1082993397,2230939180),new $Int64(-1804568072,3943232912),new $Int64(1768732449,2181367922),new $Int64(-729261111,2889274791),new $Int64(1824032949,2046728161),new $Int64(1653899792,1376052477),new $Int64(1022327048,381236993),new $Int64(-1113097690,3188942166),new $Int64(-74480109,350070824),new $Int64(144881592,61758415),new $Int64(-741824226,3492950336),new $Int64(-2030042720,3093818430),new $Int64(-453590535,2962480613),new $Int64(-1912050708,3154871160),new $Int64(-1636478569,3228564679),new $Int64(610731502,888276216),new $Int64(-946702974,3574998604),new $Int64(-1277068380,1967526716),new $Int64(-1556147941,1554691298),new $Int64(-1573024234,339944798),new $Int64(1223764147,1154515356),new $Int64(1825645307,967516237),new $Int64(1546195135,596588202),new $Int64(-1867600880,3764362170),new $Int64(-1655392592,266611402),new $Int64(-393255880,2047856075),new $Int64(-1000726433,21444105),new $Int64(-949424754,3065563181),new $Int64(-232418803,1140663212),new $Int64(633187674,2323741028),new $Int64(2126290159,3103873707),new $Int64(1008658319,2766828349),new $Int64(-485587503,1970872996),new $Int64(1628585413,3766615585),new $Int64(-595148528,2036813414),new $Int64(-1994877121,3105536507),new $Int64(13954645,3396176938),new $Int64(-721402003,1377154485),new $Int64(-61839181,3807014186),new $Int64(543009040,3710110597),new $Int64(-1751425519,916420443),new $Int64(734556788,2103831255),new $Int64(-1766161494,717331943),new $Int64(-1574598896,3550505941),new $Int64(45939673,378749927),new $Int64(-1997615719,611017331),new $Int64(592130075,758907650),new $Int64(1012992349,154266815),new $Int64(-1040454942,1407468696),new $Int64(-1678191250,970098704),new $Int64(-285057486,1971660656),new $Int64(998365243,3332747885),new $Int64(1947089649,1935189867),new $Int64(1510248801,203520055),new $Int64(-1305165746,3916463034),new $Int64(-388598655,3474113316),new $Int64(1036101639,316544223),new $Int64(-1773744891,1650844677),new $Int64(-907191419,4267565603),new $Int64(-1070275024,2501167616),new $Int64(-1520651863,3929401789),new $Int64(-2091360852,337170252),new $Int64(-960502090,2061966842),new $Int64(-304190848,2508461464),new $Int64(-1941471116,2791377107),new $Int64(1240791848,1227227588),new $Int64(1813978778,1709681848),new $Int64(1153692192,3768820575),new $Int64(-1002297449,2887126398),new $Int64(-1447111334,296561685),new $Int64(700300844,3729960077),new $Int64(-1572311344,372833036),new $Int64(2078875613,2409779288),new $Int64(1829161290,555274064),new $Int64(-1105595719,4239804901),new $Int64(1839403216,3723486978),new $Int64(-1649093095,2145871984),new $Int64(-1582765715,3565480803),new $Int64(-1568653827,2197313814),new $Int64(974785092,3613674566),new $Int64(438638731,3042093666),new $Int64(-96556264,3324034321),new $Int64(869420878,3708873369),new $Int64(946682149,1698090092),new $Int64(1618900382,4213940712),new $Int64(-1843479747,2087477361),new $Int64(-1766167800,2407950639),new $Int64(-1296225558,3942568569),new $Int64(-1223900450,4088074412),new $Int64(723260036,2964773675),new $Int64(-673921829,1539178386),new $Int64(1062961552,2694849566),new $Int64(460977733,2120273838),new $Int64(-1604570740,2484608657),new $Int64(880846449,2956190677),new $Int64(1970902366,4223313749),new $Int64(662161910,3502682327),new $Int64(705634754,4133891139),new $Int64(-1031359300,1166449596),new $Int64(1038247601,3362705993),new $Int64(93734798,3892921029),new $Int64(1876124043,786869787),new $Int64(1057490746,1046342263),new $Int64(242763728,493777327),new $Int64(-853573201,3304827646),new $Int64(616460742,125356352),new $Int64(499300063,74094113),new $Int64(-795586925,2500816079),new $Int64(-490248444,514015239),new $Int64(1377565129,543520454),new $Int64(-2039776725,3614531153),new $Int64(2056746300,2356753985),new $Int64(1390062617,2018141668),new $Int64(131272971,2087974891),new $Int64(-1502927041,3166972343),new $Int64(372256200,1517638666),new $Int64(-935275664,173466846),new $Int64(-695774461,4241513471),new $Int64(-1413550842,2783126920),new $Int64(1972004134,4167264826),new $Int64(29260506,3907395640),new $Int64(-910901561,1539634186),new $Int64(-595957298,178241987),new $Int64(-113277636,182168164),new $Int64(-1102530459,2386154934),new $Int64(1379126408,4077374341),new $Int64(-2114679722,1732699140),new $Int64(-421057745,1041306002),new $Int64(1860414813,2068001749),new $Int64(1005320202,3208962910),new $Int64(844054010,697710380),new $Int64(-1509359403,2228431183),new $Int64(-810313977,3554678728),new $Int64(-750989047,173470263),new $Int64(-85886265,3848297795),new $Int64(-926936977,246236185),new $Int64(-1984190461,2066374846),new $Int64(1771673660,312890749),new $Int64(703378057,3573310289),new $Int64(-598851901,143166754),new $Int64(613554316,2081511079),new $Int64(1197802104,486038032),new $Int64(-1906483789,2982218564),new $Int64(364901986,1000939191),new $Int64(1902782651,2750454885),new $Int64(-671844857,3375313137),new $Int64(-1643868040,881302957),new $Int64(-1508784745,2514186393),new $Int64(-1703622845,360024739),new $Int64(1399671872,292500025),new $Int64(1381210821,2276300752),new $Int64(521803381,4069087683),new $Int64(-1938982667,1637778212),new $Int64(720490469,1676670893),new $Int64(1067262482,3855174429),new $Int64(2114075974,2067248671),new $Int64(-89426259,2884561259),new $Int64(-805741095,2456511185),new $Int64(983726246,561175414),new $Int64(-1719489563,432588903),new $Int64(885133709,4059399550),new $Int64(-93096266,1075014784),new $Int64(-1733832628,2728058415),new $Int64(1839142064,1299703678),new $Int64(1262333188,2347583393),new $Int64(1285481956,2468164145),new $Int64(-1158354011,1140014346),new $Int64(2033889184,1936972070),new $Int64(-1737578993,3870530098),new $Int64(-484494257,1717789158),new $Int64(-232997156,1153452491),new $Int64(-990424416,3948827651),new $Int64(-1357145630,2101413152),new $Int64(1495744672,3854091229),new $Int64(83644069,4215565463),new $Int64(-1385277313,1202710438),new $Int64(-564909037,2072216740),new $Int64(705690639,2066751068),new $Int64(-2113583312,173902580),new $Int64(-741983806,142459001),new $Int64(172391592,1889151926),new $Int64(-498943125,3034199774),new $Int64(1618587731,516490102),new $Int64(93114264,3692577783),new $Int64(-2078821353,2953948865),new $Int64(-320938673,4041040923),new $Int64(-1942517976,592046130),new $Int64(-705643640,384297211),new $Int64(-2051649464,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(-1703423246,4013676611),new $Int64(1718532237,2265047407),new $Int64(1433593806,875071080),new $Int64(-343047503,1418843655),new $Int64(2009228711,451657300),new $Int64(1229446621,1866374663),new $Int64(1653472867,1551455622),new $Int64(577191481,3560962459),new $Int64(1669204077,3347903778),new $Int64(-298327194,2675874918),new $Int64(-1831355577,2762991672),new $Int64(530492383,3689068477),new $Int64(844089962,4071997905),new $Int64(1508155730,1381702441),new $Int64(2089931018,2373284878),new $Int64(-864267462,2143983064),new $Int64(308739063,1938207195),new $Int64(1754949306,1188152253),new $Int64(1272345009,615870490),new $Int64(742653194,2662252621),new $Int64(1477718295,3839976789),new $Int64(-2091334213,306752547),new $Int64(-1426688067,2162363077),new $Int64(-57052633,2767224719),new $Int64(-1471624099,2628837712),new $Int64(1678405918,2967771969),new $Int64(1694285728,499792248),new $Int64(-1744131281,4285253508),new $Int64(962357072,2856511070),new $Int64(679471692,2526409716),new $Int64(-1793706473,1240875658),new $Int64(-914893422,2577342868),new $Int64(-1001298215,4136853496),new $Int64(-1477114974,2403540137),new $Int64(1372824515,1371410668),new $Int64(-176562048,371758825),new $Int64(-441063112,1528834084),new $Int64(-71688630,1504757260),new $Int64(-1461820072,699052551),new $Int64(-505543539,3347789870),new $Int64(1951619734,3430604759),new $Int64(2119672219,1935601723),new $Int64(966789690,834676166)]);P=N(new AF.ptr(new B.Mutex.ptr(false),$assertType(L(new $Int64(0,1)),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,A,F,T,Z,AW,B,E,G,H,I,J,L,M,N,O,U;A=$packages["reflect"];F=$pkg.Interface=$newType(8,$kindInterface,"sort.Interface",true,"sort",true,null);T=$pkg.reverse=$newType(0,$kindStruct,"sort.reverse",true,"sort",false,function(Interface_){this.$val=this;if(arguments.length===0){this.Interface=$ifaceNil;return;}this.Interface=Interface_;});Z=$pkg.StringSlice=$newType(12,$kindSlice,"sort.StringSlice",true,"sort",true,null);AW=$sliceType($String);B=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<f)){$s=2;continue;}h=e+(g=((f-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:$s=-1;return e;}return;}if($f===undefined){$f={$blk:B};}$f.$ptr=$ptr;$f.a=a;$f.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=B;E=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=B(a[0].$length,(function(a,b){return function(c){var $ptr,c;return((c<0||c>=a[0].$length)?($throwRuntimeError("index out of range"),undefined):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=-1;return c;}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SearchStrings=E;Z.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=E($subslice(new AW(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=-1;return c;}return;}if($f===undefined){$f={$blk:Z.prototype.Search};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(Z).prototype.Search=function(a){return this.$get().Search(a);};G=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:d=b+1>>0;case 1:if(!(d<c)){$s=2;continue;}e=d;case 3:if(!(e>b)){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;return;}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)<c)){g=false;$s=5;continue s;}h=a.Less(d+f>>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:$s=-1;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;return;}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;return;}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;return;}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;};L=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,b,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;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$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=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=c-1>>0;m=k;n=l;case 7:if(!(m<n)){o=false;$s=9;continue s;}p=a.Less(m,j);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;case 9:if(!(o)){$s=8;continue;}m=m+(1)>>0;$s=7;continue;case 8:q=m;case 11:case 13:if(!(q<n)){r=false;$s=15;continue s;}s=a.Less(j,q);$s=16;case 16:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=!s;case 15:if(!(r)){$s=14;continue;}q=q+(1)>>0;$s=13;continue;case 14:case 17:if(!(q<n)){t=false;$s=19;continue s;}u=a.Less(j,n-1>>0);$s=20;case 20:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;case 19:if(!(t)){$s=18;continue;}n=n-(1)>>0;$s=17;continue;case 18:if(q>=n){$s=12;continue;}$r=a.Swap(q,n-1>>0);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=q+(1)>>0;n=n-(1)>>0;$s=11;continue;case 12:v=(c-n>>0)<5;if(!v&&(c-n>>0)<(w=((c-b>>0))/4,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"))){$s=22;continue;}$s=23;continue;case 22:x=0;y=a.Less(j,c-1>>0);$s=26;case 26:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(!y){$s=24;continue;}$s=25;continue;case 24:$r=a.Swap(n,c-1>>0);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=n+(1)>>0;x=x+(1)>>0;case 25:z=a.Less(q-1>>0,j);$s=30;case 30:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}if(!z){$s=28;continue;}$s=29;continue;case 28:q=q-(1)>>0;x=x+(1)>>0;case 29:aa=a.Less(g,j);$s=33;case 33:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}if(!aa){$s=31;continue;}$s=32;continue;case 31:$r=a.Swap(g,q-1>>0);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=q-(1)>>0;x=x+(1)>>0;case 32:v=x>1;case 23:if(v){$s=35;continue;}$s=36;continue;case 35:case 37:case 39:if(!(m<q)){ab=false;$s=41;continue s;}ac=a.Less(q-1>>0,j);$s=42;case 42:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=!ac;case 41:if(!(ab)){$s=40;continue;}q=q-(1)>>0;$s=39;continue;case 40:case 43:if(!(m<q)){ad=false;$s=45;continue s;}ae=a.Less(m,j);$s=46;case 46:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;case 45:if(!(ad)){$s=44;continue;}m=m+(1)>>0;$s=43;continue;case 44:if(m>=q){$s=38;continue;}$r=a.Swap(m,q-1>>0);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}m=m+(1)>>0;q=q-(1)>>0;$s=37;continue;case 38:case 36:$r=a.Swap(j,q-1>>0);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}af=q-1>>0;ag=n;d=af;e=ag;$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:L};}$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.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};M=function(a,b,c,d){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:case 1:if(!((c-b>>0)>12)){$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;}$s=-1;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:i=b+6>>0;case 14:if(!(i<c)){$s=15;continue;}j=a.Less(i,i-6>>0);$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(j){$s=16;continue;}$s=17;continue;case 16:$r=a.Swap(i,i-6>>0);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 17:i=i+(1)>>0;$s=14;continue;case 15:$r=G(a,b,c);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=-1;return;}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,$s,$r;$s=0;var $f,$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=a.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$r=M(a,0,c,O(c));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sort=N;O=function(a){var $ptr,a,b,c;b=0;c=a;while(true){if(!(c>0)){break;}b=b+(1)>>0;c=(c>>$min((1),31))>>0;}return $imul(b,2);};T.ptr.prototype.Less=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;d=c.Interface.Less(b,a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:T.ptr.prototype.Less};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};T.prototype.Less=function(a,b){return this.$val.Less(a,b);};U=function(a){var $ptr,a;return new T.ptr(a);};$pkg.Reverse=U;Z.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(Z).prototype.Len=function(){return this.$get().Len();};Z.prototype.Less=function(a,b){var $ptr,a,b,c;c=this;return((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a])<((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);};$ptrType(Z).prototype.Less=function(a,b){return this.$get().Less(a,b);};Z.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e;c=this;d=((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);e=((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]);((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=d);((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]=e);};$ptrType(Z).prototype.Swap=function(a,b){return this.$get().Swap(a,b);};Z.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;return;}return;}if($f===undefined){$f={$blk:Z.prototype.Sort};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(Z).prototype.Sort=function(){return this.$get().Sort();};T.methods=[{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)}];Z.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)}];F.init([{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)}]);T.init("",[{prop:"Interface",name:"",exported:true,typ:F,tag:""}]);Z.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:$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["github.com/r0fls/gostats"]=(function(){var $pkg={},$init,A,B,C,D;A=$packages["math"];B=$packages["math/rand"];C=$packages["sort"];D=$packages["time"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/subtle"]=(function(){var $pkg={},$init,C;C=function(a,b){var $ptr,a,b,c;c=~(((a^b)<<24>>>24))<<24>>>24;c=(c&((c>>>4<<24>>>24)))>>>0;c=(c&((c>>>2<<24>>>24)))>>>0;c=(c&((c>>>1<<24>>>24)))>>>0;return(c>>0);};$pkg.ConstantTimeByteEq=C;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/cipher"]=(function(){var $pkg={},$init,A,B,C,D,R,AW,AD;A=$packages["crypto/subtle"];B=$packages["errors"];C=$packages["io"];D=$packages["runtime"];R=$pkg.Stream=$newType(8,$kindInterface,"cipher.Stream",true,"crypto/cipher",true,null);AW=$sliceType($Uint8);R.init([{prop:"XORKeyStream",name:"XORKeyStream",pkg:"",typ:$funcType([AW,AW],[],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AD=B.New("cipher: message authentication failed");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["encoding"]=(function(){var $pkg={},$init,A,B,C,D,E;A=$pkg.BinaryMarshaler=$newType(8,$kindInterface,"encoding.BinaryMarshaler",true,"encoding",true,null);B=$pkg.BinaryUnmarshaler=$newType(8,$kindInterface,"encoding.BinaryUnmarshaler",true,"encoding",true,null);C=$pkg.TextMarshaler=$newType(8,$kindInterface,"encoding.TextMarshaler",true,"encoding",true,null);D=$pkg.TextUnmarshaler=$newType(8,$kindInterface,"encoding.TextUnmarshaler",true,"encoding",true,null);E=$sliceType($Uint8);A.init([{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[E,$error],false)}]);B.init([{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([E],[$error],false)}]);C.init([{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[E,$error],false)}]);D.init([{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([E],[$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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["encoding/binary"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,N,O,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,U,H,I,K,L,P,Q,R;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];E=$pkg.ByteOrder=$newType(8,$kindInterface,"binary.ByteOrder",true,"encoding/binary",true,null);F=$pkg.littleEndian=$newType(0,$kindStruct,"binary.littleEndian",true,"encoding/binary",false,function(){this.$val=this;if(arguments.length===0){return;}});G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian",true,"encoding/binary",false,function(){this.$val=this;if(arguments.length===0){return;}});N=$pkg.decoder=$newType(0,$kindStruct,"binary.decoder",true,"encoding/binary",false,function(order_,buf_){this.$val=this;if(arguments.length===0){this.order=$ifaceNil;this.buf=Y.nil;return;}this.order=order_;this.buf=buf_;});O=$pkg.encoder=$newType(0,$kindStruct,"binary.encoder",true,"encoding/binary",false,function(order_,buf_){this.$val=this;if(arguments.length===0){this.order=$ifaceNil;this.buf=Y.nil;return;}this.order=order_;this.buf=buf_;});X=$arrayType($Uint8,8);Y=$sliceType($Uint8);Z=$ptrType($Bool);AA=$ptrType($Int8);AB=$ptrType($Uint8);AC=$ptrType($Int16);AD=$ptrType($Uint16);AE=$ptrType($Int32);AF=$ptrType($Uint32);AG=$ptrType($Int64);AH=$ptrType($Uint64);AI=$sliceType($Bool);AJ=$sliceType($Int8);AK=$sliceType($Int16);AL=$sliceType($Uint16);AM=$sliceType($Int32);AN=$sliceType($Uint32);AO=$sliceType($Int64);AP=$sliceType($Uint64);AQ=$ptrType(N);AR=$ptrType(O);F.ptr.prototype.Uint16=function(a){var $ptr,a;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));return(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])<<16>>>16)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])<<16>>>16)<<8<<16>>>16))>>>0;};F.prototype.Uint16=function(a){return this.$val.Uint16(a);};F.ptr.prototype.PutUint16=function(a,b){var $ptr,a,b;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>8<<16>>>16)<<24>>>24));};F.prototype.PutUint16=function(a,b){return this.$val.PutUint16(a,b);};F.ptr.prototype.Uint32=function(a){var $ptr,a;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));return(((((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>>0)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])>>>0)<<24>>>0))>>>0;};F.prototype.Uint32=function(a){return this.$val.Uint32(a);};F.ptr.prototype.PutUint32=function(a,b){var $ptr,a,b;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>8>>>0)<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((b>>>16>>>0)<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((b>>>24>>>0)<<24>>>24));};F.prototype.PutUint32=function(a,b){return this.$val.PutUint32(a,b);};F.ptr.prototype.Uint64=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])),i=$shiftLeft64(new $Uint64(0,(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])),8),new $Uint64(h.$high|i.$high,(h.$low|i.$low)>>>0)),j=$shiftLeft64(new $Uint64(0,(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])),16),new $Uint64(g.$high|j.$high,(g.$low|j.$low)>>>0)),k=$shiftLeft64(new $Uint64(0,(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])),24),new $Uint64(f.$high|k.$high,(f.$low|k.$low)>>>0)),l=$shiftLeft64(new $Uint64(0,(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4])),32),new $Uint64(e.$high|l.$high,(e.$low|l.$low)>>>0)),m=$shiftLeft64(new $Uint64(0,(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5])),40),new $Uint64(d.$high|m.$high,(d.$low|m.$low)>>>0)),n=$shiftLeft64(new $Uint64(0,(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6])),48),new $Uint64(c.$high|n.$high,(c.$low|n.$low)>>>0)),o=$shiftLeft64(new $Uint64(0,(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7])),56),new $Uint64(b.$high|o.$high,(b.$low|o.$low)>>>0));};F.prototype.Uint64=function(a){return this.$val.Uint64(a);};F.ptr.prototype.PutUint64=function(a,b){var $ptr,a,b;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b.$low<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=($shiftRightUint64(b,8).$low<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=($shiftRightUint64(b,16).$low<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=($shiftRightUint64(b,24).$low<<24>>>24));(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]=($shiftRightUint64(b,32).$low<<24>>>24));(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]=($shiftRightUint64(b,40).$low<<24>>>24));(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]=($shiftRightUint64(b,48).$low<<24>>>24));(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]=($shiftRightUint64(b,56).$low<<24>>>24));};F.prototype.PutUint64=function(a,b){return this.$val.PutUint64(a,b);};F.ptr.prototype.String=function(){var $ptr;return"LittleEndian";};F.prototype.String=function(){return this.$val.String();};F.ptr.prototype.GoString=function(){var $ptr;return"binary.LittleEndian";};F.prototype.GoString=function(){return this.$val.GoString();};G.ptr.prototype.Uint16=function(a){var $ptr,a;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));return(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])<<16>>>16)<<8<<16>>>16))>>>0;};G.prototype.Uint16=function(a){return this.$val.Uint16(a);};G.ptr.prototype.PutUint16=function(a,b){var $ptr,a,b;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=(b<<24>>>24));};G.prototype.PutUint16=function(a,b){return this.$val.PutUint16(a,b);};G.ptr.prototype.Uint32=function(a){var $ptr,a;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));return(((((((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>>0)<<24>>>0))>>>0;};G.prototype.Uint32=function(a){return this.$val.Uint32(a);};G.ptr.prototype.PutUint32=function(a,b){var $ptr,a,b;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=(b<<24>>>24));};G.prototype.PutUint32=function(a,b){return this.$val.PutUint32(a,b);};G.ptr.prototype.Uint64=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6])),8),new $Uint64(h.$high|i.$high,(h.$low|i.$low)>>>0)),j=$shiftLeft64(new $Uint64(0,(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5])),16),new $Uint64(g.$high|j.$high,(g.$low|j.$low)>>>0)),k=$shiftLeft64(new $Uint64(0,(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4])),24),new $Uint64(f.$high|k.$high,(f.$low|k.$low)>>>0)),l=$shiftLeft64(new $Uint64(0,(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])),32),new $Uint64(e.$high|l.$high,(e.$low|l.$low)>>>0)),m=$shiftLeft64(new $Uint64(0,(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])),40),new $Uint64(d.$high|m.$high,(d.$low|m.$low)>>>0)),n=$shiftLeft64(new $Uint64(0,(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])),48),new $Uint64(c.$high|n.$high,(c.$low|n.$low)>>>0)),o=$shiftLeft64(new $Uint64(0,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])),56),new $Uint64(b.$high|o.$high,(b.$low|o.$low)>>>0));};G.prototype.Uint64=function(a){return this.$val.Uint64(a);};G.ptr.prototype.PutUint64=function(a,b){var $ptr,a,b;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]=(b.$low<<24>>>24));};G.prototype.PutUint64=function(a,b){return this.$val.PutUint64(a,b);};G.ptr.prototype.String=function(){var $ptr;return"BigEndian";};G.prototype.String=function(){return this.$val.String();};G.ptr.prototype.GoString=function(){var $ptr;return"binary.BigEndian";};G.prototype.GoString=function(){return this.$val.GoString();};H=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;c=$f.c;ca=$f.ca;cb=$f.cb;cc=$f.cc;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=P(c);if(!((d===0))){$s=1;continue;}$s=2;continue;case 1:e=X.zero();f=Y.nil;if(d>8){f=$makeSlice(Y,d);}else{f=$subslice(new Y(e),0,d);}h=B.ReadFull(a,f);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return i;}j=c;if($assertType(j,Z,true)[1]){$s=4;continue;}if($assertType(j,AA,true)[1]){$s=5;continue;}if($assertType(j,AB,true)[1]){$s=6;continue;}if($assertType(j,AC,true)[1]){$s=7;continue;}if($assertType(j,AD,true)[1]){$s=8;continue;}if($assertType(j,AE,true)[1]){$s=9;continue;}if($assertType(j,AF,true)[1]){$s=10;continue;}if($assertType(j,AG,true)[1]){$s=11;continue;}if($assertType(j,AH,true)[1]){$s=12;continue;}if($assertType(j,AI,true)[1]){$s=13;continue;}if($assertType(j,AJ,true)[1]){$s=14;continue;}if($assertType(j,Y,true)[1]){$s=15;continue;}if($assertType(j,AK,true)[1]){$s=16;continue;}if($assertType(j,AL,true)[1]){$s=17;continue;}if($assertType(j,AM,true)[1]){$s=18;continue;}if($assertType(j,AN,true)[1]){$s=19;continue;}if($assertType(j,AO,true)[1]){$s=20;continue;}if($assertType(j,AP,true)[1]){$s=21;continue;}$s=22;continue;case 4:k=j.$val;k.$set(!((e[0]===0)));$s=22;continue;case 5:l=j.$val;l.$set((e[0]<<24>>24));$s=22;continue;case 6:m=j.$val;m.$set(e[0]);$s=22;continue;case 7:n=j.$val;ac=b.Uint16(f);$s=23;case 23:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}n.$set((ac<<16>>16));$s=22;continue;case 8:o=j.$val;ad=b.Uint16(f);$s=24;case 24:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}o.$set(ad);$s=22;continue;case 9:p=j.$val;ae=b.Uint32(f);$s=25;case 25:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}p.$set((ae>>0));$s=22;continue;case 10:q=j.$val;af=b.Uint32(f);$s=26;case 26:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}q.$set(af);$s=22;continue;case 11:r=j.$val;ah=b.Uint64(f);$s=27;case 27:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}r.$set((ag=ah,new $Int64(ag.$high,ag.$low)));$s=22;continue;case 12:s=j.$val;ai=b.Uint64(f);$s=28;case 28:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}s.$set(ai);$s=22;continue;case 13:t=j.$val;aj=f;ak=0;while(true){if(!(ak<aj.$length)){break;}al=ak;am=((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]);((al<0||al>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+al]=!((am===0)));ak++;}$s=22;continue;case 14:u=j.$val;an=f;ao=0;while(true){if(!(ao<an.$length)){break;}ap=ao;aq=((ao<0||ao>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+ao]);((ap<0||ap>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+ap]=(aq<<24>>24));ao++;}$s=22;continue;case 15:v=j.$val;$copySlice(v,f);$s=22;continue;case 16:w=j.$val;ar=w;as=0;case 29:if(!(as<ar.$length)){$s=30;continue;}at=as;au=b.Uint16($subslice(f,($imul(2,at))));$s=31;case 31:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}((at<0||at>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+at]=(au<<16>>16));as++;$s=29;continue;case 30:$s=22;continue;case 17:x=j.$val;av=x;aw=0;case 32:if(!(aw<av.$length)){$s=33;continue;}ax=aw;ay=b.Uint16($subslice(f,($imul(2,ax))));$s=34;case 34:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}((ax<0||ax>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+ax]=ay);aw++;$s=32;continue;case 33:$s=22;continue;case 18:y=j.$val;az=y;ba=0;case 35:if(!(ba<az.$length)){$s=36;continue;}bb=ba;bc=b.Uint32($subslice(f,($imul(4,bb))));$s=37;case 37:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}((bb<0||bb>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+bb]=(bc>>0));ba++;$s=35;continue;case 36:$s=22;continue;case 19:z=j.$val;bd=z;be=0;case 38:if(!(be<bd.$length)){$s=39;continue;}bf=be;bg=b.Uint32($subslice(f,($imul(4,bf))));$s=40;case 40:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}((bf<0||bf>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+bf]=bg);be++;$s=38;continue;case 39:$s=22;continue;case 20:aa=j.$val;bh=aa;bi=0;case 41:if(!(bi<bh.$length)){$s=42;continue;}bj=bi;bl=b.Uint64($subslice(f,($imul(8,bj))));$s=43;case 43:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}((bj<0||bj>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+bj]=(bk=bl,new $Int64(bk.$high,bk.$low)));bi++;$s=41;continue;case 42:$s=22;continue;case 21:ab=j.$val;bm=ab;bn=0;case 44:if(!(bn<bm.$length)){$s=45;continue;}bo=bn;bp=b.Uint64($subslice(f,($imul(8,bo))));$s=46;case 46:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}((bo<0||bo>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+bo]=bp);bn++;$s=44;continue;case 45:case 22:$s=-1;return $ifaceNil;case 2:bq=D.ValueOf(c);$s=47;case 47:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bq;bs=-1;bt=$clone(br,D.Value).Kind();if(bt===(22)){$s=49;continue;}if(bt===(23)){$s=50;continue;}$s=51;continue;case 49:bu=$clone(br,D.Value).Elem();$s=52;case 52:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}br=bu;bv=K($clone(br,D.Value));$s=53;case 53:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bs=bv;$s=51;continue;case 50:bw=K($clone(br,D.Value));$s=54;case 54:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bs=bw;case 51:case 48:if(bs<0){$s=55;continue;}$s=56;continue;case 55:bx=D.TypeOf(c).String();$s=57;case 57:if($c){$c=false;bx=bx.$blk();}if(bx&&bx.$blk!==undefined){break s;}by=A.New("binary.Read: invalid type "+bx);$s=58;case 58:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}$s=-1;return by;case 56:bz=new N.ptr(b,$makeSlice(Y,bs));cb=B.ReadFull(a,bz.buf);$s=59;case 59:if($c){$c=false;cb=cb.$blk();}if(cb&&cb.$blk!==undefined){break s;}ca=cb;cc=ca[1];if(!($interfaceIsEqual(cc,$ifaceNil))){$s=-1;return cc;}$r=bz.value($clone(br,D.Value));$s=60;case 60:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.c=c;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Read=H;I=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;c=$f.c;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=P(c);if(!((d===0))){$s=1;continue;}$s=2;continue;case 1:e=X.zero();f=Y.nil;if(d>8){f=$makeSlice(Y,d);}else{f=$subslice(new Y(e),0,d);}g=c;if($assertType(g,Z,true)[1]){$s=3;continue;}if($assertType(g,$Bool,true)[1]){$s=4;continue;}if($assertType(g,AI,true)[1]){$s=5;continue;}if($assertType(g,AA,true)[1]){$s=6;continue;}if($assertType(g,$Int8,true)[1]){$s=7;continue;}if($assertType(g,AJ,true)[1]){$s=8;continue;}if($assertType(g,AB,true)[1]){$s=9;continue;}if($assertType(g,$Uint8,true)[1]){$s=10;continue;}if($assertType(g,Y,true)[1]){$s=11;continue;}if($assertType(g,AC,true)[1]){$s=12;continue;}if($assertType(g,$Int16,true)[1]){$s=13;continue;}if($assertType(g,AK,true)[1]){$s=14;continue;}if($assertType(g,AD,true)[1]){$s=15;continue;}if($assertType(g,$Uint16,true)[1]){$s=16;continue;}if($assertType(g,AL,true)[1]){$s=17;continue;}if($assertType(g,AE,true)[1]){$s=18;continue;}if($assertType(g,$Int32,true)[1]){$s=19;continue;}if($assertType(g,AM,true)[1]){$s=20;continue;}if($assertType(g,AF,true)[1]){$s=21;continue;}if($assertType(g,$Uint32,true)[1]){$s=22;continue;}if($assertType(g,AN,true)[1]){$s=23;continue;}if($assertType(g,AG,true)[1]){$s=24;continue;}if($assertType(g,$Int64,true)[1]){$s=25;continue;}if($assertType(g,AO,true)[1]){$s=26;continue;}if($assertType(g,AH,true)[1]){$s=27;continue;}if($assertType(g,$Uint64,true)[1]){$s=28;continue;}if($assertType(g,AP,true)[1]){$s=29;continue;}$s=30;continue;case 3:h=g.$val;if(h.$get()){e[0]=1;}else{e[0]=0;}$s=30;continue;case 4:i=g.$val;if(i){e[0]=1;}else{e[0]=0;}$s=30;continue;case 5:j=g.$val;ai=j;aj=0;while(true){if(!(aj<ai.$length)){break;}ak=aj;al=((aj<0||aj>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+aj]);if(al){((ak<0||ak>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ak]=1);}else{((ak<0||ak>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ak]=0);}aj++;}$s=30;continue;case 6:k=g.$val;e[0]=(k.$get()<<24>>>24);$s=30;continue;case 7:l=g.$val;e[0]=(l<<24>>>24);$s=30;continue;case 8:m=g.$val;am=m;an=0;while(true){if(!(an<am.$length)){break;}ao=an;ap=((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an]);((ao<0||ao>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ao]=(ap<<24>>>24));an++;}$s=30;continue;case 9:n=g.$val;e[0]=n.$get();$s=30;continue;case 10:o=g.$val;e[0]=o;$s=30;continue;case 11:p=g.$val;f=p;$s=30;continue;case 12:q=g.$val;$r=b.PutUint16(f,(q.$get()<<16>>>16));$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 13:r=g.$val;$r=b.PutUint16(f,(r<<16>>>16));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 14:s=g.$val;aq=s;ar=0;case 33:if(!(ar<aq.$length)){$s=34;continue;}as=ar;at=((ar<0||ar>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ar]);$r=b.PutUint16($subslice(f,($imul(2,as))),(at<<16>>>16));$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar++;$s=33;continue;case 34:$s=30;continue;case 15:t=g.$val;$r=b.PutUint16(f,t.$get());$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 16:u=g.$val;$r=b.PutUint16(f,u);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 17:v=g.$val;au=v;av=0;case 38:if(!(av<au.$length)){$s=39;continue;}aw=av;ax=((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]);$r=b.PutUint16($subslice(f,($imul(2,aw))),ax);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}av++;$s=38;continue;case 39:$s=30;continue;case 18:w=g.$val;$r=b.PutUint32(f,(w.$get()>>>0));$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 19:x=g.$val;$r=b.PutUint32(f,(x>>>0));$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 20:y=g.$val;ay=y;az=0;case 43:if(!(az<ay.$length)){$s=44;continue;}ba=az;bb=((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]);$r=b.PutUint32($subslice(f,($imul(4,ba))),(bb>>>0));$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}az++;$s=43;continue;case 44:$s=30;continue;case 21:z=g.$val;$r=b.PutUint32(f,z.$get());$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 22:aa=g.$val;$r=b.PutUint32(f,aa);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 23:ab=g.$val;bc=ab;bd=0;case 48:if(!(bd<bc.$length)){$s=49;continue;}be=bd;bf=((bd<0||bd>=bc.$length)?($throwRuntimeError("index out of range"),undefined):bc.$array[bc.$offset+bd]);$r=b.PutUint32($subslice(f,($imul(4,be))),bf);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bd++;$s=48;continue;case 49:$s=30;continue;case 24:ac=g.$val;$r=b.PutUint64(f,(bg=ac.$get(),new $Uint64(bg.$high,bg.$low)));$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 25:ad=g.$val;$r=b.PutUint64(f,new $Uint64(ad.$high,ad.$low));$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 26:ae=g.$val;bh=ae;bi=0;case 53:if(!(bi<bh.$length)){$s=54;continue;}bj=bi;bk=((bi<0||bi>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bi]);$r=b.PutUint64($subslice(f,($imul(8,bj))),new $Uint64(bk.$high,bk.$low));$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bi++;$s=53;continue;case 54:$s=30;continue;case 27:af=g.$val;$r=b.PutUint64(f,af.$get());$s=56;case 56:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 28:ag=g.$val;$r=b.PutUint64(f,ag);$s=57;case 57:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 29:ah=g.$val;bl=ah;bm=0;case 58:if(!(bm<bl.$length)){$s=59;continue;}bn=bm;bo=((bm<0||bm>=bl.$length)?($throwRuntimeError("index out of range"),undefined):bl.$array[bl.$offset+bm]);$r=b.PutUint64($subslice(f,($imul(8,bn))),bo);$s=60;case 60:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bm++;$s=58;continue;case 59:case 30:bq=a.Write(f);$s=61;case 61:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}bp=bq;br=bp[1];$s=-1;return br;case 2:bs=D.ValueOf(c);$s=62;case 62:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=D.Indirect($clone(bs,D.Value));$s=63;case 63:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}bu=bt;bv=K($clone(bu,D.Value));$s=64;case 64:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bw=bv;if(bw<0){$s=65;continue;}$s=66;continue;case 65:bx=D.TypeOf(c).String();$s=67;case 67:if($c){$c=false;bx=bx.$blk();}if(bx&&bx.$blk!==undefined){break s;}by=A.New("binary.Write: invalid type "+bx);$s=68;case 68:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}$s=-1;return by;case 66:bz=$makeSlice(Y,bw);ca=new O.ptr(b,bz);$r=ca.value($clone(bu,D.Value));$s=69;case 69:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}cc=a.Write(bz);$s=70;case 70:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cb=cc;cd=cb[1];$s=-1;return cd;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.c=c;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Write=I;K=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(a,D.Value).Kind()===23){$s=1;continue;}$s=2;continue;case 1:b=$clone(a,D.Value).Type().Elem();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=L(b);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(d>=0){$s=-1;return $imul(d,$clone(a,D.Value).Len());}$s=-1;return-1;case 2:e=L($clone(a,D.Value).Type());$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:K};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=a.Kind();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(c===(17)){$s=3;continue;}if(c===(25)){$s=4;continue;}if((c===(1))||(c===(8))||(c===(9))||(c===(10))||(c===(11))||(c===(3))||(c===(4))||(c===(5))||(c===(6))||(c===(13))||(c===(14))||(c===(15))||(c===(16))){$s=5;continue;}$s=6;continue;case 3:d=a.Elem();$s=7;case 7:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=L(d);$s=8;case 8:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f>=0){$s=9;continue;}$s=10;continue;case 9:g=a.Len();$s=11;case 11:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return $imul(f,g);case 10:$s=6;continue;case 4:h=0;i=0;k=a.NumField();$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=i;m=j;case 13:if(!(l<m)){$s=14;continue;}n=a.Field(l);$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=L(n.Type);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(p<0){$s=-1;return-1;}h=h+(p)>>0;l=l+(1)>>0;$s=13;continue;case 14:$s=-1;return h;case 5:q=a.Size();$s=17;case 17:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return(q>>0);case 6:case 1:$s=-1;return-1;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};N.ptr.prototype.bool=function(){var $ptr,a,b,c;a=this;c=(b=a.buf,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));a.buf=$subslice(a.buf,1);return!((c===0));};N.prototype.bool=function(){return this.$val.bool();};O.ptr.prototype.bool=function(a){var $ptr,a,b,c,d;b=this;if(a){(c=b.buf,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]=1));}else{(d=b.buf,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]=0));}b.buf=$subslice(b.buf,1);};O.prototype.bool=function(a){return this.$val.bool(a);};N.ptr.prototype.uint8=function(){var $ptr,a,b,c;a=this;c=(b=a.buf,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));a.buf=$subslice(a.buf,1);return c;};N.prototype.uint8=function(){return this.$val.uint8();};O.ptr.prototype.uint8=function(a){var $ptr,a,b,c;b=this;(c=b.buf,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]=a));b.buf=$subslice(b.buf,1);};O.prototype.uint8=function(a){return this.$val.uint8(a);};N.ptr.prototype.uint16=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint16($subslice(a.buf,0,2));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,2);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint16=function(){return this.$val.uint16();};O.ptr.prototype.uint16=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint16($subslice(b.buf,0,2),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,2);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint16=function(a){return this.$val.uint16(a);};N.ptr.prototype.uint32=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint32($subslice(a.buf,0,4));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,4);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint32=function(){return this.$val.uint32();};O.ptr.prototype.uint32=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint32($subslice(b.buf,0,4),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,4);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint32=function(a){return this.$val.uint32(a);};N.ptr.prototype.uint64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint64($subslice(a.buf,0,8));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,8);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint64=function(){return this.$val.uint64();};O.ptr.prototype.uint64=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint64($subslice(b.buf,0,8),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,8);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint64=function(a){return this.$val.uint64(a);};N.ptr.prototype.int8=function(){var $ptr,a;a=this;return(a.uint8()<<24>>24);};N.prototype.int8=function(){return this.$val.int8();};O.ptr.prototype.int8=function(a){var $ptr,a,b;b=this;b.uint8((a<<24>>>24));};O.prototype.int8=function(a){return this.$val.int8(a);};N.ptr.prototype.int16=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.uint16();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return(b<<16>>16);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int16=function(){return this.$val.int16();};O.ptr.prototype.int16=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint16((a<<16>>>16));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int16=function(a){return this.$val.int16(a);};N.ptr.prototype.int32=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.uint32();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return(b>>0);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int32=function(){return this.$val.int32();};O.ptr.prototype.int32=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint32((a>>>0));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int32=function(a){return this.$val.int32(a);};N.ptr.prototype.int64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;c=a.uint64();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return(b=c,new $Int64(b.$high,b.$low));}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int64=function(){return this.$val.int64();};O.ptr.prototype.int64=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint64(new $Uint64(a.$high,a.$low));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int64=function(a){return this.$val.int64(a);};N.ptr.prototype.value=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(a,D.Value).Kind();if(c===(17)){$s=2;continue;}if(c===(25)){$s=3;continue;}if(c===(23)){$s=4;continue;}if(c===(1)){$s=5;continue;}if(c===(3)){$s=6;continue;}if(c===(4)){$s=7;continue;}if(c===(5)){$s=8;continue;}if(c===(6)){$s=9;continue;}if(c===(8)){$s=10;continue;}if(c===(9)){$s=11;continue;}if(c===(10)){$s=12;continue;}if(c===(11)){$s=13;continue;}if(c===(13)){$s=14;continue;}if(c===(14)){$s=15;continue;}if(c===(15)){$s=16;continue;}if(c===(16)){$s=17;continue;}$s=18;continue;case 2:d=$clone(a,D.Value).Len();e=0;case 19:if(!(e<d)){$s=20;continue;}f=$clone(a,D.Value).Index(e);$s=21;case 21:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=b.value($clone(f,D.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=19;continue;case 20:$s=18;continue;case 3:g=$clone(a,D.Value).Type();h=$clone(a,D.Value).NumField();i=0;case 23:if(!(i<h)){$s=24;continue;}j=$clone(a,D.Value).Field(i);$s=25;case 25:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if($clone(k,D.Value).CanSet()){l=true;$s=29;continue s;}m=g.Field(i);$s=30;case 30:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=!(m.Name==="_");case 29:if(l){$s=26;continue;}$s=27;continue;case 26:$r=b.value($clone(k,D.Value));$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=28;continue;case 27:$r=b.skip($clone(k,D.Value));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 28:i=i+(1)>>0;$s=23;continue;case 24:$s=18;continue;case 4:n=$clone(a,D.Value).Len();o=0;case 33:if(!(o<n)){$s=34;continue;}p=$clone(a,D.Value).Index(o);$s=35;case 35:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=b.value($clone(p,D.Value));$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=33;continue;case 34:$s=18;continue;case 5:$clone(a,D.Value).SetBool(b.bool());$s=18;continue;case 6:$clone(a,D.Value).SetInt(new $Int64(0,b.int8()));$s=18;continue;case 7:q=b.int16();$s=37;case 37:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(new $Int64(0,q));$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 8:r=b.int32();$s=39;case 39:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(new $Int64(0,r));$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 9:s=b.int64();$s=41;case 41:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(s);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 10:$clone(a,D.Value).SetUint(new $Uint64(0,b.uint8()));$s=18;continue;case 11:t=b.uint16();$s=43;case 43:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(new $Uint64(0,t));$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 12:u=b.uint32();$s=45;case 45:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(new $Uint64(0,u));$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 13:v=b.uint64();$s=47;case 47:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(v);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 14:w=b.uint32();$s=49;case 49:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=C.Float32frombits(w);$s=50;case 50:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetFloat(x);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 15:y=b.uint64();$s=52;case 52:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=C.Float64frombits(y);$s=53;case 53:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetFloat(z);$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 16:aa=b.uint32();$s=55;case 55:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}ab=C.Float32frombits(aa);$s=56;case 56:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;ad=b.uint32();$s=57;case 57:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=C.Float32frombits(ad);$s=58;case 58:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$r=$clone(a,D.Value).SetComplex(new $Complex128(ac,af));$s=59;case 59:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 17:ag=b.uint64();$s=60;case 60:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=C.Float64frombits(ag);$s=61;case 61:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;aj=b.uint64();$s=62;case 62:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=C.Float64frombits(aj);$s=63;case 63:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=$clone(a,D.Value).SetComplex(new $Complex128(ai,al));$s=64;case 64:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.value};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.value=function(a){return this.$val.value(a);};O.ptr.prototype.value=function(a){var $ptr,a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(a,D.Value).Kind();if(c===(17)){$s=2;continue;}if(c===(25)){$s=3;continue;}if(c===(23)){$s=4;continue;}if(c===(1)){$s=5;continue;}if((c===(2))||(c===(3))||(c===(4))||(c===(5))||(c===(6))){$s=6;continue;}if((c===(7))||(c===(8))||(c===(9))||(c===(10))||(c===(11))||(c===(12))){$s=7;continue;}if((c===(13))||(c===(14))){$s=8;continue;}if((c===(15))||(c===(16))){$s=9;continue;}$s=10;continue;case 2:d=$clone(a,D.Value).Len();e=0;case 11:if(!(e<d)){$s=12;continue;}f=$clone(a,D.Value).Index(e);$s=13;case 13:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=b.value($clone(f,D.Value));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=11;continue;case 12:$s=10;continue;case 3:g=$clone(a,D.Value).Type();h=$clone(a,D.Value).NumField();i=0;case 15:if(!(i<h)){$s=16;continue;}j=$clone(a,D.Value).Field(i);$s=17;case 17:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if($clone(k,D.Value).CanSet()){l=true;$s=21;continue s;}m=g.Field(i);$s=22;case 22:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=!(m.Name==="_");case 21:if(l){$s=18;continue;}$s=19;continue;case 18:$r=b.value($clone(k,D.Value));$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=20;continue;case 19:$r=b.skip($clone(k,D.Value));$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:i=i+(1)>>0;$s=15;continue;case 16:$s=10;continue;case 4:n=$clone(a,D.Value).Len();o=0;case 25:if(!(o<n)){$s=26;continue;}p=$clone(a,D.Value).Index(o);$s=27;case 27:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=b.value($clone(p,D.Value));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=25;continue;case 26:$s=10;continue;case 5:b.bool($clone(a,D.Value).Bool());$s=10;continue;case 6:q=$clone(a,D.Value).Type().Kind();$s=30;case 30:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(r===(3)){$s=31;continue;}if(r===(4)){$s=32;continue;}if(r===(5)){$s=33;continue;}if(r===(6)){$s=34;continue;}$s=35;continue;case 31:b.int8(((s=$clone(a,D.Value).Int(),s.$low+((s.$high>>31)*4294967296))<<24>>24));$s=35;continue;case 32:$r=b.int16(((t=$clone(a,D.Value).Int(),t.$low+((t.$high>>31)*4294967296))<<16>>16));$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=35;continue;case 33:$r=b.int32(((u=$clone(a,D.Value).Int(),u.$low+((u.$high>>31)*4294967296))>>0));$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=35;continue;case 34:$r=b.int64($clone(a,D.Value).Int());$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 35:case 29:$s=10;continue;case 7:v=$clone(a,D.Value).Type().Kind();$s=40;case 40:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(w===(8)){$s=41;continue;}if(w===(9)){$s=42;continue;}if(w===(10)){$s=43;continue;}if(w===(11)){$s=44;continue;}$s=45;continue;case 41:b.uint8(($clone(a,D.Value).Uint().$low<<24>>>24));$s=45;continue;case 42:$r=b.uint16(($clone(a,D.Value).Uint().$low<<16>>>16));$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=45;continue;case 43:$r=b.uint32(($clone(a,D.Value).Uint().$low>>>0));$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=45;continue;case 44:$r=b.uint64($clone(a,D.Value).Uint());$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 45:case 39:$s=10;continue;case 8:x=$clone(a,D.Value).Type().Kind();$s=50;case 50:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;if(y===(13)){$s=51;continue;}if(y===(14)){$s=52;continue;}$s=53;continue;case 51:$r=b.uint32(C.Float32bits($fround($clone(a,D.Value).Float())));$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=53;continue;case 52:$r=b.uint64(C.Float64bits($clone(a,D.Value).Float()));$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 53:case 49:$s=10;continue;case 9:z=$clone(a,D.Value).Type().Kind();$s=57;case 57:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=z;if(aa===(15)){$s=58;continue;}if(aa===(16)){$s=59;continue;}$s=60;continue;case 58:ab=$clone(a,D.Value).Complex();$r=b.uint32(C.Float32bits($fround(ab.$real)));$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.uint32(C.Float32bits($fround(ab.$imag)));$s=62;case 62:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=60;continue;case 59:ac=$clone(a,D.Value).Complex();$r=b.uint64(C.Float64bits(ac.$real));$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.uint64(C.Float64bits(ac.$imag));$s=64;case 64:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 60:case 56:case 10:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.value};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.value=function(a){return this.$val.value(a);};N.ptr.prototype.skip=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=K($clone(a,D.Value));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b.buf=$subslice(b.buf,c);$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.skip};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.skip=function(a){return this.$val.skip(a);};O.ptr.prototype.skip=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=K($clone(a,D.Value));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=$subslice(b.buf,0,d);f=0;while(true){if(!(f<e.$length)){break;}g=f;(h=b.buf,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]=0));f++;}b.buf=$subslice(b.buf,d);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.skip};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.skip=function(a){return this.$val.skip(a);};P=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;b=a;if($assertType(b,$Bool,true)[1]||$assertType(b,$Int8,true)[1]||$assertType(b,$Uint8,true)[1]||$assertType(b,Z,true)[1]||$assertType(b,AA,true)[1]||$assertType(b,AB,true)[1]){c=b;return 1;}else if($assertType(b,AJ,true)[1]){d=b.$val;return d.$length;}else if($assertType(b,Y,true)[1]){e=b.$val;return e.$length;}else if($assertType(b,$Int16,true)[1]||$assertType(b,$Uint16,true)[1]||$assertType(b,AC,true)[1]||$assertType(b,AD,true)[1]){f=b;return 2;}else if($assertType(b,AK,true)[1]){g=b.$val;return $imul(2,g.$length);}else if($assertType(b,AL,true)[1]){h=b.$val;return $imul(2,h.$length);}else if($assertType(b,$Int32,true)[1]||$assertType(b,$Uint32,true)[1]||$assertType(b,AE,true)[1]||$assertType(b,AF,true)[1]){i=b;return 4;}else if($assertType(b,AM,true)[1]){j=b.$val;return $imul(4,j.$length);}else if($assertType(b,AN,true)[1]){k=b.$val;return $imul(4,k.$length);}else if($assertType(b,$Int64,true)[1]||$assertType(b,$Uint64,true)[1]||$assertType(b,AG,true)[1]||$assertType(b,AH,true)[1]){l=b;return 8;}else if($assertType(b,AO,true)[1]){m=b.$val;return $imul(8,m.$length);}else if($assertType(b,AP,true)[1]){n=b.$val;return $imul(8,n.$length);}return 0;};Q=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!((b.$high>0||(b.$high===0&&b.$low>=128)))){break;}((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=(((b.$low<<24>>>24)|128)>>>0));b=$shiftRightUint64(b,(7));c=c+(1)>>0;}((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=(b.$low<<24>>>24));return c+1>>0;};$pkg.PutUvarint=Q;R=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=new $Uint64(0,0);c=0;d=a;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(g<128){if(f>9||(f===9)&&g>1){return[new $Uint64(0,0),-((f+1>>0))];}return[(h=$shiftLeft64(new $Uint64(0,g),c),new $Uint64(b.$high|h.$high,(b.$low|h.$low)>>>0)),f+1>>0];}b=(i=$shiftLeft64(new $Uint64(0,((g&127)>>>0)),c),new $Uint64(b.$high|i.$high,(b.$low|i.$low)>>>0));c=c+(7)>>>0;e++;}return[new $Uint64(0,0),0];};$pkg.Uvarint=R;F.methods=[{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}];G.methods=[{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}];AQ.methods=[{prop:"bool",name:"bool",pkg:"encoding/binary",typ:$funcType([],[$Bool],false)},{prop:"uint8",name:"uint8",pkg:"encoding/binary",typ:$funcType([],[$Uint8],false)},{prop:"uint16",name:"uint16",pkg:"encoding/binary",typ:$funcType([],[$Uint16],false)},{prop:"uint32",name:"uint32",pkg:"encoding/binary",typ:$funcType([],[$Uint32],false)},{prop:"uint64",name:"uint64",pkg:"encoding/binary",typ:$funcType([],[$Uint64],false)},{prop:"int8",name:"int8",pkg:"encoding/binary",typ:$funcType([],[$Int8],false)},{prop:"int16",name:"int16",pkg:"encoding/binary",typ:$funcType([],[$Int16],false)},{prop:"int32",name:"int32",pkg:"encoding/binary",typ:$funcType([],[$Int32],false)},{prop:"int64",name:"int64",pkg:"encoding/binary",typ:$funcType([],[$Int64],false)},{prop:"value",name:"value",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)},{prop:"skip",name:"skip",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)}];AR.methods=[{prop:"bool",name:"bool",pkg:"encoding/binary",typ:$funcType([$Bool],[],false)},{prop:"uint8",name:"uint8",pkg:"encoding/binary",typ:$funcType([$Uint8],[],false)},{prop:"uint16",name:"uint16",pkg:"encoding/binary",typ:$funcType([$Uint16],[],false)},{prop:"uint32",name:"uint32",pkg:"encoding/binary",typ:$funcType([$Uint32],[],false)},{prop:"uint64",name:"uint64",pkg:"encoding/binary",typ:$funcType([$Uint64],[],false)},{prop:"int8",name:"int8",pkg:"encoding/binary",typ:$funcType([$Int8],[],false)},{prop:"int16",name:"int16",pkg:"encoding/binary",typ:$funcType([$Int16],[],false)},{prop:"int32",name:"int32",pkg:"encoding/binary",typ:$funcType([$Int32],[],false)},{prop:"int64",name:"int64",pkg:"encoding/binary",typ:$funcType([$Int64],[],false)},{prop:"value",name:"value",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)},{prop:"skip",name:"skip",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)}];E.init([{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)}]);F.init("",[]);G.init("",[]);N.init("encoding/binary",[{prop:"order",name:"order",exported:false,typ:E,tag:""},{prop:"buf",name:"buf",exported:false,typ:Y,tag:""}]);O.init("encoding/binary",[{prop:"order",name:"order",exported:false,typ:E,tag:""},{prop:"buf",name:"buf",exported:false,typ:Y,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.LittleEndian=new F.ptr();$pkg.BigEndian=new G.ptr();U=A.New("binary: varint overflows a 64-bit integer");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/subtle"]=(function(){var $pkg={},$init,A,C;A=$packages["crypto/subtle"];C=function(a,b){var $ptr,a,b,c,d,e,f;c=0;d=a;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);c=(c|(((f^b)<<24>>>24)))>>>0;e++;}return A.ConstantTimeByteEq(c,0);};$pkg.ConstantTimeAllEq=C;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["unicode"]=(function(){var $pkg={},$init,O,P,Q,R,T,AF,IS,IT,IU,IV,IW,IX,IY,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,DO,DP,DQ,DR,DS,DT,DU,DV,DW,DX,DY,DZ,EA,EB,EC,ED,EE,EF,EG,EH,EI,EJ,EK,EL,EM,EN,EO,EP,EQ,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM,FN,FO,FP,FQ,FR,FS,FT,FU,FV,FW,FX,FY,FZ,GA,GB,GC,GD,GE,GF,GG,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,IF,IG,IH,II,IJ,IK,IL,IM,IN,IO,IP,IQ,IR,A,C,E,G,I,U,V,W,X,AB,AC,AD,AG;O=$pkg.RangeTable=$newType(0,$kindStruct,"unicode.RangeTable",true,"unicode",true,function(R16_,R32_,LatinOffset_){this.$val=this;if(arguments.length===0){this.R16=IT.nil;this.R32=IU.nil;this.LatinOffset=0;return;}this.R16=R16_;this.R32=R32_;this.LatinOffset=LatinOffset_;});P=$pkg.Range16=$newType(0,$kindStruct,"unicode.Range16",true,"unicode",true,function(Lo_,Hi_,Stride_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Stride=0;return;}this.Lo=Lo_;this.Hi=Hi_;this.Stride=Stride_;});Q=$pkg.Range32=$newType(0,$kindStruct,"unicode.Range32",true,"unicode",true,function(Lo_,Hi_,Stride_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Stride=0;return;}this.Lo=Lo_;this.Hi=Hi_;this.Stride=Stride_;});R=$pkg.CaseRange=$newType(0,$kindStruct,"unicode.CaseRange",true,"unicode",true,function(Lo_,Hi_,Delta_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Delta=IS.zero();return;}this.Lo=Lo_;this.Hi=Hi_;this.Delta=Delta_;});T=$pkg.d=$newType(12,$kindArray,"unicode.d",true,"unicode",false,null);AF=$pkg.foldPair=$newType(0,$kindStruct,"unicode.foldPair",true,"unicode",false,function(From_,To_){this.$val=this;if(arguments.length===0){this.From=0;this.To=0;return;}this.From=From_;this.To=To_;});IS=$arrayType($Int32,3);IT=$sliceType(P);IU=$sliceType(Q);IV=$ptrType(O);IW=$sliceType(IV);IX=$sliceType(R);IY=$sliceType(AF);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<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;i=((h<0||h>=d.$length)?($throwRuntimeError("index out of range"),undefined):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"),undefined):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;};C=function(b){var $ptr,b;if(b<=255){return 48<=b&&b<=57;}return X($pkg.Digit,b);};$pkg.IsDigit=C;E=function(b){var $ptr,b,c;if((b>>>0)<=255){return!(((((c=(b<<24>>>24),((c<0||c>=IG.length)?($throwRuntimeError("index out of range"),undefined):IG[c]))&128)>>>0)===0));}return G(b,$pkg.PrintRanges);};$pkg.IsPrint=E;G=function(b,c){var $ptr,b,c,d,e,f;d=c;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(W(f,b)){return true;}e++;}return false;};$pkg.In=G;I=function(b){var $ptr,b,c;if((b>>>0)<=255){return!(((((c=(b<<24>>>24),((c<0||c>=IG.length)?($throwRuntimeError("index out of range"),undefined):IG[c]))&96)>>>0)===0));}return X($pkg.Letter,b);};$pkg.IsLetter=I;U=function(b,c){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n;if(b.$length<=18||c<=255){d=b;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);if(c<g.Lo){return false;}if(c<=g.Hi){return(h=((c-g.Lo<<16>>>16))%g.Stride,h===h?h:$throwRuntimeError("integer divide by zero"))===0;}e++;}return false;}i=0;j=b.$length;while(true){if(!(i<j)){break;}l=i+(k=((j-i>>0))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0;m=((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]);if(m.Lo<=c&&c<=m.Hi){return(n=((c-m.Lo<<16>>>16))%m.Stride,n===n?n:$throwRuntimeError("integer divide by zero"))===0;}if(c<m.Lo){j=l;}else{i=l+1>>0;}}return false;};V=function(b,c){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n;if(b.$length<=18){d=b;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);if(c<g.Lo){return false;}if(c<=g.Hi){return(h=((c-g.Lo>>>0))%g.Stride,h===h?h:$throwRuntimeError("integer divide by zero"))===0;}e++;}return false;}i=0;j=b.$length;while(true){if(!(i<j)){break;}l=i+(k=((j-i>>0))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0;m=$clone(((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]),Q);if(m.Lo<=c&&c<=m.Hi){return(n=((c-m.Lo>>>0))%m.Stride,n===n?n:$throwRuntimeError("integer divide by zero"))===0;}if(c<m.Lo){j=l;}else{i=l+1>>0;}}return false;};W=function(b,c){var $ptr,b,c,d,e,f;d=b.R16;if(d.$length>0&&c<=((e=d.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Hi>>0)){return U(d,(c<<16>>>16));}f=b.R32;if(f.$length>0&&c>=((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]).Lo>>0)){return V(f,(c>>>0));}return false;};$pkg.Is=W;X=function(b,c){var $ptr,b,c,d,e,f,g;d=b.R16;e=b.LatinOffset;if(d.$length>e&&c<=((f=d.$length-1>>0,((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f])).Hi>>0)){return U($subslice(d,e),(c<<16>>>16));}g=b.R32;if(g.$length>0&&c>=((0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]).Lo>>0)){return V(g,(c>>>0));}return false;};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;AD=function(b){var $ptr,b;if(b<=127){if(65<=b&&b<=90){b=b+(32)>>0;}return b;}return AB(1,b);};$pkg.ToLower=AD;AG=function(b){var $ptr,b,c,d,e,f,g;if(b<0||b>1114111){return b;}if((b>>0)<128){return(((b<0||b>=IH.length)?($throwRuntimeError("index out of range"),undefined):IH[b])>>0);}c=0;d=II.$length;while(true){if(!(c<d)){break;}f=c+(e=((d-c>>0))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"))>>0;if((((f<0||f>=II.$length)?($throwRuntimeError("index out of range"),undefined):II.$array[II.$offset+f]).From>>0)<b){c=f+1>>0;}else{d=f;}}if(c<II.$length&&((((c<0||c>=II.$length)?($throwRuntimeError("index out of range"),undefined):II.$array[II.$offset+c]).From>>0)===b)){return(((c<0||c>=II.$length)?($throwRuntimeError("index out of range"),undefined):II.$array[II.$offset+c]).To>>0);}g=AD(b);if(!((g===b))){return g;}return AC(b);};$pkg.SimpleFold=AG;O.init("",[{prop:"R16",name:"R16",exported:true,typ:IT,tag:""},{prop:"R32",name:"R32",exported:true,typ:IU,tag:""},{prop:"LatinOffset",name:"LatinOffset",exported:true,typ:$Int,tag:""}]);P.init("",[{prop:"Lo",name:"Lo",exported:true,typ:$Uint16,tag:""},{prop:"Hi",name:"Hi",exported:true,typ:$Uint16,tag:""},{prop:"Stride",name:"Stride",exported:true,typ:$Uint16,tag:""}]);Q.init("",[{prop:"Lo",name:"Lo",exported:true,typ:$Uint32,tag:""},{prop:"Hi",name:"Hi",exported:true,typ:$Uint32,tag:""},{prop:"Stride",name:"Stride",exported:true,typ:$Uint32,tag:""}]);R.init("",[{prop:"Lo",name:"Lo",exported:true,typ:$Uint32,tag:""},{prop:"Hi",name:"Hi",exported:true,typ:$Uint32,tag:""},{prop:"Delta",name:"Delta",exported:true,typ:T,tag:""}]);T.init($Int32,3);AF.init("",[{prop:"From",name:"From",exported:true,typ:$Uint16,tag:""},{prop:"To",name:"To",exported:true,typ:$Uint16,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:AH=new O.ptr(new IT([new P.ptr(0,31,1),new P.ptr(127,159,1),new P.ptr(173,1536,1363),new P.ptr(1537,1541,1),new P.ptr(1564,1757,193),new P.ptr(1807,2274,467),new P.ptr(6158,8203,2045),new P.ptr(8204,8207,1),new P.ptr(8234,8238,1),new P.ptr(8288,8292,1),new P.ptr(8294,8303,1),new P.ptr(55296,63743,1),new P.ptr(65279,65529,250),new P.ptr(65530,65531,1)]),new IU([new Q.ptr(69821,113824,44003),new Q.ptr(113825,113827,1),new Q.ptr(119155,119162,1),new Q.ptr(917505,917536,31),new Q.ptr(917537,917631,1),new Q.ptr(983040,1048573,1),new Q.ptr(1048576,1114109,1)]),2);AI=new O.ptr(new IT([new P.ptr(0,31,1),new P.ptr(127,159,1)]),IU.nil,2);AJ=new O.ptr(new IT([new P.ptr(173,1536,1363),new P.ptr(1537,1541,1),new P.ptr(1564,1757,193),new P.ptr(1807,2274,467),new P.ptr(6158,8203,2045),new P.ptr(8204,8207,1),new P.ptr(8234,8238,1),new P.ptr(8288,8292,1),new P.ptr(8294,8303,1),new P.ptr(65279,65529,250),new P.ptr(65530,65531,1)]),new IU([new Q.ptr(69821,113824,44003),new Q.ptr(113825,113827,1),new Q.ptr(119155,119162,1),new Q.ptr(917505,917536,31),new Q.ptr(917537,917631,1)]),0);AK=new O.ptr(new IT([new P.ptr(57344,63743,1)]),new IU([new Q.ptr(983040,1048573,1),new Q.ptr(1048576,1114109,1)]),0);AL=new O.ptr(new IT([new P.ptr(55296,57343,1)]),IU.nil,0);AM=new O.ptr(new IT([new P.ptr(65,90,1),new P.ptr(97,122,1),new P.ptr(170,181,11),new P.ptr(186,192,6),new P.ptr(193,214,1),new P.ptr(216,246,1),new P.ptr(248,705,1),new P.ptr(710,721,1),new P.ptr(736,740,1),new P.ptr(748,750,2),new P.ptr(880,884,1),new P.ptr(886,887,1),new P.ptr(890,893,1),new P.ptr(895,902,7),new P.ptr(904,906,1),new P.ptr(908,910,2),new P.ptr(911,929,1),new P.ptr(931,1013,1),new P.ptr(1015,1153,1),new P.ptr(1162,1327,1),new P.ptr(1329,1366,1),new P.ptr(1369,1377,8),new P.ptr(1378,1415,1),new P.ptr(1488,1514,1),new P.ptr(1520,1522,1),new P.ptr(1568,1610,1),new P.ptr(1646,1647,1),new P.ptr(1649,1747,1),new P.ptr(1749,1765,16),new P.ptr(1766,1774,8),new P.ptr(1775,1786,11),new P.ptr(1787,1788,1),new P.ptr(1791,1808,17),new P.ptr(1810,1839,1),new P.ptr(1869,1957,1),new P.ptr(1969,1994,25),new P.ptr(1995,2026,1),new P.ptr(2036,2037,1),new P.ptr(2042,2048,6),new P.ptr(2049,2069,1),new P.ptr(2074,2084,10),new P.ptr(2088,2112,24),new P.ptr(2113,2136,1),new P.ptr(2208,2228,1),new P.ptr(2230,2237,1),new P.ptr(2308,2361,1),new P.ptr(2365,2384,19),new P.ptr(2392,2401,1),new P.ptr(2417,2432,1),new P.ptr(2437,2444,1),new P.ptr(2447,2448,1),new P.ptr(2451,2472,1),new P.ptr(2474,2480,1),new P.ptr(2482,2486,4),new P.ptr(2487,2489,1),new P.ptr(2493,2510,17),new P.ptr(2524,2525,1),new P.ptr(2527,2529,1),new P.ptr(2544,2545,1),new P.ptr(2565,2570,1),new P.ptr(2575,2576,1),new P.ptr(2579,2600,1),new P.ptr(2602,2608,1),new P.ptr(2610,2611,1),new P.ptr(2613,2614,1),new P.ptr(2616,2617,1),new P.ptr(2649,2652,1),new P.ptr(2654,2674,20),new P.ptr(2675,2676,1),new P.ptr(2693,2701,1),new P.ptr(2703,2705,1),new P.ptr(2707,2728,1),new P.ptr(2730,2736,1),new P.ptr(2738,2739,1),new P.ptr(2741,2745,1),new P.ptr(2749,2768,19),new P.ptr(2784,2785,1),new P.ptr(2809,2821,12),new P.ptr(2822,2828,1),new P.ptr(2831,2832,1),new P.ptr(2835,2856,1),new P.ptr(2858,2864,1),new P.ptr(2866,2867,1),new P.ptr(2869,2873,1),new P.ptr(2877,2908,31),new P.ptr(2909,2911,2),new P.ptr(2912,2913,1),new P.ptr(2929,2947,18),new P.ptr(2949,2954,1),new P.ptr(2958,2960,1),new P.ptr(2962,2965,1),new P.ptr(2969,2970,1),new P.ptr(2972,2974,2),new P.ptr(2975,2979,4),new P.ptr(2980,2984,4),new P.ptr(2985,2986,1),new P.ptr(2990,3001,1),new P.ptr(3024,3077,53),new P.ptr(3078,3084,1),new P.ptr(3086,3088,1),new P.ptr(3090,3112,1),new P.ptr(3114,3129,1),new P.ptr(3133,3160,27),new P.ptr(3161,3162,1),new P.ptr(3168,3169,1),new P.ptr(3200,3205,5),new P.ptr(3206,3212,1),new P.ptr(3214,3216,1),new P.ptr(3218,3240,1),new P.ptr(3242,3251,1),new P.ptr(3253,3257,1),new P.ptr(3261,3294,33),new P.ptr(3296,3297,1),new P.ptr(3313,3314,1),new P.ptr(3333,3340,1),new P.ptr(3342,3344,1),new P.ptr(3346,3386,1),new P.ptr(3389,3406,17),new P.ptr(3412,3414,1),new P.ptr(3423,3425,1),new P.ptr(3450,3455,1),new P.ptr(3461,3478,1),new P.ptr(3482,3505,1),new P.ptr(3507,3515,1),new P.ptr(3517,3520,3),new P.ptr(3521,3526,1),new P.ptr(3585,3632,1),new P.ptr(3634,3635,1),new P.ptr(3648,3654,1),new P.ptr(3713,3714,1),new P.ptr(3716,3719,3),new P.ptr(3720,3722,2),new P.ptr(3725,3732,7),new P.ptr(3733,3735,1),new P.ptr(3737,3743,1),new P.ptr(3745,3747,1),new P.ptr(3749,3751,2),new P.ptr(3754,3755,1),new P.ptr(3757,3760,1),new P.ptr(3762,3763,1),new P.ptr(3773,3776,3),new P.ptr(3777,3780,1),new P.ptr(3782,3804,22),new P.ptr(3805,3807,1),new P.ptr(3840,3904,64),new P.ptr(3905,3911,1),new P.ptr(3913,3948,1),new P.ptr(3976,3980,1),new P.ptr(4096,4138,1),new P.ptr(4159,4176,17),new P.ptr(4177,4181,1),new P.ptr(4186,4189,1),new P.ptr(4193,4197,4),new P.ptr(4198,4206,8),new P.ptr(4207,4208,1),new P.ptr(4213,4225,1),new P.ptr(4238,4256,18),new P.ptr(4257,4293,1),new P.ptr(4295,4301,6),new P.ptr(4304,4346,1),new P.ptr(4348,4680,1),new P.ptr(4682,4685,1),new P.ptr(4688,4694,1),new P.ptr(4696,4698,2),new P.ptr(4699,4701,1),new P.ptr(4704,4744,1),new P.ptr(4746,4749,1),new P.ptr(4752,4784,1),new P.ptr(4786,4789,1),new P.ptr(4792,4798,1),new P.ptr(4800,4802,2),new P.ptr(4803,4805,1),new P.ptr(4808,4822,1),new P.ptr(4824,4880,1),new P.ptr(4882,4885,1),new P.ptr(4888,4954,1),new P.ptr(4992,5007,1),new P.ptr(5024,5109,1),new P.ptr(5112,5117,1),new P.ptr(5121,5740,1),new P.ptr(5743,5759,1),new P.ptr(5761,5786,1),new P.ptr(5792,5866,1),new P.ptr(5873,5880,1),new P.ptr(5888,5900,1),new P.ptr(5902,5905,1),new P.ptr(5920,5937,1),new P.ptr(5952,5969,1),new P.ptr(5984,5996,1),new P.ptr(5998,6000,1),new P.ptr(6016,6067,1),new P.ptr(6103,6108,5),new P.ptr(6176,6263,1),new P.ptr(6272,6276,1),new P.ptr(6279,6312,1),new P.ptr(6314,6320,6),new P.ptr(6321,6389,1),new P.ptr(6400,6430,1),new P.ptr(6480,6509,1),new P.ptr(6512,6516,1),new P.ptr(6528,6571,1),new P.ptr(6576,6601,1),new P.ptr(6656,6678,1),new P.ptr(6688,6740,1),new P.ptr(6823,6917,94),new P.ptr(6918,6963,1),new P.ptr(6981,6987,1),new P.ptr(7043,7072,1),new P.ptr(7086,7087,1),new P.ptr(7098,7141,1),new P.ptr(7168,7203,1),new P.ptr(7245,7247,1),new P.ptr(7258,7293,1),new P.ptr(7296,7304,1),new P.ptr(7401,7404,1),new P.ptr(7406,7409,1),new P.ptr(7413,7414,1),new P.ptr(7424,7615,1),new P.ptr(7680,7957,1),new P.ptr(7960,7965,1),new P.ptr(7968,8005,1),new P.ptr(8008,8013,1),new P.ptr(8016,8023,1),new P.ptr(8025,8031,2),new P.ptr(8032,8061,1),new P.ptr(8064,8116,1),new P.ptr(8118,8124,1),new P.ptr(8126,8130,4),new P.ptr(8131,8132,1),new P.ptr(8134,8140,1),new P.ptr(8144,8147,1),new P.ptr(8150,8155,1),new P.ptr(8160,8172,1),new P.ptr(8178,8180,1),new P.ptr(8182,8188,1),new P.ptr(8305,8319,14),new P.ptr(8336,8348,1),new P.ptr(8450,8455,5),new P.ptr(8458,8467,1),new P.ptr(8469,8473,4),new P.ptr(8474,8477,1),new P.ptr(8484,8490,2),new P.ptr(8491,8493,1),new P.ptr(8495,8505,1),new P.ptr(8508,8511,1),new P.ptr(8517,8521,1),new P.ptr(8526,8579,53),new P.ptr(8580,11264,2684),new P.ptr(11265,11310,1),new P.ptr(11312,11358,1),new P.ptr(11360,11492,1),new P.ptr(11499,11502,1),new P.ptr(11506,11507,1),new P.ptr(11520,11557,1),new P.ptr(11559,11565,6),new P.ptr(11568,11623,1),new P.ptr(11631,11648,17),new P.ptr(11649,11670,1),new P.ptr(11680,11686,1),new P.ptr(11688,11694,1),new P.ptr(11696,11702,1),new P.ptr(11704,11710,1),new P.ptr(11712,11718,1),new P.ptr(11720,11726,1),new P.ptr(11728,11734,1),new P.ptr(11736,11742,1),new P.ptr(11823,12293,470),new P.ptr(12294,12337,43),new P.ptr(12338,12341,1),new P.ptr(12347,12348,1),new P.ptr(12353,12438,1),new P.ptr(12445,12447,1),new P.ptr(12449,12538,1),new P.ptr(12540,12543,1),new P.ptr(12549,12589,1),new P.ptr(12593,12686,1),new P.ptr(12704,12730,1),new P.ptr(12784,12799,1),new P.ptr(13312,19893,1),new P.ptr(19968,40917,1),new P.ptr(40960,42124,1),new P.ptr(42192,42237,1),new P.ptr(42240,42508,1),new P.ptr(42512,42527,1),new P.ptr(42538,42539,1),new P.ptr(42560,42606,1),new P.ptr(42623,42653,1),new P.ptr(42656,42725,1),new P.ptr(42775,42783,1),new P.ptr(42786,42888,1),new P.ptr(42891,42926,1),new P.ptr(42928,42935,1),new P.ptr(42999,43009,1),new P.ptr(43011,43013,1),new P.ptr(43015,43018,1),new P.ptr(43020,43042,1),new P.ptr(43072,43123,1),new P.ptr(43138,43187,1),new P.ptr(43250,43255,1),new P.ptr(43259,43261,2),new P.ptr(43274,43301,1),new P.ptr(43312,43334,1),new P.ptr(43360,43388,1),new P.ptr(43396,43442,1),new P.ptr(43471,43488,17),new P.ptr(43489,43492,1),new P.ptr(43494,43503,1),new P.ptr(43514,43518,1),new P.ptr(43520,43560,1),new P.ptr(43584,43586,1),new P.ptr(43588,43595,1),new P.ptr(43616,43638,1),new P.ptr(43642,43646,4),new P.ptr(43647,43695,1),new P.ptr(43697,43701,4),new P.ptr(43702,43705,3),new P.ptr(43706,43709,1),new P.ptr(43712,43714,2),new P.ptr(43739,43741,1),new P.ptr(43744,43754,1),new P.ptr(43762,43764,1),new P.ptr(43777,43782,1),new P.ptr(43785,43790,1),new P.ptr(43793,43798,1),new P.ptr(43808,43814,1),new P.ptr(43816,43822,1),new P.ptr(43824,43866,1),new P.ptr(43868,43877,1),new P.ptr(43888,44002,1),new P.ptr(44032,55203,1),new P.ptr(55216,55238,1),new P.ptr(55243,55291,1),new P.ptr(63744,64109,1),new P.ptr(64112,64217,1),new P.ptr(64256,64262,1),new P.ptr(64275,64279,1),new P.ptr(64285,64287,2),new P.ptr(64288,64296,1),new P.ptr(64298,64310,1),new P.ptr(64312,64316,1),new P.ptr(64318,64320,2),new P.ptr(64321,64323,2),new P.ptr(64324,64326,2),new P.ptr(64327,64433,1),new P.ptr(64467,64829,1),new P.ptr(64848,64911,1),new P.ptr(64914,64967,1),new P.ptr(65008,65019,1),new P.ptr(65136,65140,1),new P.ptr(65142,65276,1),new P.ptr(65313,65338,1),new P.ptr(65345,65370,1),new P.ptr(65382,65470,1),new P.ptr(65474,65479,1),new P.ptr(65482,65487,1),new P.ptr(65490,65495,1),new P.ptr(65498,65500,1)]),new IU([new Q.ptr(65536,65547,1),new Q.ptr(65549,65574,1),new Q.ptr(65576,65594,1),new Q.ptr(65596,65597,1),new Q.ptr(65599,65613,1),new Q.ptr(65616,65629,1),new Q.ptr(65664,65786,1),new Q.ptr(66176,66204,1),new Q.ptr(66208,66256,1),new Q.ptr(66304,66335,1),new Q.ptr(66352,66368,1),new Q.ptr(66370,66377,1),new Q.ptr(66384,66421,1),new Q.ptr(66432,66461,1),new Q.ptr(66464,66499,1),new Q.ptr(66504,66511,1),new Q.ptr(66560,66717,1),new Q.ptr(66736,66771,1),new Q.ptr(66776,66811,1),new Q.ptr(66816,66855,1),new Q.ptr(66864,66915,1),new Q.ptr(67072,67382,1),new Q.ptr(67392,67413,1),new Q.ptr(67424,67431,1),new Q.ptr(67584,67589,1),new Q.ptr(67592,67594,2),new Q.ptr(67595,67637,1),new Q.ptr(67639,67640,1),new Q.ptr(67644,67647,3),new Q.ptr(67648,67669,1),new Q.ptr(67680,67702,1),new Q.ptr(67712,67742,1),new Q.ptr(67808,67826,1),new Q.ptr(67828,67829,1),new Q.ptr(67840,67861,1),new Q.ptr(67872,67897,1),new Q.ptr(67968,68023,1),new Q.ptr(68030,68031,1),new Q.ptr(68096,68112,16),new Q.ptr(68113,68115,1),new Q.ptr(68117,68119,1),new Q.ptr(68121,68147,1),new Q.ptr(68192,68220,1),new Q.ptr(68224,68252,1),new Q.ptr(68288,68295,1),new Q.ptr(68297,68324,1),new Q.ptr(68352,68405,1),new Q.ptr(68416,68437,1),new Q.ptr(68448,68466,1),new Q.ptr(68480,68497,1),new Q.ptr(68608,68680,1),new Q.ptr(68736,68786,1),new Q.ptr(68800,68850,1),new Q.ptr(69635,69687,1),new Q.ptr(69763,69807,1),new Q.ptr(69840,69864,1),new Q.ptr(69891,69926,1),new Q.ptr(69968,70002,1),new Q.ptr(70006,70019,13),new Q.ptr(70020,70066,1),new Q.ptr(70081,70084,1),new Q.ptr(70106,70108,2),new Q.ptr(70144,70161,1),new Q.ptr(70163,70187,1),new Q.ptr(70272,70278,1),new Q.ptr(70280,70282,2),new Q.ptr(70283,70285,1),new Q.ptr(70287,70301,1),new Q.ptr(70303,70312,1),new Q.ptr(70320,70366,1),new Q.ptr(70405,70412,1),new Q.ptr(70415,70416,1),new Q.ptr(70419,70440,1),new Q.ptr(70442,70448,1),new Q.ptr(70450,70451,1),new Q.ptr(70453,70457,1),new Q.ptr(70461,70480,19),new Q.ptr(70493,70497,1),new Q.ptr(70656,70708,1),new Q.ptr(70727,70730,1),new Q.ptr(70784,70831,1),new Q.ptr(70852,70853,1),new Q.ptr(70855,71040,185),new Q.ptr(71041,71086,1),new Q.ptr(71128,71131,1),new Q.ptr(71168,71215,1),new Q.ptr(71236,71296,60),new Q.ptr(71297,71338,1),new Q.ptr(71424,71449,1),new Q.ptr(71840,71903,1),new Q.ptr(71935,72384,449),new Q.ptr(72385,72440,1),new Q.ptr(72704,72712,1),new Q.ptr(72714,72750,1),new Q.ptr(72768,72818,50),new Q.ptr(72819,72847,1),new Q.ptr(73728,74649,1),new Q.ptr(74880,75075,1),new Q.ptr(77824,78894,1),new Q.ptr(82944,83526,1),new Q.ptr(92160,92728,1),new Q.ptr(92736,92766,1),new Q.ptr(92880,92909,1),new Q.ptr(92928,92975,1),new Q.ptr(92992,92995,1),new Q.ptr(93027,93047,1),new Q.ptr(93053,93071,1),new Q.ptr(93952,94020,1),new Q.ptr(94032,94099,67),new Q.ptr(94100,94111,1),new Q.ptr(94176,94208,32),new Q.ptr(94209,100332,1),new Q.ptr(100352,101106,1),new Q.ptr(110592,110593,1),new Q.ptr(113664,113770,1),new Q.ptr(113776,113788,1),new Q.ptr(113792,113800,1),new Q.ptr(113808,113817,1),new Q.ptr(119808,119892,1),new Q.ptr(119894,119964,1),new Q.ptr(119966,119967,1),new Q.ptr(119970,119973,3),new Q.ptr(119974,119977,3),new Q.ptr(119978,119980,1),new Q.ptr(119982,119993,1),new Q.ptr(119995,119997,2),new Q.ptr(119998,120003,1),new Q.ptr(120005,120069,1),new Q.ptr(120071,120074,1),new Q.ptr(120077,120084,1),new Q.ptr(120086,120092,1),new Q.ptr(120094,120121,1),new Q.ptr(120123,120126,1),new Q.ptr(120128,120132,1),new Q.ptr(120134,120138,4),new Q.ptr(120139,120144,1),new Q.ptr(120146,120485,1),new Q.ptr(120488,120512,1),new Q.ptr(120514,120538,1),new Q.ptr(120540,120570,1),new Q.ptr(120572,120596,1),new Q.ptr(120598,120628,1),new Q.ptr(120630,120654,1),new Q.ptr(120656,120686,1),new Q.ptr(120688,120712,1),new Q.ptr(120714,120744,1),new Q.ptr(120746,120770,1),new Q.ptr(120772,120779,1),new Q.ptr(124928,125124,1),new Q.ptr(125184,125251,1),new Q.ptr(126464,126467,1),new Q.ptr(126469,126495,1),new Q.ptr(126497,126498,1),new Q.ptr(126500,126503,3),new Q.ptr(126505,126514,1),new Q.ptr(126516,126519,1),new Q.ptr(126521,126523,2),new Q.ptr(126530,126535,5),new Q.ptr(126537,126541,2),new Q.ptr(126542,126543,1),new Q.ptr(126545,126546,1),new Q.ptr(126548,126551,3),new Q.ptr(126553,126561,2),new Q.ptr(126562,126564,2),new Q.ptr(126567,126570,1),new Q.ptr(126572,126578,1),new Q.ptr(126580,126583,1),new Q.ptr(126585,126588,1),new Q.ptr(126590,126592,2),new Q.ptr(126593,126601,1),new Q.ptr(126603,126619,1),new Q.ptr(126625,126627,1),new Q.ptr(126629,126633,1),new Q.ptr(126635,126651,1),new Q.ptr(131072,173782,1),new Q.ptr(173824,177972,1),new Q.ptr(177984,178205,1),new Q.ptr(178208,183969,1),new Q.ptr(194560,195101,1)]),6);AN=new O.ptr(new IT([new P.ptr(97,122,1),new P.ptr(181,223,42),new P.ptr(224,246,1),new P.ptr(248,255,1),new P.ptr(257,311,2),new P.ptr(312,328,2),new P.ptr(329,375,2),new P.ptr(378,382,2),new P.ptr(383,384,1),new P.ptr(387,389,2),new P.ptr(392,396,4),new P.ptr(397,402,5),new P.ptr(405,409,4),new P.ptr(410,411,1),new P.ptr(414,417,3),new P.ptr(419,421,2),new P.ptr(424,426,2),new P.ptr(427,429,2),new P.ptr(432,436,4),new P.ptr(438,441,3),new P.ptr(442,445,3),new P.ptr(446,447,1),new P.ptr(454,460,3),new P.ptr(462,476,2),new P.ptr(477,495,2),new P.ptr(496,499,3),new P.ptr(501,505,4),new P.ptr(507,563,2),new P.ptr(564,569,1),new P.ptr(572,575,3),new P.ptr(576,578,2),new P.ptr(583,591,2),new P.ptr(592,659,1),new P.ptr(661,687,1),new P.ptr(881,883,2),new P.ptr(887,891,4),new P.ptr(892,893,1),new P.ptr(912,940,28),new P.ptr(941,974,1),new P.ptr(976,977,1),new P.ptr(981,983,1),new P.ptr(985,1007,2),new P.ptr(1008,1011,1),new P.ptr(1013,1019,3),new P.ptr(1020,1072,52),new P.ptr(1073,1119,1),new P.ptr(1121,1153,2),new P.ptr(1163,1215,2),new P.ptr(1218,1230,2),new P.ptr(1231,1327,2),new P.ptr(1377,1415,1),new P.ptr(5112,5117,1),new P.ptr(7296,7304,1),new P.ptr(7424,7467,1),new P.ptr(7531,7543,1),new P.ptr(7545,7578,1),new P.ptr(7681,7829,2),new P.ptr(7830,7837,1),new P.ptr(7839,7935,2),new P.ptr(7936,7943,1),new P.ptr(7952,7957,1),new P.ptr(7968,7975,1),new P.ptr(7984,7991,1),new P.ptr(8000,8005,1),new P.ptr(8016,8023,1),new P.ptr(8032,8039,1),new P.ptr(8048,8061,1),new P.ptr(8064,8071,1),new P.ptr(8080,8087,1),new P.ptr(8096,8103,1),new P.ptr(8112,8116,1),new P.ptr(8118,8119,1),new P.ptr(8126,8130,4),new P.ptr(8131,8132,1),new P.ptr(8134,8135,1),new P.ptr(8144,8147,1),new P.ptr(8150,8151,1),new P.ptr(8160,8167,1),new P.ptr(8178,8180,1),new P.ptr(8182,8183,1),new P.ptr(8458,8462,4),new P.ptr(8463,8467,4),new P.ptr(8495,8505,5),new P.ptr(8508,8509,1),new P.ptr(8518,8521,1),new P.ptr(8526,8580,54),new P.ptr(11312,11358,1),new P.ptr(11361,11365,4),new P.ptr(11366,11372,2),new P.ptr(11377,11379,2),new P.ptr(11380,11382,2),new P.ptr(11383,11387,1),new P.ptr(11393,11491,2),new P.ptr(11492,11500,8),new P.ptr(11502,11507,5),new P.ptr(11520,11557,1),new P.ptr(11559,11565,6),new P.ptr(42561,42605,2),new P.ptr(42625,42651,2),new P.ptr(42787,42799,2),new P.ptr(42800,42801,1),new P.ptr(42803,42865,2),new P.ptr(42866,42872,1),new P.ptr(42874,42876,2),new P.ptr(42879,42887,2),new P.ptr(42892,42894,2),new P.ptr(42897,42899,2),new P.ptr(42900,42901,1),new P.ptr(42903,42921,2),new P.ptr(42933,42935,2),new P.ptr(43002,43824,822),new P.ptr(43825,43866,1),new P.ptr(43872,43877,1),new P.ptr(43888,43967,1),new P.ptr(64256,64262,1),new P.ptr(64275,64279,1),new P.ptr(65345,65370,1)]),new IU([new Q.ptr(66600,66639,1),new Q.ptr(66776,66811,1),new Q.ptr(68800,68850,1),new Q.ptr(71872,71903,1),new Q.ptr(119834,119859,1),new Q.ptr(119886,119892,1),new Q.ptr(119894,119911,1),new Q.ptr(119938,119963,1),new Q.ptr(119990,119993,1),new Q.ptr(119995,119997,2),new Q.ptr(119998,120003,1),new Q.ptr(120005,120015,1),new Q.ptr(120042,120067,1),new Q.ptr(120094,120119,1),new Q.ptr(120146,120171,1),new Q.ptr(120198,120223,1),new Q.ptr(120250,120275,1),new Q.ptr(120302,120327,1),new Q.ptr(120354,120379,1),new Q.ptr(120406,120431,1),new Q.ptr(120458,120485,1),new Q.ptr(120514,120538,1),new Q.ptr(120540,120545,1),new Q.ptr(120572,120596,1),new Q.ptr(120598,120603,1),new Q.ptr(120630,120654,1),new Q.ptr(120656,120661,1),new Q.ptr(120688,120712,1),new Q.ptr(120714,120719,1),new Q.ptr(120746,120770,1),new Q.ptr(120772,120777,1),new Q.ptr(120779,125218,4439),new Q.ptr(125219,125251,1)]),4);AO=new O.ptr(new IT([new P.ptr(688,705,1),new P.ptr(710,721,1),new P.ptr(736,740,1),new P.ptr(748,750,2),new P.ptr(884,890,6),new P.ptr(1369,1600,231),new P.ptr(1765,1766,1),new P.ptr(2036,2037,1),new P.ptr(2042,2074,32),new P.ptr(2084,2088,4),new P.ptr(2417,3654,1237),new P.ptr(3782,4348,566),new P.ptr(6103,6211,108),new P.ptr(6823,7288,465),new P.ptr(7289,7293,1),new P.ptr(7468,7530,1),new P.ptr(7544,7579,35),new P.ptr(7580,7615,1),new P.ptr(8305,8319,14),new P.ptr(8336,8348,1),new P.ptr(11388,11389,1),new P.ptr(11631,11823,192),new P.ptr(12293,12337,44),new P.ptr(12338,12341,1),new P.ptr(12347,12445,98),new P.ptr(12446,12540,94),new P.ptr(12541,12542,1),new P.ptr(40981,42232,1251),new P.ptr(42233,42237,1),new P.ptr(42508,42623,115),new P.ptr(42652,42653,1),new P.ptr(42775,42783,1),new P.ptr(42864,42888,24),new P.ptr(43000,43001,1),new P.ptr(43471,43494,23),new P.ptr(43632,43741,109),new P.ptr(43763,43764,1),new P.ptr(43868,43871,1),new P.ptr(65392,65438,46),new P.ptr(65439,65439,1)]),new IU([new Q.ptr(92992,92992,1),new Q.ptr(92993,92995,1),new Q.ptr(94099,94111,1),new Q.ptr(94176,94176,1)]),0);AP=new O.ptr(new IT([new P.ptr(170,186,16),new P.ptr(443,448,5),new P.ptr(449,451,1),new P.ptr(660,1488,828),new P.ptr(1489,1514,1),new P.ptr(1520,1522,1),new P.ptr(1568,1599,1),new P.ptr(1601,1610,1),new P.ptr(1646,1647,1),new P.ptr(1649,1747,1),new P.ptr(1749,1774,25),new P.ptr(1775,1786,11),new P.ptr(1787,1788,1),new P.ptr(1791,1808,17),new P.ptr(1810,1839,1),new P.ptr(1869,1957,1),new P.ptr(1969,1994,25),new P.ptr(1995,2026,1),new P.ptr(2048,2069,1),new P.ptr(2112,2136,1),new P.ptr(2208,2228,1),new P.ptr(2230,2237,1),new P.ptr(2308,2361,1),new P.ptr(2365,2384,19),new P.ptr(2392,2401,1),new P.ptr(2418,2432,1),new P.ptr(2437,2444,1),new P.ptr(2447,2448,1),new P.ptr(2451,2472,1),new P.ptr(2474,2480,1),new P.ptr(2482,2486,4),new P.ptr(2487,2489,1),new P.ptr(2493,2510,17),new P.ptr(2524,2525,1),new P.ptr(2527,2529,1),new P.ptr(2544,2545,1),new P.ptr(2565,2570,1),new P.ptr(2575,2576,1),new P.ptr(2579,2600,1),new P.ptr(2602,2608,1),new P.ptr(2610,2611,1),new P.ptr(2613,2614,1),new P.ptr(2616,2617,1),new P.ptr(2649,2652,1),new P.ptr(2654,2674,20),new P.ptr(2675,2676,1),new P.ptr(2693,2701,1),new P.ptr(2703,2705,1),new P.ptr(2707,2728,1),new P.ptr(2730,2736,1),new P.ptr(2738,2739,1),new P.ptr(2741,2745,1),new P.ptr(2749,2768,19),new P.ptr(2784,2785,1),new P.ptr(2809,2821,12),new P.ptr(2822,2828,1),new P.ptr(2831,2832,1),new P.ptr(2835,2856,1),new P.ptr(2858,2864,1),new P.ptr(2866,2867,1),new P.ptr(2869,2873,1),new P.ptr(2877,2908,31),new P.ptr(2909,2911,2),new P.ptr(2912,2913,1),new P.ptr(2929,2947,18),new P.ptr(2949,2954,1),new P.ptr(2958,2960,1),new P.ptr(2962,2965,1),new P.ptr(2969,2970,1),new P.ptr(2972,2974,2),new P.ptr(2975,2979,4),new P.ptr(2980,2984,4),new P.ptr(2985,2986,1),new P.ptr(2990,3001,1),new P.ptr(3024,3077,53),new P.ptr(3078,3084,1),new P.ptr(3086,3088,1),new P.ptr(3090,3112,1),new P.ptr(3114,3129,1),new P.ptr(3133,3160,27),new P.ptr(3161,3162,1),new P.ptr(3168,3169,1),new P.ptr(3200,3205,5),new P.ptr(3206,3212,1),new P.ptr(3214,3216,1),new P.ptr(3218,3240,1),new P.ptr(3242,3251,1),new P.ptr(3253,3257,1),new P.ptr(3261,3294,33),new P.ptr(3296,3297,1),new P.ptr(3313,3314,1),new P.ptr(3333,3340,1),new P.ptr(3342,3344,1),new P.ptr(3346,3386,1),new P.ptr(3389,3406,17),new P.ptr(3412,3414,1),new P.ptr(3423,3425,1),new P.ptr(3450,3455,1),new P.ptr(3461,3478,1),new P.ptr(3482,3505,1),new P.ptr(3507,3515,1),new P.ptr(3517,3520,3),new P.ptr(3521,3526,1),new P.ptr(3585,3632,1),new P.ptr(3634,3635,1),new P.ptr(3648,3653,1),new P.ptr(3713,3714,1),new P.ptr(3716,3719,3),new P.ptr(3720,3722,2),new P.ptr(3725,3732,7),new P.ptr(3733,3735,1),new P.ptr(3737,3743,1),new P.ptr(3745,3747,1),new P.ptr(3749,3751,2),new P.ptr(3754,3755,1),new P.ptr(3757,3760,1),new P.ptr(3762,3763,1),new P.ptr(3773,3776,3),new P.ptr(3777,3780,1),new P.ptr(3804,3807,1),new P.ptr(3840,3904,64),new P.ptr(3905,3911,1),new P.ptr(3913,3948,1),new P.ptr(3976,3980,1),new P.ptr(4096,4138,1),new P.ptr(4159,4176,17),new P.ptr(4177,4181,1),new P.ptr(4186,4189,1),new P.ptr(4193,4197,4),new P.ptr(4198,4206,8),new P.ptr(4207,4208,1),new P.ptr(4213,4225,1),new P.ptr(4238,4304,66),new P.ptr(4305,4346,1),new P.ptr(4349,4680,1),new P.ptr(4682,4685,1),new P.ptr(4688,4694,1),new P.ptr(4696,4698,2),new P.ptr(4699,4701,1),new P.ptr(4704,4744,1),new P.ptr(4746,4749,1),new P.ptr(4752,4784,1),new P.ptr(4786,4789,1),new P.ptr(4792,4798,1),new P.ptr(4800,4802,2),new P.ptr(4803,4805,1),new P.ptr(4808,4822,1),new P.ptr(4824,4880,1),new P.ptr(4882,4885,1),new P.ptr(4888,4954,1),new P.ptr(4992,5007,1),new P.ptr(5121,5740,1),new P.ptr(5743,5759,1),new P.ptr(5761,5786,1),new P.ptr(5792,5866,1),new P.ptr(5873,5880,1),new P.ptr(5888,5900,1),new P.ptr(5902,5905,1),new P.ptr(5920,5937,1),new P.ptr(5952,5969,1),new P.ptr(5984,5996,1),new P.ptr(5998,6000,1),new P.ptr(6016,6067,1),new P.ptr(6108,6176,68),new P.ptr(6177,6210,1),new P.ptr(6212,6263,1),new P.ptr(6272,6276,1),new P.ptr(6279,6312,1),new P.ptr(6314,6320,6),new P.ptr(6321,6389,1),new P.ptr(6400,6430,1),new P.ptr(6480,6509,1),new P.ptr(6512,6516,1),new P.ptr(6528,6571,1),new P.ptr(6576,6601,1),new P.ptr(6656,6678,1),new P.ptr(6688,6740,1),new P.ptr(6917,6963,1),new P.ptr(6981,6987,1),new P.ptr(7043,7072,1),new P.ptr(7086,7087,1),new P.ptr(7098,7141,1),new P.ptr(7168,7203,1),new P.ptr(7245,7247,1),new P.ptr(7258,7287,1),new P.ptr(7401,7404,1),new P.ptr(7406,7409,1),new P.ptr(7413,7414,1),new P.ptr(8501,8504,1),new P.ptr(11568,11623,1),new P.ptr(11648,11670,1),new P.ptr(11680,11686,1),new P.ptr(11688,11694,1),new P.ptr(11696,11702,1),new P.ptr(11704,11710,1),new P.ptr(11712,11718,1),new P.ptr(11720,11726,1),new P.ptr(11728,11734,1),new P.ptr(11736,11742,1),new P.ptr(12294,12348,54),new P.ptr(12353,12438,1),new P.ptr(12447,12449,2),new P.ptr(12450,12538,1),new P.ptr(12543,12549,6),new P.ptr(12550,12589,1),new P.ptr(12593,12686,1),new P.ptr(12704,12730,1),new P.ptr(12784,12799,1),new P.ptr(13312,19893,1),new P.ptr(19968,40917,1),new P.ptr(40960,40980,1),new P.ptr(40982,42124,1),new P.ptr(42192,42231,1),new P.ptr(42240,42507,1),new P.ptr(42512,42527,1),new P.ptr(42538,42539,1),new P.ptr(42606,42656,50),new P.ptr(42657,42725,1),new P.ptr(42895,42999,104),new P.ptr(43003,43009,1),new P.ptr(43011,43013,1),new P.ptr(43015,43018,1),new P.ptr(43020,43042,1),new P.ptr(43072,43123,1),new P.ptr(43138,43187,1),new P.ptr(43250,43255,1),new P.ptr(43259,43261,2),new P.ptr(43274,43301,1),new P.ptr(43312,43334,1),new P.ptr(43360,43388,1),new P.ptr(43396,43442,1),new P.ptr(43488,43492,1),new P.ptr(43495,43503,1),new P.ptr(43514,43518,1),new P.ptr(43520,43560,1),new P.ptr(43584,43586,1),new P.ptr(43588,43595,1),new P.ptr(43616,43631,1),new P.ptr(43633,43638,1),new P.ptr(43642,43646,4),new P.ptr(43647,43695,1),new P.ptr(43697,43701,4),new P.ptr(43702,43705,3),new P.ptr(43706,43709,1),new P.ptr(43712,43714,2),new P.ptr(43739,43740,1),new P.ptr(43744,43754,1),new P.ptr(43762,43777,15),new P.ptr(43778,43782,1),new P.ptr(43785,43790,1),new P.ptr(43793,43798,1),new P.ptr(43808,43814,1),new P.ptr(43816,43822,1),new P.ptr(43968,44002,1),new P.ptr(44032,55203,1),new P.ptr(55216,55238,1),new P.ptr(55243,55291,1),new P.ptr(63744,64109,1),new P.ptr(64112,64217,1),new P.ptr(64285,64287,2),new P.ptr(64288,64296,1),new P.ptr(64298,64310,1),new P.ptr(64312,64316,1),new P.ptr(64318,64320,2),new P.ptr(64321,64323,2),new P.ptr(64324,64326,2),new P.ptr(64327,64433,1),new P.ptr(64467,64829,1),new P.ptr(64848,64911,1),new P.ptr(64914,64967,1),new P.ptr(65008,65019,1),new P.ptr(65136,65140,1),new P.ptr(65142,65276,1),new P.ptr(65382,65391,1),new P.ptr(65393,65437,1),new P.ptr(65440,65470,1),new P.ptr(65474,65479,1),new P.ptr(65482,65487,1),new P.ptr(65490,65495,1),new P.ptr(65498,65500,1)]),new IU([new Q.ptr(65536,65547,1),new Q.ptr(65549,65574,1),new Q.ptr(65576,65594,1),new Q.ptr(65596,65597,1),new Q.ptr(65599,65613,1),new Q.ptr(65616,65629,1),new Q.ptr(65664,65786,1),new Q.ptr(66176,66204,1),new Q.ptr(66208,66256,1),new Q.ptr(66304,66335,1),new Q.ptr(66352,66368,1),new Q.ptr(66370,66377,1),new Q.ptr(66384,66421,1),new Q.ptr(66432,66461,1),new Q.ptr(66464,66499,1),new Q.ptr(66504,66511,1),new Q.ptr(66640,66717,1),new Q.ptr(66816,66855,1),new Q.ptr(66864,66915,1),new Q.ptr(67072,67382,1),new Q.ptr(67392,67413,1),new Q.ptr(67424,67431,1),new Q.ptr(67584,67589,1),new Q.ptr(67592,67594,2),new Q.ptr(67595,67637,1),new Q.ptr(67639,67640,1),new Q.ptr(67644,67647,3),new Q.ptr(67648,67669,1),new Q.ptr(67680,67702,1),new Q.ptr(67712,67742,1),new Q.ptr(67808,67826,1),new Q.ptr(67828,67829,1),new Q.ptr(67840,67861,1),new Q.ptr(67872,67897,1),new Q.ptr(67968,68023,1),new Q.ptr(68030,68031,1),new Q.ptr(68096,68112,16),new Q.ptr(68113,68115,1),new Q.ptr(68117,68119,1),new Q.ptr(68121,68147,1),new Q.ptr(68192,68220,1),new Q.ptr(68224,68252,1),new Q.ptr(68288,68295,1),new Q.ptr(68297,68324,1),new Q.ptr(68352,68405,1),new Q.ptr(68416,68437,1),new Q.ptr(68448,68466,1),new Q.ptr(68480,68497,1),new Q.ptr(68608,68680,1),new Q.ptr(69635,69687,1),new Q.ptr(69763,69807,1),new Q.ptr(69840,69864,1),new Q.ptr(69891,69926,1),new Q.ptr(69968,70002,1),new Q.ptr(70006,70019,13),new Q.ptr(70020,70066,1),new Q.ptr(70081,70084,1),new Q.ptr(70106,70108,2),new Q.ptr(70144,70161,1),new Q.ptr(70163,70187,1),new Q.ptr(70272,70278,1),new Q.ptr(70280,70282,2),new Q.ptr(70283,70285,1),new Q.ptr(70287,70301,1),new Q.ptr(70303,70312,1),new Q.ptr(70320,70366,1),new Q.ptr(70405,70412,1),new Q.ptr(70415,70416,1),new Q.ptr(70419,70440,1),new Q.ptr(70442,70448,1),new Q.ptr(70450,70451,1),new Q.ptr(70453,70457,1),new Q.ptr(70461,70480,19),new Q.ptr(70493,70497,1),new Q.ptr(70656,70708,1),new Q.ptr(70727,70730,1),new Q.ptr(70784,70831,1),new Q.ptr(70852,70853,1),new Q.ptr(70855,71040,185),new Q.ptr(71041,71086,1),new Q.ptr(71128,71131,1),new Q.ptr(71168,71215,1),new Q.ptr(71236,71296,60),new Q.ptr(71297,71338,1),new Q.ptr(71424,71449,1),new Q.ptr(71935,72384,449),new Q.ptr(72385,72440,1),new Q.ptr(72704,72712,1),new Q.ptr(72714,72750,1),new Q.ptr(72768,72818,50),new Q.ptr(72819,72847,1),new Q.ptr(73728,74649,1),new Q.ptr(74880,75075,1),new Q.ptr(77824,78894,1),new Q.ptr(82944,83526,1),new Q.ptr(92160,92728,1),new Q.ptr(92736,92766,1),new Q.ptr(92880,92909,1),new Q.ptr(92928,92975,1),new Q.ptr(93027,93047,1),new Q.ptr(93053,93071,1),new Q.ptr(93952,94020,1),new Q.ptr(94032,94208,176),new Q.ptr(94209,100332,1),new Q.ptr(100352,101106,1),new Q.ptr(110592,110593,1),new Q.ptr(113664,113770,1),new Q.ptr(113776,113788,1),new Q.ptr(113792,113800,1),new Q.ptr(113808,113817,1),new Q.ptr(124928,125124,1),new Q.ptr(126464,126467,1),new Q.ptr(126469,126495,1),new Q.ptr(126497,126498,1),new Q.ptr(126500,126503,3),new Q.ptr(126505,126514,1),new Q.ptr(126516,126519,1),new Q.ptr(126521,126523,2),new Q.ptr(126530,126535,5),new Q.ptr(126537,126541,2),new Q.ptr(126542,126543,1),new Q.ptr(126545,126546,1),new Q.ptr(126548,126551,3),new Q.ptr(126553,126561,2),new Q.ptr(126562,126564,2),new Q.ptr(126567,126570,1),new Q.ptr(126572,126578,1),new Q.ptr(126580,126583,1),new Q.ptr(126585,126588,1),new Q.ptr(126590,126592,2),new Q.ptr(126593,126601,1),new Q.ptr(126603,126619,1),new Q.ptr(126625,126627,1),new Q.ptr(126629,126633,1),new Q.ptr(126635,126651,1),new Q.ptr(131072,173782,1),new Q.ptr(173824,177972,1),new Q.ptr(177984,178205,1),new Q.ptr(178208,183969,1),new Q.ptr(194560,195101,1)]),1);AQ=new O.ptr(new IT([new P.ptr(453,459,3),new P.ptr(498,8072,7574),new P.ptr(8073,8079,1),new P.ptr(8088,8095,1),new P.ptr(8104,8111,1),new P.ptr(8124,8140,16),new P.ptr(8188,8188,1)]),IU.nil,0);AR=new O.ptr(new IT([new P.ptr(65,90,1),new P.ptr(192,214,1),new P.ptr(216,222,1),new P.ptr(256,310,2),new P.ptr(313,327,2),new P.ptr(330,376,2),new P.ptr(377,381,2),new P.ptr(385,386,1),new P.ptr(388,390,2),new P.ptr(391,393,2),new P.ptr(394,395,1),new P.ptr(398,401,1),new P.ptr(403,404,1),new P.ptr(406,408,1),new P.ptr(412,413,1),new P.ptr(415,416,1),new P.ptr(418,422,2),new P.ptr(423,425,2),new P.ptr(428,430,2),new P.ptr(431,433,2),new P.ptr(434,435,1),new P.ptr(437,439,2),new P.ptr(440,444,4),new P.ptr(452,461,3),new P.ptr(463,475,2),new P.ptr(478,494,2),new P.ptr(497,500,3),new P.ptr(502,504,1),new P.ptr(506,562,2),new P.ptr(570,571,1),new P.ptr(573,574,1),new P.ptr(577,579,2),new P.ptr(580,582,1),new P.ptr(584,590,2),new P.ptr(880,882,2),new P.ptr(886,895,9),new P.ptr(902,904,2),new P.ptr(905,906,1),new P.ptr(908,910,2),new P.ptr(911,913,2),new P.ptr(914,929,1),new P.ptr(931,939,1),new P.ptr(975,978,3),new P.ptr(979,980,1),new P.ptr(984,1006,2),new P.ptr(1012,1015,3),new P.ptr(1017,1018,1),new P.ptr(1021,1071,1),new P.ptr(1120,1152,2),new P.ptr(1162,1216,2),new P.ptr(1217,1229,2),new P.ptr(1232,1326,2),new P.ptr(1329,1366,1),new P.ptr(4256,4293,1),new P.ptr(4295,4301,6),new P.ptr(5024,5109,1),new P.ptr(7680,7828,2),new P.ptr(7838,7934,2),new P.ptr(7944,7951,1),new P.ptr(7960,7965,1),new P.ptr(7976,7983,1),new P.ptr(7992,7999,1),new P.ptr(8008,8013,1),new P.ptr(8025,8031,2),new P.ptr(8040,8047,1),new P.ptr(8120,8123,1),new P.ptr(8136,8139,1),new P.ptr(8152,8155,1),new P.ptr(8168,8172,1),new P.ptr(8184,8187,1),new P.ptr(8450,8455,5),new P.ptr(8459,8461,1),new P.ptr(8464,8466,1),new P.ptr(8469,8473,4),new P.ptr(8474,8477,1),new P.ptr(8484,8490,2),new P.ptr(8491,8493,1),new P.ptr(8496,8499,1),new P.ptr(8510,8511,1),new P.ptr(8517,8579,62),new P.ptr(11264,11310,1),new P.ptr(11360,11362,2),new P.ptr(11363,11364,1),new P.ptr(11367,11373,2),new P.ptr(11374,11376,1),new P.ptr(11378,11381,3),new P.ptr(11390,11392,1),new P.ptr(11394,11490,2),new P.ptr(11499,11501,2),new P.ptr(11506,42560,31054),new P.ptr(42562,42604,2),new P.ptr(42624,42650,2),new P.ptr(42786,42798,2),new P.ptr(42802,42862,2),new P.ptr(42873,42877,2),new P.ptr(42878,42886,2),new P.ptr(42891,42893,2),new P.ptr(42896,42898,2),new P.ptr(42902,42922,2),new P.ptr(42923,42926,1),new P.ptr(42928,42932,1),new P.ptr(42934,65313,22379),new P.ptr(65314,65338,1)]),new IU([new Q.ptr(66560,66599,1),new Q.ptr(66736,66771,1),new Q.ptr(68736,68786,1),new Q.ptr(71840,71871,1),new Q.ptr(119808,119833,1),new Q.ptr(119860,119885,1),new Q.ptr(119912,119937,1),new Q.ptr(119964,119966,2),new Q.ptr(119967,119973,3),new Q.ptr(119974,119977,3),new Q.ptr(119978,119980,1),new Q.ptr(119982,119989,1),new Q.ptr(120016,120041,1),new Q.ptr(120068,120069,1),new Q.ptr(120071,120074,1),new Q.ptr(120077,120084,1),new Q.ptr(120086,120092,1),new Q.ptr(120120,120121,1),new Q.ptr(120123,120126,1),new Q.ptr(120128,120132,1),new Q.ptr(120134,120138,4),new Q.ptr(120139,120144,1),new Q.ptr(120172,120197,1),new Q.ptr(120224,120249,1),new Q.ptr(120276,120301,1),new Q.ptr(120328,120353,1),new Q.ptr(120380,120405,1),new Q.ptr(120432,120457,1),new Q.ptr(120488,120512,1),new Q.ptr(120546,120570,1),new Q.ptr(120604,120628,1),new Q.ptr(120662,120686,1),new Q.ptr(120720,120744,1),new Q.ptr(120778,125184,4406),new Q.ptr(125185,125217,1)]),3);AS=new O.ptr(new IT([new P.ptr(768,879,1),new P.ptr(1155,1161,1),new P.ptr(1425,1469,1),new P.ptr(1471,1473,2),new P.ptr(1474,1476,2),new P.ptr(1477,1479,2),new P.ptr(1552,1562,1),new P.ptr(1611,1631,1),new P.ptr(1648,1750,102),new P.ptr(1751,1756,1),new P.ptr(1759,1764,1),new P.ptr(1767,1768,1),new P.ptr(1770,1773,1),new P.ptr(1809,1840,31),new P.ptr(1841,1866,1),new P.ptr(1958,1968,1),new P.ptr(2027,2035,1),new P.ptr(2070,2073,1),new P.ptr(2075,2083,1),new P.ptr(2085,2087,1),new P.ptr(2089,2093,1),new P.ptr(2137,2139,1),new P.ptr(2260,2273,1),new P.ptr(2275,2307,1),new P.ptr(2362,2364,1),new P.ptr(2366,2383,1),new P.ptr(2385,2391,1),new P.ptr(2402,2403,1),new P.ptr(2433,2435,1),new P.ptr(2492,2494,2),new P.ptr(2495,2500,1),new P.ptr(2503,2504,1),new P.ptr(2507,2509,1),new P.ptr(2519,2530,11),new P.ptr(2531,2561,30),new P.ptr(2562,2563,1),new P.ptr(2620,2622,2),new P.ptr(2623,2626,1),new P.ptr(2631,2632,1),new P.ptr(2635,2637,1),new P.ptr(2641,2672,31),new P.ptr(2673,2677,4),new P.ptr(2689,2691,1),new P.ptr(2748,2750,2),new P.ptr(2751,2757,1),new P.ptr(2759,2761,1),new P.ptr(2763,2765,1),new P.ptr(2786,2787,1),new P.ptr(2817,2819,1),new P.ptr(2876,2878,2),new P.ptr(2879,2884,1),new P.ptr(2887,2888,1),new P.ptr(2891,2893,1),new P.ptr(2902,2903,1),new P.ptr(2914,2915,1),new P.ptr(2946,3006,60),new P.ptr(3007,3010,1),new P.ptr(3014,3016,1),new P.ptr(3018,3021,1),new P.ptr(3031,3072,41),new P.ptr(3073,3075,1),new P.ptr(3134,3140,1),new P.ptr(3142,3144,1),new P.ptr(3146,3149,1),new P.ptr(3157,3158,1),new P.ptr(3170,3171,1),new P.ptr(3201,3203,1),new P.ptr(3260,3262,2),new P.ptr(3263,3268,1),new P.ptr(3270,3272,1),new P.ptr(3274,3277,1),new P.ptr(3285,3286,1),new P.ptr(3298,3299,1),new P.ptr(3329,3331,1),new P.ptr(3390,3396,1),new P.ptr(3398,3400,1),new P.ptr(3402,3405,1),new P.ptr(3415,3426,11),new P.ptr(3427,3458,31),new P.ptr(3459,3530,71),new P.ptr(3535,3540,1),new P.ptr(3542,3544,2),new P.ptr(3545,3551,1),new P.ptr(3570,3571,1),new P.ptr(3633,3636,3),new P.ptr(3637,3642,1),new P.ptr(3655,3662,1),new P.ptr(3761,3764,3),new P.ptr(3765,3769,1),new P.ptr(3771,3772,1),new P.ptr(3784,3789,1),new P.ptr(3864,3865,1),new P.ptr(3893,3897,2),new P.ptr(3902,3903,1),new P.ptr(3953,3972,1),new P.ptr(3974,3975,1),new P.ptr(3981,3991,1),new P.ptr(3993,4028,1),new P.ptr(4038,4139,101),new P.ptr(4140,4158,1),new P.ptr(4182,4185,1),new P.ptr(4190,4192,1),new P.ptr(4194,4196,1),new P.ptr(4199,4205,1),new P.ptr(4209,4212,1),new P.ptr(4226,4237,1),new P.ptr(4239,4250,11),new P.ptr(4251,4253,1),new P.ptr(4957,4959,1),new P.ptr(5906,5908,1),new P.ptr(5938,5940,1),new P.ptr(5970,5971,1),new P.ptr(6002,6003,1),new P.ptr(6068,6099,1),new P.ptr(6109,6155,46),new P.ptr(6156,6157,1),new P.ptr(6277,6278,1),new P.ptr(6313,6432,119),new P.ptr(6433,6443,1),new P.ptr(6448,6459,1),new P.ptr(6679,6683,1),new P.ptr(6741,6750,1),new P.ptr(6752,6780,1),new P.ptr(6783,6832,49),new P.ptr(6833,6846,1),new P.ptr(6912,6916,1),new P.ptr(6964,6980,1),new P.ptr(7019,7027,1),new P.ptr(7040,7042,1),new P.ptr(7073,7085,1),new P.ptr(7142,7155,1),new P.ptr(7204,7223,1),new P.ptr(7376,7378,1),new P.ptr(7380,7400,1),new P.ptr(7405,7410,5),new P.ptr(7411,7412,1),new P.ptr(7416,7417,1),new P.ptr(7616,7669,1),new P.ptr(7675,7679,1),new P.ptr(8400,8432,1),new P.ptr(11503,11505,1),new P.ptr(11647,11744,97),new P.ptr(11745,11775,1),new P.ptr(12330,12335,1),new P.ptr(12441,12442,1),new P.ptr(42607,42610,1),new P.ptr(42612,42621,1),new P.ptr(42654,42655,1),new P.ptr(42736,42737,1),new P.ptr(43010,43014,4),new P.ptr(43019,43043,24),new P.ptr(43044,43047,1),new P.ptr(43136,43137,1),new P.ptr(43188,43205,1),new P.ptr(43232,43249,1),new P.ptr(43302,43309,1),new P.ptr(43335,43347,1),new P.ptr(43392,43395,1),new P.ptr(43443,43456,1),new P.ptr(43493,43561,68),new P.ptr(43562,43574,1),new P.ptr(43587,43596,9),new P.ptr(43597,43643,46),new P.ptr(43644,43645,1),new P.ptr(43696,43698,2),new P.ptr(43699,43700,1),new P.ptr(43703,43704,1),new P.ptr(43710,43711,1),new P.ptr(43713,43755,42),new P.ptr(43756,43759,1),new P.ptr(43765,43766,1),new P.ptr(44003,44010,1),new P.ptr(44012,44013,1),new P.ptr(64286,65024,738),new P.ptr(65025,65039,1),new P.ptr(65056,65071,1)]),new IU([new Q.ptr(66045,66272,227),new Q.ptr(66422,66426,1),new Q.ptr(68097,68099,1),new Q.ptr(68101,68102,1),new Q.ptr(68108,68111,1),new Q.ptr(68152,68154,1),new Q.ptr(68159,68325,166),new Q.ptr(68326,69632,1306),new Q.ptr(69633,69634,1),new Q.ptr(69688,69702,1),new Q.ptr(69759,69762,1),new Q.ptr(69808,69818,1),new Q.ptr(69888,69890,1),new Q.ptr(69927,69940,1),new Q.ptr(70003,70016,13),new Q.ptr(70017,70018,1),new Q.ptr(70067,70080,1),new Q.ptr(70090,70092,1),new Q.ptr(70188,70199,1),new Q.ptr(70206,70367,161),new Q.ptr(70368,70378,1),new Q.ptr(70400,70403,1),new Q.ptr(70460,70462,2),new Q.ptr(70463,70468,1),new Q.ptr(70471,70472,1),new Q.ptr(70475,70477,1),new Q.ptr(70487,70498,11),new Q.ptr(70499,70502,3),new Q.ptr(70503,70508,1),new Q.ptr(70512,70516,1),new Q.ptr(70709,70726,1),new Q.ptr(70832,70851,1),new Q.ptr(71087,71093,1),new Q.ptr(71096,71104,1),new Q.ptr(71132,71133,1),new Q.ptr(71216,71232,1),new Q.ptr(71339,71351,1),new Q.ptr(71453,71467,1),new Q.ptr(72751,72758,1),new Q.ptr(72760,72767,1),new Q.ptr(72850,72871,1),new Q.ptr(72873,72886,1),new Q.ptr(92912,92916,1),new Q.ptr(92976,92982,1),new Q.ptr(94033,94078,1),new Q.ptr(94095,94098,1),new Q.ptr(113821,113822,1),new Q.ptr(119141,119145,1),new Q.ptr(119149,119154,1),new Q.ptr(119163,119170,1),new Q.ptr(119173,119179,1),new Q.ptr(119210,119213,1),new Q.ptr(119362,119364,1),new Q.ptr(121344,121398,1),new Q.ptr(121403,121452,1),new Q.ptr(121461,121476,15),new Q.ptr(121499,121503,1),new Q.ptr(121505,121519,1),new Q.ptr(122880,122886,1),new Q.ptr(122888,122904,1),new Q.ptr(122907,122913,1),new Q.ptr(122915,122916,1),new Q.ptr(122918,122922,1),new Q.ptr(125136,125142,1),new Q.ptr(125252,125258,1),new Q.ptr(917760,917999,1)]),0);AT=new O.ptr(new IT([new P.ptr(2307,2363,56),new P.ptr(2366,2368,1),new P.ptr(2377,2380,1),new P.ptr(2382,2383,1),new P.ptr(2434,2435,1),new P.ptr(2494,2496,1),new P.ptr(2503,2504,1),new P.ptr(2507,2508,1),new P.ptr(2519,2563,44),new P.ptr(2622,2624,1),new P.ptr(2691,2750,59),new P.ptr(2751,2752,1),new P.ptr(2761,2763,2),new P.ptr(2764,2818,54),new P.ptr(2819,2878,59),new P.ptr(2880,2887,7),new P.ptr(2888,2891,3),new P.ptr(2892,2903,11),new P.ptr(3006,3007,1),new P.ptr(3009,3010,1),new P.ptr(3014,3016,1),new P.ptr(3018,3020,1),new P.ptr(3031,3073,42),new P.ptr(3074,3075,1),new P.ptr(3137,3140,1),new P.ptr(3202,3203,1),new P.ptr(3262,3264,2),new P.ptr(3265,3268,1),new P.ptr(3271,3272,1),new P.ptr(3274,3275,1),new P.ptr(3285,3286,1),new P.ptr(3330,3331,1),new P.ptr(3390,3392,1),new P.ptr(3398,3400,1),new P.ptr(3402,3404,1),new P.ptr(3415,3458,43),new P.ptr(3459,3535,76),new P.ptr(3536,3537,1),new P.ptr(3544,3551,1),new P.ptr(3570,3571,1),new P.ptr(3902,3903,1),new P.ptr(3967,4139,172),new P.ptr(4140,4145,5),new P.ptr(4152,4155,3),new P.ptr(4156,4182,26),new P.ptr(4183,4194,11),new P.ptr(4195,4196,1),new P.ptr(4199,4205,1),new P.ptr(4227,4228,1),new P.ptr(4231,4236,1),new P.ptr(4239,4250,11),new P.ptr(4251,4252,1),new P.ptr(6070,6078,8),new P.ptr(6079,6085,1),new P.ptr(6087,6088,1),new P.ptr(6435,6438,1),new P.ptr(6441,6443,1),new P.ptr(6448,6449,1),new P.ptr(6451,6456,1),new P.ptr(6681,6682,1),new P.ptr(6741,6743,2),new P.ptr(6753,6755,2),new P.ptr(6756,6765,9),new P.ptr(6766,6770,1),new P.ptr(6916,6965,49),new P.ptr(6971,6973,2),new P.ptr(6974,6977,1),new P.ptr(6979,6980,1),new P.ptr(7042,7073,31),new P.ptr(7078,7079,1),new P.ptr(7082,7143,61),new P.ptr(7146,7148,1),new P.ptr(7150,7154,4),new P.ptr(7155,7204,49),new P.ptr(7205,7211,1),new P.ptr(7220,7221,1),new P.ptr(7393,7410,17),new P.ptr(7411,12334,4923),new P.ptr(12335,43043,30708),new P.ptr(43044,43047,3),new P.ptr(43136,43137,1),new P.ptr(43188,43203,1),new P.ptr(43346,43347,1),new P.ptr(43395,43444,49),new P.ptr(43445,43450,5),new P.ptr(43451,43453,2),new P.ptr(43454,43456,1),new P.ptr(43567,43568,1),new P.ptr(43571,43572,1),new P.ptr(43597,43643,46),new P.ptr(43645,43755,110),new P.ptr(43758,43759,1),new P.ptr(43765,44003,238),new P.ptr(44004,44006,2),new P.ptr(44007,44009,2),new P.ptr(44010,44012,2)]),new IU([new Q.ptr(69632,69634,2),new Q.ptr(69762,69808,46),new Q.ptr(69809,69810,1),new Q.ptr(69815,69816,1),new Q.ptr(69932,70018,86),new Q.ptr(70067,70069,1),new Q.ptr(70079,70080,1),new Q.ptr(70188,70190,1),new Q.ptr(70194,70195,1),new Q.ptr(70197,70368,171),new Q.ptr(70369,70370,1),new Q.ptr(70402,70403,1),new Q.ptr(70462,70463,1),new Q.ptr(70465,70468,1),new Q.ptr(70471,70472,1),new Q.ptr(70475,70477,1),new Q.ptr(70487,70498,11),new Q.ptr(70499,70709,210),new Q.ptr(70710,70711,1),new Q.ptr(70720,70721,1),new Q.ptr(70725,70832,107),new Q.ptr(70833,70834,1),new Q.ptr(70841,70843,2),new Q.ptr(70844,70846,1),new Q.ptr(70849,71087,238),new Q.ptr(71088,71089,1),new Q.ptr(71096,71099,1),new Q.ptr(71102,71216,114),new Q.ptr(71217,71218,1),new Q.ptr(71227,71228,1),new Q.ptr(71230,71340,110),new Q.ptr(71342,71343,1),new Q.ptr(71350,71456,106),new Q.ptr(71457,71462,5),new Q.ptr(72751,72766,15),new Q.ptr(72873,72881,8),new Q.ptr(72884,94033,21149),new Q.ptr(94034,94078,1),new Q.ptr(119141,119142,1),new Q.ptr(119149,119154,1)]),0);AU=new O.ptr(new IT([new P.ptr(1160,1161,1),new P.ptr(6846,8413,1567),new P.ptr(8414,8416,1),new P.ptr(8418,8420,1),new P.ptr(42608,42610,1)]),IU.nil,0);AV=new O.ptr(new IT([new P.ptr(768,879,1),new P.ptr(1155,1159,1),new P.ptr(1425,1469,1),new P.ptr(1471,1473,2),new P.ptr(1474,1476,2),new P.ptr(1477,1479,2),new P.ptr(1552,1562,1),new P.ptr(1611,1631,1),new P.ptr(1648,1750,102),new P.ptr(1751,1756,1),new P.ptr(1759,1764,1),new P.ptr(1767,1768,1),new P.ptr(1770,1773,1),new P.ptr(1809,1840,31),new P.ptr(1841,1866,1),new P.ptr(1958,1968,1),new P.ptr(2027,2035,1),new P.ptr(2070,2073,1),new P.ptr(2075,2083,1),new P.ptr(2085,2087,1),new P.ptr(2089,2093,1),new P.ptr(2137,2139,1),new P.ptr(2260,2273,1),new P.ptr(2275,2306,1),new P.ptr(2362,2364,2),new P.ptr(2369,2376,1),new P.ptr(2381,2385,4),new P.ptr(2386,2391,1),new P.ptr(2402,2403,1),new P.ptr(2433,2492,59),new P.ptr(2497,2500,1),new P.ptr(2509,2530,21),new P.ptr(2531,2561,30),new P.ptr(2562,2620,58),new P.ptr(2625,2626,1),new P.ptr(2631,2632,1),new P.ptr(2635,2637,1),new P.ptr(2641,2672,31),new P.ptr(2673,2677,4),new P.ptr(2689,2690,1),new P.ptr(2748,2753,5),new P.ptr(2754,2757,1),new P.ptr(2759,2760,1),new P.ptr(2765,2786,21),new P.ptr(2787,2817,30),new P.ptr(2876,2879,3),new P.ptr(2881,2884,1),new P.ptr(2893,2902,9),new P.ptr(2914,2915,1),new P.ptr(2946,3008,62),new P.ptr(3021,3072,51),new P.ptr(3134,3136,1),new P.ptr(3142,3144,1),new P.ptr(3146,3149,1),new P.ptr(3157,3158,1),new P.ptr(3170,3171,1),new P.ptr(3201,3260,59),new P.ptr(3263,3270,7),new P.ptr(3276,3277,1),new P.ptr(3298,3299,1),new P.ptr(3329,3393,64),new P.ptr(3394,3396,1),new P.ptr(3405,3426,21),new P.ptr(3427,3530,103),new P.ptr(3538,3540,1),new P.ptr(3542,3633,91),new P.ptr(3636,3642,1),new P.ptr(3655,3662,1),new P.ptr(3761,3764,3),new P.ptr(3765,3769,1),new P.ptr(3771,3772,1),new P.ptr(3784,3789,1),new P.ptr(3864,3865,1),new P.ptr(3893,3897,2),new P.ptr(3953,3966,1),new P.ptr(3968,3972,1),new P.ptr(3974,3975,1),new P.ptr(3981,3991,1),new P.ptr(3993,4028,1),new P.ptr(4038,4141,103),new P.ptr(4142,4144,1),new P.ptr(4146,4151,1),new P.ptr(4153,4154,1),new P.ptr(4157,4158,1),new P.ptr(4184,4185,1),new P.ptr(4190,4192,1),new P.ptr(4209,4212,1),new P.ptr(4226,4229,3),new P.ptr(4230,4237,7),new P.ptr(4253,4957,704),new P.ptr(4958,4959,1),new P.ptr(5906,5908,1),new P.ptr(5938,5940,1),new P.ptr(5970,5971,1),new P.ptr(6002,6003,1),new P.ptr(6068,6069,1),new P.ptr(6071,6077,1),new P.ptr(6086,6089,3),new P.ptr(6090,6099,1),new P.ptr(6109,6155,46),new P.ptr(6156,6157,1),new P.ptr(6277,6278,1),new P.ptr(6313,6432,119),new P.ptr(6433,6434,1),new P.ptr(6439,6440,1),new P.ptr(6450,6457,7),new P.ptr(6458,6459,1),new P.ptr(6679,6680,1),new P.ptr(6683,6742,59),new P.ptr(6744,6750,1),new P.ptr(6752,6754,2),new P.ptr(6757,6764,1),new P.ptr(6771,6780,1),new P.ptr(6783,6832,49),new P.ptr(6833,6845,1),new P.ptr(6912,6915,1),new P.ptr(6964,6966,2),new P.ptr(6967,6970,1),new P.ptr(6972,6978,6),new P.ptr(7019,7027,1),new P.ptr(7040,7041,1),new P.ptr(7074,7077,1),new P.ptr(7080,7081,1),new P.ptr(7083,7085,1),new P.ptr(7142,7144,2),new P.ptr(7145,7149,4),new P.ptr(7151,7153,1),new P.ptr(7212,7219,1),new P.ptr(7222,7223,1),new P.ptr(7376,7378,1),new P.ptr(7380,7392,1),new P.ptr(7394,7400,1),new P.ptr(7405,7412,7),new P.ptr(7416,7417,1),new P.ptr(7616,7669,1),new P.ptr(7675,7679,1),new P.ptr(8400,8412,1),new P.ptr(8417,8421,4),new P.ptr(8422,8432,1),new P.ptr(11503,11505,1),new P.ptr(11647,11744,97),new P.ptr(11745,11775,1),new P.ptr(12330,12333,1),new P.ptr(12441,12442,1),new P.ptr(42607,42612,5),new P.ptr(42613,42621,1),new P.ptr(42654,42655,1),new P.ptr(42736,42737,1),new P.ptr(43010,43014,4),new P.ptr(43019,43045,26),new P.ptr(43046,43204,158),new P.ptr(43205,43232,27),new P.ptr(43233,43249,1),new P.ptr(43302,43309,1),new P.ptr(43335,43345,1),new P.ptr(43392,43394,1),new P.ptr(43443,43446,3),new P.ptr(43447,43449,1),new P.ptr(43452,43493,41),new P.ptr(43561,43566,1),new P.ptr(43569,43570,1),new P.ptr(43573,43574,1),new P.ptr(43587,43596,9),new P.ptr(43644,43696,52),new P.ptr(43698,43700,1),new P.ptr(43703,43704,1),new P.ptr(43710,43711,1),new P.ptr(43713,43756,43),new P.ptr(43757,43766,9),new P.ptr(44005,44008,3),new P.ptr(44013,64286,20273),new P.ptr(65024,65039,1),new P.ptr(65056,65071,1)]),new IU([new Q.ptr(66045,66272,227),new Q.ptr(66422,66426,1),new Q.ptr(68097,68099,1),new Q.ptr(68101,68102,1),new Q.ptr(68108,68111,1),new Q.ptr(68152,68154,1),new Q.ptr(68159,68325,166),new Q.ptr(68326,69633,1307),new Q.ptr(69688,69702,1),new Q.ptr(69759,69761,1),new Q.ptr(69811,69814,1),new Q.ptr(69817,69818,1),new Q.ptr(69888,69890,1),new Q.ptr(69927,69931,1),new Q.ptr(69933,69940,1),new Q.ptr(70003,70016,13),new Q.ptr(70017,70070,53),new Q.ptr(70071,70078,1),new Q.ptr(70090,70092,1),new Q.ptr(70191,70193,1),new Q.ptr(70196,70198,2),new Q.ptr(70199,70206,7),new Q.ptr(70367,70371,4),new Q.ptr(70372,70378,1),new Q.ptr(70400,70401,1),new Q.ptr(70460,70464,4),new Q.ptr(70502,70508,1),new Q.ptr(70512,70516,1),new Q.ptr(70712,70719,1),new Q.ptr(70722,70724,1),new Q.ptr(70726,70835,109),new Q.ptr(70836,70840,1),new Q.ptr(70842,70847,5),new Q.ptr(70848,70850,2),new Q.ptr(70851,71090,239),new Q.ptr(71091,71093,1),new Q.ptr(71100,71101,1),new Q.ptr(71103,71104,1),new Q.ptr(71132,71133,1),new Q.ptr(71219,71226,1),new Q.ptr(71229,71231,2),new Q.ptr(71232,71339,107),new Q.ptr(71341,71344,3),new Q.ptr(71345,71349,1),new Q.ptr(71351,71453,102),new Q.ptr(71454,71455,1),new Q.ptr(71458,71461,1),new Q.ptr(71463,71467,1),new Q.ptr(72752,72758,1),new Q.ptr(72760,72765,1),new Q.ptr(72767,72850,83),new Q.ptr(72851,72871,1),new Q.ptr(72874,72880,1),new Q.ptr(72882,72883,1),new Q.ptr(72885,72886,1),new Q.ptr(92912,92916,1),new Q.ptr(92976,92982,1),new Q.ptr(94095,94098,1),new Q.ptr(113821,113822,1),new Q.ptr(119143,119145,1),new Q.ptr(119163,119170,1),new Q.ptr(119173,119179,1),new Q.ptr(119210,119213,1),new Q.ptr(119362,119364,1),new Q.ptr(121344,121398,1),new Q.ptr(121403,121452,1),new Q.ptr(121461,121476,15),new Q.ptr(121499,121503,1),new Q.ptr(121505,121519,1),new Q.ptr(122880,122886,1),new Q.ptr(122888,122904,1),new Q.ptr(122907,122913,1),new Q.ptr(122915,122916,1),new Q.ptr(122918,122922,1),new Q.ptr(125136,125142,1),new Q.ptr(125252,125258,1),new Q.ptr(917760,917999,1)]),0);AW=new O.ptr(new IT([new P.ptr(48,57,1),new P.ptr(178,179,1),new P.ptr(185,188,3),new P.ptr(189,190,1),new P.ptr(1632,1641,1),new P.ptr(1776,1785,1),new P.ptr(1984,1993,1),new P.ptr(2406,2415,1),new P.ptr(2534,2543,1),new P.ptr(2548,2553,1),new P.ptr(2662,2671,1),new P.ptr(2790,2799,1),new P.ptr(2918,2927,1),new P.ptr(2930,2935,1),new P.ptr(3046,3058,1),new P.ptr(3174,3183,1),new P.ptr(3192,3198,1),new P.ptr(3302,3311,1),new P.ptr(3416,3422,1),new P.ptr(3430,3448,1),new P.ptr(3558,3567,1),new P.ptr(3664,3673,1),new P.ptr(3792,3801,1),new P.ptr(3872,3891,1),new P.ptr(4160,4169,1),new P.ptr(4240,4249,1),new P.ptr(4969,4988,1),new P.ptr(5870,5872,1),new P.ptr(6112,6121,1),new P.ptr(6128,6137,1),new P.ptr(6160,6169,1),new P.ptr(6470,6479,1),new P.ptr(6608,6618,1),new P.ptr(6784,6793,1),new P.ptr(6800,6809,1),new P.ptr(6992,7001,1),new P.ptr(7088,7097,1),new P.ptr(7232,7241,1),new P.ptr(7248,7257,1),new P.ptr(8304,8308,4),new P.ptr(8309,8313,1),new P.ptr(8320,8329,1),new P.ptr(8528,8578,1),new P.ptr(8581,8585,1),new P.ptr(9312,9371,1),new P.ptr(9450,9471,1),new P.ptr(10102,10131,1),new P.ptr(11517,12295,778),new P.ptr(12321,12329,1),new P.ptr(12344,12346,1),new P.ptr(12690,12693,1),new P.ptr(12832,12841,1),new P.ptr(12872,12879,1),new P.ptr(12881,12895,1),new P.ptr(12928,12937,1),new P.ptr(12977,12991,1),new P.ptr(42528,42537,1),new P.ptr(42726,42735,1),new P.ptr(43056,43061,1),new P.ptr(43216,43225,1),new P.ptr(43264,43273,1),new P.ptr(43472,43481,1),new P.ptr(43504,43513,1),new P.ptr(43600,43609,1),new P.ptr(44016,44025,1),new P.ptr(65296,65305,1)]),new IU([new Q.ptr(65799,65843,1),new Q.ptr(65856,65912,1),new Q.ptr(65930,65931,1),new Q.ptr(66273,66299,1),new Q.ptr(66336,66339,1),new Q.ptr(66369,66378,9),new Q.ptr(66513,66517,1),new Q.ptr(66720,66729,1),new Q.ptr(67672,67679,1),new Q.ptr(67705,67711,1),new Q.ptr(67751,67759,1),new Q.ptr(67835,67839,1),new Q.ptr(67862,67867,1),new Q.ptr(68028,68029,1),new Q.ptr(68032,68047,1),new Q.ptr(68050,68095,1),new Q.ptr(68160,68167,1),new Q.ptr(68221,68222,1),new Q.ptr(68253,68255,1),new Q.ptr(68331,68335,1),new Q.ptr(68440,68447,1),new Q.ptr(68472,68479,1),new Q.ptr(68521,68527,1),new Q.ptr(68858,68863,1),new Q.ptr(69216,69246,1),new Q.ptr(69714,69743,1),new Q.ptr(69872,69881,1),new Q.ptr(69942,69951,1),new Q.ptr(70096,70105,1),new Q.ptr(70113,70132,1),new Q.ptr(70384,70393,1),new Q.ptr(70736,70745,1),new Q.ptr(70864,70873,1),new Q.ptr(71248,71257,1),new Q.ptr(71360,71369,1),new Q.ptr(71472,71483,1),new Q.ptr(71904,71922,1),new Q.ptr(72784,72812,1),new Q.ptr(74752,74862,1),new Q.ptr(92768,92777,1),new Q.ptr(93008,93017,1),new Q.ptr(93019,93025,1),new Q.ptr(119648,119665,1),new Q.ptr(120782,120831,1),new Q.ptr(125127,125135,1),new Q.ptr(125264,125273,1),new Q.ptr(127232,127244,1)]),4);AX=new O.ptr(new IT([new P.ptr(48,57,1),new P.ptr(1632,1641,1),new P.ptr(1776,1785,1),new P.ptr(1984,1993,1),new P.ptr(2406,2415,1),new P.ptr(2534,2543,1),new P.ptr(2662,2671,1),new P.ptr(2790,2799,1),new P.ptr(2918,2927,1),new P.ptr(3046,3055,1),new P.ptr(3174,3183,1),new P.ptr(3302,3311,1),new P.ptr(3430,3439,1),new P.ptr(3558,3567,1),new P.ptr(3664,3673,1),new P.ptr(3792,3801,1),new P.ptr(3872,3881,1),new P.ptr(4160,4169,1),new P.ptr(4240,4249,1),new P.ptr(6112,6121,1),new P.ptr(6160,6169,1),new P.ptr(6470,6479,1),new P.ptr(6608,6617,1),new P.ptr(6784,6793,1),new P.ptr(6800,6809,1),new P.ptr(6992,7001,1),new P.ptr(7088,7097,1),new P.ptr(7232,7241,1),new P.ptr(7248,7257,1),new P.ptr(42528,42537,1),new P.ptr(43216,43225,1),new P.ptr(43264,43273,1),new P.ptr(43472,43481,1),new P.ptr(43504,43513,1),new P.ptr(43600,43609,1),new P.ptr(44016,44025,1),new P.ptr(65296,65305,1)]),new IU([new Q.ptr(66720,66729,1),new Q.ptr(69734,69743,1),new Q.ptr(69872,69881,1),new Q.ptr(69942,69951,1),new Q.ptr(70096,70105,1),new Q.ptr(70384,70393,1),new Q.ptr(70736,70745,1),new Q.ptr(70864,70873,1),new Q.ptr(71248,71257,1),new Q.ptr(71360,71369,1),new Q.ptr(71472,71481,1),new Q.ptr(71904,71913,1),new Q.ptr(72784,72793,1),new Q.ptr(92768,92777,1),new Q.ptr(93008,93017,1),new Q.ptr(120782,120831,1),new Q.ptr(125264,125273,1)]),1);AY=new O.ptr(new IT([new P.ptr(5870,5872,1),new P.ptr(8544,8578,1),new P.ptr(8581,8584,1),new P.ptr(12295,12321,26),new P.ptr(12322,12329,1),new P.ptr(12344,12346,1),new P.ptr(42726,42735,1)]),new IU([new Q.ptr(65856,65908,1),new Q.ptr(66369,66378,9),new Q.ptr(66513,66517,1),new Q.ptr(74752,74862,1)]),0);AZ=new O.ptr(new IT([new P.ptr(178,179,1),new P.ptr(185,188,3),new P.ptr(189,190,1),new P.ptr(2548,2553,1),new P.ptr(2930,2935,1),new P.ptr(3056,3058,1),new P.ptr(3192,3198,1),new P.ptr(3416,3422,1),new P.ptr(3440,3448,1),new P.ptr(3882,3891,1),new P.ptr(4969,4988,1),new P.ptr(6128,6137,1),new P.ptr(6618,8304,1686),new P.ptr(8308,8313,1),new P.ptr(8320,8329,1),new P.ptr(8528,8543,1),new P.ptr(8585,9312,727),new P.ptr(9313,9371,1),new P.ptr(9450,9471,1),new P.ptr(10102,10131,1),new P.ptr(11517,12690,1173),new P.ptr(12691,12693,1),new P.ptr(12832,12841,1),new P.ptr(12872,12879,1),new P.ptr(12881,12895,1),new P.ptr(12928,12937,1),new P.ptr(12977,12991,1),new P.ptr(43056,43061,1)]),new IU([new Q.ptr(65799,65843,1),new Q.ptr(65909,65912,1),new Q.ptr(65930,65931,1),new Q.ptr(66273,66299,1),new Q.ptr(66336,66339,1),new Q.ptr(67672,67679,1),new Q.ptr(67705,67711,1),new Q.ptr(67751,67759,1),new Q.ptr(67835,67839,1),new Q.ptr(67862,67867,1),new Q.ptr(68028,68029,1),new Q.ptr(68032,68047,1),new Q.ptr(68050,68095,1),new Q.ptr(68160,68167,1),new Q.ptr(68221,68222,1),new Q.ptr(68253,68255,1),new Q.ptr(68331,68335,1),new Q.ptr(68440,68447,1),new Q.ptr(68472,68479,1),new Q.ptr(68521,68527,1),new Q.ptr(68858,68863,1),new Q.ptr(69216,69246,1),new Q.ptr(69714,69733,1),new Q.ptr(70113,70132,1),new Q.ptr(71482,71483,1),new Q.ptr(71914,71922,1),new Q.ptr(72794,72812,1),new Q.ptr(93019,93025,1),new Q.ptr(119648,119665,1),new Q.ptr(125127,125135,1),new Q.ptr(127232,127244,1)]),3);BA=new O.ptr(new IT([new P.ptr(33,35,1),new P.ptr(37,42,1),new P.ptr(44,47,1),new P.ptr(58,59,1),new P.ptr(63,64,1),new P.ptr(91,93,1),new P.ptr(95,123,28),new P.ptr(125,161,36),new P.ptr(167,171,4),new P.ptr(182,183,1),new P.ptr(187,191,4),new P.ptr(894,903,9),new P.ptr(1370,1375,1),new P.ptr(1417,1418,1),new P.ptr(1470,1472,2),new P.ptr(1475,1478,3),new P.ptr(1523,1524,1),new P.ptr(1545,1546,1),new P.ptr(1548,1549,1),new P.ptr(1563,1566,3),new P.ptr(1567,1642,75),new P.ptr(1643,1645,1),new P.ptr(1748,1792,44),new P.ptr(1793,1805,1),new P.ptr(2039,2041,1),new P.ptr(2096,2110,1),new P.ptr(2142,2404,262),new P.ptr(2405,2416,11),new P.ptr(2800,3572,772),new P.ptr(3663,3674,11),new P.ptr(3675,3844,169),new P.ptr(3845,3858,1),new P.ptr(3860,3898,38),new P.ptr(3899,3901,1),new P.ptr(3973,4048,75),new P.ptr(4049,4052,1),new P.ptr(4057,4058,1),new P.ptr(4170,4175,1),new P.ptr(4347,4960,613),new P.ptr(4961,4968,1),new P.ptr(5120,5741,621),new P.ptr(5742,5787,45),new P.ptr(5788,5867,79),new P.ptr(5868,5869,1),new P.ptr(5941,5942,1),new P.ptr(6100,6102,1),new P.ptr(6104,6106,1),new P.ptr(6144,6154,1),new P.ptr(6468,6469,1),new P.ptr(6686,6687,1),new P.ptr(6816,6822,1),new P.ptr(6824,6829,1),new P.ptr(7002,7008,1),new P.ptr(7164,7167,1),new P.ptr(7227,7231,1),new P.ptr(7294,7295,1),new P.ptr(7360,7367,1),new P.ptr(7379,8208,829),new P.ptr(8209,8231,1),new P.ptr(8240,8259,1),new P.ptr(8261,8273,1),new P.ptr(8275,8286,1),new P.ptr(8317,8318,1),new P.ptr(8333,8334,1),new P.ptr(8968,8971,1),new P.ptr(9001,9002,1),new P.ptr(10088,10101,1),new P.ptr(10181,10182,1),new P.ptr(10214,10223,1),new P.ptr(10627,10648,1),new P.ptr(10712,10715,1),new P.ptr(10748,10749,1),new P.ptr(11513,11516,1),new P.ptr(11518,11519,1),new P.ptr(11632,11776,144),new P.ptr(11777,11822,1),new P.ptr(11824,11844,1),new P.ptr(12289,12291,1),new P.ptr(12296,12305,1),new P.ptr(12308,12319,1),new P.ptr(12336,12349,13),new P.ptr(12448,12539,91),new P.ptr(42238,42239,1),new P.ptr(42509,42511,1),new P.ptr(42611,42622,11),new P.ptr(42738,42743,1),new P.ptr(43124,43127,1),new P.ptr(43214,43215,1),new P.ptr(43256,43258,1),new P.ptr(43260,43310,50),new P.ptr(43311,43359,48),new P.ptr(43457,43469,1),new P.ptr(43486,43487,1),new P.ptr(43612,43615,1),new P.ptr(43742,43743,1),new P.ptr(43760,43761,1),new P.ptr(44011,64830,20819),new P.ptr(64831,65040,209),new P.ptr(65041,65049,1),new P.ptr(65072,65106,1),new P.ptr(65108,65121,1),new P.ptr(65123,65128,5),new P.ptr(65130,65131,1),new P.ptr(65281,65283,1),new P.ptr(65285,65290,1),new P.ptr(65292,65295,1),new P.ptr(65306,65307,1),new P.ptr(65311,65312,1),new P.ptr(65339,65341,1),new P.ptr(65343,65371,28),new P.ptr(65373,65375,2),new P.ptr(65376,65381,1)]),new IU([new Q.ptr(65792,65794,1),new Q.ptr(66463,66512,49),new Q.ptr(66927,67671,744),new Q.ptr(67871,67903,32),new Q.ptr(68176,68184,1),new Q.ptr(68223,68336,113),new Q.ptr(68337,68342,1),new Q.ptr(68409,68415,1),new Q.ptr(68505,68508,1),new Q.ptr(69703,69709,1),new Q.ptr(69819,69820,1),new Q.ptr(69822,69825,1),new Q.ptr(69952,69955,1),new Q.ptr(70004,70005,1),new Q.ptr(70085,70089,1),new Q.ptr(70093,70107,14),new Q.ptr(70109,70111,1),new Q.ptr(70200,70205,1),new Q.ptr(70313,70731,418),new Q.ptr(70732,70735,1),new Q.ptr(70747,70749,2),new Q.ptr(70854,71105,251),new Q.ptr(71106,71127,1),new Q.ptr(71233,71235,1),new Q.ptr(71264,71276,1),new Q.ptr(71484,71486,1),new Q.ptr(72769,72773,1),new Q.ptr(72816,72817,1),new Q.ptr(74864,74868,1),new Q.ptr(92782,92783,1),new Q.ptr(92917,92983,66),new Q.ptr(92984,92987,1),new Q.ptr(92996,113823,20827),new Q.ptr(121479,121483,1),new Q.ptr(125278,125279,1)]),11);BB=new O.ptr(new IT([new P.ptr(95,8255,8160),new P.ptr(8256,8276,20),new P.ptr(65075,65076,1),new P.ptr(65101,65103,1),new P.ptr(65343,65343,1)]),IU.nil,0);BC=new O.ptr(new IT([new P.ptr(45,1418,1373),new P.ptr(1470,5120,3650),new P.ptr(6150,8208,2058),new P.ptr(8209,8213,1),new P.ptr(11799,11802,3),new P.ptr(11834,11835,1),new P.ptr(11840,12316,476),new P.ptr(12336,12448,112),new P.ptr(65073,65074,1),new P.ptr(65112,65123,11),new P.ptr(65293,65293,1)]),IU.nil,0);BD=new O.ptr(new IT([new P.ptr(41,93,52),new P.ptr(125,3899,3774),new P.ptr(3901,5788,1887),new P.ptr(8262,8318,56),new P.ptr(8334,8969,635),new P.ptr(8971,9002,31),new P.ptr(10089,10101,2),new P.ptr(10182,10215,33),new P.ptr(10217,10223,2),new P.ptr(10628,10648,2),new P.ptr(10713,10715,2),new P.ptr(10749,11811,1062),new P.ptr(11813,11817,2),new P.ptr(12297,12305,2),new P.ptr(12309,12315,2),new P.ptr(12318,12319,1),new P.ptr(64830,65048,218),new P.ptr(65078,65092,2),new P.ptr(65096,65114,18),new P.ptr(65116,65118,2),new P.ptr(65289,65341,52),new P.ptr(65373,65379,3)]),IU.nil,1);BE=new O.ptr(new IT([new P.ptr(187,8217,8030),new P.ptr(8221,8250,29),new P.ptr(11779,11781,2),new P.ptr(11786,11789,3),new P.ptr(11805,11809,4)]),IU.nil,0);BF=new O.ptr(new IT([new P.ptr(171,8216,8045),new P.ptr(8219,8220,1),new P.ptr(8223,8249,26),new P.ptr(11778,11780,2),new P.ptr(11785,11788,3),new P.ptr(11804,11808,4)]),IU.nil,0);BG=new O.ptr(new IT([new P.ptr(33,35,1),new P.ptr(37,39,1),new P.ptr(42,46,2),new P.ptr(47,58,11),new P.ptr(59,63,4),new P.ptr(64,92,28),new P.ptr(161,167,6),new P.ptr(182,183,1),new P.ptr(191,894,703),new P.ptr(903,1370,467),new P.ptr(1371,1375,1),new P.ptr(1417,1472,55),new P.ptr(1475,1478,3),new P.ptr(1523,1524,1),new P.ptr(1545,1546,1),new P.ptr(1548,1549,1),new P.ptr(1563,1566,3),new P.ptr(1567,1642,75),new P.ptr(1643,1645,1),new P.ptr(1748,1792,44),new P.ptr(1793,1805,1),new P.ptr(2039,2041,1),new P.ptr(2096,2110,1),new P.ptr(2142,2404,262),new P.ptr(2405,2416,11),new P.ptr(2800,3572,772),new P.ptr(3663,3674,11),new P.ptr(3675,3844,169),new P.ptr(3845,3858,1),new P.ptr(3860,3973,113),new P.ptr(4048,4052,1),new P.ptr(4057,4058,1),new P.ptr(4170,4175,1),new P.ptr(4347,4960,613),new P.ptr(4961,4968,1),new P.ptr(5741,5742,1),new P.ptr(5867,5869,1),new P.ptr(5941,5942,1),new P.ptr(6100,6102,1),new P.ptr(6104,6106,1),new P.ptr(6144,6149,1),new P.ptr(6151,6154,1),new P.ptr(6468,6469,1),new P.ptr(6686,6687,1),new P.ptr(6816,6822,1),new P.ptr(6824,6829,1),new P.ptr(7002,7008,1),new P.ptr(7164,7167,1),new P.ptr(7227,7231,1),new P.ptr(7294,7295,1),new P.ptr(7360,7367,1),new P.ptr(7379,8214,835),new P.ptr(8215,8224,9),new P.ptr(8225,8231,1),new P.ptr(8240,8248,1),new P.ptr(8251,8254,1),new P.ptr(8257,8259,1),new P.ptr(8263,8273,1),new P.ptr(8275,8277,2),new P.ptr(8278,8286,1),new P.ptr(11513,11516,1),new P.ptr(11518,11519,1),new P.ptr(11632,11776,144),new P.ptr(11777,11782,5),new P.ptr(11783,11784,1),new P.ptr(11787,11790,3),new P.ptr(11791,11798,1),new P.ptr(11800,11801,1),new P.ptr(11803,11806,3),new P.ptr(11807,11818,11),new P.ptr(11819,11822,1),new P.ptr(11824,11833,1),new P.ptr(11836,11839,1),new P.ptr(11841,11843,2),new P.ptr(11844,12289,445),new P.ptr(12290,12291,1),new P.ptr(12349,12539,190),new P.ptr(42238,42239,1),new P.ptr(42509,42511,1),new P.ptr(42611,42622,11),new P.ptr(42738,42743,1),new P.ptr(43124,43127,1),new P.ptr(43214,43215,1),new P.ptr(43256,43258,1),new P.ptr(43260,43310,50),new P.ptr(43311,43359,48),new P.ptr(43457,43469,1),new P.ptr(43486,43487,1),new P.ptr(43612,43615,1),new P.ptr(43742,43743,1),new P.ptr(43760,43761,1),new P.ptr(44011,65040,21029),new P.ptr(65041,65046,1),new P.ptr(65049,65072,23),new P.ptr(65093,65094,1),new P.ptr(65097,65100,1),new P.ptr(65104,65106,1),new P.ptr(65108,65111,1),new P.ptr(65119,65121,1),new P.ptr(65128,65130,2),new P.ptr(65131,65281,150),new P.ptr(65282,65283,1),new P.ptr(65285,65287,1),new P.ptr(65290,65294,2),new P.ptr(65295,65306,11),new P.ptr(65307,65311,4),new P.ptr(65312,65340,28),new P.ptr(65377,65380,3),new P.ptr(65381,65381,1)]),new IU([new Q.ptr(65792,65792,1),new Q.ptr(65793,65794,1),new Q.ptr(66463,66512,49),new Q.ptr(66927,67671,744),new Q.ptr(67871,67903,32),new Q.ptr(68176,68184,1),new Q.ptr(68223,68336,113),new Q.ptr(68337,68342,1),new Q.ptr(68409,68415,1),new Q.ptr(68505,68508,1),new Q.ptr(69703,69709,1),new Q.ptr(69819,69820,1),new Q.ptr(69822,69825,1),new Q.ptr(69952,69955,1),new Q.ptr(70004,70005,1),new Q.ptr(70085,70089,1),new Q.ptr(70093,70107,14),new Q.ptr(70109,70111,1),new Q.ptr(70200,70205,1),new Q.ptr(70313,70731,418),new Q.ptr(70732,70735,1),new Q.ptr(70747,70749,2),new Q.ptr(70854,71105,251),new Q.ptr(71106,71127,1),new Q.ptr(71233,71235,1),new Q.ptr(71264,71276,1),new Q.ptr(71484,71486,1),new Q.ptr(72769,72773,1),new Q.ptr(72816,72817,1),new Q.ptr(74864,74868,1),new Q.ptr(92782,92783,1),new Q.ptr(92917,92983,66),new Q.ptr(92984,92987,1),new Q.ptr(92996,113823,20827),new Q.ptr(121479,121483,1),new Q.ptr(125278,125279,1)]),8);BH=new O.ptr(new IT([new P.ptr(40,91,51),new P.ptr(123,3898,3775),new P.ptr(3900,5787,1887),new P.ptr(8218,8222,4),new P.ptr(8261,8317,56),new P.ptr(8333,8968,635),new P.ptr(8970,9001,31),new P.ptr(10088,10100,2),new P.ptr(10181,10214,33),new P.ptr(10216,10222,2),new P.ptr(10627,10647,2),new P.ptr(10712,10714,2),new P.ptr(10748,11810,1062),new P.ptr(11812,11816,2),new P.ptr(11842,12296,454),new P.ptr(12298,12304,2),new P.ptr(12308,12314,2),new P.ptr(12317,64831,52514),new P.ptr(65047,65077,30),new P.ptr(65079,65091,2),new P.ptr(65095,65113,18),new P.ptr(65115,65117,2),new P.ptr(65288,65339,51),new P.ptr(65371,65375,4),new P.ptr(65378,65378,1)]),IU.nil,1);BI=new O.ptr(new IT([new P.ptr(36,43,7),new P.ptr(60,62,1),new P.ptr(94,96,2),new P.ptr(124,126,2),new P.ptr(162,166,1),new P.ptr(168,169,1),new P.ptr(172,174,2),new P.ptr(175,177,1),new P.ptr(180,184,4),new P.ptr(215,247,32),new P.ptr(706,709,1),new P.ptr(722,735,1),new P.ptr(741,747,1),new P.ptr(749,751,2),new P.ptr(752,767,1),new P.ptr(885,900,15),new P.ptr(901,1014,113),new P.ptr(1154,1421,267),new P.ptr(1422,1423,1),new P.ptr(1542,1544,1),new P.ptr(1547,1550,3),new P.ptr(1551,1758,207),new P.ptr(1769,1789,20),new P.ptr(1790,2038,248),new P.ptr(2546,2547,1),new P.ptr(2554,2555,1),new P.ptr(2801,2928,127),new P.ptr(3059,3066,1),new P.ptr(3199,3407,208),new P.ptr(3449,3647,198),new P.ptr(3841,3843,1),new P.ptr(3859,3861,2),new P.ptr(3862,3863,1),new P.ptr(3866,3871,1),new P.ptr(3892,3896,2),new P.ptr(4030,4037,1),new P.ptr(4039,4044,1),new P.ptr(4046,4047,1),new P.ptr(4053,4056,1),new P.ptr(4254,4255,1),new P.ptr(5008,5017,1),new P.ptr(6107,6464,357),new P.ptr(6622,6655,1),new P.ptr(7009,7018,1),new P.ptr(7028,7036,1),new P.ptr(8125,8127,2),new P.ptr(8128,8129,1),new P.ptr(8141,8143,1),new P.ptr(8157,8159,1),new P.ptr(8173,8175,1),new P.ptr(8189,8190,1),new P.ptr(8260,8274,14),new P.ptr(8314,8316,1),new P.ptr(8330,8332,1),new P.ptr(8352,8382,1),new P.ptr(8448,8449,1),new P.ptr(8451,8454,1),new P.ptr(8456,8457,1),new P.ptr(8468,8470,2),new P.ptr(8471,8472,1),new P.ptr(8478,8483,1),new P.ptr(8485,8489,2),new P.ptr(8494,8506,12),new P.ptr(8507,8512,5),new P.ptr(8513,8516,1),new P.ptr(8522,8525,1),new P.ptr(8527,8586,59),new P.ptr(8587,8592,5),new P.ptr(8593,8967,1),new P.ptr(8972,9000,1),new P.ptr(9003,9214,1),new P.ptr(9216,9254,1),new P.ptr(9280,9290,1),new P.ptr(9372,9449,1),new P.ptr(9472,10087,1),new P.ptr(10132,10180,1),new P.ptr(10183,10213,1),new P.ptr(10224,10626,1),new P.ptr(10649,10711,1),new P.ptr(10716,10747,1),new P.ptr(10750,11123,1),new P.ptr(11126,11157,1),new P.ptr(11160,11193,1),new P.ptr(11197,11208,1),new P.ptr(11210,11217,1),new P.ptr(11244,11247,1),new P.ptr(11493,11498,1),new P.ptr(11904,11929,1),new P.ptr(11931,12019,1),new P.ptr(12032,12245,1),new P.ptr(12272,12283,1),new P.ptr(12292,12306,14),new P.ptr(12307,12320,13),new P.ptr(12342,12343,1),new P.ptr(12350,12351,1),new P.ptr(12443,12444,1),new P.ptr(12688,12689,1),new P.ptr(12694,12703,1),new P.ptr(12736,12771,1),new P.ptr(12800,12830,1),new P.ptr(12842,12871,1),new P.ptr(12880,12896,16),new P.ptr(12897,12927,1),new P.ptr(12938,12976,1),new P.ptr(12992,13054,1),new P.ptr(13056,13311,1),new P.ptr(19904,19967,1),new P.ptr(42128,42182,1),new P.ptr(42752,42774,1),new P.ptr(42784,42785,1),new P.ptr(42889,42890,1),new P.ptr(43048,43051,1),new P.ptr(43062,43065,1),new P.ptr(43639,43641,1),new P.ptr(43867,64297,20430),new P.ptr(64434,64449,1),new P.ptr(65020,65021,1),new P.ptr(65122,65124,2),new P.ptr(65125,65126,1),new P.ptr(65129,65284,155),new P.ptr(65291,65308,17),new P.ptr(65309,65310,1),new P.ptr(65342,65344,2),new P.ptr(65372,65374,2),new P.ptr(65504,65510,1),new P.ptr(65512,65518,1),new P.ptr(65532,65533,1)]),new IU([new Q.ptr(65847,65855,1),new Q.ptr(65913,65929,1),new Q.ptr(65932,65934,1),new Q.ptr(65936,65947,1),new Q.ptr(65952,66000,48),new Q.ptr(66001,66044,1),new Q.ptr(67703,67704,1),new Q.ptr(68296,71487,3191),new Q.ptr(92988,92991,1),new Q.ptr(92997,113820,20823),new Q.ptr(118784,119029,1),new Q.ptr(119040,119078,1),new Q.ptr(119081,119140,1),new Q.ptr(119146,119148,1),new Q.ptr(119171,119172,1),new Q.ptr(119180,119209,1),new Q.ptr(119214,119272,1),new Q.ptr(119296,119361,1),new Q.ptr(119365,119552,187),new Q.ptr(119553,119638,1),new Q.ptr(120513,120539,26),new Q.ptr(120571,120597,26),new Q.ptr(120629,120655,26),new Q.ptr(120687,120713,26),new Q.ptr(120745,120771,26),new Q.ptr(120832,121343,1),new Q.ptr(121399,121402,1),new Q.ptr(121453,121460,1),new Q.ptr(121462,121475,1),new Q.ptr(121477,121478,1),new Q.ptr(126704,126705,1),new Q.ptr(126976,127019,1),new Q.ptr(127024,127123,1),new Q.ptr(127136,127150,1),new Q.ptr(127153,127167,1),new Q.ptr(127169,127183,1),new Q.ptr(127185,127221,1),new Q.ptr(127248,127278,1),new Q.ptr(127280,127339,1),new Q.ptr(127344,127404,1),new Q.ptr(127462,127490,1),new Q.ptr(127504,127547,1),new Q.ptr(127552,127560,1),new Q.ptr(127568,127569,1),new Q.ptr(127744,128722,1),new Q.ptr(128736,128748,1),new Q.ptr(128752,128758,1),new Q.ptr(128768,128883,1),new Q.ptr(128896,128980,1),new Q.ptr(129024,129035,1),new Q.ptr(129040,129095,1),new Q.ptr(129104,129113,1),new Q.ptr(129120,129159,1),new Q.ptr(129168,129197,1),new Q.ptr(129296,129310,1),new Q.ptr(129312,129319,1),new Q.ptr(129328,129331,3),new Q.ptr(129332,129342,1),new Q.ptr(129344,129355,1),new Q.ptr(129360,129374,1),new Q.ptr(129408,129425,1),new Q.ptr(129472,129472,1)]),10);BJ=new O.ptr(new IT([new P.ptr(36,162,126),new P.ptr(163,165,1),new P.ptr(1423,1547,124),new P.ptr(2546,2547,1),new P.ptr(2555,2801,246),new P.ptr(3065,3647,582),new P.ptr(6107,8352,2245),new P.ptr(8353,8382,1),new P.ptr(43064,65020,21956),new P.ptr(65129,65284,155),new P.ptr(65504,65505,1),new P.ptr(65509,65510,1)]),IU.nil,2);BK=new O.ptr(new IT([new P.ptr(94,96,2),new P.ptr(168,175,7),new P.ptr(180,184,4),new P.ptr(706,709,1),new P.ptr(722,735,1),new P.ptr(741,747,1),new P.ptr(749,751,2),new P.ptr(752,767,1),new P.ptr(885,900,15),new P.ptr(901,8125,7224),new P.ptr(8127,8129,1),new P.ptr(8141,8143,1),new P.ptr(8157,8159,1),new P.ptr(8173,8175,1),new P.ptr(8189,8190,1),new P.ptr(12443,12444,1),new P.ptr(42752,42774,1),new P.ptr(42784,42785,1),new P.ptr(42889,42890,1),new P.ptr(43867,64434,20567),new P.ptr(64435,64449,1),new P.ptr(65342,65344,2),new P.ptr(65507,65507,1)]),new IU([new Q.ptr(127995,127995,1),new Q.ptr(127996,127999,1)]),3);BL=new O.ptr(new IT([new P.ptr(43,60,17),new P.ptr(61,62,1),new P.ptr(124,126,2),new P.ptr(172,177,5),new P.ptr(215,247,32),new P.ptr(1014,1542,528),new P.ptr(1543,1544,1),new P.ptr(8260,8274,14),new P.ptr(8314,8316,1),new P.ptr(8330,8332,1),new P.ptr(8472,8512,40),new P.ptr(8513,8516,1),new P.ptr(8523,8592,69),new P.ptr(8593,8596,1),new P.ptr(8602,8603,1),new P.ptr(8608,8614,3),new P.ptr(8622,8654,32),new P.ptr(8655,8658,3),new P.ptr(8660,8692,32),new P.ptr(8693,8959,1),new P.ptr(8992,8993,1),new P.ptr(9084,9115,31),new P.ptr(9116,9139,1),new P.ptr(9180,9185,1),new P.ptr(9655,9665,10),new P.ptr(9720,9727,1),new P.ptr(9839,10176,337),new P.ptr(10177,10180,1),new P.ptr(10183,10213,1),new P.ptr(10224,10239,1),new P.ptr(10496,10626,1),new P.ptr(10649,10711,1),new P.ptr(10716,10747,1),new P.ptr(10750,11007,1),new P.ptr(11056,11076,1),new P.ptr(11079,11084,1),new P.ptr(64297,65122,825),new P.ptr(65124,65126,1),new P.ptr(65291,65308,17),new P.ptr(65309,65310,1),new P.ptr(65372,65374,2),new P.ptr(65506,65513,7),new P.ptr(65514,65516,1)]),new IU([new Q.ptr(120513,120539,26),new Q.ptr(120571,120597,26),new Q.ptr(120629,120655,26),new Q.ptr(120687,120713,26),new Q.ptr(120745,120771,26),new Q.ptr(126704,126705,1)]),5);BM=new O.ptr(new IT([new P.ptr(166,169,3),new P.ptr(174,176,2),new P.ptr(1154,1421,267),new P.ptr(1422,1550,128),new P.ptr(1551,1758,207),new P.ptr(1769,1789,20),new P.ptr(1790,2038,248),new P.ptr(2554,2928,374),new P.ptr(3059,3064,1),new P.ptr(3066,3199,133),new P.ptr(3407,3449,42),new P.ptr(3841,3843,1),new P.ptr(3859,3861,2),new P.ptr(3862,3863,1),new P.ptr(3866,3871,1),new P.ptr(3892,3896,2),new P.ptr(4030,4037,1),new P.ptr(4039,4044,1),new P.ptr(4046,4047,1),new P.ptr(4053,4056,1),new P.ptr(4254,4255,1),new P.ptr(5008,5017,1),new P.ptr(6464,6622,158),new P.ptr(6623,6655,1),new P.ptr(7009,7018,1),new P.ptr(7028,7036,1),new P.ptr(8448,8449,1),new P.ptr(8451,8454,1),new P.ptr(8456,8457,1),new P.ptr(8468,8470,2),new P.ptr(8471,8478,7),new P.ptr(8479,8483,1),new P.ptr(8485,8489,2),new P.ptr(8494,8506,12),new P.ptr(8507,8522,15),new P.ptr(8524,8525,1),new P.ptr(8527,8586,59),new P.ptr(8587,8597,10),new P.ptr(8598,8601,1),new P.ptr(8604,8607,1),new P.ptr(8609,8610,1),new P.ptr(8612,8613,1),new P.ptr(8615,8621,1),new P.ptr(8623,8653,1),new P.ptr(8656,8657,1),new P.ptr(8659,8661,2),new P.ptr(8662,8691,1),new P.ptr(8960,8967,1),new P.ptr(8972,8991,1),new P.ptr(8994,9000,1),new P.ptr(9003,9083,1),new P.ptr(9085,9114,1),new P.ptr(9140,9179,1),new P.ptr(9186,9214,1),new P.ptr(9216,9254,1),new P.ptr(9280,9290,1),new P.ptr(9372,9449,1),new P.ptr(9472,9654,1),new P.ptr(9656,9664,1),new P.ptr(9666,9719,1),new P.ptr(9728,9838,1),new P.ptr(9840,10087,1),new P.ptr(10132,10175,1),new P.ptr(10240,10495,1),new P.ptr(11008,11055,1),new P.ptr(11077,11078,1),new P.ptr(11085,11123,1),new P.ptr(11126,11157,1),new P.ptr(11160,11193,1),new P.ptr(11197,11208,1),new P.ptr(11210,11217,1),new P.ptr(11244,11247,1),new P.ptr(11493,11498,1),new P.ptr(11904,11929,1),new P.ptr(11931,12019,1),new P.ptr(12032,12245,1),new P.ptr(12272,12283,1),new P.ptr(12292,12306,14),new P.ptr(12307,12320,13),new P.ptr(12342,12343,1),new P.ptr(12350,12351,1),new P.ptr(12688,12689,1),new P.ptr(12694,12703,1),new P.ptr(12736,12771,1),new P.ptr(12800,12830,1),new P.ptr(12842,12871,1),new P.ptr(12880,12896,16),new P.ptr(12897,12927,1),new P.ptr(12938,12976,1),new P.ptr(12992,13054,1),new P.ptr(13056,13311,1),new P.ptr(19904,19967,1),new P.ptr(42128,42182,1),new P.ptr(43048,43051,1),new P.ptr(43062,43063,1),new P.ptr(43065,43639,574),new P.ptr(43640,43641,1),new P.ptr(65021,65508,487),new P.ptr(65512,65517,5),new P.ptr(65518,65532,14),new P.ptr(65533,65533,1)]),new IU([new Q.ptr(65847,65847,1),new Q.ptr(65848,65855,1),new Q.ptr(65913,65929,1),new Q.ptr(65932,65934,1),new Q.ptr(65936,65947,1),new Q.ptr(65952,66000,48),new Q.ptr(66001,66044,1),new Q.ptr(67703,67704,1),new Q.ptr(68296,71487,3191),new Q.ptr(92988,92991,1),new Q.ptr(92997,113820,20823),new Q.ptr(118784,119029,1),new Q.ptr(119040,119078,1),new Q.ptr(119081,119140,1),new Q.ptr(119146,119148,1),new Q.ptr(119171,119172,1),new Q.ptr(119180,119209,1),new Q.ptr(119214,119272,1),new Q.ptr(119296,119361,1),new Q.ptr(119365,119552,187),new Q.ptr(119553,119638,1),new Q.ptr(120832,121343,1),new Q.ptr(121399,121402,1),new Q.ptr(121453,121460,1),new Q.ptr(121462,121475,1),new Q.ptr(121477,121478,1),new Q.ptr(126976,127019,1),new Q.ptr(127024,127123,1),new Q.ptr(127136,127150,1),new Q.ptr(127153,127167,1),new Q.ptr(127169,127183,1),new Q.ptr(127185,127221,1),new Q.ptr(127248,127278,1),new Q.ptr(127280,127339,1),new Q.ptr(127344,127404,1),new Q.ptr(127462,127490,1),new Q.ptr(127504,127547,1),new Q.ptr(127552,127560,1),new Q.ptr(127568,127569,1),new Q.ptr(127744,127994,1),new Q.ptr(128000,128722,1),new Q.ptr(128736,128748,1),new Q.ptr(128752,128758,1),new Q.ptr(128768,128883,1),new Q.ptr(128896,128980,1),new Q.ptr(129024,129035,1),new Q.ptr(129040,129095,1),new Q.ptr(129104,129113,1),new Q.ptr(129120,129159,1),new Q.ptr(129168,129197,1),new Q.ptr(129296,129310,1),new Q.ptr(129312,129319,1),new Q.ptr(129328,129331,3),new Q.ptr(129332,129342,1),new Q.ptr(129344,129355,1),new Q.ptr(129360,129374,1),new Q.ptr(129408,129425,1),new Q.ptr(129472,129472,1)]),2);BN=new O.ptr(new IT([new P.ptr(32,160,128),new P.ptr(5760,8192,2432),new P.ptr(8193,8202,1),new P.ptr(8232,8233,1),new P.ptr(8239,8287,48),new P.ptr(12288,12288,1)]),IU.nil,1);BO=new O.ptr(new IT([new P.ptr(8232,8232,1)]),IU.nil,0);BP=new O.ptr(new IT([new P.ptr(8233,8233,1)]),IU.nil,0);BQ=new O.ptr(new IT([new P.ptr(32,160,128),new P.ptr(5760,8192,2432),new P.ptr(8193,8202,1),new P.ptr(8239,8287,48),new P.ptr(12288,12288,1)]),IU.nil,1);$pkg.Cc=AI;$pkg.Cf=AJ;$pkg.Co=AK;$pkg.Cs=AL;$pkg.Digit=AX;$pkg.Nd=AX;$pkg.Letter=AM;$pkg.L=AM;$pkg.Lm=AO;$pkg.Lo=AP;$pkg.Ll=AN;$pkg.M=AS;$pkg.Mc=AT;$pkg.Me=AU;$pkg.Mn=AV;$pkg.Nl=AY;$pkg.No=AZ;$pkg.N=AW;$pkg.C=AH;$pkg.Pc=BB;$pkg.Pd=BC;$pkg.Pe=BD;$pkg.Pf=BE;$pkg.Pi=BF;$pkg.Po=BG;$pkg.Ps=BH;$pkg.P=BA;$pkg.Sc=BJ;$pkg.Sk=BK;$pkg.Sm=BL;$pkg.So=BM;$pkg.Z=BN;$pkg.S=BI;$pkg.PrintRanges=new IW([$pkg.L,$pkg.M,$pkg.N,$pkg.P,$pkg.S]);$pkg.Lt=AQ;$pkg.Lu=AR;$pkg.Zl=BO;$pkg.Zp=BP;$pkg.Zs=BQ;$pkg.Categories=$makeMap($String.keyFor,[{k:"C",v:$pkg.C},{k:"Cc",v:$pkg.Cc},{k:"Cf",v:$pkg.Cf},{k:"Co",v:$pkg.Co},{k:"Cs",v:$pkg.Cs},{k:"L",v:$pkg.L},{k:"Ll",v:$pkg.Ll},{k:"Lm",v:$pkg.Lm},{k:"Lo",v:$pkg.Lo},{k:"Lt",v:$pkg.Lt},{k:"Lu",v:$pkg.Lu},{k:"M",v:$pkg.M},{k:"Mc",v:$pkg.Mc},{k:"Me",v:$pkg.Me},{k:"Mn",v:$pkg.Mn},{k:"N",v:$pkg.N},{k:"Nd",v:$pkg.Nd},{k:"Nl",v:$pkg.Nl},{k:"No",v:$pkg.No},{k:"P",v:$pkg.P},{k:"Pc",v:$pkg.Pc},{k:"Pd",v:$pkg.Pd},{k:"Pe",v:$pkg.Pe},{k:"Pf",v:$pkg.Pf},{k:"Pi",v:$pkg.Pi},{k:"Po",v:$pkg.Po},{k:"Ps",v:$pkg.Ps},{k:"S",v:$pkg.S},{k:"Sc",v:$pkg.Sc},{k:"Sk",v:$pkg.Sk},{k:"Sm",v:$pkg.Sm},{k:"So",v:$pkg.So},{k:"Z",v:$pkg.Z},{k:"Zl",v:$pkg.Zl},{k:"Zp",v:$pkg.Zp},{k:"Zs",v:$pkg.Zs}]);BR=new O.ptr(new IT([]),new IU([new Q.ptr(125184,125258,1),new Q.ptr(125264,125273,1),new Q.ptr(125278,125279,1)]),0);BS=new O.ptr(new IT([]),new IU([new Q.ptr(71424,71449,1),new Q.ptr(71453,71467,1),new Q.ptr(71472,71487,1)]),0);BT=new O.ptr(new IT([]),new IU([new Q.ptr(82944,83526,1)]),0);BU=new O.ptr(new IT([new P.ptr(1536,1540,1),new P.ptr(1542,1547,1),new P.ptr(1549,1562,1),new P.ptr(1566,1566,1),new P.ptr(1568,1599,1),new P.ptr(1601,1610,1),new P.ptr(1622,1647,1),new P.ptr(1649,1756,1),new P.ptr(1758,1791,1),new P.ptr(1872,1919,1),new P.ptr(2208,2228,1),new P.ptr(2230,2237,1),new P.ptr(2260,2273,1),new P.ptr(2275,2303,1),new P.ptr(64336,64449,1),new P.ptr(64467,64829,1),new P.ptr(64848,64911,1),new P.ptr(64914,64967,1),new P.ptr(65008,65021,1),new P.ptr(65136,65140,1),new P.ptr(65142,65276,1)]),new IU([new Q.ptr(69216,69246,1),new Q.ptr(126464,126467,1),new Q.ptr(126469,126495,1),new Q.ptr(126497,126498,1),new Q.ptr(126500,126500,1),new Q.ptr(126503,126503,1),new Q.ptr(126505,126514,1),new Q.ptr(126516,126519,1),new Q.ptr(126521,126521,1),new Q.ptr(126523,126523,1),new Q.ptr(126530,126530,1),new Q.ptr(126535,126535,1),new Q.ptr(126537,126537,1),new Q.ptr(126539,126539,1),new Q.ptr(126541,126543,1),new Q.ptr(126545,126546,1),new Q.ptr(126548,126548,1),new Q.ptr(126551,126551,1),new Q.ptr(126553,126553,1),new Q.ptr(126555,126555,1),new Q.ptr(126557,126557,1),new Q.ptr(126559,126559,1),new Q.ptr(126561,126562,1),new Q.ptr(126564,126564,1),new Q.ptr(126567,126570,1),new Q.ptr(126572,126578,1),new Q.ptr(126580,126583,1),new Q.ptr(126585,126588,1),new Q.ptr(126590,126590,1),new Q.ptr(126592,126601,1),new Q.ptr(126603,126619,1),new Q.ptr(126625,126627,1),new Q.ptr(126629,126633,1),new Q.ptr(126635,126651,1),new Q.ptr(126704,126705,1)]),0);BV=new O.ptr(new IT([new P.ptr(1329,1366,1),new P.ptr(1369,1375,1),new P.ptr(1377,1415,1),new P.ptr(1418,1418,1),new P.ptr(1421,1423,1),new P.ptr(64275,64279,1)]),IU.nil,0);BW=new O.ptr(new IT([]),new IU([new Q.ptr(68352,68405,1),new Q.ptr(68409,68415,1)]),0);BX=new O.ptr(new IT([new P.ptr(6912,6987,1),new P.ptr(6992,7036,1)]),IU.nil,0);BY=new O.ptr(new IT([new P.ptr(42656,42743,1)]),new IU([new Q.ptr(92160,92728,1)]),0);BZ=new O.ptr(new IT([]),new IU([new Q.ptr(92880,92909,1),new Q.ptr(92912,92917,1)]),0);CA=new O.ptr(new IT([new P.ptr(7104,7155,1),new P.ptr(7164,7167,1)]),IU.nil,0);CB=new O.ptr(new IT([new P.ptr(2432,2435,1),new P.ptr(2437,2444,1),new P.ptr(2447,2448,1),new P.ptr(2451,2472,1),new P.ptr(2474,2480,1),new P.ptr(2482,2482,1),new P.ptr(2486,2489,1),new P.ptr(2492,2500,1),new P.ptr(2503,2504,1),new P.ptr(2507,2510,1),new P.ptr(2519,2519,1),new P.ptr(2524,2525,1),new P.ptr(2527,2531,1),new P.ptr(2534,2555,1)]),IU.nil,0);CC=new O.ptr(new IT([]),new IU([new Q.ptr(72704,72712,1),new Q.ptr(72714,72758,1),new Q.ptr(72760,72773,1),new Q.ptr(72784,72812,1)]),0);CD=new O.ptr(new IT([new P.ptr(746,747,1),new P.ptr(12549,12589,1),new P.ptr(12704,12730,1)]),IU.nil,0);CE=new O.ptr(new IT([]),new IU([new Q.ptr(69632,69709,1),new Q.ptr(69714,69743,1),new Q.ptr(69759,69759,1)]),0);CF=new O.ptr(new IT([new P.ptr(10240,10495,1)]),IU.nil,0);CG=new O.ptr(new IT([new P.ptr(6656,6683,1),new P.ptr(6686,6687,1)]),IU.nil,0);CH=new O.ptr(new IT([new P.ptr(5952,5971,1)]),IU.nil,0);CI=new O.ptr(new IT([new P.ptr(5120,5759,1),new P.ptr(6320,6389,1)]),IU.nil,0);CJ=new O.ptr(new IT([]),new IU([new Q.ptr(66208,66256,1)]),0);CK=new O.ptr(new IT([]),new IU([new Q.ptr(66864,66915,1),new Q.ptr(66927,66927,1)]),0);CL=new O.ptr(new IT([]),new IU([new Q.ptr(69888,69940,1),new Q.ptr(69942,69955,1)]),0);CM=new O.ptr(new IT([new P.ptr(43520,43574,1),new P.ptr(43584,43597,1),new P.ptr(43600,43609,1),new P.ptr(43612,43615,1)]),IU.nil,0);CN=new O.ptr(new IT([new P.ptr(5024,5109,1),new P.ptr(5112,5117,1),new P.ptr(43888,43967,1)]),IU.nil,0);CO=new O.ptr(new IT([new P.ptr(0,64,1),new P.ptr(91,96,1),new P.ptr(123,169,1),new P.ptr(171,185,1),new P.ptr(187,191,1),new P.ptr(215,215,1),new P.ptr(247,247,1),new P.ptr(697,735,1),new P.ptr(741,745,1),new P.ptr(748,767,1),new P.ptr(884,884,1),new P.ptr(894,894,1),new P.ptr(901,901,1),new P.ptr(903,903,1),new P.ptr(1417,1417,1),new P.ptr(1541,1541,1),new P.ptr(1548,1548,1),new P.ptr(1563,1564,1),new P.ptr(1567,1567,1),new P.ptr(1600,1600,1),new P.ptr(1757,1757,1),new P.ptr(2274,2274,1),new P.ptr(2404,2405,1),new P.ptr(3647,3647,1),new P.ptr(4053,4056,1),new P.ptr(4347,4347,1),new P.ptr(5867,5869,1),new P.ptr(5941,5942,1),new P.ptr(6146,6147,1),new P.ptr(6149,6149,1),new P.ptr(7379,7379,1),new P.ptr(7393,7393,1),new P.ptr(7401,7404,1),new P.ptr(7406,7411,1),new P.ptr(7413,7414,1),new P.ptr(8192,8203,1),new P.ptr(8206,8292,1),new P.ptr(8294,8304,1),new P.ptr(8308,8318,1),new P.ptr(8320,8334,1),new P.ptr(8352,8382,1),new P.ptr(8448,8485,1),new P.ptr(8487,8489,1),new P.ptr(8492,8497,1),new P.ptr(8499,8525,1),new P.ptr(8527,8543,1),new P.ptr(8585,8587,1),new P.ptr(8592,9214,1),new P.ptr(9216,9254,1),new P.ptr(9280,9290,1),new P.ptr(9312,10239,1),new P.ptr(10496,11123,1),new P.ptr(11126,11157,1),new P.ptr(11160,11193,1),new P.ptr(11197,11208,1),new P.ptr(11210,11217,1),new P.ptr(11244,11247,1),new P.ptr(11776,11844,1),new P.ptr(12272,12283,1),new P.ptr(12288,12292,1),new P.ptr(12294,12294,1),new P.ptr(12296,12320,1),new P.ptr(12336,12343,1),new P.ptr(12348,12351,1),new P.ptr(12443,12444,1),new P.ptr(12448,12448,1),new P.ptr(12539,12540,1),new P.ptr(12688,12703,1),new P.ptr(12736,12771,1),new P.ptr(12832,12895,1),new P.ptr(12927,13007,1),new P.ptr(13144,13311,1),new P.ptr(19904,19967,1),new P.ptr(42752,42785,1),new P.ptr(42888,42890,1),new P.ptr(43056,43065,1),new P.ptr(43310,43310,1),new P.ptr(43471,43471,1),new P.ptr(43867,43867,1),new P.ptr(64830,64831,1),new P.ptr(65040,65049,1),new P.ptr(65072,65106,1),new P.ptr(65108,65126,1),new P.ptr(65128,65131,1),new P.ptr(65279,65279,1),new P.ptr(65281,65312,1),new P.ptr(65339,65344,1),new P.ptr(65371,65381,1),new P.ptr(65392,65392,1),new P.ptr(65438,65439,1),new P.ptr(65504,65510,1),new P.ptr(65512,65518,1),new P.ptr(65529,65533,1)]),new IU([new Q.ptr(65792,65794,1),new Q.ptr(65799,65843,1),new Q.ptr(65847,65855,1),new Q.ptr(65936,65947,1),new Q.ptr(66000,66044,1),new Q.ptr(66273,66299,1),new Q.ptr(113824,113827,1),new Q.ptr(118784,119029,1),new Q.ptr(119040,119078,1),new Q.ptr(119081,119142,1),new Q.ptr(119146,119162,1),new Q.ptr(119171,119172,1),new Q.ptr(119180,119209,1),new Q.ptr(119214,119272,1),new Q.ptr(119552,119638,1),new Q.ptr(119648,119665,1),new Q.ptr(119808,119892,1),new Q.ptr(119894,119964,1),new Q.ptr(119966,119967,1),new Q.ptr(119970,119970,1),new Q.ptr(119973,119974,1),new Q.ptr(119977,119980,1),new Q.ptr(119982,119993,1),new Q.ptr(119995,119995,1),new Q.ptr(119997,120003,1),new Q.ptr(120005,120069,1),new Q.ptr(120071,120074,1),new Q.ptr(120077,120084,1),new Q.ptr(120086,120092,1),new Q.ptr(120094,120121,1),new Q.ptr(120123,120126,1),new Q.ptr(120128,120132,1),new Q.ptr(120134,120134,1),new Q.ptr(120138,120144,1),new Q.ptr(120146,120485,1),new Q.ptr(120488,120779,1),new Q.ptr(120782,120831,1),new Q.ptr(126976,127019,1),new Q.ptr(127024,127123,1),new Q.ptr(127136,127150,1),new Q.ptr(127153,127167,1),new Q.ptr(127169,127183,1),new Q.ptr(127185,127221,1),new Q.ptr(127232,127244,1),new Q.ptr(127248,127278,1),new Q.ptr(127280,127339,1),new Q.ptr(127344,127404,1),new Q.ptr(127462,127487,1),new Q.ptr(127489,127490,1),new Q.ptr(127504,127547,1),new Q.ptr(127552,127560,1),new Q.ptr(127568,127569,1),new Q.ptr(127744,128722,1),new Q.ptr(128736,128748,1),new Q.ptr(128752,128758,1),new Q.ptr(128768,128883,1),new Q.ptr(128896,128980,1),new Q.ptr(129024,129035,1),new Q.ptr(129040,129095,1),new Q.ptr(129104,129113,1),new Q.ptr(129120,129159,1),new Q.ptr(129168,129197,1),new Q.ptr(129296,129310,1),new Q.ptr(129312,129319,1),new Q.ptr(129328,129328,1),new Q.ptr(129331,129342,1),new Q.ptr(129344,129355,1),new Q.ptr(129360,129374,1),new Q.ptr(129408,129425,1),new Q.ptr(129472,129472,1),new Q.ptr(917505,917505,1),new Q.ptr(917536,917631,1)]),7);CP=new O.ptr(new IT([new P.ptr(994,1007,1),new P.ptr(11392,11507,1),new P.ptr(11513,11519,1)]),IU.nil,0);CQ=new O.ptr(new IT([]),new IU([new Q.ptr(73728,74649,1),new Q.ptr(74752,74862,1),new Q.ptr(74864,74868,1),new Q.ptr(74880,75075,1)]),0);CR=new O.ptr(new IT([]),new IU([new Q.ptr(67584,67589,1),new Q.ptr(67592,67592,1),new Q.ptr(67594,67637,1),new Q.ptr(67639,67640,1),new Q.ptr(67644,67644,1),new Q.ptr(67647,67647,1)]),0);CS=new O.ptr(new IT([new P.ptr(1024,1156,1),new P.ptr(1159,1327,1),new P.ptr(7296,7304,1),new P.ptr(7467,7467,1),new P.ptr(7544,7544,1),new P.ptr(11744,11775,1),new P.ptr(42560,42655,1),new P.ptr(65070,65071,1)]),IU.nil,0);CT=new O.ptr(new IT([]),new IU([new Q.ptr(66560,66639,1)]),0);CU=new O.ptr(new IT([new P.ptr(2304,2384,1),new P.ptr(2387,2403,1),new P.ptr(2406,2431,1),new P.ptr(43232,43261,1)]),IU.nil,0);CV=new O.ptr(new IT([]),new IU([new Q.ptr(113664,113770,1),new Q.ptr(113776,113788,1),new Q.ptr(113792,113800,1),new Q.ptr(113808,113817,1),new Q.ptr(113820,113823,1)]),0);CW=new O.ptr(new IT([]),new IU([new Q.ptr(77824,78894,1)]),0);CX=new O.ptr(new IT([]),new IU([new Q.ptr(66816,66855,1)]),0);CY=new O.ptr(new IT([new P.ptr(4608,4680,1),new P.ptr(4682,4685,1),new P.ptr(4688,4694,1),new P.ptr(4696,4696,1),new P.ptr(4698,4701,1),new P.ptr(4704,4744,1),new P.ptr(4746,4749,1),new P.ptr(4752,4784,1),new P.ptr(4786,4789,1),new P.ptr(4792,4798,1),new P.ptr(4800,4800,1),new P.ptr(4802,4805,1),new P.ptr(4808,4822,1),new P.ptr(4824,4880,1),new P.ptr(4882,4885,1),new P.ptr(4888,4954,1),new P.ptr(4957,4988,1),new P.ptr(4992,5017,1),new P.ptr(11648,11670,1),new P.ptr(11680,11686,1),new P.ptr(11688,11694,1),new P.ptr(11696,11702,1),new P.ptr(11704,11710,1),new P.ptr(11712,11718,1),new P.ptr(11720,11726,1),new P.ptr(11728,11734,1),new P.ptr(11736,11742,1),new P.ptr(43777,43782,1),new P.ptr(43785,43790,1),new P.ptr(43793,43798,1),new P.ptr(43808,43814,1),new P.ptr(43816,43822,1)]),IU.nil,0);CZ=new O.ptr(new IT([new P.ptr(4256,4293,1),new P.ptr(4295,4295,1),new P.ptr(4301,4301,1),new P.ptr(4304,4346,1),new P.ptr(4348,4351,1),new P.ptr(11520,11557,1),new P.ptr(11559,11559,1),new P.ptr(11565,11565,1)]),IU.nil,0);DA=new O.ptr(new IT([new P.ptr(11264,11310,1),new P.ptr(11312,11358,1)]),new IU([new Q.ptr(122880,122886,1),new Q.ptr(122888,122904,1),new Q.ptr(122907,122913,1),new Q.ptr(122915,122916,1),new Q.ptr(122918,122922,1)]),0);DB=new O.ptr(new IT([]),new IU([new Q.ptr(66352,66378,1)]),0);DC=new O.ptr(new IT([]),new IU([new Q.ptr(70400,70403,1),new Q.ptr(70405,70412,1),new Q.ptr(70415,70416,1),new Q.ptr(70419,70440,1),new Q.ptr(70442,70448,1),new Q.ptr(70450,70451,1),new Q.ptr(70453,70457,1),new Q.ptr(70460,70468,1),new Q.ptr(70471,70472,1),new Q.ptr(70475,70477,1),new Q.ptr(70480,70480,1),new Q.ptr(70487,70487,1),new Q.ptr(70493,70499,1),new Q.ptr(70502,70508,1),new Q.ptr(70512,70516,1)]),0);DD=new O.ptr(new IT([new P.ptr(880,883,1),new P.ptr(885,887,1),new P.ptr(890,893,1),new P.ptr(895,895,1),new P.ptr(900,900,1),new P.ptr(902,902,1),new P.ptr(904,906,1),new P.ptr(908,908,1),new P.ptr(910,929,1),new P.ptr(931,993,1),new P.ptr(1008,1023,1),new P.ptr(7462,7466,1),new P.ptr(7517,7521,1),new P.ptr(7526,7530,1),new P.ptr(7615,7615,1),new P.ptr(7936,7957,1),new P.ptr(7960,7965,1),new P.ptr(7968,8005,1),new P.ptr(8008,8013,1),new P.ptr(8016,8023,1),new P.ptr(8025,8025,1),new P.ptr(8027,8027,1),new P.ptr(8029,8029,1),new P.ptr(8031,8061,1),new P.ptr(8064,8116,1),new P.ptr(8118,8132,1),new P.ptr(8134,8147,1),new P.ptr(8150,8155,1),new P.ptr(8157,8175,1),new P.ptr(8178,8180,1),new P.ptr(8182,8190,1),new P.ptr(8486,8486,1),new P.ptr(43877,43877,1)]),new IU([new Q.ptr(65856,65934,1),new Q.ptr(65952,65952,1),new Q.ptr(119296,119365,1)]),0);DE=new O.ptr(new IT([new P.ptr(2689,2691,1),new P.ptr(2693,2701,1),new P.ptr(2703,2705,1),new P.ptr(2707,2728,1),new P.ptr(2730,2736,1),new P.ptr(2738,2739,1),new P.ptr(2741,2745,1),new P.ptr(2748,2757,1),new P.ptr(2759,2761,1),new P.ptr(2763,2765,1),new P.ptr(2768,2768,1),new P.ptr(2784,2787,1),new P.ptr(2790,2801,1),new P.ptr(2809,2809,1)]),IU.nil,0);DF=new O.ptr(new IT([new P.ptr(2561,2563,1),new P.ptr(2565,2570,1),new P.ptr(2575,2576,1),new P.ptr(2579,2600,1),new P.ptr(2602,2608,1),new P.ptr(2610,2611,1),new P.ptr(2613,2614,1),new P.ptr(2616,2617,1),new P.ptr(2620,2620,1),new P.ptr(2622,2626,1),new P.ptr(2631,2632,1),new P.ptr(2635,2637,1),new P.ptr(2641,2641,1),new P.ptr(2649,2652,1),new P.ptr(2654,2654,1),new P.ptr(2662,2677,1)]),IU.nil,0);DG=new O.ptr(new IT([new P.ptr(11904,11929,1),new P.ptr(11931,12019,1),new P.ptr(12032,12245,1),new P.ptr(12293,12293,1),new P.ptr(12295,12295,1),new P.ptr(12321,12329,1),new P.ptr(12344,12347,1),new P.ptr(13312,19893,1),new P.ptr(19968,40917,1),new P.ptr(63744,64109,1),new P.ptr(64112,64217,1)]),new IU([new Q.ptr(131072,173782,1),new Q.ptr(173824,177972,1),new Q.ptr(177984,178205,1),new Q.ptr(178208,183969,1),new Q.ptr(194560,195101,1)]),0);DH=new O.ptr(new IT([new P.ptr(4352,4607,1),new P.ptr(12334,12335,1),new P.ptr(12593,12686,1),new P.ptr(12800,12830,1),new P.ptr(12896,12926,1),new P.ptr(43360,43388,1),new P.ptr(44032,55203,1),new P.ptr(55216,55238,1),new P.ptr(55243,55291,1),new P.ptr(65440,65470,1),new P.ptr(65474,65479,1),new P.ptr(65482,65487,1),new P.ptr(65490,65495,1),new P.ptr(65498,65500,1)]),IU.nil,0);DI=new O.ptr(new IT([new P.ptr(5920,5940,1)]),IU.nil,0);DJ=new O.ptr(new IT([]),new IU([new Q.ptr(67808,67826,1),new Q.ptr(67828,67829,1),new Q.ptr(67835,67839,1)]),0);DK=new O.ptr(new IT([new P.ptr(1425,1479,1),new P.ptr(1488,1514,1),new P.ptr(1520,1524,1),new P.ptr(64285,64310,1),new P.ptr(64312,64316,1),new P.ptr(64318,64318,1),new P.ptr(64320,64321,1),new P.ptr(64323,64324,1),new P.ptr(64326,64335,1)]),IU.nil,0);DL=new O.ptr(new IT([new P.ptr(12353,12438,1),new P.ptr(12445,12447,1)]),new IU([new Q.ptr(110593,110593,1),new Q.ptr(127488,127488,1)]),0);DM=new O.ptr(new IT([]),new IU([new Q.ptr(67648,67669,1),new Q.ptr(67671,67679,1)]),0);DN=new O.ptr(new IT([new P.ptr(768,879,1),new P.ptr(1157,1158,1),new P.ptr(1611,1621,1),new P.ptr(1648,1648,1),new P.ptr(2385,2386,1),new P.ptr(6832,6846,1),new P.ptr(7376,7378,1),new P.ptr(7380,7392,1),new P.ptr(7394,7400,1),new P.ptr(7405,7405,1),new P.ptr(7412,7412,1),new P.ptr(7416,7417,1),new P.ptr(7616,7669,1),new P.ptr(7675,7679,1),new P.ptr(8204,8205,1),new P.ptr(8400,8432,1),new P.ptr(12330,12333,1),new P.ptr(12441,12442,1),new P.ptr(65024,65039,1),new P.ptr(65056,65069,1)]),new IU([new Q.ptr(66045,66045,1),new Q.ptr(66272,66272,1),new Q.ptr(119143,119145,1),new Q.ptr(119163,119170,1),new Q.ptr(119173,119179,1),new Q.ptr(119210,119213,1),new Q.ptr(917760,917999,1)]),0);DO=new O.ptr(new IT([]),new IU([new Q.ptr(68448,68466,1),new Q.ptr(68472,68479,1)]),0);DP=new O.ptr(new IT([]),new IU([new Q.ptr(68416,68437,1),new Q.ptr(68440,68447,1)]),0);DQ=new O.ptr(new IT([new P.ptr(43392,43469,1),new P.ptr(43472,43481,1),new P.ptr(43486,43487,1)]),IU.nil,0);DR=new O.ptr(new IT([]),new IU([new Q.ptr(69760,69825,1)]),0);DS=new O.ptr(new IT([new P.ptr(3200,3203,1),new P.ptr(3205,3212,1),new P.ptr(3214,3216,1),new P.ptr(3218,3240,1),new P.ptr(3242,3251,1),new P.ptr(3253,3257,1),new P.ptr(3260,3268,1),new P.ptr(3270,3272,1),new P.ptr(3274,3277,1),new P.ptr(3285,3286,1),new P.ptr(3294,3294,1),new P.ptr(3296,3299,1),new P.ptr(3302,3311,1),new P.ptr(3313,3314,1)]),IU.nil,0);DT=new O.ptr(new IT([new P.ptr(12449,12538,1),new P.ptr(12541,12543,1),new P.ptr(12784,12799,1),new P.ptr(13008,13054,1),new P.ptr(13056,13143,1),new P.ptr(65382,65391,1),new P.ptr(65393,65437,1)]),new IU([new Q.ptr(110592,110592,1)]),0);DU=new O.ptr(new IT([new P.ptr(43264,43309,1),new P.ptr(43311,43311,1)]),IU.nil,0);DV=new O.ptr(new IT([]),new IU([new Q.ptr(68096,68099,1),new Q.ptr(68101,68102,1),new Q.ptr(68108,68115,1),new Q.ptr(68117,68119,1),new Q.ptr(68121,68147,1),new Q.ptr(68152,68154,1),new Q.ptr(68159,68167,1),new Q.ptr(68176,68184,1)]),0);DW=new O.ptr(new IT([new P.ptr(6016,6109,1),new P.ptr(6112,6121,1),new P.ptr(6128,6137,1),new P.ptr(6624,6655,1)]),IU.nil,0);DX=new O.ptr(new IT([]),new IU([new Q.ptr(70144,70161,1),new Q.ptr(70163,70206,1)]),0);DY=new O.ptr(new IT([]),new IU([new Q.ptr(70320,70378,1),new Q.ptr(70384,70393,1)]),0);DZ=new O.ptr(new IT([new P.ptr(3713,3714,1),new P.ptr(3716,3716,1),new P.ptr(3719,3720,1),new P.ptr(3722,3722,1),new P.ptr(3725,3725,1),new P.ptr(3732,3735,1),new P.ptr(3737,3743,1),new P.ptr(3745,3747,1),new P.ptr(3749,3749,1),new P.ptr(3751,3751,1),new P.ptr(3754,3755,1),new P.ptr(3757,3769,1),new P.ptr(3771,3773,1),new P.ptr(3776,3780,1),new P.ptr(3782,3782,1),new P.ptr(3784,3789,1),new P.ptr(3792,3801,1),new P.ptr(3804,3807,1)]),IU.nil,0);EA=new O.ptr(new IT([new P.ptr(65,90,1),new P.ptr(97,122,1),new P.ptr(170,170,1),new P.ptr(186,186,1),new P.ptr(192,214,1),new P.ptr(216,246,1),new P.ptr(248,696,1),new P.ptr(736,740,1),new P.ptr(7424,7461,1),new P.ptr(7468,7516,1),new P.ptr(7522,7525,1),new P.ptr(7531,7543,1),new P.ptr(7545,7614,1),new P.ptr(7680,7935,1),new P.ptr(8305,8305,1),new P.ptr(8319,8319,1),new P.ptr(8336,8348,1),new P.ptr(8490,8491,1),new P.ptr(8498,8498,1),new P.ptr(8526,8526,1),new P.ptr(8544,8584,1),new P.ptr(11360,11391,1),new P.ptr(42786,42887,1),new P.ptr(42891,42926,1),new P.ptr(42928,42935,1),new P.ptr(42999,43007,1),new P.ptr(43824,43866,1),new P.ptr(43868,43876,1),new P.ptr(64256,64262,1),new P.ptr(65313,65338,1),new P.ptr(65345,65370,1)]),IU.nil,6);EB=new O.ptr(new IT([new P.ptr(7168,7223,1),new P.ptr(7227,7241,1),new P.ptr(7245,7247,1)]),IU.nil,0);EC=new O.ptr(new IT([new P.ptr(6400,6430,1),new P.ptr(6432,6443,1),new P.ptr(6448,6459,1),new P.ptr(6464,6464,1),new P.ptr(6468,6479,1)]),IU.nil,0);ED=new O.ptr(new IT([]),new IU([new Q.ptr(67072,67382,1),new Q.ptr(67392,67413,1),new Q.ptr(67424,67431,1)]),0);EE=new O.ptr(new IT([]),new IU([new Q.ptr(65536,65547,1),new Q.ptr(65549,65574,1),new Q.ptr(65576,65594,1),new Q.ptr(65596,65597,1),new Q.ptr(65599,65613,1),new Q.ptr(65616,65629,1),new Q.ptr(65664,65786,1)]),0);EF=new O.ptr(new IT([new P.ptr(42192,42239,1)]),IU.nil,0);EG=new O.ptr(new IT([]),new IU([new Q.ptr(66176,66204,1)]),0);EH=new O.ptr(new IT([]),new IU([new Q.ptr(67872,67897,1),new Q.ptr(67903,67903,1)]),0);EI=new O.ptr(new IT([]),new IU([new Q.ptr(69968,70006,1)]),0);EJ=new O.ptr(new IT([new P.ptr(3329,3331,1),new P.ptr(3333,3340,1),new P.ptr(3342,3344,1),new P.ptr(3346,3386,1),new P.ptr(3389,3396,1),new P.ptr(3398,3400,1),new P.ptr(3402,3407,1),new P.ptr(3412,3427,1),new P.ptr(3430,3455,1)]),IU.nil,0);EK=new O.ptr(new IT([new P.ptr(2112,2139,1),new P.ptr(2142,2142,1)]),IU.nil,0);EL=new O.ptr(new IT([]),new IU([new Q.ptr(68288,68326,1),new Q.ptr(68331,68342,1)]),0);EM=new O.ptr(new IT([]),new IU([new Q.ptr(72816,72847,1),new Q.ptr(72850,72871,1),new Q.ptr(72873,72886,1)]),0);EN=new O.ptr(new IT([new P.ptr(43744,43766,1),new P.ptr(43968,44013,1),new P.ptr(44016,44025,1)]),IU.nil,0);EO=new O.ptr(new IT([]),new IU([new Q.ptr(124928,125124,1),new Q.ptr(125127,125142,1)]),0);EP=new O.ptr(new IT([]),new IU([new Q.ptr(68000,68023,1),new Q.ptr(68028,68047,1),new Q.ptr(68050,68095,1)]),0);EQ=new O.ptr(new IT([]),new IU([new Q.ptr(67968,67999,1)]),0);ER=new O.ptr(new IT([]),new IU([new Q.ptr(93952,94020,1),new Q.ptr(94032,94078,1),new Q.ptr(94095,94111,1)]),0);ES=new O.ptr(new IT([]),new IU([new Q.ptr(71168,71236,1),new Q.ptr(71248,71257,1)]),0);ET=new O.ptr(new IT([new P.ptr(6144,6145,1),new P.ptr(6148,6148,1),new P.ptr(6150,6158,1),new P.ptr(6160,6169,1),new P.ptr(6176,6263,1),new P.ptr(6272,6314,1)]),new IU([new Q.ptr(71264,71276,1)]),0);EU=new O.ptr(new IT([]),new IU([new Q.ptr(92736,92766,1),new Q.ptr(92768,92777,1),new Q.ptr(92782,92783,1)]),0);EV=new O.ptr(new IT([]),new IU([new Q.ptr(70272,70278,1),new Q.ptr(70280,70280,1),new Q.ptr(70282,70285,1),new Q.ptr(70287,70301,1),new Q.ptr(70303,70313,1)]),0);EW=new O.ptr(new IT([new P.ptr(4096,4255,1),new P.ptr(43488,43518,1),new P.ptr(43616,43647,1)]),IU.nil,0);EX=new O.ptr(new IT([]),new IU([new Q.ptr(67712,67742,1),new Q.ptr(67751,67759,1)]),0);EY=new O.ptr(new IT([new P.ptr(6528,6571,1),new P.ptr(6576,6601,1),new P.ptr(6608,6618,1),new P.ptr(6622,6623,1)]),IU.nil,0);EZ=new O.ptr(new IT([]),new IU([new Q.ptr(70656,70745,1),new Q.ptr(70747,70747,1),new Q.ptr(70749,70749,1)]),0);FA=new O.ptr(new IT([new P.ptr(1984,2042,1)]),IU.nil,0);FB=new O.ptr(new IT([new P.ptr(5760,5788,1)]),IU.nil,0);FC=new O.ptr(new IT([new P.ptr(7248,7295,1)]),IU.nil,0);FD=new O.ptr(new IT([]),new IU([new Q.ptr(68736,68786,1),new Q.ptr(68800,68850,1),new Q.ptr(68858,68863,1)]),0);FE=new O.ptr(new IT([]),new IU([new Q.ptr(66304,66339,1)]),0);FF=new O.ptr(new IT([]),new IU([new Q.ptr(68224,68255,1)]),0);FG=new O.ptr(new IT([]),new IU([new Q.ptr(66384,66426,1)]),0);FH=new O.ptr(new IT([]),new IU([new Q.ptr(66464,66499,1),new Q.ptr(66504,66517,1)]),0);FI=new O.ptr(new IT([]),new IU([new Q.ptr(68192,68223,1)]),0);FJ=new O.ptr(new IT([]),new IU([new Q.ptr(68608,68680,1)]),0);FK=new O.ptr(new IT([new P.ptr(2817,2819,1),new P.ptr(2821,2828,1),new P.ptr(2831,2832,1),new P.ptr(2835,2856,1),new P.ptr(2858,2864,1),new P.ptr(2866,2867,1),new P.ptr(2869,2873,1),new P.ptr(2876,2884,1),new P.ptr(2887,2888,1),new P.ptr(2891,2893,1),new P.ptr(2902,2903,1),new P.ptr(2908,2909,1),new P.ptr(2911,2915,1),new P.ptr(2918,2935,1)]),IU.nil,0);FL=new O.ptr(new IT([]),new IU([new Q.ptr(66736,66771,1),new Q.ptr(66776,66811,1)]),0);FM=new O.ptr(new IT([]),new IU([new Q.ptr(66688,66717,1),new Q.ptr(66720,66729,1)]),0);FN=new O.ptr(new IT([]),new IU([new Q.ptr(92928,92997,1),new Q.ptr(93008,93017,1),new Q.ptr(93019,93025,1),new Q.ptr(93027,93047,1),new Q.ptr(93053,93071,1)]),0);FO=new O.ptr(new IT([]),new IU([new Q.ptr(67680,67711,1)]),0);FP=new O.ptr(new IT([]),new IU([new Q.ptr(72384,72440,1)]),0);FQ=new O.ptr(new IT([new P.ptr(43072,43127,1)]),IU.nil,0);FR=new O.ptr(new IT([]),new IU([new Q.ptr(67840,67867,1),new Q.ptr(67871,67871,1)]),0);FS=new O.ptr(new IT([]),new IU([new Q.ptr(68480,68497,1),new Q.ptr(68505,68508,1),new Q.ptr(68521,68527,1)]),0);FT=new O.ptr(new IT([new P.ptr(43312,43347,1),new P.ptr(43359,43359,1)]),IU.nil,0);FU=new O.ptr(new IT([new P.ptr(5792,5866,1),new P.ptr(5870,5880,1)]),IU.nil,0);FV=new O.ptr(new IT([new P.ptr(2048,2093,1),new P.ptr(2096,2110,1)]),IU.nil,0);FW=new O.ptr(new IT([new P.ptr(43136,43205,1),new P.ptr(43214,43225,1)]),IU.nil,0);FX=new O.ptr(new IT([]),new IU([new Q.ptr(70016,70093,1),new Q.ptr(70096,70111,1)]),0);FY=new O.ptr(new IT([]),new IU([new Q.ptr(66640,66687,1)]),0);FZ=new O.ptr(new IT([]),new IU([new Q.ptr(71040,71093,1),new Q.ptr(71096,71133,1)]),0);GA=new O.ptr(new IT([]),new IU([new Q.ptr(120832,121483,1),new Q.ptr(121499,121503,1),new Q.ptr(121505,121519,1)]),0);GB=new O.ptr(new IT([new P.ptr(3458,3459,1),new P.ptr(3461,3478,1),new P.ptr(3482,3505,1),new P.ptr(3507,3515,1),new P.ptr(3517,3517,1),new P.ptr(3520,3526,1),new P.ptr(3530,3530,1),new P.ptr(3535,3540,1),new P.ptr(3542,3542,1),new P.ptr(3544,3551,1),new P.ptr(3558,3567,1),new P.ptr(3570,3572,1)]),new IU([new Q.ptr(70113,70132,1)]),0);GC=new O.ptr(new IT([]),new IU([new Q.ptr(69840,69864,1),new Q.ptr(69872,69881,1)]),0);GD=new O.ptr(new IT([new P.ptr(7040,7103,1),new P.ptr(7360,7367,1)]),IU.nil,0);GE=new O.ptr(new IT([new P.ptr(43008,43051,1)]),IU.nil,0);GF=new O.ptr(new IT([new P.ptr(1792,1805,1),new P.ptr(1807,1866,1),new P.ptr(1869,1871,1)]),IU.nil,0);GG=new O.ptr(new IT([new P.ptr(5888,5900,1),new P.ptr(5902,5908,1)]),IU.nil,0);GH=new O.ptr(new IT([new P.ptr(5984,5996,1),new P.ptr(5998,6000,1),new P.ptr(6002,6003,1)]),IU.nil,0);GI=new O.ptr(new IT([new P.ptr(6480,6509,1),new P.ptr(6512,6516,1)]),IU.nil,0);GJ=new O.ptr(new IT([new P.ptr(6688,6750,1),new P.ptr(6752,6780,1),new P.ptr(6783,6793,1),new P.ptr(6800,6809,1),new P.ptr(6816,6829,1)]),IU.nil,0);GK=new O.ptr(new IT([new P.ptr(43648,43714,1),new P.ptr(43739,43743,1)]),IU.nil,0);GL=new O.ptr(new IT([]),new IU([new Q.ptr(71296,71351,1),new Q.ptr(71360,71369,1)]),0);GM=new O.ptr(new IT([new P.ptr(2946,2947,1),new P.ptr(2949,2954,1),new P.ptr(2958,2960,1),new P.ptr(2962,2965,1),new P.ptr(2969,2970,1),new P.ptr(2972,2972,1),new P.ptr(2974,2975,1),new P.ptr(2979,2980,1),new P.ptr(2984,2986,1),new P.ptr(2990,3001,1),new P.ptr(3006,3010,1),new P.ptr(3014,3016,1),new P.ptr(3018,3021,1),new P.ptr(3024,3024,1),new P.ptr(3031,3031,1),new P.ptr(3046,3066,1)]),IU.nil,0);GN=new O.ptr(new IT([]),new IU([new Q.ptr(94176,94176,1),new Q.ptr(94208,100332,1),new Q.ptr(100352,101106,1)]),0);GO=new O.ptr(new IT([new P.ptr(3072,3075,1),new P.ptr(3077,3084,1),new P.ptr(3086,3088,1),new P.ptr(3090,3112,1),new P.ptr(3114,3129,1),new P.ptr(3133,3140,1),new P.ptr(3142,3144,1),new P.ptr(3146,3149,1),new P.ptr(3157,3158,1),new P.ptr(3160,3162,1),new P.ptr(3168,3171,1),new P.ptr(3174,3183,1),new P.ptr(3192,3199,1)]),IU.nil,0);GP=new O.ptr(new IT([new P.ptr(1920,1969,1)]),IU.nil,0);GQ=new O.ptr(new IT([new P.ptr(3585,3642,1),new P.ptr(3648,3675,1)]),IU.nil,0);GR=new O.ptr(new IT([new P.ptr(3840,3911,1),new P.ptr(3913,3948,1),new P.ptr(3953,3991,1),new P.ptr(3993,4028,1),new P.ptr(4030,4044,1),new P.ptr(4046,4052,1),new P.ptr(4057,4058,1)]),IU.nil,0);GS=new O.ptr(new IT([new P.ptr(11568,11623,1),new P.ptr(11631,11632,1),new P.ptr(11647,11647,1)]),IU.nil,0);GT=new O.ptr(new IT([]),new IU([new Q.ptr(70784,70855,1),new Q.ptr(70864,70873,1)]),0);GU=new O.ptr(new IT([]),new IU([new Q.ptr(66432,66461,1),new Q.ptr(66463,66463,1)]),0);GV=new O.ptr(new IT([new P.ptr(42240,42539,1)]),IU.nil,0);GW=new O.ptr(new IT([]),new IU([new Q.ptr(71840,71922,1),new Q.ptr(71935,71935,1)]),0);GX=new O.ptr(new IT([new P.ptr(40960,42124,1),new P.ptr(42128,42182,1)]),IU.nil,0);$pkg.Adlam=BR;$pkg.Ahom=BS;$pkg.Anatolian_Hieroglyphs=BT;$pkg.Arabic=BU;$pkg.Armenian=BV;$pkg.Avestan=BW;$pkg.Balinese=BX;$pkg.Bamum=BY;$pkg.Bassa_Vah=BZ;$pkg.Batak=CA;$pkg.Bengali=CB;$pkg.Bhaiksuki=CC;$pkg.Bopomofo=CD;$pkg.Brahmi=CE;$pkg.Braille=CF;$pkg.Buginese=CG;$pkg.Buhid=CH;$pkg.Canadian_Aboriginal=CI;$pkg.Carian=CJ;$pkg.Caucasian_Albanian=CK;$pkg.Chakma=CL;$pkg.Cham=CM;$pkg.Cherokee=CN;$pkg.Common=CO;$pkg.Coptic=CP;$pkg.Cuneiform=CQ;$pkg.Cypriot=CR;$pkg.Cyrillic=CS;$pkg.Deseret=CT;$pkg.Devanagari=CU;$pkg.Duployan=CV;$pkg.Egyptian_Hieroglyphs=CW;$pkg.Elbasan=CX;$pkg.Ethiopic=CY;$pkg.Georgian=CZ;$pkg.Glagolitic=DA;$pkg.Gothic=DB;$pkg.Grantha=DC;$pkg.Greek=DD;$pkg.Gujarati=DE;$pkg.Gurmukhi=DF;$pkg.Han=DG;$pkg.Hangul=DH;$pkg.Hanunoo=DI;$pkg.Hatran=DJ;$pkg.Hebrew=DK;$pkg.Hiragana=DL;$pkg.Imperial_Aramaic=DM;$pkg.Inherited=DN;$pkg.Inscriptional_Pahlavi=DO;$pkg.Inscriptional_Parthian=DP;$pkg.Javanese=DQ;$pkg.Kaithi=DR;$pkg.Kannada=DS;$pkg.Katakana=DT;$pkg.Kayah_Li=DU;$pkg.Kharoshthi=DV;$pkg.Khmer=DW;$pkg.Khojki=DX;$pkg.Khudawadi=DY;$pkg.Lao=DZ;$pkg.Latin=EA;$pkg.Lepcha=EB;$pkg.Limbu=EC;$pkg.Linear_A=ED;$pkg.Linear_B=EE;$pkg.Lisu=EF;$pkg.Lycian=EG;$pkg.Lydian=EH;$pkg.Mahajani=EI;$pkg.Malayalam=EJ;$pkg.Mandaic=EK;$pkg.Manichaean=EL;$pkg.Marchen=EM;$pkg.Meetei_Mayek=EN;$pkg.Mende_Kikakui=EO;$pkg.Meroitic_Cursive=EP;$pkg.Meroitic_Hieroglyphs=EQ;$pkg.Miao=ER;$pkg.Modi=ES;$pkg.Mongolian=ET;$pkg.Mro=EU;$pkg.Multani=EV;$pkg.Myanmar=EW;$pkg.Nabataean=EX;$pkg.New_Tai_Lue=EY;$pkg.Newa=EZ;$pkg.Nko=FA;$pkg.Ogham=FB;$pkg.Ol_Chiki=FC;$pkg.Old_Hungarian=FD;$pkg.Old_Italic=FE;$pkg.Old_North_Arabian=FF;$pkg.Old_Permic=FG;$pkg.Old_Persian=FH;$pkg.Old_South_Arabian=FI;$pkg.Old_Turkic=FJ;$pkg.Oriya=FK;$pkg.Osage=FL;$pkg.Osmanya=FM;$pkg.Pahawh_Hmong=FN;$pkg.Palmyrene=FO;$pkg.Pau_Cin_Hau=FP;$pkg.Phags_Pa=FQ;$pkg.Phoenician=FR;$pkg.Psalter_Pahlavi=FS;$pkg.Rejang=FT;$pkg.Runic=FU;$pkg.Samaritan=FV;$pkg.Saurashtra=FW;$pkg.Sharada=FX;$pkg.Shavian=FY;$pkg.Siddham=FZ;$pkg.SignWriting=GA;$pkg.Sinhala=GB;$pkg.Sora_Sompeng=GC;$pkg.Sundanese=GD;$pkg.Syloti_Nagri=GE;$pkg.Syriac=GF;$pkg.Tagalog=GG;$pkg.Tagbanwa=GH;$pkg.Tai_Le=GI;$pkg.Tai_Tham=GJ;$pkg.Tai_Viet=GK;$pkg.Takri=GL;$pkg.Tamil=GM;$pkg.Tangut=GN;$pkg.Telugu=GO;$pkg.Thaana=GP;$pkg.Thai=GQ;$pkg.Tibetan=GR;$pkg.Tifinagh=GS;$pkg.Tirhuta=GT;$pkg.Ugaritic=GU;$pkg.Vai=GV;$pkg.Warang_Citi=GW;$pkg.Yi=GX;$pkg.Scripts=$makeMap($String.keyFor,[{k:"Adlam",v:$pkg.Adlam},{k:"Ahom",v:$pkg.Ahom},{k:"Anatolian_Hieroglyphs",v:$pkg.Anatolian_Hieroglyphs},{k:"Arabic",v:$pkg.Arabic},{k:"Armenian",v:$pkg.Armenian},{k:"Avestan",v:$pkg.Avestan},{k:"Balinese",v:$pkg.Balinese},{k:"Bamum",v:$pkg.Bamum},{k:"Bassa_Vah",v:$pkg.Bassa_Vah},{k:"Batak",v:$pkg.Batak},{k:"Bengali",v:$pkg.Bengali},{k:"Bhaiksuki",v:$pkg.Bhaiksuki},{k:"Bopomofo",v:$pkg.Bopomofo},{k:"Brahmi",v:$pkg.Brahmi},{k:"Braille",v:$pkg.Braille},{k:"Buginese",v:$pkg.Buginese},{k:"Buhid",v:$pkg.Buhid},{k:"Canadian_Aboriginal",v:$pkg.Canadian_Aboriginal},{k:"Carian",v:$pkg.Carian},{k:"Caucasian_Albanian",v:$pkg.Caucasian_Albanian},{k:"Chakma",v:$pkg.Chakma},{k:"Cham",v:$pkg.Cham},{k:"Cherokee",v:$pkg.Cherokee},{k:"Common",v:$pkg.Common},{k:"Coptic",v:$pkg.Coptic},{k:"Cuneiform",v:$pkg.Cuneiform},{k:"Cypriot",v:$pkg.Cypriot},{k:"Cyrillic",v:$pkg.Cyrillic},{k:"Deseret",v:$pkg.Deseret},{k:"Devanagari",v:$pkg.Devanagari},{k:"Duployan",v:$pkg.Duployan},{k:"Egyptian_Hieroglyphs",v:$pkg.Egyptian_Hieroglyphs},{k:"Elbasan",v:$pkg.Elbasan},{k:"Ethiopic",v:$pkg.Ethiopic},{k:"Georgian",v:$pkg.Georgian},{k:"Glagolitic",v:$pkg.Glagolitic},{k:"Gothic",v:$pkg.Gothic},{k:"Grantha",v:$pkg.Grantha},{k:"Greek",v:$pkg.Greek},{k:"Gujarati",v:$pkg.Gujarati},{k:"Gurmukhi",v:$pkg.Gurmukhi},{k:"Han",v:$pkg.Han},{k:"Hangul",v:$pkg.Hangul},{k:"Hanunoo",v:$pkg.Hanunoo},{k:"Hatran",v:$pkg.Hatran},{k:"Hebrew",v:$pkg.Hebrew},{k:"Hiragana",v:$pkg.Hiragana},{k:"Imperial_Aramaic",v:$pkg.Imperial_Aramaic},{k:"Inherited",v:$pkg.Inherited},{k:"Inscriptional_Pahlavi",v:$pkg.Inscriptional_Pahlavi},{k:"Inscriptional_Parthian",v:$pkg.Inscriptional_Parthian},{k:"Javanese",v:$pkg.Javanese},{k:"Kaithi",v:$pkg.Kaithi},{k:"Kannada",v:$pkg.Kannada},{k:"Katakana",v:$pkg.Katakana},{k:"Kayah_Li",v:$pkg.Kayah_Li},{k:"Kharoshthi",v:$pkg.Kharoshthi},{k:"Khmer",v:$pkg.Khmer},{k:"Khojki",v:$pkg.Khojki},{k:"Khudawadi",v:$pkg.Khudawadi},{k:"Lao",v:$pkg.Lao},{k:"Latin",v:$pkg.Latin},{k:"Lepcha",v:$pkg.Lepcha},{k:"Limbu",v:$pkg.Limbu},{k:"Linear_A",v:$pkg.Linear_A},{k:"Linear_B",v:$pkg.Linear_B},{k:"Lisu",v:$pkg.Lisu},{k:"Lycian",v:$pkg.Lycian},{k:"Lydian",v:$pkg.Lydian},{k:"Mahajani",v:$pkg.Mahajani},{k:"Malayalam",v:$pkg.Malayalam},{k:"Mandaic",v:$pkg.Mandaic},{k:"Manichaean",v:$pkg.Manichaean},{k:"Marchen",v:$pkg.Marchen},{k:"Meetei_Mayek",v:$pkg.Meetei_Mayek},{k:"Mende_Kikakui",v:$pkg.Mende_Kikakui},{k:"Meroitic_Cursive",v:$pkg.Meroitic_Cursive},{k:"Meroitic_Hieroglyphs",v:$pkg.Meroitic_Hieroglyphs},{k:"Miao",v:$pkg.Miao},{k:"Modi",v:$pkg.Modi},{k:"Mongolian",v:$pkg.Mongolian},{k:"Mro",v:$pkg.Mro},{k:"Multani",v:$pkg.Multani},{k:"Myanmar",v:$pkg.Myanmar},{k:"Nabataean",v:$pkg.Nabataean},{k:"New_Tai_Lue",v:$pkg.New_Tai_Lue},{k:"Newa",v:$pkg.Newa},{k:"Nko",v:$pkg.Nko},{k:"Ogham",v:$pkg.Ogham},{k:"Ol_Chiki",v:$pkg.Ol_Chiki},{k:"Old_Hungarian",v:$pkg.Old_Hungarian},{k:"Old_Italic",v:$pkg.Old_Italic},{k:"Old_North_Arabian",v:$pkg.Old_North_Arabian},{k:"Old_Permic",v:$pkg.Old_Permic},{k:"Old_Persian",v:$pkg.Old_Persian},{k:"Old_South_Arabian",v:$pkg.Old_South_Arabian},{k:"Old_Turkic",v:$pkg.Old_Turkic},{k:"Oriya",v:$pkg.Oriya},{k:"Osage",v:$pkg.Osage},{k:"Osmanya",v:$pkg.Osmanya},{k:"Pahawh_Hmong",v:$pkg.Pahawh_Hmong},{k:"Palmyrene",v:$pkg.Palmyrene},{k:"Pau_Cin_Hau",v:$pkg.Pau_Cin_Hau},{k:"Phags_Pa",v:$pkg.Phags_Pa},{k:"Phoenician",v:$pkg.Phoenician},{k:"Psalter_Pahlavi",v:$pkg.Psalter_Pahlavi},{k:"Rejang",v:$pkg.Rejang},{k:"Runic",v:$pkg.Runic},{k:"Samaritan",v:$pkg.Samaritan},{k:"Saurashtra",v:$pkg.Saurashtra},{k:"Sharada",v:$pkg.Sharada},{k:"Shavian",v:$pkg.Shavian},{k:"Siddham",v:$pkg.Siddham},{k:"SignWriting",v:$pkg.SignWriting},{k:"Sinhala",v:$pkg.Sinhala},{k:"Sora_Sompeng",v:$pkg.Sora_Sompeng},{k:"Sundanese",v:$pkg.Sundanese},{k:"Syloti_Nagri",v:$pkg.Syloti_Nagri},{k:"Syriac",v:$pkg.Syriac},{k:"Tagalog",v:$pkg.Tagalog},{k:"Tagbanwa",v:$pkg.Tagbanwa},{k:"Tai_Le",v:$pkg.Tai_Le},{k:"Tai_Tham",v:$pkg.Tai_Tham},{k:"Tai_Viet",v:$pkg.Tai_Viet},{k:"Takri",v:$pkg.Takri},{k:"Tamil",v:$pkg.Tamil},{k:"Tangut",v:$pkg.Tangut},{k:"Telugu",v:$pkg.Telugu},{k:"Thaana",v:$pkg.Thaana},{k:"Thai",v:$pkg.Thai},{k:"Tibetan",v:$pkg.Tibetan},{k:"Tifinagh",v:$pkg.Tifinagh},{k:"Tirhuta",v:$pkg.Tirhuta},{k:"Ugaritic",v:$pkg.Ugaritic},{k:"Vai",v:$pkg.Vai},{k:"Warang_Citi",v:$pkg.Warang_Citi},{k:"Yi",v:$pkg.Yi}]);IF=new IX([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(618,618,$toNativeArray($kindInt32,[42308,0,42308])),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(7296,7296,$toNativeArray($kindInt32,[-6254,0,-6254])),new R.ptr(7297,7297,$toNativeArray($kindInt32,[-6253,0,-6253])),new R.ptr(7298,7298,$toNativeArray($kindInt32,[-6244,0,-6244])),new R.ptr(7299,7300,$toNativeArray($kindInt32,[-6242,0,-6242])),new R.ptr(7301,7301,$toNativeArray($kindInt32,[-6243,0,-6243])),new R.ptr(7302,7302,$toNativeArray($kindInt32,[-6236,0,-6236])),new R.ptr(7303,7303,$toNativeArray($kindInt32,[-6181,0,-6181])),new R.ptr(7304,7304,$toNativeArray($kindInt32,[35266,0,35266])),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(42926,42926,$toNativeArray($kindInt32,[0,-42308,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(66736,66771,$toNativeArray($kindInt32,[0,40,0])),new R.ptr(66776,66811,$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])),new R.ptr(125184,125217,$toNativeArray($kindInt32,[0,34,0])),new R.ptr(125218,125251,$toNativeArray($kindInt32,[-34,0,-34]))]);$pkg.CaseRanges=IF;IG=$toNativeArray($kindUint8,[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,144,130,130,130,136,130,130,130,130,130,130,136,130,130,130,130,132,132,132,132,132,132,132,132,132,132,130,130,136,136,136,130,130,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,130,130,130,136,130,136,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,130,136,130,136,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,16,130,136,136,136,136,136,130,136,136,224,130,136,0,136,136,136,136,132,132,136,192,130,130,136,132,224,130,132,132,132,130,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,136,160,160,160,160,160,160,160,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,136,192,192,192,192,192,192,192,192]);IH=$toNativeArray($kindUint16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,65,66,67,68,69,70,71,72,73,74,8490,76,77,78,79,80,81,82,383,84,85,86,87,88,89,90,123,124,125,126,127]);II=new IY([new AF.ptr(75,107),new AF.ptr(83,115),new AF.ptr(107,8490),new AF.ptr(115,383),new AF.ptr(181,924),new AF.ptr(197,229),new AF.ptr(223,7838),new AF.ptr(229,8491),new AF.ptr(304,304),new AF.ptr(305,305),new AF.ptr(383,83),new AF.ptr(452,453),new AF.ptr(453,454),new AF.ptr(454,452),new AF.ptr(455,456),new AF.ptr(456,457),new AF.ptr(457,455),new AF.ptr(458,459),new AF.ptr(459,460),new AF.ptr(460,458),new AF.ptr(497,498),new AF.ptr(498,499),new AF.ptr(499,497),new AF.ptr(837,921),new AF.ptr(914,946),new AF.ptr(917,949),new AF.ptr(920,952),new AF.ptr(921,953),new AF.ptr(922,954),new AF.ptr(924,956),new AF.ptr(928,960),new AF.ptr(929,961),new AF.ptr(931,962),new AF.ptr(934,966),new AF.ptr(937,969),new AF.ptr(946,976),new AF.ptr(949,1013),new AF.ptr(952,977),new AF.ptr(953,8126),new AF.ptr(954,1008),new AF.ptr(956,181),new AF.ptr(960,982),new AF.ptr(961,1009),new AF.ptr(962,963),new AF.ptr(963,931),new AF.ptr(966,981),new AF.ptr(969,8486),new AF.ptr(976,914),new AF.ptr(977,1012),new AF.ptr(981,934),new AF.ptr(982,928),new AF.ptr(1008,922),new AF.ptr(1009,929),new AF.ptr(1012,920),new AF.ptr(1013,917),new AF.ptr(1042,1074),new AF.ptr(1044,1076),new AF.ptr(1054,1086),new AF.ptr(1057,1089),new AF.ptr(1058,1090),new AF.ptr(1066,1098),new AF.ptr(1074,7296),new AF.ptr(1076,7297),new AF.ptr(1086,7298),new AF.ptr(1089,7299),new AF.ptr(1090,7300),new AF.ptr(1098,7302),new AF.ptr(1122,1123),new AF.ptr(1123,7303),new AF.ptr(7296,1042),new AF.ptr(7297,1044),new AF.ptr(7298,1054),new AF.ptr(7299,1057),new AF.ptr(7300,7301),new AF.ptr(7301,1058),new AF.ptr(7302,1066),new AF.ptr(7303,1122),new AF.ptr(7304,42570),new AF.ptr(7776,7777),new AF.ptr(7777,7835),new AF.ptr(7835,7776),new AF.ptr(7838,223),new AF.ptr(8126,837),new AF.ptr(8486,937),new AF.ptr(8490,75),new AF.ptr(8491,197),new AF.ptr(42570,42571),new AF.ptr(42571,7304)]);IJ=new O.ptr(new IT([new P.ptr(924,956,32)]),IU.nil,0);IK=new O.ptr(new IT([new P.ptr(181,837,656)]),IU.nil,0);IL=new O.ptr(new IT([new P.ptr(921,953,32),new P.ptr(8126,8126,1)]),IU.nil,0);IM=new O.ptr(new IT([new P.ptr(837,837,1)]),IU.nil,0);IN=new O.ptr(new IT([new P.ptr(65,90,1),new P.ptr(192,214,1),new P.ptr(216,222,1),new P.ptr(256,302,2),new P.ptr(306,310,2),new P.ptr(313,327,2),new P.ptr(330,376,2),new P.ptr(377,381,2),new P.ptr(385,386,1),new P.ptr(388,390,2),new P.ptr(391,393,2),new P.ptr(394,395,1),new P.ptr(398,401,1),new P.ptr(403,404,1),new P.ptr(406,408,1),new P.ptr(412,413,1),new P.ptr(415,416,1),new P.ptr(418,422,2),new P.ptr(423,425,2),new P.ptr(428,430,2),new P.ptr(431,433,2),new P.ptr(434,435,1),new P.ptr(437,439,2),new P.ptr(440,444,4),new P.ptr(452,453,1),new P.ptr(455,456,1),new P.ptr(458,459,1),new P.ptr(461,475,2),new P.ptr(478,494,2),new P.ptr(497,498,1),new P.ptr(500,502,2),new P.ptr(503,504,1),new P.ptr(506,562,2),new P.ptr(570,571,1),new P.ptr(573,574,1),new P.ptr(577,579,2),new P.ptr(580,582,1),new P.ptr(584,590,2),new P.ptr(837,880,43),new P.ptr(882,886,4),new P.ptr(895,902,7),new P.ptr(904,906,1),new P.ptr(908,910,2),new P.ptr(911,913,2),new P.ptr(914,929,1),new P.ptr(931,939,1),new P.ptr(975,984,9),new P.ptr(986,1006,2),new P.ptr(1012,1015,3),new P.ptr(1017,1018,1),new P.ptr(1021,1071,1),new P.ptr(1120,1152,2),new P.ptr(1162,1216,2),new P.ptr(1217,1229,2),new P.ptr(1232,1326,2),new P.ptr(1329,1366,1),new P.ptr(4256,4293,1),new P.ptr(4295,4301,6),new P.ptr(5024,5109,1),new P.ptr(7680,7828,2),new P.ptr(7838,7934,2),new P.ptr(7944,7951,1),new P.ptr(7960,7965,1),new P.ptr(7976,7983,1),new P.ptr(7992,7999,1),new P.ptr(8008,8013,1),new P.ptr(8025,8031,2),new P.ptr(8040,8047,1),new P.ptr(8072,8079,1),new P.ptr(8088,8095,1),new P.ptr(8104,8111,1),new P.ptr(8120,8124,1),new P.ptr(8136,8140,1),new P.ptr(8152,8155,1),new P.ptr(8168,8172,1),new P.ptr(8184,8188,1),new P.ptr(8486,8490,4),new P.ptr(8491,8498,7),new P.ptr(8579,11264,2685),new P.ptr(11265,11310,1),new P.ptr(11360,11362,2),new P.ptr(11363,11364,1),new P.ptr(11367,11373,2),new P.ptr(11374,11376,1),new P.ptr(11378,11381,3),new P.ptr(11390,11392,1),new P.ptr(11394,11490,2),new P.ptr(11499,11501,2),new P.ptr(11506,42560,31054),new P.ptr(42562,42604,2),new P.ptr(42624,42650,2),new P.ptr(42786,42798,2),new P.ptr(42802,42862,2),new P.ptr(42873,42877,2),new P.ptr(42878,42886,2),new P.ptr(42891,42893,2),new P.ptr(42896,42898,2),new P.ptr(42902,42922,2),new P.ptr(42923,42926,1),new P.ptr(42928,42932,1),new P.ptr(42934,65313,22379),new P.ptr(65314,65338,1)]),new IU([new Q.ptr(66560,66599,1),new Q.ptr(66736,66771,1),new Q.ptr(68736,68786,1),new Q.ptr(71840,71871,1),new Q.ptr(125184,125217,1)]),3);IO=new O.ptr(new IT([new P.ptr(452,454,2),new P.ptr(455,457,2),new P.ptr(458,460,2),new P.ptr(497,499,2),new P.ptr(8064,8071,1),new P.ptr(8080,8087,1),new P.ptr(8096,8103,1),new P.ptr(8115,8131,16),new P.ptr(8179,8179,1)]),IU.nil,0);IP=new O.ptr(new IT([new P.ptr(97,122,1),new P.ptr(181,223,42),new P.ptr(224,246,1),new P.ptr(248,255,1),new P.ptr(257,303,2),new P.ptr(307,311,2),new P.ptr(314,328,2),new P.ptr(331,375,2),new P.ptr(378,382,2),new P.ptr(383,384,1),new P.ptr(387,389,2),new P.ptr(392,396,4),new P.ptr(402,405,3),new P.ptr(409,410,1),new P.ptr(414,417,3),new P.ptr(419,421,2),new P.ptr(424,429,5),new P.ptr(432,436,4),new P.ptr(438,441,3),new P.ptr(445,447,2),new P.ptr(453,454,1),new P.ptr(456,457,1),new P.ptr(459,460,1),new P.ptr(462,476,2),new P.ptr(477,495,2),new P.ptr(498,499,1),new P.ptr(501,505,4),new P.ptr(507,543,2),new P.ptr(547,563,2),new P.ptr(572,575,3),new P.ptr(576,578,2),new P.ptr(583,591,2),new P.ptr(592,596,1),new P.ptr(598,599,1),new P.ptr(601,603,2),new P.ptr(604,608,4),new P.ptr(609,613,2),new P.ptr(614,616,2),new P.ptr(617,620,1),new P.ptr(623,625,2),new P.ptr(626,629,3),new P.ptr(637,643,3),new P.ptr(647,652,1),new P.ptr(658,669,11),new P.ptr(670,837,167),new P.ptr(881,883,2),new P.ptr(887,891,4),new P.ptr(892,893,1),new P.ptr(940,943,1),new P.ptr(945,974,1),new P.ptr(976,977,1),new P.ptr(981,983,1),new P.ptr(985,1007,2),new P.ptr(1008,1011,1),new P.ptr(1013,1019,3),new P.ptr(1072,1119,1),new P.ptr(1121,1153,2),new P.ptr(1163,1215,2),new P.ptr(1218,1230,2),new P.ptr(1231,1327,2),new P.ptr(1377,1414,1),new P.ptr(5112,5117,1),new P.ptr(7296,7304,1),new P.ptr(7545,7549,4),new P.ptr(7681,7829,2),new P.ptr(7835,7841,6),new P.ptr(7843,7935,2),new P.ptr(7936,7943,1),new P.ptr(7952,7957,1),new P.ptr(7968,7975,1),new P.ptr(7984,7991,1),new P.ptr(8000,8005,1),new P.ptr(8017,8023,2),new P.ptr(8032,8039,1),new P.ptr(8048,8061,1),new P.ptr(8112,8113,1),new P.ptr(8126,8144,18),new P.ptr(8145,8160,15),new P.ptr(8161,8165,4),new P.ptr(8526,8580,54),new P.ptr(11312,11358,1),new P.ptr(11361,11365,4),new P.ptr(11366,11372,2),new P.ptr(11379,11382,3),new P.ptr(11393,11491,2),new P.ptr(11500,11502,2),new P.ptr(11507,11520,13),new P.ptr(11521,11557,1),new P.ptr(11559,11565,6),new P.ptr(42561,42605,2),new P.ptr(42625,42651,2),new P.ptr(42787,42799,2),new P.ptr(42803,42863,2),new P.ptr(42874,42876,2),new P.ptr(42879,42887,2),new P.ptr(42892,42897,5),new P.ptr(42899,42903,4),new P.ptr(42905,42921,2),new P.ptr(42933,42935,2),new P.ptr(43859,43888,29),new P.ptr(43889,43967,1),new P.ptr(65345,65370,1)]),new IU([new Q.ptr(66600,66639,1),new Q.ptr(66776,66811,1),new Q.ptr(68800,68850,1),new Q.ptr(71872,71903,1),new Q.ptr(125218,125251,1)]),4);IQ=new O.ptr(new IT([new P.ptr(921,953,32),new P.ptr(8126,8126,1)]),IU.nil,0);IR=new O.ptr(new IT([new P.ptr(921,953,32),new P.ptr(8126,8126,1)]),IU.nil,0);$pkg.FoldCategory=$makeMap($String.keyFor,[{k:"Common",v:IJ},{k:"Greek",v:IK},{k:"Inherited",v:IL},{k:"L",v:IM},{k:"Ll",v:IN},{k:"Lt",v:IO},{k:"Lu",v:IP},{k:"M",v:IQ},{k:"Mn",v:IR}]);$pkg.FoldScript=$makeMap($String.keyFor,[]);}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,BO,BP,BQ,E,F,G,J,K,AG,BL;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer",true,"bytes",true,function(buf_,off_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BP.nil;this.off=0;this.bootstrap=BQ.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp",true,"bytes",false,null);BO=$ptrType(H);BP=$sliceType($Uint8);BQ=$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)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;F=function(d,e){var $ptr,d,e,f,g,h,i;if(!((d.$length===e.$length))){return false;}f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(!((i===((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h])))){return false;}g++;}return true;};$pkg.Equal=F;G=function(d,e){var $ptr,d,e,f,g,h,i,j;f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(h>=e.$length){return 1;}j=((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h]);if(i<j){return-1;}if(i>j){return 1;}g++;}if(d.$length<e.$length){return-1;}return 0;};$pkg.Compare=G;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===BO.nil){return"<nil>";}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=BP.nil;if(e.buf===BP.nil&&d<=64){g=$subslice(new BP(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;$s=-1;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;$s=-1;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(BP,d);}catch(err){$err=err;return BP.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.off<g.buf.$length){$s=1;continue;}$s=2;continue;case 1:h=g.Len();j=d.Write($subslice(g.buf,g.off));$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(k>h){$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;$s=-1;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;$s=-1;return[e,f];}case 2:g.Truncate(0);$s=-1;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"),undefined):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,l;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];}g.lastRead=0;j=g.grow(4);e=C.EncodeRune($subslice(g.buf,j,(j+4>>0)),d);g.buf=$subslice(g.buf,0,(j+e>>0));k=e;l=$ifaceNil;e=k;f=l;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=-1;}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=-1;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g;d=this;d.lastRead=0;if(d.off>=d.buf.$length){d.Truncate(0);return[0,B.EOF];}g=(e=d.buf,f=d.off,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));d.off=d.off+(1)>>0;d.lastRead=-1;return[g,$ifaceNil];};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];}m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;g.lastRead=1;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;g.lastRead=(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;d=this;if(d.lastRead<=0){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}if(d.off>=(d.lastRead>>0)){d.off=d.off-((d.lastRead>>0))>>0;}d.lastRead=0;return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(d.lastRead===0){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=BP.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=BP.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=-1;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,BQ.zero(),0);};$pkg.NewBuffer=K;AG=function(d,e){var $ptr,d,e;return d.$length>=e.$length&&F($subslice(d,0,e.$length),e);};$pkg.HasPrefix=AG;BL=function(d,e){var $ptr,d,e,f,g,h,i,j;f=e.$length;if(f===0){return 0;}if(f>d.$length){return-1;}g=(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]);if(f===1){return E(d,g);}h=0;i=$subslice(d,0,((d.$length-f>>0)+1>>0));while(true){if(!(h<i.$length)){break;}if(!((((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h])===g))){j=E($subslice(i,h),g);if(j<0){break;}h=h+(j)>>0;}if(F($subslice(d,h,(h+f>>0)),e)){return h;}h=h+(1)>>0;}return-1;};$pkg.Index=BL;BO.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BP],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([BP],[$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([BP],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BP],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],[BP,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BP,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];H.init("bytes",[{prop:"buf",name:"buf",exported:false,typ:BP,tag:""},{prop:"off",name:"off",exported:false,typ:$Int,tag:""},{prop:"bootstrap",name:"bootstrap",exported:false,typ:BQ,tag:""},{prop:"lastRead",name:"lastRead",exported:false,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["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,K,BP,CC,CL,CM,CN,CO,F,G,I,L,AE,AH,AI,AJ,AK,AL,AO,AR,AW,BL,BN,BQ;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];K=$pkg.Reader=$newType(0,$kindStruct,"strings.Reader",true,"strings",true,function(s_,i_,prevRune_){this.$val=this;if(arguments.length===0){this.s="";this.i=new $Int64(0,0);this.prevRune=0;return;}this.s=s_;this.i=i_;this.prevRune=prevRune_;});BP=$pkg.asciiSet=$newType(32,$kindArray,"strings.asciiSet",true,"strings",false,null);CC=$sliceType($Uint8);CL=$sliceType($String);CM=$ptrType(BP);CN=$arrayType($Uint32,8);CO=$ptrType(K);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=$substring(e,(h+f.length>>0));}return g;};$pkg.Count=I;K.ptr.prototype.Len=function(){var $ptr,e,f,g,h,i,j;e=this;if((f=e.i,g=new $Int64(0,e.s.length),(f.$high>g.$high||(f.$high===g.$high&&f.$low>=g.$low)))){return 0;}return((h=(i=new $Int64(0,e.s.length),j=e.i,new $Int64(i.$high-j.$high,i.$low-j.$low)),h.$low+((h.$high>>31)*4294967296))>>0);};K.prototype.Len=function(){return this.$val.Len();};K.ptr.prototype.Size=function(){var $ptr,e;e=this;return new $Int64(0,e.s.length);};K.prototype.Size=function(){return this.$val.Size();};K.ptr.prototype.Read=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n;f=0;g=$ifaceNil;h=this;if((i=h.i,j=new $Int64(0,h.s.length),(i.$high>j.$high||(i.$high===j.$high&&i.$low>=j.$low)))){k=0;l=D.EOF;f=k;g=l;return[f,g];}h.prevRune=-1;f=$copyString(e,$substring(h.s,$flatten64(h.i)));h.i=(m=h.i,n=new $Int64(0,f),new $Int64(m.$high+n.$high,m.$low+n.$low));return[f,g];};K.prototype.Read=function(e){return this.$val.Read(e);};K.ptr.prototype.ReadAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n;g=0;h=$ifaceNil;i=this;if((f.$high<0||(f.$high===0&&f.$low<0))){j=0;k=C.New("strings.Reader.ReadAt: negative offset");g=j;h=k;return[g,h];}if((l=new $Int64(0,i.s.length),(f.$high>l.$high||(f.$high===l.$high&&f.$low>=l.$low)))){m=0;n=D.EOF;g=m;h=n;return[g,h];}g=$copyString(e,$substring(i.s,$flatten64(f)));if(g<e.$length){h=D.EOF;}return[g,h];};K.prototype.ReadAt=function(e,f){return this.$val.ReadAt(e,f);};K.ptr.prototype.ReadByte=function(){var $ptr,e,f,g,h,i,j;e=this;e.prevRune=-1;if((f=e.i,g=new $Int64(0,e.s.length),(f.$high>g.$high||(f.$high===g.$high&&f.$low>=g.$low)))){return[0,D.EOF];}h=e.s.charCodeAt($flatten64(e.i));e.i=(i=e.i,j=new $Int64(0,1),new $Int64(i.$high+j.$high,i.$low+j.$low));return[h,$ifaceNil];};K.prototype.ReadByte=function(){return this.$val.ReadByte();};K.ptr.prototype.UnreadByte=function(){var $ptr,e,f,g,h;e=this;e.prevRune=-1;if((f=e.i,(f.$high<0||(f.$high===0&&f.$low<=0)))){return C.New("strings.Reader.UnreadByte: at beginning of string");}e.i=(g=e.i,h=new $Int64(0,1),new $Int64(g.$high-h.$high,g.$low-h.$low));return $ifaceNil;};K.prototype.UnreadByte=function(){return this.$val.UnreadByte();};K.ptr.prototype.ReadRune=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;e=0;f=0;g=$ifaceNil;h=this;if((i=h.i,j=new $Int64(0,h.s.length),(i.$high>j.$high||(i.$high===j.$high&&i.$low>=j.$low)))){h.prevRune=-1;k=0;l=0;m=D.EOF;e=k;f=l;g=m;return[e,f,g];}h.prevRune=((n=h.i,n.$low+((n.$high>>31)*4294967296))>>0);o=h.s.charCodeAt($flatten64(h.i));if(o<128){h.i=(p=h.i,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));r=(o>>0);s=1;t=$ifaceNil;e=r;f=s;g=t;return[e,f,g];}u=A.DecodeRuneInString($substring(h.s,$flatten64(h.i)));e=u[0];f=u[1];h.i=(v=h.i,w=new $Int64(0,f),new $Int64(v.$high+w.$high,v.$low+w.$low));return[e,f,g];};K.prototype.ReadRune=function(){return this.$val.ReadRune();};K.ptr.prototype.UnreadRune=function(){var $ptr,e;e=this;if(e.prevRune<0){return C.New("strings.Reader.UnreadRune: previous operation was not ReadRune");}e.i=new $Int64(0,e.prevRune);e.prevRune=-1;return $ifaceNil;};K.prototype.UnreadRune=function(){return this.$val.UnreadRune();};K.ptr.prototype.Seek=function(e,f){var $ptr,e,f,g,h,i,j,k;g=this;g.prevRune=-1;h=new $Int64(0,0);i=f;if(i===(0)){h=e;}else if(i===(1)){h=(j=g.i,new $Int64(j.$high+e.$high,j.$low+e.$low));}else if(i===(2)){h=(k=new $Int64(0,g.s.length),new $Int64(k.$high+e.$high,k.$low+e.$low));}else{return[new $Int64(0,0),C.New("strings.Reader.Seek: invalid whence")];}if((h.$high<0||(h.$high===0&&h.$low<0))){return[new $Int64(0,0),C.New("strings.Reader.Seek: negative position")];}g.i=h;return[h,$ifaceNil];};K.prototype.Seek=function(e,f){return this.$val.Seek(e,f);};K.ptr.prototype.WriteTo=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=new $Int64(0,0);g=$ifaceNil;h=this;h.prevRune=-1;if((i=h.i,j=new $Int64(0,h.s.length),(i.$high>j.$high||(i.$high===j.$high&&i.$low>=j.$low)))){k=new $Int64(0,0);l=$ifaceNil;f=k;g=l;$s=-1;return[f,g];}m=$substring(h.s,$flatten64(h.i));o=D.WriteString(e,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];g=n[1];if(p>m.length){$panic(new $String("strings.Reader.WriteTo: invalid WriteString count"));}h.i=(q=h.i,r=new $Int64(0,p),new $Int64(q.$high+r.$high,q.$low+r.$low));f=new $Int64(0,p);if(!((p===m.length))&&$interfaceIsEqual(g,$ifaceNil)){g=D.ErrShortWrite;}$s=-1;return[f,g];}return;}if($f===undefined){$f={$blk:K.ptr.prototype.WriteTo};}$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;};K.prototype.WriteTo=function(e){return this.$val.WriteTo(e);};K.ptr.prototype.Reset=function(e){var $ptr,e,f;f=this;K.copy(f,new K.ptr(e,new $Int64(0,0),-1));};K.prototype.Reset=function(e){return this.$val.Reset(e);};L=function(e){var $ptr,e;return new K.ptr(e,new $Int64(0,0),-1);};$pkg.NewReader=L;AE=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m;g=A.RuneCountInString(e);if(f<0||f>g){f=g;}h=$makeSlice(CL,f);i=0;while(true){if(!(i<(f-1>>0))){break;}j=A.DecodeRuneInString(e);k=j[0];l=j[1];((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]=$substring(e,0,l));e=$substring(e,l);if(k===65533){((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]="\xEF\xBF\xBD");}i=i+(1)>>0;}if(f>0){(m=f-1>>0,((m<0||m>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+m]=e));}return h;};AH=function(e,f){var $ptr,e,f;return G(e,f)>=0;};$pkg.Contains=AH;AI=function(e,f){var $ptr,e,f;return AL(e,f)>=0;};$pkg.ContainsAny=AI;AJ=function(e,f){var $ptr,e,f;return AK(e,f)>=0;};$pkg.ContainsRune=AJ;AK=function(e,f){var $ptr,e,f,g,h,i,j,k;if(0<=f&&f<128){return F(e,(f<<24>>>24));}else if((f===65533)){g=e;h=0;while(true){if(!(h<g.length)){break;}i=$decodeRune(g,h);j=h;k=i[0];if(k===65533){return j;}h+=i[1];}return-1;}else if(!A.ValidRune(f)){return-1;}else{return G(e,$encodeRune(f));}};$pkg.IndexRune=AK;AL=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;if(f.length>0){if(e.length>8){g=BQ(f);h=$clone(g[0],BP);i=g[1];if(i){j=0;while(true){if(!(j<e.length)){break;}if(new CM(h).contains(e.charCodeAt(j))){return j;}j=j+(1)>>0;}return-1;}}k=e;l=0;while(true){if(!(l<k.length)){break;}m=$decodeRune(k,l);n=l;o=m[0];p=f;q=0;while(true){if(!(q<p.length)){break;}r=$decodeRune(p,q);s=r[0];if(o===s){return n;}q+=r[1];}l+=m[1];}}return-1;};$pkg.IndexAny=AL;AO=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m;if(h===0){return CL.nil;}if(f===""){return AE(e,h);}if(h<0){h=I(e,f)+1>>0;}i=f.charCodeAt(0);j=0;k=$makeSlice(CL,h);l=0;m=0;while(true){if(!((m+f.length>>0)<=e.length&&(l+1>>0)<h)){break;}if((e.charCodeAt(m)===i)&&((f.length===1)||$substring(e,m,(m+f.length>>0))===f)){((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]=$substring(e,j,(m+g>>0)));l=l+(1)>>0;j=m+f.length>>0;m=m+((f.length-1>>0))>>0;}m=m+(1)>>0;}((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]=$substring(e,j));return $subslice(k,0,(l+1>>0));};AR=function(e,f){var $ptr,e,f;return AO(e,f,0,-1);};$pkg.Split=AR;AW=function(e,f){var $ptr,e,f;return e.length>=f.length&&$substring(e,0,f.length)===f;};$pkg.HasPrefix=AW;BL=function(e,f){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=BN(e,f,true);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:BL};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.IndexFunc=BL;BN=function(e,f,g){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:h=0;case 1:if(!(h<e.length)){$s=2;continue;}i=1;j=(e.charCodeAt(h)>>0);if(j>=128){k=A.DecodeRuneInString($substring(e,h));j=k[0];i=k[1];}l=f(j);$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===g){$s=3;continue;}$s=4;continue;case 3:$s=-1;return h;case 4:h=h+(i)>>0;$s=1;continue;case 2:$s=-1;return-1;}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BQ=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o;f=CN.zero();g=false;h=0;while(true){if(!(h<e.length)){break;}i=e.charCodeAt(h);if(i>=128){j=$clone(f,BP);k=false;BP.copy(f,j);g=k;return[f,g];}l=i>>>5<<24>>>24;((l<0||l>=f.length)?($throwRuntimeError("index out of range"),undefined):f[l]=((((l<0||l>=f.length)?($throwRuntimeError("index out of range"),undefined):f[l])|(((m=(((i&31)>>>0)>>>0),m<32?(1<<m):0)>>>0)))>>>0));h=h+(1)>>0;}n=$clone(f,BP);o=true;BP.copy(f,n);g=o;return[f,g];};BP.prototype.contains=function(e){var $ptr,e,f,g,h;f=this.$val;return!((((((g=e>>>5<<24>>>24,(f.nilCheck,((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g])))&(((h=(((e&31)>>>0)>>>0),h<32?(1<<h):0)>>>0)))>>>0))===0));};$ptrType(BP).prototype.contains=function(e){return(new BP(this.$get())).contains(e);};CO.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([CC],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([CC,$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([D.Writer],[$Int64,$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([$String],[],false)}];CM.methods=[{prop:"contains",name:"contains",pkg:"strings",typ:$funcType([$Uint8],[$Bool],false)}];K.init("strings",[{prop:"s",name:"s",exported:false,typ:$String,tag:""},{prop:"i",name:"i",exported:false,typ:$Int64,tag:""},{prop:"prevRune",name:"prevRune",exported:false,typ:$Int,tag:""}]);BP.init($Uint32,8);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;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["path/filepath"]=(function(){var $pkg={},$init,A,B,C,D,E,F;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=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;}$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,X,Y,Z,Q;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"];X=$sliceType($emptyInterface);Y=$sliceType($Uint8);Z=$ptrType(Y);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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;}Q=new E.Pool.ptr(0,0,X.nil,(function(){var $ptr,a,b;a=$makeSlice(Y,8192);return(b||(b=new Z(function(){return a;},function($v){a=$subslice(new Y($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["gopkg.in/dedis/crypto.v0/util"]=(function(){var $pkg={},$init,A,B,C,D,J,G,E,I;A=$packages["errors"];B=$packages["io/ioutil"];C=$packages["os"];D=$packages["path/filepath"];J=$sliceType($Uint8);E=function(a,b){var $ptr,a,b,c,d,e;c=a.$length;d=c+b>>0;if(d>a.$capacity){e=$makeSlice(J,d,($imul(((d+1>>0)),2)));$copySlice(e,a);a=e;}return[$subslice(a,0,d),$subslice(a,c,d)];};$pkg.Grow=E;I=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;if(a===J.nil){a=$makeSlice(J,b.$length);}else if(!((b.$length===a.$length))){$panic(new $String("Reverse requires equal-length slices"));}c=a.$length;d=0;e=c-1>>0;f=d;g=e;while(true){if(!(f<(h=((c+1>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")))){break;}i=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);j=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]=i);((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=j);f=f+(1)>>0;g=g-(1)>>0;}return a;};$pkg.Reverse=I;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=A.New("File was concurrently modified");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["hash"]=(function(){var $pkg={},$init,A,B,E;A=$packages["io"];B=$pkg.Hash=$newType(8,$kindInterface,"hash.Hash",true,"hash",true,null);E=$sliceType($Uint8);B.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:"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["gopkg.in/dedis/crypto.v0/abstract"]=(function(){var $pkg={},$init,D,E,F,A,G,B,C,K,H,I,J,L,N,O,V,W,Y,AA,AE,AF,AH,AL,AM,AN,AO,AP,AQ,AR,AT,AU,R,AJ,S,AK,T,U,Z,a,b,AB,AC,AD;D=$packages["crypto/cipher"];E=$packages["encoding"];F=$packages["encoding/binary"];A=$packages["errors"];G=$packages["fmt"];B=$packages["gopkg.in/dedis/crypto.v0/subtle"];C=$packages["gopkg.in/dedis/crypto.v0/util"];K=$packages["hash"];H=$packages["io"];I=$packages["reflect"];J=$packages["strings"];L=$pkg.CipherState=$newType(8,$kindInterface,"abstract.CipherState",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);N=$pkg.Cipher=$newType(0,$kindStruct,"abstract.Cipher",true,"gopkg.in/dedis/crypto.v0/abstract",true,function(CipherState_){this.$val=this;if(arguments.length===0){this.CipherState=$ifaceNil;return;}this.CipherState=CipherState_;});O=$pkg.Marshaling=$newType(8,$kindInterface,"abstract.Marshaling",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);V=$pkg.Constructor=$newType(8,$kindInterface,"abstract.Constructor",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);W=$pkg.BinaryEncoding=$newType(0,$kindStruct,"abstract.BinaryEncoding",true,"gopkg.in/dedis/crypto.v0/abstract",true,function(Constructor_,hidden_){this.$val=this;if(arguments.length===0){this.Constructor=$ifaceNil;this.hidden=new AR.ptr();return;}this.Constructor=Constructor_;this.hidden=hidden_;});Y=$pkg.decoder=$newType(0,$kindStruct,"abstract.decoder",true,"gopkg.in/dedis/crypto.v0/abstract",false,function(c_,r_){this.$val=this;if(arguments.length===0){this.c=$ifaceNil;this.r=$ifaceNil;return;}this.c=c_;this.r=r_;});AA=$pkg.encoder=$newType(0,$kindStruct,"abstract.encoder",true,"gopkg.in/dedis/crypto.v0/abstract",false,function(w_){this.$val=this;if(arguments.length===0){this.w=$ifaceNil;return;}this.w=w_;});AE=$pkg.Scalar=$newType(8,$kindInterface,"abstract.Scalar",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);AF=$pkg.Point=$newType(8,$kindInterface,"abstract.Point",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);AH=$pkg.Suite=$newType(8,$kindInterface,"abstract.Suite",true,"gopkg.in/dedis/crypto.v0/abstract",true,null);AL=$sliceType($Uint8);AM=$ptrType(AE);AN=$ptrType(AF);AO=$ptrType($Uint8);AP=$sliceType($emptyInterface);AQ=$ptrType($Int32);AR=$structType("",[]);AT=$ptrType(Y);AU=$ptrType(AA);N.ptr.prototype.Message=function(c,d,e){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:f=this;$r=f.CipherState.Message(c,d,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Message};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Message=function(c,d,e){return this.$val.Message(c,d,e);};N.ptr.prototype.Partial=function(c,d,e){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:f=this;$r=f.CipherState.Partial(c,d,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Partial};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Partial=function(c,d,e){return this.$val.Partial(c,d,e);};N.ptr.prototype.Read=function(c){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:d=0;e=$ifaceNil;f=this;$r=f.CipherState.Partial(c,AL.nil,AL.nil);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=c.$length;h=$ifaceNil;d=g;e=h;$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Read};}$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;};N.prototype.Read=function(c){return this.$val.Read(c);};N.ptr.prototype.Write=function(c){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:d=0;e=$ifaceNil;f=this;$r=f.CipherState.Partial(AL.nil,AL.nil,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=c.$length;h=$ifaceNil;d=g;e=h;$s=-1;return[d,e];}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Write};}$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;};N.prototype.Write=function(c){return this.$val.Write(c);};N.ptr.prototype.EndMessage=function(){var $ptr,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;$r=c.CipherState.Message(AL.nil,AL.nil,AL.nil);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.EndMessage};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.EndMessage=function(){return this.$val.EndMessage();};N.ptr.prototype.XORKeyStream=function(c,d){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;$r=e.CipherState.Partial($subslice(c,0,d.$length),d,AL.nil);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.XORKeyStream};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.XORKeyStream=function(c,d){return this.$val.XORKeyStream(c,d);};N.ptr.prototype.Sum=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;$r=$clone(d,N).EndMessage();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=d.CipherState.HashSize();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=C.Grow(c,f);c=g[0];h=g[1];i=$clone(d,N).Message(h,AL.nil,AL.nil);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Sum};}$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;};N.prototype.Sum=function(c){return this.$val.Sum(c);};N.ptr.prototype.Seal=function(c,d){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:e=this;f=d.$length;g=e.CipherState.KeySize();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=C.Grow(c,f+h>>0);c=i[0];j=i[1];k=$subslice(j,0,f);l=$subslice(j,f);m=$clone(e,N).Message(k,d,k);$s=2;case 2:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;n=$clone(e,N).Message(l,AL.nil,AL.nil);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Seal};}$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;};N.prototype.Seal=function(c,d){return this.$val.Seal(c,d);};N.ptr.prototype.Open=function(c,d){var $ptr,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;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=e.CipherState.KeySize();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=d.$length-g>>0;if(h<0){$s=-1;return[AL.nil,A.New("sealed ciphertext too short")];}i=$subslice(d,0,h);j=$subslice(d,h);k=C.Grow(c,h);c=k[0];l=k[1];if(!($indexPtr(l.$array,l.$offset+0,AO)===$indexPtr(i.$array,i.$offset+0,AO))){$s=2;continue;}$s=3;continue;case 2:m=$clone(e,N).Message(l,i,i);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;$s=4;continue;case 3:n=$makeSlice(AL,h);o=$clone(e,N).Message(n,i,i);$s=6;case 6:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$copySlice(l,n);case 4:p=$clone(e,N).Message(j,j,AL.nil);$s=7;case 7:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(B.ConstantTimeAllEq(j,0)===0){$s=-1;return[AL.nil,A.New("ciphertext authentication failed")];}$s=-1;return[c,$ifaceNil];}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Open};}$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.$s=$s;$f.$r=$r;return $f;};N.prototype.Open=function(c,d){return this.$val.Open(c,d);};N.ptr.prototype.Clone=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.CipherState.Clone();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return new N.ptr(d);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Clone};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Clone=function(){return this.$val.Clone();};W.ptr.prototype.Read=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;f=new Y.ptr(e.Constructor,c);g=0;case 1:if(!(g<d.$length)){$s=2;continue;}h=I.ValueOf(((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=f.value($clone(h,I.Value),0);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}g=g+(1)>>0;$s=1;continue;case 2:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Read};}$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;};W.prototype.Read=function(c,d){return this.$val.Read(c,d);};Y.ptr.prototype.value=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,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,$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;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$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=[e];f=[f];g=this;h=$clone(c,I.Value).Interface();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=$assertType(i,O,true);k=j[0];l=j[1];if(l){$s=2;continue;}$s=3;continue;case 2:n=k.UnmarshalFrom(g.r);$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[1];$s=-1;return o;case 3:p=$ifaceNil;q=$clone(c,I.Value).Kind();if(q===(20)){$s=6;continue;}if(q===(22)){$s=7;continue;}if(q===(25)){$s=8;continue;}if(q===(23)){$s=9;continue;}if(q===(17)){$s=10;continue;}if(q===(2)){$s=11;continue;}if(q===(1)){$s=12;continue;}$s=13;continue;case 6:if($clone(c,I.Value).IsNil()){$s=15;continue;}$s=16;continue;case 15:r=$clone(c,I.Value).Type();s=g.c.New(r);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;if($interfaceIsEqual(t,$ifaceNil)){$s=18;continue;}$s=19;continue;case 18:u=r.String();$s=20;case 20:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$panic(new $String("unsupported null pointer type: "+u));case 19:v=I.ValueOf(t);$s=21;case 21:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=$clone(c,I.Value).Set($clone(v,I.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:if($clone(c,I.Value).IsNil()){$s=23;continue;}$s=24;continue;case 23:w=$clone(c,I.Value).Type().Elem();$s=25;case 25:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=I.New(w);$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(c,I.Value).Set($clone(x,I.Value));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:y=$clone(c,I.Value).Elem();$s=28;case 28:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=g.value($clone(y,I.Value),d+1>>0);$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$s=-1;return z;case 7:if($clone(c,I.Value).IsNil()){$s=30;continue;}$s=31;continue;case 30:aa=$clone(c,I.Value).Type().Elem();$s=32;case 32:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}ab=I.New(aa);$s=33;case 33:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}$r=$clone(c,I.Value).Set($clone(ab,I.Value));$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 31:ac=$clone(c,I.Value).Elem();$s=35;case 35:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=g.value($clone(ac,I.Value),d+1>>0);$s=36;case 36:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$s=-1;return ad;case 8:ae=$clone(c,I.Value).NumField();af=0;case 37:if(!(af<ae)){$s=38;continue;}ag=$clone(c,I.Value).Field(af);$s=39;case 39:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.value($clone(ag,I.Value),d+1>>0);$s=40;case 40:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}p=ah;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return p;}af=af+(1)>>0;$s=37;continue;case 38:$s=14;continue;case 9:if($clone(c,I.Value).IsNil()){$panic(new $String("slices must be initialized to correct length before decoding"));}ai=$clone(c,I.Value).Len();aj=0;case 41:if(!(aj<ai)){$s=42;continue;}ak=$clone(c,I.Value).Index(aj);$s=43;case 43:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=g.value($clone(ak,I.Value),d+1>>0);$s=44;case 44:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}p=al;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return p;}aj=aj+(1)>>0;$s=41;continue;case 42:$s=14;continue;case 10:ai=$clone(c,I.Value).Len();aj=0;case 45:if(!(aj<ai)){$s=46;continue;}am=$clone(c,I.Value).Index(aj);$s=47;case 47:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=g.value($clone(am,I.Value),d+1>>0);$s=48;case 48:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}p=an;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return p;}aj=aj+(1)>>0;$s=45;continue;case 46:$s=14;continue;case 11:f[0]=0;ap=F.Read(g.r,(ao=F.BigEndian,new ao.constructor.elem(ao)),(f.$ptr||(f.$ptr=new AQ(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))));$s=49;case 49:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;if(!($interfaceIsEqual(aq,$ifaceNil))){$s=50;continue;}$s=51;continue;case 50:ar=G.Sprintf("Error converting int to int32 ( %v )",new AP([aq]));$s=52;case 52:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=A.New(ar);$s=53;case 53:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 51:$clone(c,I.Value).SetInt(new $Int64(0,f[0]));$s=-1;return aq;case 12:e[0]=0;au=F.Read(g.r,(at=F.BigEndian,new at.constructor.elem(at)),(e.$ptr||(e.$ptr=new AO(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))));$s=54;case 54:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$clone(c,I.Value).SetBool(!((e[0]===0)));$s=-1;return av;case 13:aw=g.r;ay=(ax=F.BigEndian,new ax.constructor.elem(ax));az=$clone($clone(c,I.Value).Addr(),I.Value).Interface();$s=55;case 55:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;bb=F.Read(aw,ay,ba);$s=56;case 56:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;case 14:case 5:$s=-1;return p;}return;}if($f===undefined){$f={$blk:Y.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Y.prototype.value=function(c,d){return this.$val.value(c,d);};W.ptr.prototype.Write=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=new AA.ptr(c);g=0;case 1:if(!(g<d.$length)){$s=2;continue;}h=f.value(((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]),0);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return i;}g=g+(1)>>0;$s=1;continue;case 2:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Write};}$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;};W.prototype.Write=function(c,d){return this.$val.Write(c,d);};AA.ptr.prototype.value=function(c,d){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:e=this;f=$assertType(c,O,true);g=f[0];h=f[1];if(h){$s=1;continue;}$s=2;continue;case 1:j=g.MarshalTo(e.w);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];$s=-1;return k;case 2:l=I.ValueOf(c);$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=$clone(m,I.Value).Kind();if(n===(20)){$s=6;continue;}if(n===(22)){$s=7;continue;}if(n===(25)){$s=8;continue;}if((n===(23))||(n===(17))){$s=9;continue;}if(n===(2)){$s=10;continue;}if(n===(1)){$s=11;continue;}$s=12;continue;case 6:$s=13;continue;case 7:o=$clone(m,I.Value).Elem();$s=14;case 14:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=$clone(o,I.Value).Interface();$s=15;case 15:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=e.value(p,d+1>>0);$s=16;case 16:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return q;case 8:r=$clone(m,I.Value).NumField();s=0;case 17:if(!(s<r)){$s=18;continue;}t=$clone(m,I.Value).Field(s);$s=19;case 19:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=$clone(t,I.Value).Interface();$s=20;case 20:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=e.value(u,d+1>>0);$s=21;case 21:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(!($interfaceIsEqual(w,$ifaceNil))){$s=-1;return w;}s=s+(1)>>0;$s=17;continue;case 18:$s=13;continue;case 9:x=$clone(m,I.Value).Len();y=0;case 22:if(!(y<x)){$s=23;continue;}z=$clone(m,I.Value).Index(y);$s=24;case 24:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=$clone(z,I.Value).Interface();$s=25;case 25:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}ab=e.value(aa,d+1>>0);$s=26;case 26:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;if(!($interfaceIsEqual(ac,$ifaceNil))){$s=-1;return ac;}y=y+(1)>>0;$s=22;continue;case 23:$s=13;continue;case 10:ad=($assertType(c,$Int)>>0);if(!(((ad>>0)===$assertType(c,$Int)))){$panic(new $String("Int does not fit into int32"));}af=F.Write(e.w,(ae=F.BigEndian,new ae.constructor.elem(ae)),new $Int32(ad));$s=27;case 27:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}$s=-1;return af;case 11:ag=0;if($clone(m,I.Value).Bool()){ag=1;}ai=F.Write(e.w,(ah=F.BigEndian,new ah.constructor.elem(ah)),new $Uint8(ag));$s=28;case 28:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=-1;return ai;case 12:ak=F.Write(e.w,(aj=F.BigEndian,new aj.constructor.elem(aj)),c);$s=29;case 29:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=-1;return ak;case 13:case 5:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.value=function(c,d){return this.$val.value(c,d);};AB=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=d;if($interfaceIsEqual(e,(T))){$s=2;continue;}if($interfaceIsEqual(e,(U))){$s=3;continue;}$s=4;continue;case 2:f=c.Scalar();$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;case 3:g=c.Point();$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;case 4:case 1:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AB};}$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.SuiteNew=AB;AC=function(c,d,e){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:f=new W.ptr(c,new AR.ptr()).Read(d,new AP([e]));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SuiteRead=AC;AD=function(c,d,e){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:f=new W.ptr(c,new AR.ptr()).Write(d,new AP([e]));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SuiteWrite=AD;N.methods=[{prop:"Message",name:"Message",pkg:"",typ:$funcType([AL,AL,AL],[N],false)},{prop:"Partial",name:"Partial",pkg:"",typ:$funcType([AL,AL,AL],[N],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AL],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([AL],[$Int,$error],false)},{prop:"EndMessage",name:"EndMessage",pkg:"",typ:$funcType([],[],false)},{prop:"XORKeyStream",name:"XORKeyStream",pkg:"",typ:$funcType([AL,AL],[],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([AL],[AL],false)},{prop:"Seal",name:"Seal",pkg:"",typ:$funcType([AL,AL],[AL],false)},{prop:"Open",name:"Open",pkg:"",typ:$funcType([AL,AL],[AL,$error],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[N],false)}];W.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([H.Reader,AP],[$error],true)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([H.Writer,AP],[$error],true)}];AT.methods=[{prop:"value",name:"value",pkg:"gopkg.in/dedis/crypto.v0/abstract",typ:$funcType([I.Value,$Int],[$error],false)}];AU.methods=[{prop:"value",name:"value",pkg:"gopkg.in/dedis/crypto.v0/abstract",typ:$funcType([$emptyInterface,$Int],[$error],false)}];L.init([{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[L],false)},{prop:"HashSize",name:"HashSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"KeySize",name:"KeySize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Message",name:"Message",pkg:"",typ:$funcType([AL,AL,AL],[],false)},{prop:"Partial",name:"Partial",pkg:"",typ:$funcType([AL,AL,AL],[],false)}]);N.init("",[{prop:"CipherState",name:"",exported:true,typ:L,tag:""}]);O.init([{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AL,$error],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([H.Writer],[$Int,$error],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AL],[$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([H.Reader],[$Int,$error],false)}]);V.init([{prop:"New",name:"New",pkg:"",typ:$funcType([I.Type],[$emptyInterface],false)}]);W.init("gopkg.in/dedis/crypto.v0/abstract",[{prop:"Constructor",name:"",exported:true,typ:V,tag:""},{prop:"hidden",name:"hidden",exported:false,typ:AR,tag:""}]);Y.init("gopkg.in/dedis/crypto.v0/abstract",[{prop:"c",name:"c",exported:false,typ:V,tag:""},{prop:"r",name:"r",exported:false,typ:H.Reader,tag:""}]);AA.init("gopkg.in/dedis/crypto.v0/abstract",[{prop:"w",name:"w",exported:false,typ:H.Writer,tag:""}]);AE.init([{prop:"Add",name:"Add",pkg:"",typ:$funcType([AE,AE],[AE],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[AL],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[AE],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([AE,AE],[AE],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([AE],[$Bool],false)},{prop:"Inv",name:"Inv",pkg:"",typ:$funcType([AE],[AE],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AL,$error],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([H.Writer],[$Int,$error],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([AE,AE],[AE],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([AE],[AE],false)},{prop:"One",name:"One",pkg:"",typ:$funcType([],[AE],false)},{prop:"Pick",name:"Pick",pkg:"",typ:$funcType([D.Stream],[AE],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([AE],[AE],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([AL],[AE],false)},{prop:"SetInt64",name:"SetInt64",pkg:"",typ:$funcType([$Int64],[AE],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([AE,AE],[AE],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AL],[$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([H.Reader],[$Int,$error],false)},{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[AE],false)}]);AF.init([{prop:"Add",name:"Add",pkg:"",typ:$funcType([AF,AF],[AF],false)},{prop:"Base",name:"Base",pkg:"",typ:$funcType([],[AF],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[AF],false)},{prop:"Data",name:"Data",pkg:"",typ:$funcType([],[AL,$error],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([AF],[$Bool],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AL,$error],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([H.Writer],[$Int,$error],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([AF,AE],[AF],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([AF],[AF],false)},{prop:"Null",name:"Null",pkg:"",typ:$funcType([],[AF],false)},{prop:"Pick",name:"Pick",pkg:"",typ:$funcType([AL,D.Stream],[AF,AL],false)},{prop:"PickLen",name:"PickLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([AF],[AF],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([AF,AF],[AF],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AL],[$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([H.Reader],[$Int,$error],false)}]);AH.init([{prop:"Cipher",name:"Cipher",pkg:"",typ:$funcType([AL,AP],[N],true)},{prop:"Hash",name:"Hash",pkg:"",typ:$funcType([],[K.Hash],false)},{prop:"New",name:"New",pkg:"",typ:$funcType([I.Type],[$emptyInterface],false)},{prop:"NewKey",name:"NewKey",pkg:"",typ:$funcType([D.Stream],[AE],false)},{prop:"Point",name:"Point",pkg:"",typ:$funcType([],[AF],false)},{prop:"PointLen",name:"PointLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"PrimeOrder",name:"PrimeOrder",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([H.Reader,AP],[$error],true)},{prop:"Scalar",name:"Scalar",pkg:"",typ:$funcType([],[AE],false)},{prop:"ScalarLen",name:"ScalarLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([H.Writer,AP],[$error],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=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=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=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=C.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$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=I.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=$ifaceNil;S=$ifaceNil;$pkg.NoKey=new AL([]);a=I.TypeOf((AJ||(AJ=new AM(function(){return R;},function($v){R=$v;})))).Elem();$s=12;case 12:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}T=a;b=I.TypeOf((AK||(AK=new AN(function(){return S;},function($v){S=$v;})))).Elem();$s=13;case 13:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}U=b;Z=I.TypeOf(new $Int32(0));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/hmac"]=(function(){var $pkg={},$init,A,B;A=$packages["crypto/subtle"];B=$packages["hash"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["gopkg.in/dedis/crypto.v0/ints"]=(function(){var $pkg={},$init,A,B;A=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e>a){a=e;}d++;}return a;};$pkg.Max=A;B=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e<a){a=e;}d++;}return a;};$pkg.Min=B;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["math/big"]=(function(){var $pkg={},$init,F,E,I,A,J,C,B,H,G,D,X,BO,BW,BX,CU,DI,DJ,DK,DM,DO,DP,DR,DS,DT,DU,DW,BP,BY,BZ,CE,CM,CN,CO,CT,CV,K,L,M,N,O,P,Q,R,S,T,U,V,Y,Z,AA,AB,AC,AE,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,BQ,BS,BT,BU,BV,CB,CC,CD,CF,CG,CH,CI,CJ,CK,CL,CP,CQ,CR,CS,CW;F=$packages["bytes"];E=$packages["encoding/binary"];I=$packages["errors"];A=$packages["fmt"];J=$packages["github.com/gopherjs/gopherjs/nosync"];C=$packages["io"];B=$packages["math"];H=$packages["math/rand"];G=$packages["strconv"];D=$packages["strings"];X=$pkg.Word=$newType(4,$kindUintptr,"big.Word",true,"math/big",true,null);BO=$pkg.Int=$newType(0,$kindStruct,"big.Int",true,"math/big",true,function(neg_,abs_){this.$val=this;if(arguments.length===0){this.neg=false;this.abs=BX.nil;return;}this.neg=neg_;this.abs=abs_;});BW=$pkg.byteReader=$newType(0,$kindStruct,"big.byteReader",true,"math/big",false,function(ScanState_){this.$val=this;if(arguments.length===0){this.ScanState=$ifaceNil;return;}this.ScanState=ScanState_;});BX=$pkg.nat=$newType(12,$kindSlice,"big.nat",true,"math/big",false,null);CU=$pkg.divisor=$newType(0,$kindStruct,"big.divisor",true,"math/big",false,function(bbb_,nbits_,ndigits_){this.$val=this;if(arguments.length===0){this.bbb=BX.nil;this.nbits=0;this.ndigits=0;return;}this.bbb=bbb_;this.nbits=nbits_;this.ndigits=ndigits_;});DI=$sliceType($emptyInterface);DJ=$arrayType(CU,64);DK=$structType("math/big",[{prop:"Mutex",name:"",exported:true,typ:J.Mutex,tag:""},{prop:"table",name:"table",exported:false,typ:DJ,tag:""}]);DM=$sliceType($Uint8);DO=$sliceType(X);DP=$ptrType(BO);DR=$ptrType(X);DS=$ptrType(BX);DT=$arrayType(BX,16);DU=$sliceType(CU);DW=$ptrType(H.Rand);K=function(m,n){var $ptr,m,n,o,p,q;o=0;p=0;q=AA(m,n);o=q[0];p=q[1];return[o,p];};L=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=AG(m,n,o);p=r[0];q=r[1];return[p,q];};M=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AH(m,n,o);return p;};N=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AI(m,n,o);return p;};O=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AJ(m,n,o);return p;};P=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AK(m,n,o);return p;};Q=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AL(m,n,o);return p;};R=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AM(m,n,o);return p;};S=function(m,n,o,p){var $ptr,m,n,o,p,q;q=0;q=AN(m,n,o,p);return q;};T=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AO(m,n,o);return p;};U=function(m,n,o,p){var $ptr,m,n,o,p,q;q=0;q=AP(m,n,o,p);return q;};V=function(m){var $ptr,m,n;n=0;n=AC(m);return n;};Y=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=n+o>>>0;q=m+r>>>0;if(q<m||r<n){p=1;}return[p,q];};Z=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=n+o>>>0;q=m-r>>>0;if(q>m||r<n){p=1;}return[p,q];};AA=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x;o=0;p=0;q=(m&65535)>>>0;r=m>>>16>>>0;s=(n&65535)>>>0;t=n>>>16>>>0;u=$imul(q,s)>>>0;v=($imul(r,s)>>>0)+(u>>>16>>>0)>>>0;w=(v&65535)>>>0;x=v>>>16>>>0;w=w+(($imul(q,t)>>>0))>>>0;o=(($imul(r,t)>>>0)+x>>>0)+(w>>>16>>>0)>>>0;p=$imul(m,n)>>>0;return[o,p];};AB=function(m,n,o){var $ptr,m,n,o,p,q,r,s;p=0;q=0;r=AA(m,n);p=r[0];s=r[1];q=s+o>>>0;if(q<s){p=p+(1)>>>0;}return[p,q];};AC=function(m){var $ptr,m,n,o,p,q,r;n=0;while(true){if(!(m>=32768)){break;}n=n+(16)>>0;m=(o=(16),o<32?(m>>>o):0)>>>0;}if(m>=128){m=(p=(8),p<32?(m>>>p):0)>>>0;n=n+(8)>>0;}if(m>=8){m=(q=(4),q<32?(m>>>q):0)>>>0;n=n+(4)>>0;}if(m>=2){m=(r=(2),r<32?(m>>>r):0)>>>0;n=n+(2)>>0;}if(m>=1){n=n+(1)>>0;}return n;};AE=function(m){var $ptr,m;return((32-V(m)>>0)>>>0);};AG=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=0;if(m>=o){r=4294967295;s=4294967295;p=r;q=s;return[p,q];}t=AE(o);o=(u=(t),u<32?(o<<u):0)>>>0;v=o>>>16>>>0;w=(o&65535)>>>0;z=(((x=t,x<32?(m<<x):0)>>>0)|((y=((32-t>>>0)),y<32?(n>>>y):0)>>>0))>>>0;ab=(aa=t,aa<32?(n<<aa):0)>>>0;ac=ab>>>16>>>0;ad=(ab&65535)>>>0;af=(ae=z/v,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"));ag=z-($imul(af,v)>>>0)>>>0;while(true){if(!(af>=65536||($imul(af,w)>>>0)>(($imul(65536,ag)>>>0)+ac>>>0))){break;}af=af-(1)>>>0;ag=ag+(v)>>>0;if(ag>=65536){break;}}ah=(($imul(z,65536)>>>0)+ac>>>0)-($imul(af,o)>>>0)>>>0;aj=(ai=ah/v,(ai===ai&&ai!==1/0&&ai!==-1/0)?ai>>>0:$throwRuntimeError("integer divide by zero"));ag=ah-($imul(aj,v)>>>0)>>>0;while(true){if(!(aj>=65536||($imul(aj,w)>>>0)>(($imul(65536,ag)>>>0)+ad>>>0))){break;}aj=aj-(1)>>>0;ag=ag+(v)>>>0;if(ag>=65536){break;}}ak=($imul(af,65536)>>>0)+aj>>>0;al=(am=t,am<32?((((($imul(ah,65536)>>>0)+ad>>>0)-($imul(aj,o)>>>0)>>>0))>>>am):0)>>>0;p=ak;q=al;return[p,q];};AH=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;if(false){q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Y(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),((s<0||s>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+s]),p);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=((w<0||w>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+w]);z=(x+y>>>0)+p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=z);p=(((((x&y)>>>0)|(((((x|y)>>>0))&~z)>>>0))>>>0))>>>31>>>0;v++;}return p;};AI=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;if(false){q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Z(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),((s<0||s>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+s]),p);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=((w<0||w>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+w]);z=(x-y>>>0)-p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=z);p=(((((y&~x)>>>0)|(((((y|(~x>>>0))>>>0))&z)>>>0))>>>0))>>>31>>>0;v++;}return p;};AJ=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y;p=0;if(false){p=o;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Y(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),p,0);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}p=o;u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=x+p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=y);p=((x&~y)>>>0)>>>31>>>0;v++;}return p;};AK=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y;p=0;if(false){p=o;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Z(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),p,0);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}p=o;u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=x-p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=y);p=(((y&~x)>>>0))>>>31>>>0;v++;}return p;};AL=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=m.$length;if(q>0){r=32-o>>>0;t=(s=q-1>>0,((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]));p=(u=r,u<32?(t>>>u):0)>>>0;v=q-1>>0;while(true){if(!(v>0)){break;}w=t;t=(x=v-1>>0,((x<0||x>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+x]));((v<0||v>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+v]=((((y=o,y<32?(w<<y):0)>>>0)|((z=r,z<32?(t>>>z):0)>>>0))>>>0));v=v-(1)>>0;}(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]=((aa=o,aa<32?(t<<aa):0)>>>0));}return p;};AM=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=m.$length;if(q>0){r=32-o>>>0;s=(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]);p=(t=r,t<32?(s<<t):0)>>>0;u=0;while(true){if(!(u<(q-1>>0))){break;}v=s;s=(w=u+1>>0,((w<0||w>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+w]));((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]=((((x=o,x<32?(v>>>x):0)>>>0)|((y=r,y<32?(s<<y):0)>>>0))>>>0));u=u+(1)>>0;}(aa=q-1>>0,((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=((z=o,z<32?(s>>>z):0)>>>0)));}return p;};AN=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s,t,u;q=0;q=p;r=m;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=AB(((t<0||t>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+t]),o,q);q=u[0];((t<0||t>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+t]=u[1]);s++;}return q;};AO=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=AB(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),o,((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]));u=t[0];v=t[1];w=Y(v,p,0);p=w[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=w[1]);p=p+(u)>>>0;r++;}return p;};AP=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s;q=0;q=n;r=m.$length-1>>0;while(true){if(!(r>=0)){break;}s=AG(q,((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]),p);((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=s[0]);q=s[1];r=r-(1)>>0;}return q;};BO.ptr.prototype.Sign=function(){var $ptr,m;m=this;if(m.abs.$length===0){return 0;}if(m.neg){return-1;}return 1;};BO.prototype.Sign=function(){return this.$val.Sign();};BO.ptr.prototype.SetInt64=function(m){var $ptr,m,n,o;n=this;o=false;if((m.$high<0||(m.$high===0&&m.$low<0))){o=true;m=new $Int64(-m.$high,-m.$low);}n.abs=n.abs.setUint64(new $Uint64(m.$high,m.$low));n.neg=o;return n;};BO.prototype.SetInt64=function(m){return this.$val.SetInt64(m);};BO.ptr.prototype.SetUint64=function(m){var $ptr,m,n;n=this;n.abs=n.abs.setUint64(m);n.neg=false;return n;};BO.prototype.SetUint64=function(m){return this.$val.SetUint64(m);};BQ=function(m){var $ptr,m;return new BO.ptr(false,BX.nil).SetInt64(m);};$pkg.NewInt=BQ;BO.ptr.prototype.Set=function(m){var $ptr,m,n;n=this;if(!(n===m)){n.abs=n.abs.set(m.abs);n.neg=m.neg;}return n;};BO.prototype.Set=function(m){return this.$val.Set(m);};BO.ptr.prototype.Bits=function(){var $ptr,m,n;m=this;return(n=m.abs,$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.SetBits=function(m){var $ptr,m,n;n=this;n.abs=$subslice(new BX(m.$array),m.$offset,m.$offset+m.$length).norm();n.neg=false;return n;};BO.prototype.SetBits=function(m){return this.$val.SetBits(m);};BO.ptr.prototype.Abs=function(m){var $ptr,m,n;n=this;n.Set(m);n.neg=false;return n;};BO.prototype.Abs=function(m){return this.$val.Abs(m);};BO.ptr.prototype.Neg=function(m){var $ptr,m,n;n=this;n.Set(m);n.neg=n.abs.$length>0&&!n.neg;return n;};BO.prototype.Neg=function(m){return this.$val.Neg(m);};BO.ptr.prototype.Add=function(m,n){var $ptr,m,n,o,p;o=this;p=m.neg;if(m.neg===n.neg){o.abs=o.abs.add(m.abs,n.abs);}else{if(m.abs.cmp(n.abs)>=0){o.abs=o.abs.sub(m.abs,n.abs);}else{p=!p;o.abs=o.abs.sub(n.abs,m.abs);}}o.neg=o.abs.$length>0&&p;return o;};BO.prototype.Add=function(m,n){return this.$val.Add(m,n);};BO.ptr.prototype.Sub=function(m,n){var $ptr,m,n,o,p;o=this;p=m.neg;if(!(m.neg===n.neg)){o.abs=o.abs.add(m.abs,n.abs);}else{if(m.abs.cmp(n.abs)>=0){o.abs=o.abs.sub(m.abs,n.abs);}else{p=!p;o.abs=o.abs.sub(n.abs,m.abs);}}o.neg=o.abs.$length>0&&p;return o;};BO.prototype.Sub=function(m,n){return this.$val.Sub(m,n);};BO.ptr.prototype.Mul=function(m,n){var $ptr,m,n,o;o=this;o.abs=o.abs.mul(m.abs,n.abs);o.neg=o.abs.$length>0&&!(m.neg===n.neg);return o;};BO.prototype.Mul=function(m,n){return this.$val.Mul(m,n);};BO.ptr.prototype.MulRange=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if((m.$high>n.$high||(m.$high===n.$high&&m.$low>n.$low))){return o.SetInt64(new $Int64(0,1));}else if((m.$high<0||(m.$high===0&&m.$low<=0))&&(n.$high>0||(n.$high===0&&n.$low>=0))){return o.SetInt64(new $Int64(0,0));}p=false;if((m.$high<0||(m.$high===0&&m.$low<0))){p=(q=(r=new $Int64(n.$high-m.$high,n.$low-m.$low),new $Int64(r.$high&0,(r.$low&1)>>>0)),(q.$high===0&&q.$low===0));s=new $Int64(-n.$high,-n.$low);t=new $Int64(-m.$high,-m.$low);m=s;n=t;}o.abs=o.abs.mulRange(new $Uint64(m.$high,m.$low),new $Uint64(n.$high,n.$low));o.neg=p;return o;};BO.prototype.MulRange=function(m,n){return this.$val.MulRange(m,n);};BO.ptr.prototype.Binomial=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=this;if((r=$div64(m,new $Int64(0,2),false),(r.$high<n.$high||(r.$high===n.$high&&r.$low<n.$low)))&&(n.$high<m.$high||(n.$high===m.$high&&n.$low<=m.$low))){n=new $Int64(m.$high-n.$high,m.$low-n.$low);}s=new BO.ptr(false,BX.nil);t=new BO.ptr(false,BX.nil);o[0]=$clone(s,BO);p[0]=$clone(t,BO);o[0].MulRange((u=new $Int64(m.$high-n.$high,m.$low-n.$low),new $Int64(u.$high+0,u.$low+1)),m);p[0].MulRange(new $Int64(0,1),n);v=q.Quo(o[0],p[0]);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Binomial};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Binomial=function(m,n){return this.$val.Binomial(m,n);};BO.ptr.prototype.Quo=function(m,n){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=o.abs.div(BX.nil,m.abs,n.abs);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;o.abs=p[0];o.neg=o.abs.$length>0&&!(m.neg===n.neg);$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Quo};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Quo=function(m,n){return this.$val.Quo(m,n);};BO.ptr.prototype.Rem=function(m,n){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=BX.nil.div(o.abs,m.abs,n.abs);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;o.abs=p[1];o.neg=o.abs.$length>0&&m.neg;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Rem};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Rem=function(m,n){return this.$val.Rem(m,n);};BO.ptr.prototype.QuoRem=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;r=p.abs.div(o.abs,m.abs,n.abs);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p.abs=q[0];o.abs=q[1];s=p.abs.$length>0&&!(m.neg===n.neg);t=o.abs.$length>0&&m.neg;p.neg=s;o.neg=t;$s=-1;return[p,o];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.QuoRem};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.QuoRem=function(m,n,o){return this.$val.QuoRem(m,n,o);};BO.ptr.prototype.Div=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=this;q=n.neg;o[0]=new BO.ptr(false,BX.nil);r=p.QuoRem(m,n,o[0]);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o[0].neg){if(q){p.Add(p,BP);}else{p.Sub(p,BP);}}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Div};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Div=function(m,n){return this.$val.Div(m,n);};BO.ptr.prototype.Mod=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=n;if(o===n||CG(o.abs,n.abs)){p=new BO.ptr(false,BX.nil).Set(n);}q=new BO.ptr(false,BX.nil);r=q.QuoRem(m,n,o);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o.neg){if(p.neg){o.Sub(o,p);}else{o.Add(o,p);}}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Mod};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Mod=function(m,n){return this.$val.Mod(m,n);};BO.ptr.prototype.DivMod=function(m,n,o){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=n;if(p===n||CG(p.abs,n.abs)){q=new BO.ptr(false,BX.nil).Set(n);}r=p.QuoRem(m,n,o);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o.neg){if(q.neg){p.Add(p,BP);o.Sub(o,q);}else{p.Sub(p,BP);o.Add(o,q);}}$s=-1;return[p,o];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.DivMod};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.DivMod=function(m,n,o){return this.$val.DivMod(m,n,o);};BO.ptr.prototype.Cmp=function(m){var $ptr,m,n,o;n=0;o=this;if(o.neg===m.neg){n=o.abs.cmp(m.abs);if(o.neg){n=-n;}}else if(o.neg){n=-1;}else{n=1;}return n;};BO.prototype.Cmp=function(m){return this.$val.Cmp(m);};BS=function(m){var $ptr,m,n,o,p,q;if(m.$length===0){return new $Uint64(0,0);}o=(n=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]),new $Uint64(0,n.constructor===Number?n:1));if(true&&m.$length>1){o=(p=$shiftLeft64((q=(1>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+1]),new $Uint64(0,q.constructor===Number?q:1)),32),new $Uint64(o.$high|p.$high,(o.$low|p.$low)>>>0));}return o;};BO.ptr.prototype.Int64=function(){var $ptr,m,n,o;m=this;o=(n=BS(m.abs),new $Int64(n.$high,n.$low));if(m.neg){o=new $Int64(-o.$high,-o.$low);}return o;};BO.prototype.Int64=function(){return this.$val.Int64();};BO.ptr.prototype.Uint64=function(){var $ptr,m;m=this;return BS(m.abs);};BO.prototype.Uint64=function(){return this.$val.Uint64();};BO.ptr.prototype.SetString=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=D.NewReader(m);r=o.scan(p,n);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[2];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,false];}t=p.ReadByte();u=t[1];if(!($interfaceIsEqual(u,C.EOF))){$s=-1;return[DP.nil,false];}$s=-1;return[o,true];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.SetString};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.SetString=function(m,n){return this.$val.SetString(m,n);};BO.ptr.prototype.SetBytes=function(m){var $ptr,m,n;n=this;n.abs=n.abs.setBytes(m);n.neg=false;return n;};BO.prototype.SetBytes=function(m){return this.$val.SetBytes(m);};BO.ptr.prototype.Bytes=function(){var $ptr,m,n;m=this;n=$makeSlice(DM,($imul(m.abs.$length,4)));return $subslice(n,m.abs.bytes(n));};BO.prototype.Bytes=function(){return this.$val.Bytes();};BO.ptr.prototype.BitLen=function(){var $ptr,m;m=this;return m.abs.bitLen();};BO.prototype.BitLen=function(){return this.$val.BitLen();};BO.ptr.prototype.Exp=function(m,n,o){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=BX.nil;if(!n.neg){q=n.abs;}r=BX.nil;if(!(o===DP.nil)){r=o.abs;}s=p.abs.expNN(m.abs,q,r);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}p.abs=s;p.neg=p.abs.$length>0&&m.neg&&q.$length>0&&((((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])&1)>>>0)===1);if(p.neg&&r.$length>0){p.abs=p.abs.sub(r,p.abs);p.neg=false;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Exp};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Exp=function(m,n,o){return this.$val.Exp(m,n,o);};BO.ptr.prototype.GCD=function(m,n,o,p){var $ptr,aa,ab,ac,ad,ae,af,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;if(o.Sign()<=0||p.Sign()<=0){q.SetInt64(new $Int64(0,0));if(!(m===DP.nil)){m.SetInt64(new $Int64(0,0));}if(!(n===DP.nil)){n.SetInt64(new $Int64(0,0));}$s=-1;return q;}if(m===DP.nil&&n===DP.nil){$s=1;continue;}$s=2;continue;case 1:r=q.binaryGCD(o,p);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return r;case 2:s=new BO.ptr(false,BX.nil).Set(o);t=new BO.ptr(false,BX.nil).Set(p);u=new BO.ptr(false,BX.nil);v=new BO.ptr(false,BX.nil).SetInt64(new $Int64(0,1));w=new BO.ptr(false,BX.nil).SetInt64(new $Int64(0,1));x=new BO.ptr(false,BX.nil);y=new BO.ptr(false,BX.nil);z=new BO.ptr(false,BX.nil);aa=new BO.ptr(false,BX.nil);case 4:if(!(t.abs.$length>0)){$s=5;continue;}ac=y.QuoRem(s,t,aa);$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;y=ab[0];aa=ab[1];ad=t;ae=aa;af=s;s=ad;t=ae;aa=af;z.Set(u);u.Mul(u,y);u.neg=!u.neg;u.Add(u,w);w.Set(z);z.Set(v);v.Mul(v,y);v.neg=!v.neg;v.Add(v,x);x.Set(z);$s=4;continue;case 5:if(!(m===DP.nil)){BO.copy(m,w);}if(!(n===DP.nil)){BO.copy(n,x);}BO.copy(q,s);$s=-1;return q;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.GCD};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.GCD=function(m,n,o,p){return this.$val.GCD(m,n,o,p);};BO.ptr.prototype.binaryGCD=function(m,n){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=o;q=new BO.ptr(false,BX.nil);if(m.abs.$length>n.abs.$length){$s=2;continue;}if(m.abs.$length<n.abs.$length){$s=3;continue;}$s=4;continue;case 2:r=q.Rem(m,n);$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;p.Set(n);$s=5;continue;case 3:s=q.Rem(n,m);$s=7;case 7:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;p.Set(m);$s=5;continue;case 4:q.Set(n);p.Set(m);case 5:case 1:if(q.abs.$length===0){$s=-1;return p;}t=p.abs.trailingZeroBits();u=q.abs.trailingZeroBits();if(u<t){t=u;}p.Rsh(p,t);q.Rsh(q,t);v=new BO.ptr(false,BX.nil);if(!(((((w=p.abs,(0>=w.$length?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+0]))&1)>>>0)===0))){v.Neg(q);}else{v.Set(p);}while(true){if(!(v.abs.$length>0)){break;}v.Rsh(v,v.abs.trailingZeroBits());if(v.neg){x=v;y=q;q=x;v=y;q.neg=q.abs.$length>0&&!q.neg;}else{z=v;aa=p;p=z;v=aa;}v.Sub(p,q);}$s=-1;return o.Lsh(p,t);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.binaryGCD};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.binaryGCD=function(m,n){return this.$val.binaryGCD(m,n);};BO.ptr.prototype.Rand=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;o.neg=false;if(n.neg||(n.abs.$length===0)){o.abs=BX.nil;$s=-1;return o;}p=o.abs.random(m,n.abs,n.abs.bitLen());$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o.abs=p;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Rand};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Rand=function(m,n){return this.$val.Rand(m,n);};BO.ptr.prototype.ModInverse=function(m,n){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(m.neg){$s=1;continue;}$s=2;continue;case 1:p=new BO.ptr(false,BX.nil);q=p.Mod(m,n);$s=3;case 3:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}m=q;case 2:r=new BO.ptr(false,BX.nil);s=r.GCD(o,DP.nil,m,n);$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;if(o.neg){o.Add(o,n);}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ModInverse};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ModInverse=function(m,n){return this.$val.ModInverse(m,n);};BT=function(m,n){var $ptr,aa,ab,ac,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=[q];if((n.abs.$length===0)||((((r=n.abs,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))&1)>>>0)===0)){$s=1;continue;}$s=2;continue;case 1:s=A.Sprintf("big: invalid 2nd argument to Int.Jacobi: need odd integer but got %s",new DI([n]));$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$panic(new $String(s));case 2:t=new BO.ptr(false,BX.nil);u=new BO.ptr(false,BX.nil);v=new BO.ptr(false,BX.nil);o[0]=$clone(t,BO);p[0]=$clone(u,BO);q[0]=$clone(v,BO);o[0].Set(m);p[0].Set(n);w=1;if(p[0].neg){if(o[0].neg){w=-1;}p[0].neg=false;}case 4:if(p[0].Cmp(BP)===0){$s=-1;return w;}if(o[0].abs.$length===0){$s=-1;return 0;}x=o[0].Mod(o[0],p[0]);$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;if(o[0].abs.$length===0){$s=-1;return 0;}y=o[0].abs.trailingZeroBits();if(!((((y&1)>>>0)===0))){aa=((z=p[0].abs,(0>=z.$length?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+0]))&7)>>>0;if((aa===3)||(aa===5)){w=-w;}}q[0].Rsh(o[0],y);if(((((ab=p[0].abs,(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0]))&3)>>>0)===3)&&((((ac=q[0].abs,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))&3)>>>0)===3)){w=-w;}o[0].Set(p[0]);p[0].Set(q[0]);$s=4;continue;case 5:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Jacobi=BT;BO.ptr.prototype.modSqrt3Mod4Prime=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;o.Set(n);o.Add(o,BP);o.Rsh(o,2);p=o.Exp(m,o,n);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.modSqrt3Mod4Prime};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.modSqrt3Mod4Prime=function(m,n){return this.$val.modSqrt3Mod4Prime(m,n);};BO.ptr.prototype.modSqrtTonelliShanks=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=[q];r=[r];s=[s];t=[t];u=this;r[0]=new BO.ptr(false,BX.nil);r[0].Sub(n,BP);v=r[0].abs.trailingZeroBits();r[0].Rsh(r[0],v);q[0]=new BO.ptr(false,BX.nil);q[0].SetInt64(new $Int64(0,2));case 1:w=BT(q[0],n);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}if(!(!((w===-1)))){$s=2;continue;}q[0].Add(q[0],BP);$s=1;continue;case 2:x=new BO.ptr(false,BX.nil);y=new BO.ptr(false,BX.nil);z=new BO.ptr(false,BX.nil);aa=new BO.ptr(false,BX.nil);t[0]=$clone(x,BO);o[0]=$clone(y,BO);p[0]=$clone(z,BO);s[0]=$clone(aa,BO);t[0].Add(r[0],BP);t[0].Rsh(t[0],1);ab=t[0].Exp(m,t[0],n);$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;ac=o[0].Exp(m,r[0],n);$s=5;case 5:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;ad=p[0].Exp(q[0],r[0],n);$s=6;case 6:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ad;ae=v;case 7:af=0;s[0].Set(o[0]);case 9:if(!(!((s[0].Cmp(BP)===0)))){$s=10;continue;}ag=s[0].Mul(s[0],s[0]).Mod(s[0],n);$s=11;case 11:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ag;af=af+(1)>>>0;$s=9;continue;case 10:if(af===0){$s=-1;return u.Set(t[0]);}ah=s[0].SetInt64(new $Int64(0,0)).SetBit(s[0],(((ae-af>>>0)-1>>>0)>>0),1).Exp(p[0],s[0],n);$s=12;case 12:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ai=p[0].Mul(s[0],s[0]).Mod(p[0],n);$s=13;case 13:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;aj=t[0].Mul(t[0],s[0]).Mod(t[0],n);$s=14;case 14:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}aj;ak=o[0].Mul(o[0],p[0]).Mod(o[0],n);$s=15;case 15:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ak;ae=af;$s=7;continue;case 8:$s=-1;return DP.nil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.modSqrtTonelliShanks};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.modSqrtTonelliShanks=function(m,n){return this.$val.modSqrtTonelliShanks(m,n);};BO.ptr.prototype.ModSqrt=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=BT(m,n);$s=2;case 2:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(q===(-1)){$s=-1;return DP.nil;}else if(q===(0)){$s=-1;return o.SetInt64(new $Int64(0,0));}else if(q===(1)){$s=1;continue;}case 1:if(m.neg||m.Cmp(n)>=0){$s=3;continue;}$s=4;continue;case 3:r=new BO.ptr(false,BX.nil).Mod(m,n);$s=5;case 5:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}m=r;case 4:if(n.abs.$length>0&&((s=(t=n.abs,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]))%4,s===s?s:$throwRuntimeError("integer divide by zero"))===3)){$s=6;continue;}$s=7;continue;case 6:u=o.modSqrt3Mod4Prime(m,n);$s=8;case 8:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$s=-1;return u;case 7:v=o.modSqrtTonelliShanks(m,n);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ModSqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ModSqrt=function(m,n){return this.$val.ModSqrt(m,n);};BO.ptr.prototype.Lsh=function(m,n){var $ptr,m,n,o;o=this;o.abs=o.abs.shl(m.abs,n);o.neg=m.neg;return o;};BO.prototype.Lsh=function(m,n){return this.$val.Lsh(m,n);};BO.ptr.prototype.Rsh=function(m,n){var $ptr,m,n,o,p;o=this;if(m.neg){p=o.abs.sub(m.abs,BY);p=p.shr(p,n);o.abs=p.add(p,BY);o.neg=true;return o;}o.abs=o.abs.shr(m.abs,n);o.neg=false;return o;};BO.prototype.Rsh=function(m,n){return this.$val.Rsh(m,n);};BO.ptr.prototype.Bit=function(m){var $ptr,m,n,o,p;n=this;if(m===0){if(n.abs.$length>0){return((((o=n.abs,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))&1)>>>0)>>>0);}return 0;}if(m<0){$panic(new $String("negative bit index"));}if(n.neg){p=BX.nil.sub(n.abs,BY);return(p.bit((m>>>0))^1)>>>0;}return n.abs.bit((m>>>0));};BO.prototype.Bit=function(m){return this.$val.Bit(m);};BO.ptr.prototype.SetBit=function(m,n,o){var $ptr,m,n,o,p,q;p=this;if(n<0){$panic(new $String("negative bit index"));}if(m.neg){q=p.abs.sub(m.abs,BY);q=q.setBit(q,(n>>>0),(o^1)>>>0);p.abs=q.add(q,BY);p.neg=p.abs.$length>0;return p;}p.abs=p.abs.setBit(m.abs,(n>>>0),o);p.neg=false;return p;};BO.prototype.SetBit=function(m,n,o){return this.$val.SetBit(m,n,o);};BO.ptr.prototype.And=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.or(p,q),BY);o.neg=true;return o;}o.abs=o.abs.and(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.andNot(m.abs,t);o.neg=false;return o;};BO.prototype.And=function(m,n){return this.$val.And(m,n);};BO.ptr.prototype.AndNot=function(m,n){var $ptr,m,n,o,p,q,r,s;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.andNot(q,p);o.neg=false;return o;}o.abs=o.abs.andNot(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=BX.nil.sub(m.abs,BY);o.abs=o.abs.add(o.abs.or(r,n.abs),BY);o.neg=true;return o;}s=BX.nil.sub(n.abs,BY);o.abs=o.abs.and(m.abs,s);o.neg=false;return o;};BO.prototype.AndNot=function(m,n){return this.$val.AndNot(m,n);};BO.ptr.prototype.Or=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.and(p,q),BY);o.neg=true;return o;}o.abs=o.abs.or(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.andNot(t,m.abs),BY);o.neg=true;return o;};BO.prototype.Or=function(m,n){return this.$val.Or(m,n);};BO.ptr.prototype.Xor=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.xor(p,q);o.neg=false;return o;}o.abs=o.abs.xor(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.xor(m.abs,t),BY);o.neg=true;return o;};BO.prototype.Xor=function(m,n){return this.$val.Xor(m,n);};BO.ptr.prototype.Not=function(m){var $ptr,m,n;n=this;if(m.neg){n.abs=n.abs.sub(m.abs,BY);n.neg=false;return n;}n.abs=n.abs.add(m.abs,BY);n.neg=true;return n;};BO.prototype.Not=function(m){return this.$val.Not(m);};BO.ptr.prototype.Sqrt=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.neg){$panic(new $String("square root of negative number"));}n.neg=false;o=n.abs.sqrt(m.abs);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n.abs=o;$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Sqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Sqrt=function(m){return this.$val.Sqrt(m);};BO.ptr.prototype.Text=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(n===DP.nil){$s=-1;return"<nil>";}o=n.abs.itoa(n.neg,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return $bytesToString(o);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Text};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Text=function(m){return this.$val.Text(m);};BO.ptr.prototype.Append=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(o===DP.nil){$s=-1;return $appendSlice(m,"<nil>");}p=m;q=o.abs.itoa(o.neg,n);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;$s=-1;return $appendSlice(p,r);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Append};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Append=function(m,n){return this.$val.Append(m,n);};BO.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.Text(10);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.String=function(){return this.$val.String();};BU=function(m,n,o){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(n.length>0){$s=1;continue;}$s=2;continue;case 1:p=new DM($stringToBytes(n));case 3:if(!(o>0)){$s=4;continue;}q=m.Write(p);$s=5;case 5:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;o=o-(1)>>0;$s=3;continue;case 4:case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:BU};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.Format=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=0;q=n;if(q===(98)){$s=2;continue;}if(q===(111)){$s=3;continue;}if((q===(100))||(q===(115))||(q===(118))){$s=4;continue;}if((q===(120))||(q===(88))){$s=5;continue;}$s=6;continue;case 2:p=2;$s=7;continue;case 3:p=8;$s=7;continue;case 4:p=10;$s=7;continue;case 5:p=16;$s=7;continue;case 6:r=m;s=new $Int32(n);t=o.String();$s=8;case 8:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=new $String(t);v=A.Fprintf(r,"%%!%c(big.Int=%s)",new DI([s,u]));$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;$s=-1;return;case 7:case 1:if(o===DP.nil){$s=10;continue;}$s=11;continue;case 10:w=A.Fprint(m,new DI([new $String("<nil>")]));$s=12;case 12:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=-1;return;case 11:x="";if(o.neg){$s=14;continue;}y=m.Flag(43);$s=18;case 18:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(y){$s=15;continue;}z=m.Flag(32);$s=19;case 19:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}if(z){$s=16;continue;}$s=17;continue;case 14:x="-";$s=17;continue;case 15:x="+";$s=17;continue;case 16:x=" ";case 17:case 13:aa="";ab=m.Flag(35);$s=22;case 22:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab){$s=20;continue;}$s=21;continue;case 20:ac=n;if(ac===(111)){aa="0";}else if(ac===(120)){aa="0x";}else if(ac===(88)){aa="0X";}case 21:ad=o.abs.utoa(p);$s=23;case 23:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;if(n===88){af=ae;ag=0;while(true){if(!(ag<af.$length)){break;}ah=ag;ai=((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag]);if(97<=ai&&ai<=122){((ah<0||ah>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+ah]=(65+((ai-97<<24>>>24))<<24>>>24));}ag++;}}aj=0;ak=0;al=0;an=m.Precision();$s=24;case 24:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(ap){if(ae.$length<ao){ak=ao-ae.$length>>0;}else if((ae.$length===1)&&((0>=ae.$length?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+0])===48)&&(ao===0)){$s=-1;return;}}aq=((x.length+aa.length>>0)+ak>>0)+ae.$length>>0;as=m.Width();$s=25;case 25:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;at=ar[0];au=ar[1];if(au&&aq<at){$s=26;continue;}$s=27;continue;case 26:av=at-aq>>0;aw=m.Flag(45);$s=33;case 33:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw){$s=29;continue;}ax=m.Flag(48);$s=34;case 34:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(ax&&!ap){$s=30;continue;}$s=31;continue;case 29:al=av;$s=32;continue;case 30:ak=av;$s=32;continue;case 31:aj=av;case 32:case 28:case 27:$r=BU(m," ",aj);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,x,1);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,aa,1);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,"0",ak);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ay=m.Write(ae);$s=39;case 39:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ay;$r=BU(m," ",al);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Format};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Format=function(m,n){return this.$val.Format(m,n);};BO.ptr.prototype.scan=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=BV(m);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,0,s];}u=o.abs.scan(m,n,false);$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;o.abs=t[0];n=t[1];s=t[3];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,n,s];}o.neg=o.abs.$length>0&&r;$s=-1;return[o,n,$ifaceNil];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.scan};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.scan=function(m,n){return this.$val.scan(m,n);};BV=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=false;o=$ifaceNil;p=0;r=m.ReadByte();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p=q[0];o=q[1];if(!($interfaceIsEqual(o,$ifaceNil))){s=false;t=o;n=s;o=t;$s=-1;return[n,o];}u=p;if(u===(45)){$s=3;continue;}if(u===(43)){$s=4;continue;}$s=5;continue;case 3:n=true;$s=6;continue;case 4:$s=6;continue;case 5:v=m.UnreadByte();$s=7;case 7:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;case 6:case 2:$s=-1;return[n,o];}return;}if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BW.ptr.prototype.ReadByte=function(){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=m.ScanState.ReadRune();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];r=n[2];if(!((q===1))&&$interfaceIsEqual(r,$ifaceNil)){$s=2;continue;}$s=3;continue;case 2:s=A.Errorf("invalid rune %#U",new DI([new $Int32(p)]));$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;case 3:$s=-1;return[(p<<24>>>24),r];}return;}if($f===undefined){$f={$blk:BW.ptr.prototype.ReadByte};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BW.prototype.ReadByte=function(){return this.$val.ReadByte();};BW.ptr.prototype.UnreadByte=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.ScanState.UnreadRune();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BW.ptr.prototype.UnreadByte};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BW.prototype.UnreadByte=function(){return this.$val.UnreadByte();};BO.ptr.prototype.Scan=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;$r=m.SkipSpace();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=0;q=n;if(q===(98)){p=2;}else if(q===(111)){p=8;}else if(q===(100)){p=10;}else if((q===(120))||(q===(88))){p=16;}else if((q===(115))||(q===(118))){}else{$s=-1;return I.New("Int.Scan: invalid verb");}t=o.scan((s=new BW.ptr(m),new s.constructor.elem(s)),p);$s=2;case 2:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;u=r[2];$s=-1;return u;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Scan};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Scan=function(m,n){return this.$val.Scan(m,n);};BO.ptr.prototype.GobEncode=function(){var $ptr,m,n,o,p;m=this;if(m===DP.nil){return[DM.nil,$ifaceNil];}n=$makeSlice(DM,(1+($imul(m.abs.$length,4))>>0));o=m.abs.bytes(n)-1>>0;p=2;if(m.neg){p=(p|(1))>>>0;}((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]=p);return[$subslice(n,o),$ifaceNil];};BO.prototype.GobEncode=function(){return this.$val.GobEncode();};BO.ptr.prototype.GobDecode=function(m){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.$length===0){BO.copy(n,new BO.ptr(false,BX.nil));$s=-1;return $ifaceNil;}o=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]);if(!(((o>>>1<<24>>>24)===1))){$s=1;continue;}$s=2;continue;case 1:p=A.Errorf("Int.GobDecode: encoding version %d not supported",new DI([new $Uint8((o>>>1<<24>>>24))]));$s=3;case 3:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;case 2:n.neg=!((((o&1)>>>0)===0));n.abs=n.abs.setBytes($subslice(m,1));$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.GobDecode=function(m){return this.$val.GobDecode(m);};BO.ptr.prototype.MarshalText=function(){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=DM.nil;n=$ifaceNil;o=this;if(o===DP.nil){p=new DM($stringToBytes("<nil>"));q=$ifaceNil;m=p;n=q;$s=-1;return[m,n];}s=o.abs.itoa(o.neg,10);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=$ifaceNil;m=r;n=t;$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.MarshalText=function(){return this.$val.MarshalText();};BO.ptr.prototype.UnmarshalText=function(m){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;p=n.SetString($bytesToString(m),0);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[1];if(!q){$s=2;continue;}$s=3;continue;case 2:r=A.Errorf("math/big: cannot unmarshal %q into a *big.Int",new DI([m]));$s=4;case 4:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return r;case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.UnmarshalText=function(m){return this.$val.UnmarshalText(m);};BO.ptr.prototype.MarshalJSON=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.MarshalText();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BO.ptr.prototype.UnmarshalJSON=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if($bytesToString(m)==="null"){$s=-1;return $ifaceNil;}o=n.UnmarshalText(m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.UnmarshalJSON=function(m){return this.$val.UnmarshalJSON(m);};BX.prototype.clear=function(){var $ptr,m,n,o,p;m=this;n=m;o=0;while(true){if(!(o<n.$length)){break;}p=o;((p<0||p>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+p]=0);o++;}};$ptrType(BX).prototype.clear=function(){return this.$get().clear();};BX.prototype.norm=function(){var $ptr,m,n,o;m=this;n=m.$length;while(true){if(!(n>0&&((o=n-1>>0,((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]))===0))){break;}n=n-(1)>>0;}return $subslice(m,0,n);};$ptrType(BX).prototype.norm=function(){return this.$get().norm();};BX.prototype.make=function(m){var $ptr,m,n;n=this;if(m<=n.$capacity){return $subslice(n,0,m);}return $makeSlice(BX,m,(m+4>>0));};$ptrType(BX).prototype.make=function(m){return this.$get().make(m);};BX.prototype.setWord=function(m){var $ptr,m,n;n=this;if(m===0){return $subslice(n,0,0);}n=n.make(1);(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]=m);return n;};$ptrType(BX).prototype.setWord=function(m){return this.$get().setWord(m);};BX.prototype.setUint64=function(m){var $ptr,m,n,o,p,q,r,s,t,u;n=this;o=(m.$low>>>0);if((p=new $Uint64(0,o.constructor===Number?o:1),(p.$high===m.$high&&p.$low===m.$low))){return n.setWord(o);}q=0;r=m;while(true){if(!((r.$high>0||(r.$high===0&&r.$low>0)))){break;}q=q+(1)>>0;r=$shiftRightUint64(r,(32));}n=n.make(q);s=n;t=0;while(true){if(!(t<s.$length)){break;}u=t;((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]=(new $Uint64(m.$high&0,(m.$low&4294967295)>>>0).$low>>>0));m=$shiftRightUint64(m,(32));t++;}return n;};$ptrType(BX).prototype.setUint64=function(m){return this.$get().setUint64(m);};BX.prototype.set=function(m){var $ptr,m,n;n=this;n=n.make(m.$length);$copySlice(n,m);return n;};$ptrType(BX).prototype.set=function(m){return this.$get().set(m);};BX.prototype.add=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;if(p<q){return o.add(n,m);}else if((p===0)){return $subslice(o,0,0);}else if((q===0)){return o.set(m);}o=o.make(p+1>>0);s=M((r=$subslice(o,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(p>q){s=O((t=$subslice(o,q,p),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),(u=$subslice(m,q),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),s);}((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=s);return o.norm();};$ptrType(BX).prototype.add=function(m,n){return this.$get().add(m,n);};BX.prototype.sub=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;if(p<q){$panic(new $String("underflow"));}else if((p===0)){return $subslice(o,0,0);}else if((q===0)){return o.set(m);}o=o.make(p);s=N((r=$subslice(o,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(p>q){s=P((t=$subslice(o,q),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),(u=$subslice(m,q),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),s);}if(!((s===0))){$panic(new $String("underflow"));}return o.norm();};$ptrType(BX).prototype.sub=function(m,n){return this.$get().sub(m,n);};BX.prototype.cmp=function(m){var $ptr,m,n,o,p,q,r;n=0;o=this;p=o.$length;q=m.$length;if(!((p===q))||(p===0)){if(p<q){n=-1;}else if(p>q){n=1;}return n;}r=p-1>>0;while(true){if(!(r>0&&(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])===((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])))){break;}r=r-(1)>>0;}if(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])<((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])){n=-1;}else if(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])>((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])){n=1;}return n;};$ptrType(BX).prototype.cmp=function(m){return this.$get().cmp(m);};BX.prototype.mulAddWW=function(m,n,o){var $ptr,m,n,o,p,q,r;p=this;q=m.$length;if((q===0)||(n===0)){return p.setWord(o);}p=p.make(q+1>>0);((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]=S((r=$subslice(p,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),n,o));return p.norm();};$ptrType(BX).prototype.mulAddWW=function(m,n,o){return this.$get().mulAddWW(m,n,o);};CB=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u;$subslice(m,0,(n.$length+o.$length>>0)).clear();p=o;q=0;while(true){if(!(q<p.$length)){break;}r=q;s=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);if(!((s===0))){(u=n.$length+r>>0,((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]=T((t=$subslice(m,r,(r+n.$length>>0)),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length),s)));}q++;}};BX.prototype.montgomery=function(m,n,o,p,q){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;r=this;if(!((m.$length===q))||!((n.$length===q))||!((o.$length===q))){$panic(new $String("math/big: mismatched montgomery number lengths"));}r=r.make(q);r.clear();s=0;t=0;while(true){if(!(t<q)){break;}u=((t<0||t>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+t]);v=T($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),u);w=$imul((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]),p)>>>0;x=T($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),w);$copySlice(r,$subslice(r,1));y=s+v>>>0;z=y+x>>>0;(aa=q-1>>0,((aa<0||aa>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+aa]=z));if(y<v||z<x){s=1;}else{s=0;}t=t+(1)>>0;}if(!((s===0))){N($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length));}return r;};$ptrType(BX).prototype.montgomery=function(m,n,o,p,q){return this.$get().montgomery(m,n,o,p,q);};CC=function(m,n,o){var $ptr,m,n,o,p,q,r,s;q=M((p=$subslice(m,0,o),$subslice(new DO(p.$array),p.$offset,p.$offset+p.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((q===0))){O((r=$subslice(m,o,(o+(o>>1>>0)>>0)),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),(s=$subslice(m,o),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),q);}};CD=function(m,n,o){var $ptr,m,n,o,p,q,r,s;q=N((p=$subslice(m,0,o),$subslice(new DO(p.$array),p.$offset,p.$offset+p.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((q===0))){P((r=$subslice(m,o,(o+(o>>1>>0)>>0)),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),(s=$subslice(m,o),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),q);}};CF=function(m,n,o){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=o.$length;if(!(((p&1)===0))||p<CE||p<2){CB(m,n,o);return;}q=p>>1>>0;r=$subslice(n,q);s=$subslice(n,0,q);t=r;u=s;v=$subslice(o,q);w=$subslice(o,0,q);x=v;y=w;CF(m,u,y);CF($subslice(m,p),t,x);z=1;aa=$subslice(m,($imul(2,p)),(($imul(2,p))+q>>0));if(!((N($subslice(new DO(aa.$array),aa.$offset,aa.$offset+aa.$length),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length))===0))){z=-z;N($subslice(new DO(aa.$array),aa.$offset,aa.$offset+aa.$length),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length));}ab=$subslice(m,(($imul(2,p))+q>>0),($imul(3,p)));if(!((N($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(y.$array),y.$offset,y.$offset+y.$length),$subslice(new DO(x.$array),x.$offset,x.$offset+x.$length))===0))){z=-z;N($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(x.$array),x.$offset,x.$offset+x.$length),$subslice(new DO(y.$array),y.$offset,y.$offset+y.$length));}ac=$subslice(m,($imul(p,3)));CF(ac,aa,ab);ad=$subslice(m,($imul(p,4)));$copySlice(ad,$subslice(m,0,($imul(p,2))));CC($subslice(m,q),ad,p);CC($subslice(m,q),$subslice(ad,p),p);if(z>0){CC($subslice(m,q),ac,p);}else{CD($subslice(m,q),ac,p);}};CG=function(m,n){var $ptr,m,n,o,p;return m.$capacity>0&&n.$capacity>0&&(o=$subslice(m,0,m.$capacity),$indexPtr(o.$array,o.$offset+(m.$capacity-1>>0),DR))===(p=$subslice(n,0,n.$capacity),$indexPtr(p.$array,p.$offset+(n.$capacity-1>>0),DR));};CH=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v;p=n.$length;if(p>0){s=M((q=$subslice(m,o,(o+p>>0)),$subslice(new DO(q.$array),q.$offset,q.$offset+q.$length)),(r=$subslice(m,o),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((s===0))){t=o+p>>0;if(t<m.$length){O((u=$subslice(m,t),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),(v=$subslice(m,t),$subslice(new DO(v.$array),v.$offset,v.$offset+v.$length)),s);}}}};CI=function(m,n){var $ptr,m,n;if(m>n){return m;}return n;};CJ=function(m){var $ptr,m,n,o;n=0;while(true){if(!(m>CE)){break;}m=(m>>$min((1),31))>>0;n=n+(1)>>>0;}return(o=n,o<32?(m<<o):0)>>0;};BX.prototype.mul=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=this;p=m.$length;q=n.$length;if(p<q){return o.mul(n,m);}else if((p===0)||(q===0)){return $subslice(o,0,0);}else if((q===1)){return o.mulAddWW(m,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]),0);}if(CG(o,m)||CG(o,n)){o=BX.nil;}if(q<CE){o=o.make(p+q>>0);CB(o,m,n);return o.norm();}r=CJ(q);s=$subslice(m,0,r);t=$subslice(n,0,r);o=o.make(CI($imul(6,r),p+q>>0));CF(o,s,t);o=$subslice(o,0,(p+q>>0));$subslice(o,($imul(2,r))).clear();if(r<q||!((p===q))){u=BX.nil;v=s.norm();w=$subslice(n,r);u=u.mul(v,w);CH(o,u,r);x=t.norm();y=r;while(true){if(!(y<m.$length)){break;}z=$subslice(m,y);if(z.$length>r){z=$subslice(z,0,r);}z=z.norm();u=u.mul(z,x);CH(o,u,y);u=u.mul(z,w);CH(o,u,y+r>>0);y=y+(r)>>0;}}return o.norm();};$ptrType(BX).prototype.mul=function(m,n){return this.$get().mul(m,n);};BX.prototype.mulRange=function(m,n){var $ptr,m,n,o,p,q;o=this;if((m.$high===0&&m.$low===0)){return o.setUint64(new $Uint64(0,0));}else if((m.$high>n.$high||(m.$high===n.$high&&m.$low>n.$low))){return o.setUint64(new $Uint64(0,1));}else if((m.$high===n.$high&&m.$low===n.$low)){return o.setUint64(m);}else if((p=new $Uint64(m.$high+0,m.$low+1),(p.$high===n.$high&&p.$low===n.$low))){return o.mul(BX.nil.setUint64(m),BX.nil.setUint64(n));}q=$div64((new $Uint64(m.$high+n.$high,m.$low+n.$low)),new $Uint64(0,2),false);return o.mul(BX.nil.mulRange(m,q),BX.nil.mulRange(new $Uint64(q.$high+0,q.$low+1),n));};$ptrType(BX).prototype.mulRange=function(m,n){return this.$get().mulRange(m,n);};BX.prototype.divW=function(m,n){var $ptr,m,n,o,p,q,r;o=BX.nil;p=0;q=this;r=m.$length;if((n===0)){$panic(new $String("division by zero"));}else if((n===1)){o=q.set(m);return[o,p];}else if((r===0)){o=$subslice(q,0,0);return[o,p];}q=q.make(r);p=U($subslice(new DO(q.$array),q.$offset,q.$offset+q.$length),0,$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),n);o=q.norm();return[o,p];};$ptrType(BX).prototype.divW=function(m,n){return this.$get().divW(m,n);};BX.prototype.div=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=BX.nil;r=this;if(o.$length===0){$panic(new $String("division by zero"));}if(n.cmp(o)<0){p=$subslice(r,0,0);q=m.set(n);$s=-1;return[p,q];}if(o.$length===1){s=0;t=r.divW(n,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));p=t[0];s=t[1];q=m.setWord(s);$s=-1;return[p,q];}v=r.divLarge(m,n,o);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;p=u[0];q=u[1];$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:BX.prototype.div};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.div=function(m,n,o){return this.$get().div(m,n,o);};CK=function(m){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=DS.nil;o=CM.Get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){n=$assertType(p,DS);}if(n===DS.nil){n=$newDataPointer(BX.nil,DS);}n.$set(n.make(m));$s=-1;return n;}return;}if($f===undefined){$f={$blk:CK};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};CL=function(m){var $ptr,m;CM.Put(m);};BX.prototype.divLarge=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=BX.nil;r=this;s=o.$length;t=n.$length-s>>0;if(CG(r,n)||CG(r,o)){r=BX.nil;}p=r.make(t+1>>0);u=CK(s+1>>0);$s=1;case 1:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=u;w=v.$get();if(CG(m,n)||CG(m,o)){m=BX.nil;}m=m.make(n.$length+1>>0);m.clear();x=DS.nil;z=AE((y=s-1>>0,((y<0||y>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+y])));if(z>0){$s=2;continue;}$s=3;continue;case 2:aa=CK(s);$s=4;case 4:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}x=aa;ab=x.$get();Q($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),z);o=ab;case 3:(ad=n.$length,((ad<0||ad>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ad]=Q((ac=$subslice(m,0,n.$length),$subslice(new DO(ac.$array),ac.$offset,ac.$offset+ac.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length),z)));af=(ae=s-1>>0,((ae<0||ae>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+ae]));ag=t;while(true){if(!(ag>=0)){break;}ah=4294967295;aj=(ai=ag+s>>0,((ai<0||ai>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ai]));if(!((aj===af))){ak=0;al=L(aj,(am=(ag+s>>0)-1>>0,((am<0||am>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+am])),af);ah=al[0];ak=al[1];ao=(an=s-2>>0,((an<0||an>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+an]));ap=K(ah,ao);aq=ap[0];ar=ap[1];at=(as=(ag+s>>0)-2>>0,((as<0||as>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+as]));while(true){if(!(CQ(aq,ar,ak,at))){break;}ah=ah-(1)>>>0;au=ak;ak=ak+(af)>>>0;if(ak<au){break;}av=K(ah,ao);aq=av[0];ar=av[1];}}((s<0||s>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+s]=S((aw=$subslice(w,0,s),$subslice(new DO(aw.$array),aw.$offset,aw.$offset+aw.$length)),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),ah,0));az=N((ax=$subslice(m,ag,(ag+w.$length>>0)),$subslice(new DO(ax.$array),ax.$offset,ax.$offset+ax.$length)),(ay=$subslice(m,ag),$subslice(new DO(ay.$array),ay.$offset,ay.$offset+ay.$length)),$subslice(new DO(w.$array),w.$offset,w.$offset+w.$length));if(!((az===0))){bc=M((ba=$subslice(m,ag,(ag+s>>0)),$subslice(new DO(ba.$array),ba.$offset,ba.$offset+ba.$length)),(bb=$subslice(m,ag),$subslice(new DO(bb.$array),bb.$offset,bb.$offset+bb.$length)),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length));bd=ag+s>>0;((bd<0||bd>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+bd]=(((bd<0||bd>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+bd])+(bc)>>>0));ah=ah-(1)>>>0;}((ag<0||ag>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ag]=ah);ag=ag-(1)>>0;}if(!(x===DS.nil)){CL(x);}CL(v);p=p.norm();R($subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),z);q=m.norm();be=p;bf=q;p=be;q=bf;$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:BX.prototype.divLarge};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.divLarge=function(m,n,o){return this.$get().divLarge(m,n,o);};BX.prototype.bitLen=function(){var $ptr,m,n;m=this;n=m.$length-1>>0;if(n>=0){return($imul(n,32))+V(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]))>>0;}return 0;};$ptrType(BX).prototype.bitLen=function(){return this.$get().bitLen();};CP=function(m){var $ptr,m,n,o,p;n=32;if(n===(32)){return((o=(($imul((((m&(-m>>>0))>>>0)),125613361)>>>0))>>>27>>>0,((o<0||o>=CN.length)?($throwRuntimeError("index out of range"),undefined):CN[o]))>>>0);}else if(n===(64)){return((p=0,((p<0||p>=CO.length)?($throwRuntimeError("index out of range"),undefined):CO[p]))>>>0);}else{$panic(new $String("unknown word size"));}};BX.prototype.trailingZeroBits=function(){var $ptr,m,n;m=this;if(m.$length===0){return 0;}n=0;while(true){if(!(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])===0)){break;}n=n+(1)>>>0;}return(n*32>>>0)+CP(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]))>>>0;};$ptrType(BX).prototype.trailingZeroBits=function(){return this.$get().trailingZeroBits();};BX.prototype.shl=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;p=m.$length;if(p===0){return $subslice(o,0,0);}r=p+((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0)>>0;o=o.make(r+1>>0);((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=Q((s=$subslice(o,(r-p>>0),r),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),(t=n%32,t===t?t:$throwRuntimeError("integer divide by zero"))));$subslice(o,0,(r-p>>0)).clear();return o.norm();};$ptrType(BX).prototype.shl=function(m,n){return this.$get().shl(m,n);};BX.prototype.shr=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;p=m.$length;r=p-((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0)>>0;if(r<=0){return $subslice(o,0,0);}o=o.make(r);R($subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),(s=$subslice(m,(p-r>>0)),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),(t=n%32,t===t?t:$throwRuntimeError("integer divide by zero")));return o.norm();};$ptrType(BX).prototype.shr=function(m,n){return this.$get().shr(m,n);};BX.prototype.setBit=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=this;r=((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0);u=(s=((t=n%32,t===t?t:$throwRuntimeError("integer divide by zero"))),s<32?(1<<s):0)>>>0;v=m.$length;w=o;if(w===(0)){p=p.make(v);$copySlice(p,m);if(r>=v){return p;}((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r]=((((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r])&~(u))>>>0));return p.norm();}else if(w===(1)){if(r>=v){p=p.make(r+1>>0);$subslice(p,v).clear();}else{p=p.make(v);}$copySlice(p,m);((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r]=((((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r])|(u))>>>0));return p;}$panic(new $String("set bit is not 0 or 1"));};$ptrType(BX).prototype.setBit=function(m,n,o){return this.$get().setBit(m,n,o);};BX.prototype.bit=function(m){var $ptr,m,n,o,p,q,r;n=this;p=(o=m/32,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));if(p>=(n.$length>>>0)){return 0;}return(((((q=((r=m%32,r===r?r:$throwRuntimeError("integer divide by zero"))),q<32?(((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p])>>>q):0)>>>0)&1)>>>0)>>>0);};$ptrType(BX).prototype.bit=function(m){return this.$get().bit(m);};BX.prototype.and=function(m,n){var $ptr,m,n,o,p,q,r;o=this;p=m.$length;q=n.$length;if(p>q){p=q;}o=o.make(p);r=0;while(true){if(!(r<p)){break;}((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=((((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])&((r<0||r>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+r]))>>>0));r=r+(1)>>0;}return o.norm();};$ptrType(BX).prototype.and=function(m,n){return this.$get().and(m,n);};BX.prototype.andNot=function(m,n){var $ptr,m,n,o,p,q,r;o=this;p=m.$length;q=n.$length;if(q>p){q=p;}o=o.make(p);r=0;while(true){if(!(r<q)){break;}((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=((((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])&~((r<0||r>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+r]))>>>0));r=r+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(m,q,p));return o.norm();};$ptrType(BX).prototype.andNot=function(m,n){return this.$get().andNot(m,n);};BX.prototype.or=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;r=m;if(p<q){s=p;t=q;q=s;p=t;r=n;}o=o.make(p);u=0;while(true){if(!(u<q)){break;}((u<0||u>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+u]=((((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u])|((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]))>>>0));u=u+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(r,q,p));return o.norm();};$ptrType(BX).prototype.or=function(m,n){return this.$get().or(m,n);};BX.prototype.xor=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;r=m;if(p<q){s=p;t=q;q=s;p=t;r=n;}o=o.make(p);u=0;while(true){if(!(u<q)){break;}((u<0||u>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+u]=((((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u])^((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]))>>>0));u=u+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(r,q,p));return o.norm();};$ptrType(BX).prototype.xor=function(m,n){return this.$get().xor(m,n);};CQ=function(m,n,o,p){var $ptr,m,n,o,p;return m>o||(m===o)&&n>p;};BX.prototype.modW=function(m){var $ptr,m,n,o,p;n=0;o=this;p=BX.nil;p=p.make(o.$length);n=U($subslice(new DO(p.$array),p.$offset,p.$offset+p.$length),0,$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),m);return n;};$ptrType(BX).prototype.modW=function(m){return this.$get().modW(m);};BX.prototype.random=function(m,n,o){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(CG(p,n)){p=BX.nil;}p=p.make(n.$length);r=((q=o%32,q===q?q:$throwRuntimeError("integer divide by zero"))>>>0);if(r===0){r=32;}t=((((s=r,s<32?(1<<s):0)>>>0))-1>>>0);case 1:u=32;if(u===(32)){$s=4;continue;}if(u===(64)){$s=5;continue;}$s=6;continue;case 4:v=p;w=0;case 8:if(!(w<v.$length)){$s=9;continue;}x=w;y=m.Uint32();$s=10;case 10:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}((x<0||x>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+x]=(y>>>0));w++;$s=8;continue;case 9:$s=7;continue;case 5:z=p;aa=0;case 11:if(!(aa<z.$length)){$s=12;continue;}ab=aa;ac=m.Uint32();$s=13;case 13:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}((ab<0||ab>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ab]=(((ac>>>0)|0)>>>0));aa++;$s=11;continue;case 12:$s=7;continue;case 6:$panic(new $String("unknown word size"));case 7:case 3:ad=n.$length-1>>0;((ad<0||ad>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ad]=((((ad<0||ad>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ad])&(t))>>>0));if(p.cmp(n)<0){$s=2;continue;}$s=1;continue;case 2:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.random};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.random=function(m,n,o){return this.$get().random(m,n,o);};BX.prototype.expNN=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(CG(p,m)||CG(p,n)){p=BX.nil;}if((o.$length===1)&&((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])===1)){$s=-1;return p.setWord(0);}if(n.$length===0){$s=-1;return p.setWord(1);}if((n.$length===1)&&((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])===1)&&!((o.$length===0))){$s=1;continue;}$s=2;continue;case 1:r=p.div(p,m,o);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p=q[1];$s=-1;return p;case 2:if(!((o.$length===0))){p=p.make(o.$length);}p=p.set(m);if(m.cmp(BY)>0&&n.$length>1&&o.$length>0){$s=4;continue;}$s=5;continue;case 4:if((((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])&1)>>>0)===1){$s=6;continue;}$s=7;continue;case 6:s=p.expNNMontgomery(m,n,o);$s=8;case 8:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$s=-1;return s;case 7:t=p.expNNWindowed(m,n,o);$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=-1;return t;case 5:v=(u=n.$length-1>>0,((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]));w=AE(v)+1>>>0;v=(x=(w),x<32?(v<<x):0)>>>0;y=BX.nil;z=32-(w>>0)>>0;aa=BX.nil;ab=BX.nil;ac=aa;ad=ab;ae=0;case 10:if(!(ae<z)){$s=11;continue;}ac=ac.mul(p,p);af=p;ag=ac;ac=af;p=ag;if(!((((v&2147483648)>>>0)===0))){ac=ac.mul(p,m);ah=p;ai=ac;ac=ah;p=ai;}if(!((o.$length===0))){$s=12;continue;}$s=13;continue;case 12:ak=ac.div(ad,p,o);$s=14;case 14:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ac=aj[0];ad=aj[1];al=y;am=p;an=ac;ao=ad;ac=al;ad=am;y=an;p=ao;case 13:v=(ap=(1),ap<32?(v<<ap):0)>>>0;ae=ae+(1)>>0;$s=10;continue;case 11:aq=n.$length-2>>0;case 15:if(!(aq>=0)){$s=16;continue;}v=((aq<0||aq>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+aq]);ar=0;case 17:if(!(ar<32)){$s=18;continue;}ac=ac.mul(p,p);as=p;at=ac;ac=as;p=at;if(!((((v&2147483648)>>>0)===0))){ac=ac.mul(p,m);au=p;av=ac;ac=au;p=av;}if(!((o.$length===0))){$s=19;continue;}$s=20;continue;case 19:ax=ac.div(ad,p,o);$s=21;case 21:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ac=aw[0];ad=aw[1];ay=y;az=p;ba=ac;bb=ad;ac=ay;ad=az;y=ba;p=bb;case 20:v=(bc=(1),bc<32?(v<<bc):0)>>>0;ar=ar+(1)>>0;$s=17;continue;case 18:aq=aq-(1)>>0;$s=15;continue;case 16:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNN};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNN=function(m,n,o){return this.$get().expNN(m,n,o);};BX.prototype.expNNWindowed=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=BX.nil;r=BX.nil;s=q;t=r;u=DT.zero();u[0]=BY;u[1]=m;v=2;case 1:if(!(v<16)){$s=2;continue;}w=$indexPtr(u,(x=v/2,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero")),DS);y=$indexPtr(u,v,DS);z=$indexPtr(u,(v+1>>0),DS);aa=w;ab=y;ac=z;ab.$set(ab.mul(aa.$get(),aa.$get()));ae=s.div(t,ab.$get(),o);$s=3;case 3:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;s=ad[0];t=ad[1];af=t;ag=ab.$get();ab.$set(af);t=ag;ac.$set(ac.mul(ab.$get(),m));ai=s.div(t,ac.$get(),o);$s=4;case 4:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;s=ah[0];t=ah[1];aj=t;ak=ac.$get();ac.$set(aj);t=ak;v=v+(2)>>0;$s=1;continue;case 2:p=p.setWord(1);al=n.$length-1>>0;case 5:if(!(al>=0)){$s=6;continue;}am=((al<0||al>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+al]);an=0;case 7:if(!(an<32)){$s=8;continue;}if(!((al===(n.$length-1>>0)))||!((an===0))){$s=9;continue;}$s=10;continue;case 9:s=s.mul(p,p);ao=p;ap=s;s=ao;p=ap;ar=s.div(t,p,o);$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=ar;s=aq[0];t=aq[1];as=t;at=p;p=as;t=at;s=s.mul(p,p);au=p;av=s;s=au;p=av;ax=s.div(t,p,o);$s=12;case 12:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;s=aw[0];t=aw[1];ay=t;az=p;p=ay;t=az;s=s.mul(p,p);ba=p;bb=s;s=ba;p=bb;bd=s.div(t,p,o);$s=13;case 13:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;s=bc[0];t=bc[1];be=t;bf=p;p=be;t=bf;s=s.mul(p,p);bg=p;bh=s;s=bg;p=bh;bj=s.div(t,p,o);$s=14;case 14:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bi=bj;s=bi[0];t=bi[1];bk=t;bl=p;p=bk;t=bl;case 10:s=s.mul(p,(bm=am>>>28>>>0,((bm<0||bm>=u.length)?($throwRuntimeError("index out of range"),undefined):u[bm])));bn=p;bo=s;s=bn;p=bo;bq=s.div(t,p,o);$s=15;case 15:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}bp=bq;s=bp[0];t=bp[1];br=t;bs=p;p=br;t=bs;am=(bt=(4),bt<32?(am<<bt):0)>>>0;an=an+(4)>>0;$s=7;continue;case 8:al=al-(1)>>0;$s=5;continue;case 6:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNNWindowed};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNNWindowed=function(m,n,o){return this.$get().expNNWindowed(m,n,o);};BX.prototype.expNNMontgomery=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=o.$length;if(m.$length>q){$s=1;continue;}$s=2;continue;case 1:s=BX.nil.div(BX.nil,m,o);$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;m=r[1];case 2:if(m.$length<q){t=$makeSlice(BX,q);$copySlice(t,m);m=t;}u=2-(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])>>>0;v=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])-1>>>0;w=1;while(true){if(!(w<32)){break;}v=$imul(v,(v))>>>0;u=$imul(u,(((v+1>>>0))))>>>0;w=(x=(1),x<32?(w<<x):0)>>0;}u=-u>>>0;y=BX.nil.setWord(1);z=BX.nil.shl(y,(($imul(($imul(2,q)),32))>>>0));ab=y.div(y,z,o);$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;y=aa[1];if(y.$length<q){z=z.make(q);$copySlice(z,y);y=z;}ac=$makeSlice(BX,q);(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]=1);ad=DT.zero();ad[0]=ad[0].montgomery(ac,y,o,u,q);ad[1]=ad[1].montgomery(m,y,o,u,q);ae=2;while(true){if(!(ae<16)){break;}((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]=((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]).montgomery((af=ae-1>>0,((af<0||af>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[af])),ad[1],o,u,q));ae=ae+(1)>>0;}p=p.make(q);$copySlice(p,ad[0]);z=z.make(q);ag=n.$length-1>>0;while(true){if(!(ag>=0)){break;}ah=((ag<0||ag>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+ag]);ai=0;while(true){if(!(ai<32)){break;}if(!((ag===(n.$length-1>>0)))||!((ai===0))){z=z.montgomery(p,p,o,u,q);p=p.montgomery(z,z,o,u,q);z=z.montgomery(p,p,o,u,q);p=p.montgomery(z,z,o,u,q);}z=z.montgomery(p,(aj=ah>>>28>>>0,((aj<0||aj>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[aj])),o,u,q);ak=z;al=p;p=ak;z=al;ah=(am=(4),am<32?(ah<<am):0)>>>0;ai=ai+(4)>>0;}ag=ag-(1)>>0;}z=z.montgomery(p,ac,o,u,q);if(z.cmp(o)>=0){$s=5;continue;}$s=6;continue;case 5:z=z.sub(z,o);if(z.cmp(o)>=0){$s=7;continue;}$s=8;continue;case 7:ao=BX.nil.div(BX.nil,z,o);$s=9;case 9:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;z=an[1];case 8:case 6:$s=-1;return z.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNNMontgomery};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNNMontgomery=function(m,n,o){return this.$get().expNNMontgomery(m,n,o);};BX.prototype.bytes=function(m){var $ptr,m,n,o,p,q,r,s,t;n=0;o=this;n=m.$length;p=o;q=0;while(true){if(!(q<p.$length)){break;}r=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);s=0;while(true){if(!(s<4)){break;}n=n-(1)>>0;((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]=(r<<24>>>24));r=(t=(8),t<32?(r>>>t):0)>>>0;s=s+(1)>>0;}q++;}while(true){if(!(n<m.$length&&(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])===0))){break;}n=n+(1)>>0;}return n;};$ptrType(BX).prototype.bytes=function(m){return this.$get().bytes(m);};BX.prototype.setBytes=function(m){var $ptr,m,n,o,p,q,r,s,t,u;n=this;n=n.make((o=(((m.$length+4>>0)-1>>0))/4,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero")));p=0;q=0;r=0;s=m.$length;while(true){if(!(s>0)){break;}r=(r|(((t=q,t<32?(((u=s-1>>0,((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]))>>>0)<<t):0)>>>0)))>>>0;q=q+(8)>>>0;if(q===32){((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p]=r);p=p+(1)>>0;q=0;r=0;}s=s-(1)>>0;}if(p<n.$length){((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p]=r);}return n.norm();};$ptrType(BX).prototype.setBytes=function(m){return this.$get().setBytes(m);};BX.prototype.sqrt=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.cmp(BY)<=0){$s=-1;return n.set(m);}if(CG(n,m)){n=BX.nil;}o=BX.nil;p=BX.nil;q=o;r=p;q=n;q=q.setUint64(new $Uint64(0,1));q=q.shl(q,(((s=m.bitLen()/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))+1>>0)>>>0));t=0;case 1:v=r.div(BX.nil,m,q);$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;r=u[0];r=r.add(r,q);r=r.shr(r,1);if(r.cmp(q)>=0){if((t&1)===0){$s=-1;return q;}$s=-1;return n.set(q);}w=r;x=q;q=w;r=x;t=t+(1)>>0;$s=1;continue;case 2:$s=-1;return BX.nil;}return;}if($f===undefined){$f={$blk:BX.prototype.sqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.sqrt=function(m){return this.$get().sqrt(m);};CR=function(m){var $ptr,m,n,o,p,q,r,s;n=0;o=0;p=m;q=1;n=p;o=q;s=(r=4294967295/m,(r===r&&r!==1/0&&r!==-1/0)?r>>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(n<=s)){break;}n=$imul(n,(m))>>>0;o=o+(1)>>0;}return[n,o];};CS=function(m,n){var $ptr,m,n,o;o=0;o=1;while(true){if(!(n>0)){break;}if(!(((n&1)===0))){o=$imul(o,(m))>>>0;}m=$imul(m,(m))>>>0;n=(n>>$min((1),31))>>0;}return o;};BX.prototype.scan=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=0;r=0;s=$ifaceNil;t=this;u=(n===0)||!o&&2<=n&&n<=36||o&&((n===2)||(n===10)||(n===16));if(!u){$s=1;continue;}$s=2;continue;case 1:v=A.Sprintf("illegal number base %d",new DI([new $Int(n)]));$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$panic(new $String(v));case 2:x=m.ReadByte();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];s=w[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[p,q,r,s];}q=n;if(n===0){$s=5;continue;}$s=6;continue;case 5:q=10;if(y===48){$s=7;continue;}$s=8;continue;case 7:r=1;aa=m.ReadByte();$s=10;case 10:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;y=z[0];s=z[1];ab=s;if($interfaceIsEqual(ab,$ifaceNil)){$s=11;continue;}if($interfaceIsEqual(ab,(C.EOF))){$s=12;continue;}$s=13;continue;case 11:if(!o){q=8;}ac=y;if((ac===(120))||(ac===(88))){q=16;}else if((ac===(98))||(ac===(66))){q=2;}ad=q;if((ad===(16))||(ad===(2))){$s=16;continue;}if(ad===(8)){$s=17;continue;}$s=18;continue;case 16:r=0;af=m.ReadByte();$s=19;case 19:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;y=ae[0];s=ae[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[p,q,r,s];}$s=18;continue;case 17:r=0;case 18:case 15:$s=14;continue;case 12:p=$subslice(t,0,0);s=$ifaceNil;$s=-1;return[p,q,r,s];case 13:$s=-1;return[p,q,r,s];case 14:case 9:case 8:case 6:t=$subslice(t,0,0);ag=(q>>>0);ah=CR(ag);ai=ah[0];aj=ah[1];ak=0;al=0;am=-1;case 20:if(o&&(y===46)){$s=22;continue;}$s=23;continue;case 22:o=false;am=r;ao=m.ReadByte();$s=24;case 24:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;y=an[0];s=an[1];if(!($interfaceIsEqual(s,$ifaceNil))){if($interfaceIsEqual(s,C.EOF)){s=$ifaceNil;$s=21;continue;}$s=-1;return[p,q,r,s];}case 23:ap=0;if(48<=y&&y<=57){ap=((y-48<<24>>>24)>>>0);}else if(97<=y&&y<=122){ap=(((y-97<<24>>>24)+10<<24>>>24)>>>0);}else if(65<=y&&y<=90){ap=(((y-65<<24>>>24)+10<<24>>>24)>>>0);}else{ap=37;}if(ap>=ag){$s=25;continue;}$s=26;continue;case 25:aq=m.UnreadByte();$s=27;case 27:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}aq;$s=21;continue;case 26:r=r+(1)>>0;ak=($imul(ak,ag)>>>0)+ap>>>0;al=al+(1)>>0;if(al===aj){t=t.mulAddWW(t,ai,ak);ak=0;al=0;}as=m.ReadByte();$s=28;case 28:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;y=ar[0];s=ar[1];if(!($interfaceIsEqual(s,$ifaceNil))){if($interfaceIsEqual(s,C.EOF)){s=$ifaceNil;$s=21;continue;}$s=-1;return[p,q,r,s];}$s=20;continue;case 21:if(r===0){if((n===0)&&(q===8)){r=1;q=10;}else if(!((n===0))||!((q===8))){s=I.New("syntax error scanning number");}$s=-1;return[p,q,r,s];}if(al>0){t=t.mulAddWW(t,CS(ag,al),ak);}p=t.norm();if(am>=0){r=am-r>>0;}$s=-1;return[p,q,r,s];}return;}if($f===undefined){$f={$blk:BX.prototype.scan};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.scan=function(m,n,o){return this.$get().scan(m,n,o);};BX.prototype.utoa=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=n.itoa(false,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BX.prototype.utoa};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.utoa=function(m){return this.$get().utoa(m);};BX.prototype.itoa=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(n<2||n>36){$panic(new $String("invalid base"));}if(o.$length===0){$s=-1;return new DM($stringToBytes("0"));}p=(o.bitLen()/B.Log2(n)>>0)+1>>0;if(m){p=p+(1)>>0;}q=$makeSlice(DM,p);r=(n>>>0);if(r===((r&(-r>>>0))>>>0)){$s=1;continue;}$s=2;continue;case 1:s=CP(r);u=(((t=s,t<32?(1<<t):0)>>>0)-1>>>0);v=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]);w=32;x=1;while(true){if(!(x<o.$length)){break;}while(true){if(!(w>=s)){break;}p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(y=(s),y<32?(v>>>y):0)>>>0;w=w-(s)>>>0;}if(w===0){v=((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x]);w=32;}else{v=(v|(((z=w,z<32?(((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x])<<z):0)>>>0)))>>>0;p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(aa=((s-w>>>0)),aa<32?(((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x])>>>aa):0)>>>0;w=32-((s-w>>>0))>>>0;}x=x+(1)>>0;}while(true){if(!(!((v===0)))){break;}p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(ab=(s),ab<32?(v>>>ab):0)>>>0;}$s=3;continue;case 2:ac=CR(r);ad=ac[0];ae=ac[1];af=CW(o.$length,r,ae,ad);$s=4;case 4:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;ah=BX.nil.set(o);$r=ah.convertWords(q,r,ae,ad,ag);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=0;while(true){if(!(((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p])===48)){break;}p=p+(1)>>0;}case 3:if(m){p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]=45);}$s=-1;return $subslice(q,p);}return;}if($f===undefined){$f={$blk:BX.prototype.itoa};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.itoa=function(m,n){return this.$get().itoa(m,n);};BX.prototype.convertWords=function(m,n,o,p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:r=this;if(!(q===DU.nil)){$s=1;continue;}$s=2;continue;case 1:s=BX.nil;t=q.$length-1>>0;case 3:if(!(r.$length>CT)){$s=4;continue;}u=r.bitLen();v=u>>1>>0;while(true){if(!(t>0&&(w=t-1>>0,((w<0||w>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+w])).nbits>v)){break;}t=t-(1)>>0;}if(((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).nbits>=u&&((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).bbb.cmp(r)>=0){t=t-(1)>>0;if(t<0){$panic(new $String("internal inconsistency"));}}y=r.div(s,r,((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).bbb);$s=5;case 5:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y;r=x[0];s=x[1];z=m.$length-((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).ndigits>>0;$r=s.convertWords($subslice(m,z),n,o,p,$subslice(q,0,t));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}m=$subslice(m,0,z);$s=3;continue;case 4:case 2:aa=m.$length;ab=0;if(n===10){while(true){if(!(r.$length>0)){break;}ac=r.divW(r,p);r=ac[0];ab=ac[1];ad=0;while(true){if(!(ad<o&&aa>0)){break;}aa=aa-(1)>>0;af=(ae=ab/10,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"));((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=(48+((ab-($imul(af,10)>>>0)>>>0)<<24>>>24)<<24>>>24));ab=af;ad=ad+(1)>>0;}}}else{while(true){if(!(r.$length>0)){break;}ag=r.divW(r,p);r=ag[0];ab=ag[1];ah=0;while(true){if(!(ah<o&&aa>0)){break;}aa=aa-(1)>>0;((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((ai=ab%n,ai===ai?ai:$throwRuntimeError("integer divide by zero"))));ab=(aj=ab/(n),(aj===aj&&aj!==1/0&&aj!==-1/0)?aj>>>0:$throwRuntimeError("integer divide by zero"));ah=ah+(1)>>0;}}}while(true){if(!(aa>0)){break;}aa=aa-(1)>>0;((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=48);}$s=-1;return;}return;}if($f===undefined){$f={$blk:BX.prototype.convertWords};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.convertWords=function(m,n,o,p,q){return this.$get().convertWords(m,n,o,p,q);};BX.prototype.expWW=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=o.expNN(BX.nil.setWord(m),BX.nil.setWord(n),BX.nil);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BX.prototype.expWW};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expWW=function(m,n){return this.$get().expWW(m,n);};CW=function(m,n,o,p){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if((CT===0)||m<=CT){$s=-1;return DU.nil;}q=1;r=CT;while(true){if(!(r<(m>>1>>0)&&q<64)){break;}q=q+(1)>>0;r=(s=(1),s<32?(r<<s):0)>>0;}t=DU.nil;if(n===10){CV.Mutex.Lock();t=$subslice(new DU(CV.table),0,q);}else{t=$makeSlice(DU,q);}if((u=q-1>>0,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u])).ndigits===0){$s=1;continue;}$s=2;continue;case 1:v=BX.nil;w=0;case 3:if(!(w<q)){$s=4;continue;}if(((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits===0){$s=5;continue;}$s=6;continue;case 5:if(w===0){$s=7;continue;}$s=8;continue;case 7:x=BX.nil.expWW(p,(CT>>>0));$s=10;case 10:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]).bbb=x;(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]).ndigits=$imul(o,CT);$s=9;continue;case 8:((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb=BX.nil.mul((y=w-1>>0,((y<0||y>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+y])).bbb,(z=w-1>>0,((z<0||z>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+z])).bbb);((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits=$imul(2,(aa=w-1>>0,((aa<0||aa>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+aa])).ndigits);case 9:v=BX.nil.set(((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb);while(true){if(!(S($subslice(new DO(v.$array),v.$offset,v.$offset+v.$length),$subslice(new DO(v.$array),v.$offset,v.$offset+v.$length),n,0)===0)){break;}((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb.set(v);((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits+(1)>>0;}((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).nbits=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb.bitLen();case 6:w=w+(1)>>0;$s=3;continue;case 4:case 2:if(n===10){CV.Mutex.Unlock();}$s=-1;return t;}return;}if($f===undefined){$f={$blk:CW};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.ProbablyPrime=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m<0){$panic(new $String("negative n for ProbablyPrime"));}if(n.neg||(n.abs.$length===0)){$s=-1;return false;}p=(o=n.abs,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));if((n.abs.$length===1)&&p<64){$s=-1;return!((q=(r=$shiftLeft64(new $Uint64(0,1),p),new $Uint64(673221152&r.$high,(2693408940&r.$low)>>>0)),(q.$high===0&&q.$low===0)));}if(((p&1)>>>0)===0){$s=-1;return false;}s=0;t=0;u=s;v=t;w=32;if(w===(32)){u=(n.abs.modW(4127218095)>>>0);v=(n.abs.modW(3948078067)>>>0);}else if(w===(64)){x=n.abs.modW(820596253);u=((y=x%4127218095,y===y?y:$throwRuntimeError("integer divide by zero"))>>>0);v=((z=x%3948078067,z===z?z:$throwRuntimeError("integer divide by zero"))>>>0);}else{$panic(new $String("math/big: invalid word size"));}if(((aa=u%3,aa===aa?aa:$throwRuntimeError("integer divide by zero"))===0)||((ab=u%5,ab===ab?ab:$throwRuntimeError("integer divide by zero"))===0)||((ac=u%7,ac===ac?ac:$throwRuntimeError("integer divide by zero"))===0)||((ad=u%11,ad===ad?ad:$throwRuntimeError("integer divide by zero"))===0)||((ae=u%13,ae===ae?ae:$throwRuntimeError("integer divide by zero"))===0)||((af=u%17,af===af?af:$throwRuntimeError("integer divide by zero"))===0)||((ag=u%19,ag===ag?ag:$throwRuntimeError("integer divide by zero"))===0)||((ah=u%23,ah===ah?ah:$throwRuntimeError("integer divide by zero"))===0)||((ai=u%37,ai===ai?ai:$throwRuntimeError("integer divide by zero"))===0)||((aj=v%29,aj===aj?aj:$throwRuntimeError("integer divide by zero"))===0)||((ak=v%31,ak===ak?ak:$throwRuntimeError("integer divide by zero"))===0)||((al=v%41,al===al?al:$throwRuntimeError("integer divide by zero"))===0)||((am=v%43,am===am?am:$throwRuntimeError("integer divide by zero"))===0)||((an=v%47,an===an?an:$throwRuntimeError("integer divide by zero"))===0)||((ao=v%53,ao===ao?ao:$throwRuntimeError("integer divide by zero"))===0)){$s=-1;return false;}aq=n.abs.probablyPrimeMillerRabin(m+1>>0,true);$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq)){ap=false;$s=1;continue s;}ar=n.abs.probablyPrimeLucas();$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;case 1:$s=-1;return ap;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ProbablyPrime};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ProbablyPrime=function(m){return this.$val.ProbablyPrime(m);};BX.prototype.probablyPrimeMillerRabin=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=BX.nil.sub(o,BY);q=p.trailingZeroBits();r=BX.nil.shr(p,q);s=BX.nil.sub(p,BZ);u=H.New(H.NewSource((t=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]),new $Int64(0,t.constructor===Number?t:1))));v=BX.nil;w=BX.nil;x=BX.nil;y=v;z=w;aa=x;ab=s.bitLen();ac=0;case 1:if(!(ac<m)){$s=2;continue;}if((ac===(m-1>>0))&&n){$s=3;continue;}$s=4;continue;case 3:y=y.set(BZ);$s=5;continue;case 4:ad=y.random(u,s,ab);$s=6;case 6:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}y=ad;y=y.add(y,BZ);case 5:ae=z.expNN(y,r,o);$s=7;case 7:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}z=ae;if((z.cmp(BY)===0)||(z.cmp(p)===0)){$s=8;continue;}$s=9;continue;case 8:ac=ac+(1)>>0;$s=1;continue;case 9:af=1;case 10:if(!(af<q)){$s=11;continue;}z=z.mul(z,z);ah=aa.div(z,z,o);$s=12;case 12:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;aa=ag[0];z=ag[1];if(z.cmp(p)===0){ac=ac+(1)>>0;$s=1;continue s;}if(z.cmp(BY)===0){$s=-1;return false;}af=af+(1)>>>0;$s=10;continue;case 11:$s=-1;return false;$s=1;continue;case 2:$s=-1;return true;}return;}if($f===undefined){$f={$blk:BX.prototype.probablyPrimeMillerRabin};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.probablyPrimeMillerRabin=function(m,n){return this.$get().probablyPrimeMillerRabin(m,n);};BX.prototype.probablyPrimeLucas=function(){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;if((m.$length===0)||(m.cmp(BY)===0)){$s=-1;return false;}if((((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])&1)>>>0)===0){$s=-1;return m.cmp(BZ)===0;}n=3;o=new BX([1]);p=BX.nil;q=new BO.ptr(false,o);r=new BO.ptr(false,m);case 1:if(n>10000){$s=3;continue;}$s=4;continue;case 3:s=r.String();$s=5;case 5:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$panic(new $String("math/big: internal error: cannot find (D/n) = -1 for "+s));case 4:(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]=(($imul(n,n)>>>0)-4>>>0));t=BT(q,r);$s=6;case 6:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=t;if(u===-1){$s=2;continue;}if(u===0){$s=-1;return(m.$length===1)&&((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===(n+2>>>0));}if(n===40){$s=7;continue;}$s=8;continue;case 7:v=p.sqrt(m);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}p=v;p=p.mul(p,p);if(p.cmp(m)===0){$s=-1;return false;}case 8:n=n+(1)>>>0;$s=1;continue;case 2:w=BX.nil.add(m,BY);x=(w.trailingZeroBits()>>0);w=w.shr(w,(x>>>0));y=BX.nil.sub(m,BZ);z=BX.nil.setWord(n);aa=BX.nil.setWord(2);ab=BX.nil.setWord(n);ac=BX.nil;ad=w.bitLen();case 10:if(!(ad>=0)){$s=11;continue;}if(!((w.bit((ad>>>0))===0))){$s=12;continue;}$s=13;continue;case 12:p=p.mul(aa,ab);p=p.add(p,m);p=p.sub(p,z);af=ac.div(aa,p,m);$s=15;case 15:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;ac=ae[0];aa=ae[1];p=p.mul(ab,ab);p=p.add(p,y);ah=ac.div(ab,p,m);$s=16;case 16:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;ac=ag[0];ab=ag[1];$s=14;continue;case 13:p=p.mul(aa,ab);p=p.add(p,m);p=p.sub(p,z);aj=ac.div(ab,p,m);$s=17;case 17:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ac=ai[0];ab=ai[1];p=p.mul(aa,aa);p=p.add(p,y);al=ac.div(aa,p,m);$s=18;case 18:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=al;ac=ak[0];aa=ak[1];case 14:ad=ad-(1)>>0;$s=10;continue;case 11:if((aa.cmp(BZ)===0)||(aa.cmp(y)===0)){$s=19;continue;}$s=20;continue;case 19:am=p.mul(aa,z);an=ac.shl(ab,1);if(am.cmp(an)<0){ao=an;ap=am;am=ao;an=ap;}am=am.sub(am,an);aq=ab;ab=BX.nil;$unused(ab);as=an.div(aq,am,m);$s=21;case 21:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;an=ar[0];aq=ar[1];if(aq.$length===0){$s=-1;return true;}case 20:at=0;case 22:if(!(at<(x-1>>0))){$s=23;continue;}if(aa.$length===0){$s=-1;return true;}if((aa.$length===1)&&((0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])===2)){$s=-1;return false;}p=p.mul(aa,aa);p=p.sub(p,BZ);av=ac.div(aa,p,m);$s=24;case 24:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}au=av;ac=au[0];aa=au[1];at=at+(1)>>0;$s=22;continue;case 23:$s=-1;return false;}return;}if($f===undefined){$f={$blk:BX.prototype.probablyPrimeLucas};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.probablyPrimeLucas=function(){return this.$get().probablyPrimeLucas();};DP.methods=[{prop:"Sign",name:"Sign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetInt64",name:"SetInt64",pkg:"",typ:$funcType([$Int64],[DP],false)},{prop:"SetUint64",name:"SetUint64",pkg:"",typ:$funcType([$Uint64],[DP],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[DO],false)},{prop:"SetBits",name:"SetBits",pkg:"",typ:$funcType([DO],[DP],false)},{prop:"Abs",name:"Abs",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"MulRange",name:"MulRange",pkg:"",typ:$funcType([$Int64,$Int64],[DP],false)},{prop:"Binomial",name:"Binomial",pkg:"",typ:$funcType([$Int64,$Int64],[DP],false)},{prop:"Quo",name:"Quo",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Rem",name:"Rem",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"QuoRem",name:"QuoRem",pkg:"",typ:$funcType([DP,DP,DP],[DP,DP],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"DivMod",name:"DivMod",pkg:"",typ:$funcType([DP,DP,DP],[DP,DP],false)},{prop:"Cmp",name:"Cmp",pkg:"",typ:$funcType([DP],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String,$Int],[DP,$Bool],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([DM],[DP],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[DM],false)},{prop:"BitLen",name:"BitLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Exp",name:"Exp",pkg:"",typ:$funcType([DP,DP,DP],[DP],false)},{prop:"GCD",name:"GCD",pkg:"",typ:$funcType([DP,DP,DP,DP],[DP],false)},{prop:"binaryGCD",name:"binaryGCD",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"Rand",name:"Rand",pkg:"",typ:$funcType([DW,DP],[DP],false)},{prop:"ModInverse",name:"ModInverse",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"modSqrt3Mod4Prime",name:"modSqrt3Mod4Prime",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"modSqrtTonelliShanks",name:"modSqrtTonelliShanks",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"ModSqrt",name:"ModSqrt",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Lsh",name:"Lsh",pkg:"",typ:$funcType([DP,$Uint],[DP],false)},{prop:"Rsh",name:"Rsh",pkg:"",typ:$funcType([DP,$Uint],[DP],false)},{prop:"Bit",name:"Bit",pkg:"",typ:$funcType([$Int],[$Uint],false)},{prop:"SetBit",name:"SetBit",pkg:"",typ:$funcType([DP,$Int,$Uint],[DP],false)},{prop:"And",name:"And",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"AndNot",name:"AndNot",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Or",name:"Or",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Xor",name:"Xor",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Not",name:"Not",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Sqrt",name:"Sqrt",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Text",name:"Text",pkg:"",typ:$funcType([$Int],[$String],false)},{prop:"Append",name:"Append",pkg:"",typ:$funcType([DM,$Int],[DM],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([A.State,$Int32],[],false)},{prop:"scan",name:"scan",pkg:"math/big",typ:$funcType([C.ByteScanner,$Int],[DP,$Int,$error],false)},{prop:"Scan",name:"Scan",pkg:"",typ:$funcType([A.ScanState,$Int32],[$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"ProbablyPrime",name:"ProbablyPrime",pkg:"",typ:$funcType([$Int],[$Bool],false)}];BW.methods=[{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)}];BX.methods=[{prop:"clear",name:"clear",pkg:"math/big",typ:$funcType([],[],false)},{prop:"norm",name:"norm",pkg:"math/big",typ:$funcType([],[BX],false)},{prop:"make",name:"make",pkg:"math/big",typ:$funcType([$Int],[BX],false)},{prop:"setWord",name:"setWord",pkg:"math/big",typ:$funcType([X],[BX],false)},{prop:"setUint64",name:"setUint64",pkg:"math/big",typ:$funcType([$Uint64],[BX],false)},{prop:"set",name:"set",pkg:"math/big",typ:$funcType([BX],[BX],false)},{prop:"add",name:"add",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"sub",name:"sub",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"cmp",name:"cmp",pkg:"math/big",typ:$funcType([BX],[$Int],false)},{prop:"mulAddWW",name:"mulAddWW",pkg:"math/big",typ:$funcType([BX,X,X],[BX],false)},{prop:"montgomery",name:"montgomery",pkg:"math/big",typ:$funcType([BX,BX,BX,X,$Int],[BX],false)},{prop:"mul",name:"mul",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"mulRange",name:"mulRange",pkg:"math/big",typ:$funcType([$Uint64,$Uint64],[BX],false)},{prop:"divW",name:"divW",pkg:"math/big",typ:$funcType([BX,X],[BX,X],false)},{prop:"div",name:"div",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX,BX],false)},{prop:"divLarge",name:"divLarge",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX,BX],false)},{prop:"bitLen",name:"bitLen",pkg:"math/big",typ:$funcType([],[$Int],false)},{prop:"trailingZeroBits",name:"trailingZeroBits",pkg:"math/big",typ:$funcType([],[$Uint],false)},{prop:"shl",name:"shl",pkg:"math/big",typ:$funcType([BX,$Uint],[BX],false)},{prop:"shr",name:"shr",pkg:"math/big",typ:$funcType([BX,$Uint],[BX],false)},{prop:"setBit",name:"setBit",pkg:"math/big",typ:$funcType([BX,$Uint,$Uint],[BX],false)},{prop:"bit",name:"bit",pkg:"math/big",typ:$funcType([$Uint],[$Uint],false)},{prop:"sticky",name:"sticky",pkg:"math/big",typ:$funcType([$Uint],[$Uint],false)},{prop:"and",name:"and",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"andNot",name:"andNot",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"or",name:"or",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"xor",name:"xor",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"modW",name:"modW",pkg:"math/big",typ:$funcType([X],[X],false)},{prop:"random",name:"random",pkg:"math/big",typ:$funcType([DW,BX,$Int],[BX],false)},{prop:"expNN",name:"expNN",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"expNNWindowed",name:"expNNWindowed",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"expNNMontgomery",name:"expNNMontgomery",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"bytes",name:"bytes",pkg:"math/big",typ:$funcType([DM],[$Int],false)},{prop:"setBytes",name:"setBytes",pkg:"math/big",typ:$funcType([DM],[BX],false)},{prop:"sqrt",name:"sqrt",pkg:"math/big",typ:$funcType([BX],[BX],false)},{prop:"scan",name:"scan",pkg:"math/big",typ:$funcType([C.ByteScanner,$Int,$Bool],[BX,$Int,$Int,$error],false)},{prop:"utoa",name:"utoa",pkg:"math/big",typ:$funcType([$Int],[DM],false)},{prop:"itoa",name:"itoa",pkg:"math/big",typ:$funcType([$Bool,$Int],[DM],false)},{prop:"convertWords",name:"convertWords",pkg:"math/big",typ:$funcType([DM,X,$Int,X,DU],[],false)},{prop:"expWW",name:"expWW",pkg:"math/big",typ:$funcType([X,X],[BX],false)},{prop:"probablyPrimeMillerRabin",name:"probablyPrimeMillerRabin",pkg:"math/big",typ:$funcType([$Int,$Bool],[$Bool],false)},{prop:"probablyPrimeLucas",name:"probablyPrimeLucas",pkg:"math/big",typ:$funcType([],[$Bool],false)}];BO.init("math/big",[{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""},{prop:"abs",name:"abs",exported:false,typ:BX,tag:""}]);BW.init("",[{prop:"ScanState",name:"",exported:true,typ:A.ScanState,tag:""}]);BX.init(X);CU.init("math/big",[{prop:"bbb",name:"bbb",exported:false,typ:BX,tag:""},{prop:"nbits",name:"nbits",exported:false,typ:$Int,tag:""},{prop:"ndigits",name:"ndigits",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=F.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CM=new J.Pool.ptr(DI.nil,$throwNilPointerError);CV=new DK.ptr(new J.Mutex.ptr(false),DJ.zero());BY=new BX([1]);BP=new BO.ptr(false,BY);BZ=new BX([2]);CE=40;CN=$toNativeArray($kindUint8,[0,1,28,2,29,14,24,3,30,22,20,15,25,17,4,8,31,27,13,23,21,19,16,7,26,12,18,6,11,5,10,9]);CO=$toNativeArray($kindUint8,[0,1,56,2,57,49,28,3,61,58,42,50,38,29,17,4,62,47,59,36,45,43,51,22,53,39,33,30,24,18,12,5,63,55,48,27,60,41,37,16,46,35,44,21,52,32,23,11,54,26,40,15,34,20,31,10,25,14,19,9,13,8,7,6]);CT=8;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/rand"]=(function(){var $pkg={},$init,A,B,C,D,F,L,N,I,E,G;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["io"];D=$packages["math/big"];F=$pkg.rngReader=$newType(0,$kindStruct,"rand.rngReader",true,"crypto/rand",false,function(){this.$val=this;if(arguments.length===0){return;}});L=$sliceType($Uint8);N=$ptrType(F);E=function(){var $ptr;$pkg.Reader=new F.ptr();};F.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=$ifaceNil;d=this;e=a.$array;f=$parseInt(a.$offset)>>0;g=$global.crypto;if(g===undefined){g=$global.msCrypto;}if(!(g===undefined)){if(!(g.getRandomValues===undefined)){b=a.$length;if(b>65536){b=65536;}g.getRandomValues(e.subarray(f,f+b>>0));h=b;i=$ifaceNil;b=h;c=i;return[b,c];}}j=$global.require;if(!(j===undefined)){k=j($externalize("crypto",$String)).randomBytes;if(!(k===undefined)){e.set(k(a.$length),f);l=a.$length;m=$ifaceNil;b=l;c=m;return[b,c];}}n=0;o=A.New("crypto/rand not available in this environment");b=n;c=o;return[b,c];};F.prototype.Read=function(a){return this.$val.Read(a);};G=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;e=C.ReadFull($pkg.Reader,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;b=d[0];c=d[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:G};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Read=G;N.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([L],[$Int,$error],false)}];F.init("",[]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Reader=$ifaceNil;I=new D.Int.ptr(false,D.nat.nil).SetUint64(new $Uint64(3793877372,820596253));E();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/random"]=(function(){var $pkg={},$init,A,B,C,D,O,P,Q,R,E,L,M,N;A=$packages["crypto/cipher"];B=$packages["crypto/rand"];C=$packages["encoding/binary"];D=$packages["math/big"];O=$pkg.randstream=$newType(0,$kindStruct,"random.randstream",true,"gopkg.in/dedis/crypto.v0/random",false,function(){this.$val=this;if(arguments.length===0){return;}});P=$sliceType($Uint8);Q=$ptrType(D.Int);R=$ptrType(O);E=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=$makeSlice(P,(d=((a+7>>>0))/8,(d===d&&d!==1/0&&d!==-1/0)?d>>>0:$throwRuntimeError("integer divide by zero")));$r=c.XORKeyStream(e,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(a&7)>>>0;if(!((f===0))){(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])&((~(((g=f,g<32?(255<<g):0)<<24>>>24))<<24>>>24)))>>>0));}if(b){if(!((f===0))){(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])|(((h=((f-1>>>0)),h<32?(1<<h):0)<<24>>>24)))>>>0));}else{(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])|(128))>>>0));}}$s=-1;return e;}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bits=E;L=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=(a.BitLen()>>>0);d=new D.Int.ptr(false,D.nat.nil);case 1:e=E(c,false,b);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=d.SetBytes(e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;if(d.Sign()>0&&d.Cmp(a)<0){$s=-1;return d;}$s=1;continue;case 2:$s=-1;return Q.nil;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Int=L;M=function(a,b){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=$makeSlice(P,a);$r=b.XORKeyStream(c,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:M};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bytes=M;N=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=P.nil;case 1:d=M(a,b);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!((g===0))){$s=-1;return c;}f++;}$s=1;continue;case 2:$s=-1;return c;}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NonZeroBytes=N;O.ptr.prototype.XORKeyStream=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=a.$length;if(!((b.$length===d))){$panic(new $String("XORKeyStream: mismatched buffer lengths"));}e=$makeSlice(P,d);g=B.Read(e);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual(i,$ifaceNil))){$panic(i);}if(h<e.$length){$panic(new $String("short read on infinite random stream!?"));}j=0;while(true){if(!(j<d)){break;}((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=((((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j])^((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))<<24>>>24));j=j+(1)>>0;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.XORKeyStream};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.XORKeyStream=function(a,b){return this.$val.XORKeyStream(a,b);};R.methods=[{prop:"XORKeyStream",name:"XORKeyStream",pkg:"",typ:$funcType([P,P],[],false)}];O.init("",[]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Stream=new O.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,W;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",true,"log",true,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"),undefined):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"),undefined):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:e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,$clone(b,F.Time).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=$clone(b,F.Time).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=$clone(b,F.Time).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=$clone(b,F.Time).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=$substring(c,(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;return;}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))),$clone(d,F.Time),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];$s=-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;return;}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;return;}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;return;}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;return;}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;return;}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;return;}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;return;}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;return;}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;return;}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);};W=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=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=I.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;return;}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.$s=$s;$f.$r=$r;return $f;};$pkg.Panicf=W;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("log",[{prop:"mu",name:"mu",exported:false,typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",exported:false,typ:$String,tag:""},{prop:"flag",name:"flag",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:B.Writer,tag:""},{prop:"buf",name:"buf",exported:false,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["gopkg.in/dedis/crypto.v0/cipher"]=(function(){var $pkg={},$init,A,L,I,B,G,C,J,K,D,E,F,H,R,S,U,V,W,AB,AC,AD,AF,AG,AH,Z,T,X;A=$packages["crypto/cipher"];L=$packages["crypto/hmac"];I=$packages["encoding/binary"];B=$packages["errors"];G=$packages["fmt"];C=$packages["gopkg.in/dedis/crypto.v0/abstract"];J=$packages["gopkg.in/dedis/crypto.v0/ints"];K=$packages["gopkg.in/dedis/crypto.v0/random"];D=$packages["gopkg.in/dedis/crypto.v0/subtle"];E=$packages["gopkg.in/dedis/crypto.v0/util"];F=$packages["hash"];H=$packages["log"];R=$pkg.cipherHash=$newType(0,$kindStruct,"cipher.cipherHash",true,"gopkg.in/dedis/crypto.v0/cipher",false,function(cipher_,cur_,size_){this.$val=this;if(arguments.length===0){this.cipher=$throwNilPointerError;this.cur=new C.Cipher.ptr($ifaceNil);this.size=0;return;}this.cipher=cipher_;this.cur=cur_;this.size=size_;});S=$pkg.cipherBlockSize=$newType(8,$kindInterface,"cipher.cipherBlockSize",true,"gopkg.in/dedis/crypto.v0/cipher",false,null);U=$pkg.Sponge=$newType(8,$kindInterface,"cipher.Sponge",true,"gopkg.in/dedis/crypto.v0/cipher",true,null);V=$pkg.Padding=$newType(1,$kindUint8,"cipher.Padding",true,"gopkg.in/dedis/crypto.v0/cipher",true,null);W=$pkg.spongeCipher=$newType(0,$kindStruct,"cipher.spongeCipher",true,"gopkg.in/dedis/crypto.v0/cipher",false,function(sponge_,rate_,cap_,pad_,buf_,pos_){this.$val=this;if(arguments.length===0){this.sponge=$ifaceNil;this.rate=0;this.cap=0;this.pad=0;this.buf=AB.nil;this.pos=0;return;}this.sponge=sponge_;this.rate=rate_;this.cap=cap_;this.pad=pad_;this.buf=buf_;this.pos=pos_;});AB=$sliceType($Uint8);AC=$sliceType($emptyInterface);AD=$sliceType($Int);AF=$ptrType(R);AG=$funcType([AB,AC],[C.Cipher],true);AH=$ptrType(W);T=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 R.ptr($throwNilPointerError,new C.Cipher.ptr($ifaceNil),0);c.cipher=a;d=a(C.NoKey,new AC([]));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}C.Cipher.copy(c.cur,d);c.size=b;$s=-1;return c;}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewHash=T;R.ptr.prototype.Write=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=$clone(b.cur,C.Cipher).Partial(AB.nil,AB.nil,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return[a.$length,$ifaceNil];}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};R.prototype.Write=function(a){return this.$val.Write(a);};R.ptr.prototype.Sum=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=$clone(b.cur,C.Cipher).Clone();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$clone(c,C.Cipher);e=$clone(d,C.Cipher).Message(AB.nil,AB.nil,AB.nil);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;f=E.Grow(a,b.size);a=f[0];g=f[1];h=$clone(d,C.Cipher).Partial(g,AB.nil,AB.nil);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=-1;return a;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};R.prototype.Sum=function(a){return this.$val.Sum(a);};R.ptr.prototype.Reset=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.cipher(C.NoKey,new AC([]));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}C.Cipher.copy(a.cur,b);$s=-1;return;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Reset};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};R.prototype.Reset=function(){return this.$val.Reset();};R.ptr.prototype.Size=function(){var $ptr,a;a=this;return a.size;};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.BlockSize=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;b=$assertType(a.cur.CipherState,S,true);c=b[0];d=b[1];if(!d){$s=-1;return 1;}e=c.BlockSize();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.BlockSize};}$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;};R.prototype.BlockSize=function(){return this.$val.BlockSize();};V.prototype.String=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;b=G.Sprintf("Padding: %x",new AC([new $Uint8((a<<24>>>24))]));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:V.prototype.String};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(V).prototype.String=function(){return new V(this.$get()).String();};X=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=[d];d[0]=new W.ptr($ifaceNil,0,0,0,AB.nil,0);d[0].sponge=a;e=a.Rate();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d[0].rate=e;f=a.Capacity();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d[0].cap=f;d[0].pad=127;d[0].buf=$makeSlice(AB,(d[0].rate+d[0].cap>>0));d[0].pos=0;g=d[0].parseOptions(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;if(b===AB.nil){$s=4;continue;}$s=5;continue;case 4:h=a.Capacity();$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=K.Bytes(h,K.Stream);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}b=i;case 5:if(b.$length>0){$s=8;continue;}$s=9;continue;case 8:$r=d[0].Message(AB.nil,AB.nil,b);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:d[0].setDomain(2,0);$s=-1;return new C.Cipher.ptr(d[0]);}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.$s=$s;$f.$r=$r;return $f;};$pkg.FromSponge=X;W.ptr.prototype.parseOptions=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;c=false;d=a;e=0;case 1:if(!(e<d.$length)){$s=2;continue;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);g=f;if($assertType(g,V,true)[1]){$s=3;continue;}$s=4;continue;case 3:h=g.$val;b.pad=(h<<24>>>24);$s=5;continue;case 4:i=g;$r=H.Panicf("Unsupported option %v",new AC([f]));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:e++;$s=1;continue;case 2:$s=-1;return c;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.parseOptions};}$f.$ptr=$ptr;$f.a=a;$f.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;};W.prototype.parseOptions=function(a){return this.$val.parseOptions(a);};W.ptr.prototype.setDomain=function(a,b){var $ptr,a,b,c,d,e;c=this;(d=c.buf,e=(c.rate+c.cap>>0)-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]=2));$clone(I.LittleEndian,I.littleEndian).PutUint64($subslice(c.buf,c.rate),new $Uint64(0,b));};W.prototype.setDomain=function(a,b){return this.$val.setDomain(a,b);};W.ptr.prototype.padMessage=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;b=a.rate;c=a.pos;d=a.buf;if(c===b){$s=1;continue;}$s=2;continue;case 1:$r=a.sponge.Transform(d,$subslice(d,0,b));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=0;case 2:((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]=a.pad);c=c+(1)>>0;while(true){if(!(c<b)){break;}((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]=0);c=c+(1)>>0;}e=b-1>>0;((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]=((((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])^(128))<<24>>>24));$r=a.sponge.Transform(d,$subslice(d,0,b));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a.pos=0;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.padMessage};}$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;};W.prototype.padMessage=function(){return this.$val.padMessage();};W.ptr.prototype.Partial=function(a,b,c){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:d=this;e=d.sponge;f=d.rate;g=d.buf;h=d.pos;i=J.Max(a.$length,new AD([b.$length,c.$length]));case 1:if(!(i>0)){$s=2;continue;}if(h===f){$s=3;continue;}$s=4;continue;case 3:$r=e.Transform(g,$subslice(g,0,f));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=0;case 4:j=J.Min(i,new AD([f-h>>0]));k=J.Min(j,new AD([a.$length]));l=J.Min(k,new AD([b.$length]));m=0;while(true){if(!(m<l)){break;}((m<0||m>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+m]=((((m<0||m>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+m])^(n=h+m>>0,((n<0||n>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+n])))<<24>>>24));m=m+(1)>>0;}$copySlice($subslice(a,l,k),$subslice(g,(h+l>>0)));a=$subslice(a,k);b=$subslice(b,l);o=J.Min(j,new AD([c.$length]));$copySlice($subslice(g,h),$subslice(c,0,o));p=o;while(true){if(!(p<j)){break;}(q=h+p>>0,((q<0||q>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+q]=0));p=p+(1)>>0;}c=$subslice(c,o);h=h+(j)>>0;i=i-(j)>>0;$s=1;continue;case 2:d.pos=h;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Partial};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.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;};W.prototype.Partial=function(a,b,c){return this.$val.Partial(a,b,c);};W.ptr.prototype.Message=function(a,b,c){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:d=this;$r=d.Partial(a,b,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.padMessage();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Message};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.Message=function(a,b,c){return this.$val.Message(a,b,c);};W.ptr.prototype.clone=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=[a];b=this;a[0]=$clone(b,W);c=b.sponge.Clone();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a[0].sponge=c;a[0].buf=$makeSlice(AB,(b.rate+b.cap>>0));$copySlice(a[0].buf,b.buf);$s=-1;return a[0];}return;}if($f===undefined){$f={$blk:W.ptr.prototype.clone};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.clone=function(){return this.$val.clone();};W.ptr.prototype.Clone=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.clone();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Clone};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.Clone=function(){return this.$val.Clone();};W.ptr.prototype.KeySize=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.sponge.Capacity();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b>>1>>0;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.KeySize};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.KeySize=function(){return this.$val.KeySize();};W.ptr.prototype.HashSize=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.sponge.Capacity();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.HashSize};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.HashSize=function(){return this.$val.HashSize();};W.ptr.prototype.BlockSize=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.sponge.Rate();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.BlockSize};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};W.prototype.BlockSize=function(){return this.$val.BlockSize();};AF.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([AB],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([AB],[AB],false)},{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)}];V.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];AH.methods=[{prop:"parseOptions",name:"parseOptions",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([AC],[$Bool],false)},{prop:"setDomain",name:"setDomain",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([$Uint8,$Int],[],false)},{prop:"padMessage",name:"padMessage",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([],[],false)},{prop:"Partial",name:"Partial",pkg:"",typ:$funcType([AB,AB,AB],[],false)},{prop:"Message",name:"Message",pkg:"",typ:$funcType([AB,AB,AB],[],false)},{prop:"special",name:"special",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([$Uint8,$Int],[],false)},{prop:"clone",name:"clone",pkg:"gopkg.in/dedis/crypto.v0/cipher",typ:$funcType([],[AH],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[C.CipherState],false)},{prop:"KeySize",name:"KeySize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"HashSize",name:"HashSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)}];R.init("gopkg.in/dedis/crypto.v0/cipher",[{prop:"cipher",name:"cipher",exported:false,typ:AG,tag:""},{prop:"cur",name:"cur",exported:false,typ:C.Cipher,tag:""},{prop:"size",name:"size",exported:false,typ:$Int,tag:""}]);S.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)}]);U.init([{prop:"Capacity",name:"Capacity",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[U],false)},{prop:"Rate",name:"Rate",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Transform",name:"Transform",pkg:"",typ:$funcType([AB,AB],[],false)}]);W.init("gopkg.in/dedis/crypto.v0/cipher",[{prop:"sponge",name:"sponge",exported:false,typ:U,tag:""},{prop:"rate",name:"rate",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:$Int,tag:""},{prop:"pad",name:"pad",exported:false,typ:$Uint8,tag:""},{prop:"buf",name:"buf",exported:false,typ:AB,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$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=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Z=$makeSlice(AB,1024);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/clique"]=(function(){var $pkg={},$init,A;A=$packages["gopkg.in/dedis/crypto.v0/abstract"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/proof"]=(function(){var $pkg={},$init,A,B,C,D;A=$packages["bytes"];B=$packages["errors"];C=$packages["gopkg.in/dedis/crypto.v0/abstract"];D=$packages["gopkg.in/dedis/crypto.v0/clique"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/shuffle"]=(function(){var $pkg={},$init,D,E,A,B,C;D=$packages["crypto/cipher"];E=$packages["errors"];A=$packages["gopkg.in/dedis/crypto.v0/abstract"];B=$packages["gopkg.in/dedis/crypto.v0/proof"];C=$packages["gopkg.in/dedis/crypto.v0/random"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;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=B.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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["flag"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,K,L,N,P,R,T,V,X,Z,AB,AC,AD,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,a,J,M,O,Q,S,U,W,Y,AE,AJ,AK,AL,AR,AT,AX,BB,BF,BJ,BK,BL;A=$packages["errors"];B=$packages["fmt"];C=$packages["io"];D=$packages["os"];E=$packages["reflect"];F=$packages["sort"];G=$packages["strconv"];H=$packages["time"];I=$pkg.boolValue=$newType(1,$kindBool,"flag.boolValue",true,"flag",false,null);K=$pkg.boolFlag=$newType(8,$kindInterface,"flag.boolFlag",true,"flag",false,null);L=$pkg.intValue=$newType(4,$kindInt,"flag.intValue",true,"flag",false,null);N=$pkg.int64Value=$newType(8,$kindInt64,"flag.int64Value",true,"flag",false,null);P=$pkg.uintValue=$newType(4,$kindUint,"flag.uintValue",true,"flag",false,null);R=$pkg.uint64Value=$newType(8,$kindUint64,"flag.uint64Value",true,"flag",false,null);T=$pkg.stringValue=$newType(8,$kindString,"flag.stringValue",true,"flag",false,null);V=$pkg.float64Value=$newType(8,$kindFloat64,"flag.float64Value",true,"flag",false,null);X=$pkg.durationValue=$newType(8,$kindInt64,"flag.durationValue",true,"flag",false,null);Z=$pkg.Value=$newType(8,$kindInterface,"flag.Value",true,"flag",true,null);AB=$pkg.ErrorHandling=$newType(4,$kindInt,"flag.ErrorHandling",true,"flag",true,null);AC=$pkg.FlagSet=$newType(0,$kindStruct,"flag.FlagSet",true,"flag",true,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=CG.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_;});AD=$pkg.Flag=$newType(0,$kindStruct,"flag.Flag",true,"flag",true,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_;});BM=$sliceType($emptyInterface);BN=$ptrType(I);BO=$ptrType(L);BP=$ptrType(N);BQ=$ptrType(P);BR=$ptrType(R);BS=$ptrType(T);BT=$ptrType(V);BU=$ptrType(X);BV=$ptrType(H.Duration);BW=$ptrType(AD);BX=$sliceType(BW);BY=$ptrType(E.rtype);BZ=$ptrType($Bool);CA=$ptrType($Int);CB=$ptrType($Int64);CC=$ptrType($Uint);CD=$ptrType($Uint64);CE=$ptrType($String);CF=$ptrType($Float64);CG=$sliceType($String);CH=$funcType([BW],[],false);CI=$ptrType(AC);CJ=$funcType([],[],false);CK=$mapType($String,BW);J=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BN(function(){return d.$get();},function($v){d.$set($v);},d.$target));};$ptrType(I).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseBool(b);e=d[0];f=d[1];c.$set(e);return f;};$ptrType(I).prototype.Get=function(){var $ptr,b;b=this;return new $Bool(b.$get());};$ptrType(I).prototype.String=function(){var $ptr,b;b=this;return G.FormatBool(b.$get());};$ptrType(I).prototype.IsBoolFlag=function(){var $ptr,b;b=this;return true;};M=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(L).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseInt(b,0,64);e=d[0];f=d[1];c.$set(((e.$low+((e.$high>>31)*4294967296))>>0));return f;};$ptrType(L).prototype.Get=function(){var $ptr,b;b=this;return new $Int((b.$get()>>0));};$ptrType(L).prototype.String=function(){var $ptr,b;b=this;return G.Itoa((b.$get()>>0));};O=function(b,c){var $ptr,b,c,d,e;c.$set(b);return(d=c,new BP(function(){return(e=d.$get(),new N(e.$high,e.$low));},function($v){d.$set(new $Int64($v.$high,$v.$low));},d.$target));};$ptrType(N).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseInt(b,0,64);e=d[0];f=d[1];c.$set(new N(e.$high,e.$low));return f;};$ptrType(N).prototype.Get=function(){var $ptr,b,c;b=this;return(c=b.$get(),new $Int64(c.$high,c.$low));};$ptrType(N).prototype.String=function(){var $ptr,b,c;b=this;return G.FormatInt((c=b.$get(),new $Int64(c.$high,c.$low)),10);};Q=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BQ(function(){return(d.$get()>>>0);},function($v){d.$set(($v>>>0));},d.$target));};$ptrType(P).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseUint(b,0,64);e=d[0];f=d[1];c.$set((e.$low>>>0));return f;};$ptrType(P).prototype.Get=function(){var $ptr,b;b=this;return new $Uint((b.$get()>>>0));};$ptrType(P).prototype.String=function(){var $ptr,b;b=this;return G.FormatUint(new $Uint64(0,b.$get()),10);};S=function(b,c){var $ptr,b,c,d,e;c.$set(b);return(d=c,new BR(function(){return(e=d.$get(),new R(e.$high,e.$low));},function($v){d.$set(new $Uint64($v.$high,$v.$low));},d.$target));};$ptrType(R).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseUint(b,0,64);e=d[0];f=d[1];c.$set(new R(e.$high,e.$low));return f;};$ptrType(R).prototype.Get=function(){var $ptr,b,c;b=this;return(c=b.$get(),new $Uint64(c.$high,c.$low));};$ptrType(R).prototype.String=function(){var $ptr,b,c;b=this;return G.FormatUint((c=b.$get(),new $Uint64(c.$high,c.$low)),10);};U=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BS(function(){return d.$get();},function($v){d.$set($v);},d.$target));};$ptrType(T).prototype.Set=function(b){var $ptr,b,c;c=this;c.$set(b);return $ifaceNil;};$ptrType(T).prototype.Get=function(){var $ptr,b;b=this;return new $String(b.$get());};$ptrType(T).prototype.String=function(){var $ptr,b;b=this;return b.$get();};W=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BT(function(){return d.$get();},function($v){d.$set($v);},d.$target));};$ptrType(V).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseFloat(b,64);e=d[0];f=d[1];c.$set(e);return f;};$ptrType(V).prototype.Get=function(){var $ptr,b;b=this;return new $Float64(b.$get());};$ptrType(V).prototype.String=function(){var $ptr,b;b=this;return G.FormatFloat(b.$get(),103,-1,64);};Y=function(b,c){var $ptr,b,c,d,e;c.$set(b);return(d=c,new BU(function(){return(e=d.$get(),new X(e.$high,e.$low));},function($v){d.$set(new H.Duration($v.$high,$v.$low));},d.$target));};$ptrType(X).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=H.ParseDuration(b);e=d[0];f=d[1];c.$set(new X(e.$high,e.$low));return f;};$ptrType(X).prototype.Get=function(){var $ptr,b,c;b=this;return(c=b.$get(),new H.Duration(c.$high,c.$low));};$ptrType(X).prototype.String=function(){var $ptr,b,c,d;b=this;return(c=b,new BV(function(){return(d=c.$get(),new H.Duration(d.$high,d.$low));},function($v){c.$set(new X($v.$high,$v.$low));},c.$target)).String();};AE=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(F.StringSlice,$keys(b).length);d=0;e=b;f=0;g=$keys(e);while(true){if(!(f<g.length)){break;}h=e[g[f]];if(h===undefined){f++;continue;}i=h.v;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):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(BX,c.$length);k=c;l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);((m<0||m>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+m]=(o=b[$String.keyFor(n)],o!==undefined?o.v:BW.nil));l++;}$s=-1;return j;}return;}if($f===undefined){$f={$blk:AE};}$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;};AC.ptr.prototype.out=function(){var $ptr,b;b=this;if($interfaceIsEqual(b.output,$ifaceNil)){return D.Stderr;}return b.output;};AC.prototype.out=function(){return this.$val.out();};AC.ptr.prototype.SetOutput=function(b){var $ptr,b,c;c=this;c.output=b;};AC.prototype.SetOutput=function(b){return this.$val.SetOutput(b);};AC.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=AE(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)){$s=3;continue;}g=((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):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;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.VisitAll=function(b){return this.$val.VisitAll(b);};AC.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=AE(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)){$s=3;continue;}g=((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):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;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Visit=function(b){return this.$val.Visit(b);};AC.ptr.prototype.Lookup=function(b){var $ptr,b,c,d;c=this;return(d=c.formal[$String.keyFor(b)],d!==undefined?d.v:BW.nil);};AC.prototype.Lookup=function(b){return this.$val.Lookup(b);};AC.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]:[BW.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 BM([new $String(b)]));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;case 2:j=g.Value.Set(c);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;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};$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Set=function(b,c){return this.$val.Set(b,c);};AJ=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=E.TypeOf(b.Value);e=new E.Value.ptr(BY.nil,0,0);f=d.Kind();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f===22){$s=1;continue;}$s=2;continue;case 1:g=d.Elem();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=E.New(g);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}e=h;$s=3;continue;case 2:i=E.Zero(d);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}e=i;case 3:j=$clone(e,E.Value).Interface();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$assertType(j,Z).String();$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(c===k){$s=8;continue;}$s=9;continue;case 8:$s=-1;return true;case 9:l=c;if(l===("false")){$s=-1;return true;}else if(l===("")){$s=-1;return true;}else if(l===("0")){$s=-1;return true;}$s=-1;return false;}return;}if($f===undefined){$f={$blk:AJ};}$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;};AK=function(b){var $ptr,b,c,d,e,f,g,h,i;c="";d="";d=b.Usage;e=0;while(true){if(!(e<d.length)){break;}if(d.charCodeAt(e)===96){f=e+1>>0;while(true){if(!(f<d.length)){break;}if(d.charCodeAt(f)===96){c=$substring(d,(e+1>>0),f);d=$substring(d,0,e)+c+$substring(d,(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,K,true)[1]){c="";}else if($assertType(i,BU,true)[1]){c="duration";}else if($assertType(i,BT,true)[1]){c="float";}else if($assertType(i,BO,true)[1]||$assertType(i,BP,true)[1]){c="int";}else if($assertType(i,BS,true)[1]){c="string";}else if($assertType(i,BQ,true)[1]||$assertType(i,BR,true)[1]){c="uint";}return[c,d];};$pkg.UnquoteUsage=AK;AC.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,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:d=B.Sprintf(" -%s",new BM([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=AK(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);i=AJ(c,c.DefValue);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=2;continue;}$s=3;continue;case 2:j=$assertType(c.Value,BS,true);k=j[1];if(k){$s=5;continue;}$s=6;continue;case 5:l=B.Sprintf(" (default %q)",new BM([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);$s=7;continue;case 6:m=B.Sprintf(" (default %v)",new BM([new $String(c.DefValue)]));$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}e=e+(m);case 7:case 3:n=B.Fprint(b[0].out(),new BM([new $String(e),new $String("\n")]));$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=-1;return;}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.n=n;$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;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.PrintDefaults};}$f.$ptr=$ptr;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.PrintDefaults=function(){return this.$val.PrintDefaults();};AL=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;return;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};$pkg.PrintDefaults=AL;AC.ptr.prototype.defaultUsage=function(){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:b=this;if(b.name===""){$s=1;continue;}$s=2;continue;case 1:c=B.Fprintf(b.out(),"Usage:\n",new BM([]));$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 BM([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;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.defaultUsage};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.defaultUsage=function(){return this.$val.defaultUsage();};AC.ptr.prototype.NFlag=function(){var $ptr,b;b=this;return $keys(b.actual).length;};AC.prototype.NFlag=function(){return this.$val.NFlag();};AC.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"),undefined):d.$array[d.$offset+b]));};AC.prototype.Arg=function(b){return this.$val.Arg(b);};AC.ptr.prototype.NArg=function(){var $ptr,b;b=this;return b.args.$length;};AC.prototype.NArg=function(){return this.$val.NArg();};AC.ptr.prototype.Args=function(){var $ptr,b;b=this;return b.args;};AC.prototype.Args=function(){return this.$val.Args();};AC.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(J(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.BoolVar=function(b,c,d,e){return this.$val.BoolVar(b,c,d,e);};AC.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,BZ);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Bool=function(b,c,d){return this.$val.Bool(b,c,d);};AR=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.Bool(b,c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bool=AR;AC.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(M(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.IntVar=function(b,c,d,e){return this.$val.IntVar(b,c,d,e);};AC.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,CA);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Int=function(b,c,d){return this.$val.Int(b,c,d);};AT=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.Int(b,c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Int=AT;AC.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(O(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Int64Var=function(b,c,d,e){return this.$val.Int64Var(b,c,d,e);};AC.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),CB);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Int64=function(b,c,d){return this.$val.Int64(b,c,d);};AC.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(Q(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.UintVar=function(b,c,d,e){return this.$val.UintVar(b,c,d,e);};AC.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,CC);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Uint=function(b,c,d){return this.$val.Uint(b,c,d);};AX=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.Uint(b,c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Uint=AX;AC.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(S(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Uint64Var=function(b,c,d,e){return this.$val.Uint64Var(b,c,d,e);};AC.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),CD);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Uint64=function(b,c,d){return this.$val.Uint64(b,c,d);};AC.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(U(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.StringVar=function(b,c,d,e){return this.$val.StringVar(b,c,d,e);};AC.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("",CE);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.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=-1;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;AC.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(W(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Float64Var=function(b,c,d,e){return this.$val.Float64Var(b,c,d,e);};AC.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,CF);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Float64=function(b,c,d){return this.$val.Float64(b,c,d);};AC.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(Y(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.DurationVar=function(b,c,d,e){return this.$val.DurationVar(b,c,d,e);};AC.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 H.Duration(0,0),BV);$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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Duration=function(b,c,d){return this.$val.Duration(b,c,d);};BF=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.Duration(b,c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:BF};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Duration=BF;AC.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 AD.ptr(c,d,b,f);h=(i=e.formal[$String.keyFor(c)],i!==undefined?[i.v,true]:[BW.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 BM([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 BM([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 BM([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;return;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Var=function(b,c,d){return this.$val.Var(b,c,d);};AC.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 BM([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;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.failf=function(b,c){return this.$val.failf(b,c);};AC.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:$r=b.defaultUsage();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=b.Usage();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.usage};}$f.$ptr=$ptr;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.usage=function(){return this.$val.usage();};AC.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){$s=-1;return[false,$ifaceNil];}d=(c=b.args,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));if((d.length===0)||!((d.charCodeAt(0)===45))||(d.length===1)){$s=-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);$s=-1;return[false,$ifaceNil];}}f=$substring(d,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 BM([new $String(d)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return[false,g];case 2:b.args=$subslice(b.args,1);h=false;i="";j=1;while(true){if(!(j<f.length)){break;}if(f.charCodeAt(j)===61){i=$substring(f,(j+1>>0));h=true;f=$substring(f,0,j);break;}j=j+(1)>>0;}k=b.formal;l=(m=k[$String.keyFor(f)],m!==undefined?[m.v,true]:[BW.nil,false]);n=l[0];o=l[1];if(!o){$s=4;continue;}$s=5;continue;case 4:if(f==="help"||f==="h"){$s=6;continue;}$s=7;continue;case 6:$r=b.usage();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return[false,$pkg.ErrHelp];case 7:p=b.failf("flag provided but not defined: -%s",new BM([new $String(f)]));$s=9;case 9:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[false,p];case 5:q=$assertType(n.Value,K,true);r=q[0];s=q[1];if(!(s)){t=false;$s=13;continue s;}u=r.IsBoolFlag();$s=14;case 14:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;case 13:if(t){$s=10;continue;}$s=11;continue;case 10:if(h){$s=15;continue;}$s=16;continue;case 15:v=r.Set(i);$s=18;case 18:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(!($interfaceIsEqual(w,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:x=b.failf("invalid boolean value %q for -%s: %v",new BM([new $String(i),new $String(f),w]));$s=21;case 21:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[false,x];case 20:$s=17;continue;case 16:y=r.Set("true");$s=22;case 22:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(!($interfaceIsEqual(z,$ifaceNil))){$s=23;continue;}$s=24;continue;case 23:aa=b.failf("invalid boolean flag %s: %v",new BM([new $String(f),z]));$s=25;case 25:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return[false,aa];case 24:case 17:$s=12;continue;case 11:if(!h&&b.args.$length>0){h=true;ab=(ac=b.args,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]));ad=$subslice(b.args,1);i=ab;b.args=ad;}if(!h){$s=26;continue;}$s=27;continue;case 26:ae=b.failf("flag needs an argument: -%s",new BM([new $String(f)]));$s=28;case 28:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return[false,ae];case 27:af=n.Value.Set(i);$s=29;case 29:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;if(!($interfaceIsEqual(ag,$ifaceNil))){$s=30;continue;}$s=31;continue;case 30:ah=b.failf("invalid value %q for flag -%s: %v",new BM([new $String(i),new $String(f),ag]));$s=32;case 32:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=-1;return[false,ah];case 31:case 12:if(b.actual===false){b.actual={};}ai=f;(b.actual||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ai)]={k:ai,v:n};$s=-1;return[true,$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.parseOne=function(){return this.$val.parseOne();};AC.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)){$s=-1;return g;}else if(h===(1)){D.Exit(2);}else if(h===(2)){$panic(g);}$s=1;continue;case 2:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.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;};AC.prototype.Parse=function(b){return this.$val.Parse(b);};AC.ptr.prototype.Parsed=function(){var $ptr,b;b=this;return b.parsed;};AC.prototype.Parsed=function(){return this.$val.Parsed();};BJ=function(){var $ptr;$pkg.CommandLine.Usage=BK;};BK=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.Usage();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:BK};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};BL=function(b,c){var $ptr,b,c,d;d=new AC.ptr($throwNilPointerError,b,false,false,false,CG.nil,c,$ifaceNil);d.Usage=$methodVal(d,"defaultUsage");return d;};$pkg.NewFlagSet=BL;AC.ptr.prototype.Init=function(b,c){var $ptr,b,c,d;d=this;d.name=b;d.errorHandling=c;};AC.prototype.Init=function(b,c){return this.$val.Init(b,c);};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)},{prop:"IsBoolFlag",name:"IsBoolFlag",pkg:"",typ:$funcType([],[$Bool],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)}];BT.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)}];BU.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)}];CI.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([CH],[],false)},{prop:"Visit",name:"Visit",pkg:"",typ:$funcType([CH],[],false)},{prop:"Lookup",name:"Lookup",pkg:"",typ:$funcType([$String],[BW],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$String],[$error],false)},{prop:"PrintDefaults",name:"PrintDefaults",pkg:"",typ:$funcType([],[],false)},{prop:"defaultUsage",name:"defaultUsage",pkg:"flag",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([],[CG],false)},{prop:"BoolVar",name:"BoolVar",pkg:"",typ:$funcType([BZ,$String,$Bool,$String],[],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([$String,$Bool,$String],[BZ],false)},{prop:"IntVar",name:"IntVar",pkg:"",typ:$funcType([CA,$String,$Int,$String],[],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([$String,$Int,$String],[CA],false)},{prop:"Int64Var",name:"Int64Var",pkg:"",typ:$funcType([CB,$String,$Int64,$String],[],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([$String,$Int64,$String],[CB],false)},{prop:"UintVar",name:"UintVar",pkg:"",typ:$funcType([CC,$String,$Uint,$String],[],false)},{prop:"Uint",name:"Uint",pkg:"",typ:$funcType([$String,$Uint,$String],[CC],false)},{prop:"Uint64Var",name:"Uint64Var",pkg:"",typ:$funcType([CD,$String,$Uint64,$String],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([$String,$Uint64,$String],[CD],false)},{prop:"StringVar",name:"StringVar",pkg:"",typ:$funcType([CE,$String,$String,$String],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([$String,$String,$String],[CE],false)},{prop:"Float64Var",name:"Float64Var",pkg:"",typ:$funcType([CF,$String,$Float64,$String],[],false)},{prop:"Float64",name:"Float64",pkg:"",typ:$funcType([$String,$Float64,$String],[CF],false)},{prop:"DurationVar",name:"DurationVar",pkg:"",typ:$funcType([BV,$String,H.Duration,$String],[],false)},{prop:"Duration",name:"Duration",pkg:"",typ:$funcType([$String,H.Duration,$String],[BV],false)},{prop:"Var",name:"Var",pkg:"",typ:$funcType([Z,$String,$String],[],false)},{prop:"failf",name:"failf",pkg:"flag",typ:$funcType([$String,BM],[$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([CG],[$error],false)},{prop:"Parsed",name:"Parsed",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Init",name:"Init",pkg:"",typ:$funcType([$String,AB],[],false)}];K.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)}]);Z.init([{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AC.init("flag",[{prop:"Usage",name:"Usage",exported:true,typ:CJ,tag:""},{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"parsed",name:"parsed",exported:false,typ:$Bool,tag:""},{prop:"actual",name:"actual",exported:false,typ:CK,tag:""},{prop:"formal",name:"formal",exported:false,typ:CK,tag:""},{prop:"args",name:"args",exported:false,typ:CG,tag:""},{prop:"errorHandling",name:"errorHandling",exported:false,typ:AB,tag:""},{prop:"output",name:"output",exported:false,typ:C.Writer,tag:""}]);AD.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Usage",name:"Usage",exported:true,typ:$String,tag:""},{prop:"Value",name:"Value",exported:true,typ:Z,tag:""},{prop:"DefValue",name:"DefValue",exported:true,typ:$String,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrHelp=A.New("flag: help requested");$pkg.CommandLine=BL((a=D.Args,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):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 BM([new $String((b=D.Args,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):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=AL();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;});BJ();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/daviddengcn/go-colortext"]=(function(){var $pkg={},$init,A,B,C,D,M,N,E,F,G,I,J,K,L;A=$packages["fmt"];B=$packages["os"];C=$packages["strconv"];D=$pkg.Color=$newType(4,$kindInt,"ct.Color",true,"github.com/daviddengcn/go-colortext",true,null);M=$sliceType($emptyInterface);N=$sliceType($Uint8);E=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=J();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ResetColor=E;F=function(a,b,c,d){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:$r=L(a,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:F};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ChangeColor=F;G=function(a,b){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:$r=F(a,b,0,false);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:G};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Foreground=G;I=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=B.Getenv("TERM");$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a==="dumb";}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};J=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=I();$s=3;case 3:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}if(a){$s=1;continue;}$s=2;continue;case 1:$s=-1;return;case 2:b=A.Print(new M([new $String("\x1B[0m")]));$s=4;case 4:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;$s=-1;return;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};K=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;if((a===0)&&(c===0)){return"";}e=new N($stringToBytes("\x1B[0"));if(!((a===0))){e=C.AppendUint($appendSlice(e,";"),(f=new $Uint64(0,(a-1>>0)),new $Uint64(0+f.$high,30+f.$low)),10);if(b){e=$appendSlice(e,";1");}}if(!((c===0))){e=C.AppendUint($appendSlice(e,";"),(g=new $Uint64(0,(c-1>>0)),new $Uint64(0+g.$high,40+g.$low)),10);if(d){e=$appendSlice(e,";1");}}e=$appendSlice(e,"m");return $bytesToString(e);};L=function(a,b,c,d){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:e=I();$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:$s=-1;return;case 2:if((a===0)&&(c===0)){$s=-1;return;}f=A.Print(new M([new $String(K(a,b,c,d))]));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["regexp/syntax"]=(function(){var $pkg={},$init,E,B,F,C,A,D,G,H,I,M,N,O,P,Z,AM,BK,BL,BN,BQ,BW,BX,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,CS,K,L,AA,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BM,J,Q,R,S,T,U,V,W,X,Y,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,BO,BP,BR,BS,BT,BU,BV,BY,BZ,CA;E=$packages["bytes"];B=$packages["sort"];F=$packages["strconv"];C=$packages["strings"];A=$packages["unicode"];D=$packages["unicode/utf8"];G=$pkg.patchList=$newType(4,$kindUint32,"syntax.patchList",true,"regexp/syntax",false,null);H=$pkg.frag=$newType(0,$kindStruct,"syntax.frag",true,"regexp/syntax",false,function(i_,out_){this.$val=this;if(arguments.length===0){this.i=0;this.out=0;return;}this.i=i_;this.out=out_;});I=$pkg.compiler=$newType(0,$kindStruct,"syntax.compiler",true,"regexp/syntax",false,function(p_){this.$val=this;if(arguments.length===0){this.p=CF.nil;return;}this.p=p_;});M=$pkg.Error=$newType(0,$kindStruct,"syntax.Error",true,"regexp/syntax",true,function(Code_,Expr_){this.$val=this;if(arguments.length===0){this.Code="";this.Expr="";return;}this.Code=Code_;this.Expr=Expr_;});N=$pkg.ErrorCode=$newType(8,$kindString,"syntax.ErrorCode",true,"regexp/syntax",true,null);O=$pkg.Flags=$newType(2,$kindUint16,"syntax.Flags",true,"regexp/syntax",true,null);P=$pkg.parser=$newType(0,$kindStruct,"syntax.parser",true,"regexp/syntax",false,function(flags_,stack_,free_,numCap_,wholeRegexp_,tmpClass_){this.$val=this;if(arguments.length===0){this.flags=0;this.stack=CI.nil;this.free=CH.nil;this.numCap=0;this.wholeRegexp="";this.tmpClass=CB.nil;return;}this.flags=flags_;this.stack=stack_;this.free=free_;this.numCap=numCap_;this.wholeRegexp=wholeRegexp_;this.tmpClass=tmpClass_;});Z=$pkg.charGroup=$newType(0,$kindStruct,"syntax.charGroup",true,"regexp/syntax",false,function(sign_,class$1_){this.$val=this;if(arguments.length===0){this.sign=0;this.class$1=CB.nil;return;}this.sign=sign_;this.class$1=class$1_;});AM=$pkg.ranges=$newType(0,$kindStruct,"syntax.ranges",true,"regexp/syntax",false,function(p_){this.$val=this;if(arguments.length===0){this.p=CL.nil;return;}this.p=p_;});BK=$pkg.Prog=$newType(0,$kindStruct,"syntax.Prog",true,"regexp/syntax",true,function(Inst_,Start_,NumCap_){this.$val=this;if(arguments.length===0){this.Inst=CG.nil;this.Start=0;this.NumCap=0;return;}this.Inst=Inst_;this.Start=Start_;this.NumCap=NumCap_;});BL=$pkg.InstOp=$newType(1,$kindUint8,"syntax.InstOp",true,"regexp/syntax",true,null);BN=$pkg.EmptyOp=$newType(1,$kindUint8,"syntax.EmptyOp",true,"regexp/syntax",true,null);BQ=$pkg.Inst=$newType(0,$kindStruct,"syntax.Inst",true,"regexp/syntax",true,function(Op_,Out_,Arg_,Rune_){this.$val=this;if(arguments.length===0){this.Op=0;this.Out=0;this.Arg=0;this.Rune=CB.nil;return;}this.Op=Op_;this.Out=Out_;this.Arg=Arg_;this.Rune=Rune_;});BW=$pkg.Regexp=$newType(0,$kindStruct,"syntax.Regexp",true,"regexp/syntax",true,function(Op_,Flags_,Sub_,Sub0_,Rune_,Rune0_,Min_,Max_,Cap_,Name_){this.$val=this;if(arguments.length===0){this.Op=0;this.Flags=0;this.Sub=CI.nil;this.Sub0=CJ.zero();this.Rune=CB.nil;this.Rune0=CK.zero();this.Min=0;this.Max=0;this.Cap=0;this.Name="";return;}this.Op=Op_;this.Flags=Flags_;this.Sub=Sub_;this.Sub0=Sub0_;this.Rune=Rune_;this.Rune0=Rune0_;this.Min=Min_;this.Max=Max_;this.Cap=Cap_;this.Name=Name_;});BX=$pkg.Op=$newType(1,$kindUint8,"syntax.Op",true,"regexp/syntax",true,null);CB=$sliceType($Int32);CC=$sliceType(A.Range16);CD=$sliceType(A.Range32);CE=$sliceType($String);CF=$ptrType(BK);CG=$sliceType(BQ);CH=$ptrType(BW);CI=$sliceType(CH);CJ=$arrayType(CH,1);CK=$arrayType($Int32,2);CL=$ptrType(CB);CM=$ptrType(A.RangeTable);CN=$sliceType($Uint8);CO=$arrayType($Uint8,64);CP=$ptrType(I);CQ=$ptrType(M);CR=$ptrType(P);CS=$ptrType(BQ);G.prototype.next=function(a){var $ptr,a,b,c,d,e;b=this.$val;e=(c=a.Inst,d=b>>>1>>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));if(((b&1)>>>0)===0){return(e.Out>>>0);}return(e.Arg>>>0);};$ptrType(G).prototype.next=function(a){return new G(this.$get()).next(a);};G.prototype.patch=function(a,b){var $ptr,a,b,c,d,e,f;c=this.$val;while(true){if(!(!((c===0)))){break;}f=(d=a.Inst,e=c>>>1>>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));if(((c&1)>>>0)===0){c=(f.Out>>>0);f.Out=b;}else{c=(f.Arg>>>0);f.Arg=b;}}};$ptrType(G).prototype.patch=function(a,b){return new G(this.$get()).patch(a,b);};G.prototype.append=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this.$val;if(c===0){return b;}if(b===0){return c;}d=c;while(true){e=new G(d).next(a);if(e===0){break;}d=e;}h=(f=a.Inst,g=d>>>1>>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));if(((d&1)>>>0)===0){h.Out=(b>>>0);}else{h.Arg=(b>>>0);}return c;};$ptrType(G).prototype.append=function(a,b){return new G(this.$get()).append(a,b);};J=function(a){var $ptr,a,b,c;b=new I.ptr(CF.nil);b.init();c=$clone(b.compile(a),H);new G(c.out).patch(b.p,b.inst(4).i);b.p.Start=(c.i>>0);return[b.p,$ifaceNil];};$pkg.Compile=J;I.ptr.prototype.init=function(){var $ptr,a;a=this;a.p=new BK.ptr(CG.nil,0,0);a.p.NumCap=2;a.inst(5);};I.prototype.init=function(){return this.$val.init();};I.ptr.prototype.compile=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;b=this;c=a.Op;if(c===(1)){return b.fail();}else if(c===(2)){return b.nop();}else if(c===(3)){if(a.Rune.$length===0){return b.nop();}d=new H.ptr(0,0);e=a.Rune;f=0;while(true){if(!(f<e.$length)){break;}g=f;h=$clone(b.rune($subslice(a.Rune,g,(g+1>>0)),a.Flags),H);if(g===0){H.copy(d,h);}else{H.copy(d,b.cat($clone(d,H),$clone(h,H)));}f++;}return d;}else if(c===(4)){return b.rune(a.Rune,a.Flags);}else if(c===(5)){return b.rune(K,0);}else if(c===(6)){return b.rune(L,0);}else if(c===(7)){return b.empty(1);}else if(c===(8)){return b.empty(2);}else if(c===(9)){return b.empty(4);}else if(c===(10)){return b.empty(8);}else if(c===(11)){return b.empty(16);}else if(c===(12)){return b.empty(32);}else if(c===(13)){i=$clone(b.cap(((a.Cap<<1>>0)>>>0)),H);k=$clone(b.compile((j=a.Sub,(0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0]))),H);l=$clone(b.cap((((a.Cap<<1>>0)|1)>>>0)),H);return b.cat($clone(b.cat($clone(i,H),$clone(k,H)),H),$clone(l,H));}else if(c===(14)){return b.star($clone(b.compile((m=a.Sub,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(15)){return b.plus($clone(b.compile((n=a.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(16)){return b.quest($clone(b.compile((o=a.Sub,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(18)){if(a.Sub.$length===0){return b.nop();}p=new H.ptr(0,0);q=a.Sub;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]);if(s===0){H.copy(p,b.compile(t));}else{H.copy(p,b.cat($clone(p,H),$clone(b.compile(t),H)));}r++;}return p;}else if(c===(19)){u=new H.ptr(0,0);v=a.Sub;w=0;while(true){if(!(w<v.$length)){break;}x=((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]);H.copy(u,b.alt($clone(u,H),$clone(b.compile(x),H)));w++;}return u;}$panic(new $String("regexp: unhandled case in compile"));};I.prototype.compile=function(a){return this.$val.compile(a);};I.ptr.prototype.inst=function(a){var $ptr,a,b,c;b=this;c=new H.ptr((b.p.Inst.$length>>>0),0);b.p.Inst=$append(b.p.Inst,new BQ.ptr(a,0,0,CB.nil));return c;};I.prototype.inst=function(a){return this.$val.inst(a);};I.ptr.prototype.nop=function(){var $ptr,a,b;a=this;b=$clone(a.inst(6),H);b.out=((b.i<<1>>>0)>>>0);return b;};I.prototype.nop=function(){return this.$val.nop();};I.ptr.prototype.fail=function(){var $ptr,a;a=this;return new H.ptr(0,0);};I.prototype.fail=function(){return this.$val.fail();};I.ptr.prototype.cap=function(a){var $ptr,a,b,c,d,e;b=this;c=$clone(b.inst(2),H);c.out=((c.i<<1>>>0)>>>0);(d=b.p.Inst,e=c.i,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Arg=a;if(b.p.NumCap<((a>>0)+1>>0)){b.p.NumCap=(a>>0)+1>>0;}return c;};I.prototype.cap=function(a){return this.$val.cap(a);};I.ptr.prototype.cat=function(a,b){var $ptr,a,b,c;c=this;if((a.i===0)||(b.i===0)){return new H.ptr(0,0);}new G(a.out).patch(c.p,b.i);return new H.ptr(a.i,b.out);};I.prototype.cat=function(a,b){return this.$val.cat(a,b);};I.ptr.prototype.alt=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;if(a.i===0){return b;}if(b.i===0){return a;}d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));g.Out=a.i;g.Arg=b.i;d.out=new G(a.out).append(c.p,b.out);return d;};I.prototype.alt=function(a,b){return this.$val.alt(a,b);};I.ptr.prototype.quest=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(b){g.Arg=a.i;d.out=((d.i<<1>>>0)>>>0);}else{g.Out=a.i;d.out=((((d.i<<1>>>0)|1)>>>0)>>>0);}d.out=new G(d.out).append(c.p,a.out);return d;};I.prototype.quest=function(a,b){return this.$val.quest(a,b);};I.ptr.prototype.star=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(b){g.Arg=a.i;d.out=((d.i<<1>>>0)>>>0);}else{g.Out=a.i;d.out=((((d.i<<1>>>0)|1)>>>0)>>>0);}new G(a.out).patch(c.p,d.i);return d;};I.prototype.star=function(a,b){return this.$val.star(a,b);};I.ptr.prototype.plus=function(a,b){var $ptr,a,b,c;c=this;return new H.ptr(a.i,c.star($clone(a,H),b).out);};I.prototype.plus=function(a,b){return this.$val.plus(a,b);};I.ptr.prototype.empty=function(a){var $ptr,a,b,c,d,e;b=this;c=$clone(b.inst(3),H);(d=b.p.Inst,e=c.i,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Arg=(a>>>0);c.out=((c.i<<1>>>0)>>>0);return c;};I.prototype.empty=function(a){return this.$val.empty(a);};I.ptr.prototype.rune=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(7),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));g.Rune=a;b=(b&(1))>>>0;if(!((a.$length===1))||(A.SimpleFold((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]))===(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]))){b=(b&~(1))<<16>>>16;}g.Arg=(b>>>0);d.out=((d.i<<1>>>0)>>>0);if((((b&1)>>>0)===0)&&((a.$length===1)||(a.$length===2)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])))){g.Op=8;}else if((a.$length===2)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===0)&&((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])===1114111)){g.Op=9;}else if((a.$length===4)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===0)&&((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])===9)&&((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])===11)&&((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])===1114111)){g.Op=10;}return d;};I.prototype.rune=function(a,b){return this.$val.rune(a,b);};M.ptr.prototype.Error=function(){var $ptr,a;a=this;return"error parsing regexp: "+new N(a.Code).String()+": `"+a.Expr+"`";};M.prototype.Error=function(){return this.$val.Error();};N.prototype.String=function(){var $ptr,a;a=this.$val;return a;};$ptrType(N).prototype.String=function(){return new N(this.$get()).String();};P.ptr.prototype.newRegexp=function(a){var $ptr,a,b,c;b=this;c=b.free;if(!(c===CH.nil)){b.free=c.Sub0[0];BW.copy(c,new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,""));}else{c=new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}c.Op=a;return c;};P.prototype.newRegexp=function(a){return this.$val.newRegexp(a);};P.ptr.prototype.reuse=function(a){var $ptr,a,b;b=this;a.Sub0[0]=b.free;b.free=a;};P.prototype.reuse=function(a){return this.$val.reuse(a);};P.ptr.prototype.push=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;b=this;if((a.Op===4)&&(a.Rune.$length===2)&&((c=a.Rune,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]))===(d=a.Rune,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])))){if(b.maybeConcat((s=a.Rune,(0>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+0])),(b.flags&~1)<<16>>>16)){return CH.nil;}a.Op=3;a.Rune=$subslice(a.Rune,0,1);a.Flags=(b.flags&~1)<<16>>>16;}else if((a.Op===4)&&(a.Rune.$length===4)&&((e=a.Rune,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))===(f=a.Rune,(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])))&&((g=a.Rune,(2>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+2]))===(h=a.Rune,(3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3])))&&(A.SimpleFold((i=a.Rune,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])))===(j=a.Rune,(2>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+2])))&&(A.SimpleFold((k=a.Rune,(2>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+2])))===(l=a.Rune,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])))||(a.Op===4)&&(a.Rune.$length===2)&&(((m=a.Rune,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))+1>>0)===(n=a.Rune,(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])))&&(A.SimpleFold((o=a.Rune,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])))===(p=a.Rune,(1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])))&&(A.SimpleFold((q=a.Rune,(1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])))===(r=a.Rune,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])))){if(b.maybeConcat((t=a.Rune,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0])),(b.flags|1)>>>0)){return CH.nil;}a.Op=3;a.Rune=$subslice(a.Rune,0,1);a.Flags=(b.flags|1)>>>0;}else{b.maybeConcat(-1,0);}b.stack=$append(b.stack,a);return a;};P.prototype.push=function(a){return this.$val.push(a);};P.ptr.prototype.maybeConcat=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=this;d=c.stack.$length;if(d<2){return false;}g=(e=c.stack,f=d-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));j=(h=c.stack,i=d-2>>0,((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]));if(!((g.Op===3))||!((j.Op===3))||!((((g.Flags&1)>>>0)===((j.Flags&1)>>>0)))){return false;}j.Rune=$appendSlice(j.Rune,g.Rune);if(a>=0){g.Rune=$subslice(new CB(g.Rune0),0,1);(k=g.Rune,(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]=a));g.Flags=b;return true;}c.stack=$subslice(c.stack,0,(d-1>>0));c.reuse(g);return false;};P.prototype.maybeConcat=function(a,b){return this.$val.maybeConcat(a,b);};P.ptr.prototype.newLiteral=function(a,b){var $ptr,a,b,c,d;c=this;d=c.newRegexp(3);d.Flags=b;if(!((((b&1)>>>0)===0))){a=Q(a);}d.Rune0[0]=a;d.Rune=$subslice(new CB(d.Rune0),0,1);return d;};P.prototype.newLiteral=function(a,b){return this.$val.newLiteral(a,b);};Q=function(a){var $ptr,a,b,c;if(a<65||a>125251){return a;}b=a;c=a;a=A.SimpleFold(a);while(true){if(!(!((a===c)))){break;}if(b>a){b=a;}a=A.SimpleFold(a);}return b;};P.ptr.prototype.literal=function(a){var $ptr,a,b;b=this;b.push(b.newLiteral(a,b.flags));};P.prototype.literal=function(a){return this.$val.literal(a);};P.ptr.prototype.op=function(a){var $ptr,a,b,c;b=this;c=b.newRegexp(a);c.Flags=b.flags;return b.push(c);};P.prototype.op=function(a){return this.$val.op(a);};P.ptr.prototype.repeat=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;g=this;h=g.flags;if(!((((g.flags&64)>>>0)===0))){if(e.length>0&&(e.charCodeAt(0)===63)){e=$substring(e,1);h=(h^(32))<<16>>>16;}if(!(f==="")){return["",new M.ptr("invalid nested repetition operator",$substring(f,0,(f.length-e.length>>0)))];}}i=g.stack.$length;if(i===0){return["",new M.ptr("missing argument to repetition operator",$substring(d,0,(d.length-e.length>>0)))];}l=(j=g.stack,k=i-1>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]));if(l.Op>=128){return["",new M.ptr("missing argument to repetition operator",$substring(d,0,(d.length-e.length>>0)))];}m=g.newRegexp(a);m.Min=b;m.Max=c;m.Flags=h;m.Sub=$subslice(new CI(m.Sub0),0,1);(n=m.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]=l));(o=g.stack,p=i-1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=m));if((a===17)&&(b>=2||c>=2)&&!R(m,1000)){return["",new M.ptr("invalid repeat count",$substring(d,0,(d.length-e.length>>0)))];}return[e,$ifaceNil];};P.prototype.repeat=function(a,b,c,d,e,f){return this.$val.repeat(a,b,c,d,e,f);};R=function(a,b){var $ptr,a,b,c,d,e,f,g;if(a.Op===17){c=a.Max;if(c===0){return true;}if(c<0){c=a.Min;}if(c>b){return false;}if(c>0){b=(d=b/(c),(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));}}e=a.Sub;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!R(g,b)){return false;}f++;}return true;};P.ptr.prototype.concat=function(){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;a.maybeConcat(-1,0);b=a.stack.$length;while(true){if(!(b>0&&(c=a.stack,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op<128)){break;}b=b-(1)>>0;}e=$subslice(a.stack,b);a.stack=$subslice(a.stack,0,b);if(e.$length===0){$s=-1;return a.push(a.newRegexp(2));}f=a.collapse(e,18);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=a.push(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.concat=function(){return this.$val.concat();};P.ptr.prototype.alternate=function(){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.stack.$length;while(true){if(!(b>0&&(c=a.stack,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op<128)){break;}b=b-(1)>>0;}e=$subslice(a.stack,b);a.stack=$subslice(a.stack,0,b);if(e.$length>0){$s=1;continue;}$s=2;continue;case 1:$r=S((f=e.$length-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(e.$length===0){$s=-1;return a.push(a.newRegexp(1));}g=a.collapse(e,19);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=a.push(g);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.alternate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.alternate=function(){return this.$val.alternate();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=a.Op;if(b===(4)){$s=2;continue;}$s=3;continue;case 2:c=AC((a.$ptr_Rune||(a.$ptr_Rune=new CL(function(){return this.$target.Rune;},function($v){this.$target.Rune=$v;},a))));$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a.Rune=c;if((a.Rune.$length===2)&&((d=a.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))===0)&&((e=a.Rune,(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]))===1114111)){a.Rune=CB.nil;a.Op=6;$s=-1;return;}if((a.Rune.$length===4)&&((f=a.Rune,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))===0)&&((g=a.Rune,(1>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+1]))===9)&&((h=a.Rune,(2>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+2]))===11)&&((i=a.Rune,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]))===1114111)){a.Rune=CB.nil;a.Op=5;$s=-1;return;}if((a.Rune.$capacity-a.Rune.$length>>0)>100){a.Rune=$appendSlice($subslice(new CB(a.Rune0),0,0),a.Rune);}case 3:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};P.ptr.prototype.collapse=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(a.$length===1){$s=-1;return(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]);}d=c.newRegexp(b);d.Sub=$subslice(new CI(d.Sub0),0,0);e=a;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(g.Op===b){d.Sub=$appendSlice(d.Sub,g.Sub);c.reuse(g);}else{d.Sub=$append(d.Sub,g);}f++;}if(b===19){$s=1;continue;}$s=2;continue;case 1:h=c.factor(d.Sub,d.Flags);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d.Sub=h;if(d.Sub.$length===1){i=d;d=(j=d.Sub,(0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0]));c.reuse(i);}case 2:$s=-1;return d;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.collapse};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.collapse=function(a,b){return this.$val.collapse(a,b);};P.ptr.prototype.factor=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(a.$length<2){$s=-1;return a;}d=CB.nil;e=0;f=0;g=$subslice(a,0,0);h=0;case 1:if(!(h<=a.$length)){$s=2;continue;}i=CB.nil;j=0;if(h<a.$length){$s=3;continue;}$s=4;continue;case 3:k=c.leadingString(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]));i=k[0];j=k[1];if(j===e){l=0;while(true){if(!(l<d.$length&&l<i.$length&&(((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l])===((l<0||l>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+l])))){break;}l=l+(1)>>0;}if(l>0){d=$subslice(d,0,l);h=h+(1)>>0;$s=1;continue;}}case 4:if(h===f){$s=5;continue;}if(h===(f+1>>0)){$s=6;continue;}$s=7;continue;case 5:$s=8;continue;case 6:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=8;continue;case 7:m=c.newRegexp(3);m.Flags=e;m.Rune=$appendSlice($subslice(m.Rune,0,0),d);n=f;while(true){if(!(n<h)){break;}((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]=c.removeLeadingString(((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]),d.$length));n=n+(1)>>0;}o=c.collapse($subslice(a,f,h),19);$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=c.newRegexp(18);q.Sub=$append($subslice(q.Sub,0,0),m,p);g=$append(g,q);case 8:f=h;d=i;e=j;h=h+(1)>>0;$s=1;continue;case 2:a=g;f=0;g=$subslice(a,0,0);r=CH.nil;s=0;case 10:if(!(s<=a.$length)){$s=11;continue;}t=CH.nil;if(s<a.$length){$s=12;continue;}$s=13;continue;case 12:t=c.leadingRegexp(((s<0||s>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+s]));if(!(r===CH.nil)&&r.Equal(t)&&(W(r)||((r.Op===17)&&(r.Min===r.Max)&&W((u=r.Sub,(0>=u.$length?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+0])))))){s=s+(1)>>0;$s=10;continue;}case 13:if(s===f){$s=14;continue;}if(s===(f+1>>0)){$s=15;continue;}$s=16;continue;case 14:$s=17;continue;case 15:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=17;continue;case 16:v=r;w=f;while(true){if(!(w<s)){break;}x=!((w===f));((w<0||w>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+w]=c.removeLeadingRegexp(((w<0||w>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+w]),x));w=w+(1)>>0;}y=c.collapse($subslice(a,f,s),19);$s=18;case 18:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;aa=c.newRegexp(18);aa.Sub=$append($subslice(aa.Sub,0,0),v,z);g=$append(g,aa);case 17:f=s;r=t;s=s+(1)>>0;$s=10;continue;case 11:a=g;f=0;g=$subslice(a,0,0);ab=0;case 19:if(!(ab<=a.$length)){$s=20;continue;}if(ab<a.$length&&W(((ab<0||ab>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ab]))){$s=21;continue;}$s=22;continue;case 21:ab=ab+(1)>>0;$s=19;continue;case 22:if(ab===f){$s=23;continue;}if(ab===(f+1>>0)){$s=24;continue;}$s=25;continue;case 23:$s=26;continue;case 24:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=26;continue;case 25:ac=f;ad=f+1>>0;while(true){if(!(ad<ab)){break;}if(((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Op<((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Op||(((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Op===((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Op)&&((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Rune.$length<((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Rune.$length){ac=ad;}ad=ad+(1)>>0;}ae=((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]);af=((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]);((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]=ae);((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]=af);ag=f+1>>0;while(true){if(!(ag<ab)){break;}Y(((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]),((ag<0||ag>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ag]));c.reuse(((ag<0||ag>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ag]));ag=ag+(1)>>0;}$r=S(((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));case 26:if(ab<a.$length){g=$append(g,((ab<0||ab>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ab]));}f=ab+1>>0;ab=ab+(1)>>0;$s=19;continue;case 20:a=g;f=0;g=$subslice(a,0,0);ah=a;ai=0;while(true){if(!(ai<ah.$length)){break;}aj=ai;if((aj+1>>0)<a.$length&&(((aj<0||aj>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+aj]).Op===2)&&((ak=aj+1>>0,((ak<0||ak>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ak])).Op===2)){ai++;continue;}g=$append(g,((aj<0||aj>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+aj]));ai++;}a=g;$s=-1;return a;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.factor};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.factor=function(a,b){return this.$val.factor(a,b);};P.ptr.prototype.leadingString=function(a){var $ptr,a,b,c;b=this;if((a.Op===18)&&a.Sub.$length>0){a=(c=a.Sub,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));}if(!((a.Op===3))){return[CB.nil,0];}return[a.Rune,(a.Flags&1)>>>0];};P.prototype.leadingString=function(a){return this.$val.leadingString(a);};P.ptr.prototype.removeLeadingString=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i;c=this;if((a.Op===18)&&a.Sub.$length>0){e=(d=a.Sub,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]));e=c.removeLeadingString(e,b);(f=a.Sub,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=e));if(e.Op===2){c.reuse(e);g=a.Sub.$length;if((g===(0))||(g===(1))){a.Op=2;a.Sub=CI.nil;}else if(g===(2)){h=a;a=(i=a.Sub,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));c.reuse(h);}else{$copySlice(a.Sub,$subslice(a.Sub,1));a.Sub=$subslice(a.Sub,0,(a.Sub.$length-1>>0));}}return a;}if(a.Op===3){a.Rune=$subslice(a.Rune,0,$copySlice(a.Rune,$subslice(a.Rune,b)));if(a.Rune.$length===0){a.Op=2;}}return a;};P.prototype.removeLeadingString=function(a,b){return this.$val.removeLeadingString(a,b);};P.ptr.prototype.leadingRegexp=function(a){var $ptr,a,b,c,d;b=this;if(a.Op===2){return CH.nil;}if((a.Op===18)&&a.Sub.$length>0){d=(c=a.Sub,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));if(d.Op===2){return CH.nil;}return d;}return a;};P.prototype.leadingRegexp=function(a){return this.$val.leadingRegexp(a);};P.ptr.prototype.removeLeadingRegexp=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;if((a.Op===18)&&a.Sub.$length>0){if(b){c.reuse((d=a.Sub,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])));}a.Sub=$subslice(a.Sub,0,$copySlice(a.Sub,$subslice(a.Sub,1)));e=a.Sub.$length;if(e===(0)){a.Op=2;a.Sub=CI.nil;}else if(e===(1)){f=a;a=(g=a.Sub,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]));c.reuse(f);}return a;}if(b){c.reuse(a);}return c.newRegexp(2);};P.prototype.removeLeadingRegexp=function(a,b){return this.$val.removeLeadingRegexp(a,b);};T=function(a,b){var $ptr,a,b,c,d,e,f,g;c=new BW.ptr(3,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");c.Flags=b;c.Rune=$subslice(new CB(c.Rune0),0,0);d=a;e=0;while(true){if(!(e<d.length)){break;}f=$decodeRune(d,e);g=f[0];if(c.Rune.$length>=c.Rune.$capacity){c.Rune=new CB($stringToRunes(a));break;}c.Rune=$append(c.Rune,g);e+=f[1];}return c;};U=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!((((b&2)>>>0)===0))){c=AN(a);if(!($interfaceIsEqual(c,$ifaceNil))){$s=-1;return[CH.nil,c];}$s=-1;return[T(a,b),$ifaceNil];}d=new P.ptr(0,CI.nil,CH.nil,0,"",CB.nil);e=$ifaceNil;f=0;g=0;h="";d.flags=b;d.wholeRegexp=a;i=a;case 1:if(!(!(i===""))){$s=2;continue;}j="";k=i.charCodeAt(0);if(k===(40)){$s=4;continue;}if(k===(124)){$s=5;continue;}if(k===(41)){$s=6;continue;}if(k===(94)){$s=7;continue;}if(k===(36)){$s=8;continue;}if(k===(46)){$s=9;continue;}if(k===(91)){$s=10;continue;}if((k===(42))||(k===(43))||(k===(63))){$s=11;continue;}if(k===(123)){$s=12;continue;}if(k===(92)){$s=13;continue;}$s=14;continue;case 4:if(!((((d.flags&64)>>>0)===0))&&i.length>=2&&(i.charCodeAt(1)===63)){l=d.parsePerlFlags(i);i=l[0];e=l[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}$s=3;continue;}d.numCap=d.numCap+(1)>>0;d.op(128).Cap=d.numCap;i=$substring(i,1);$s=15;continue;case 5:m=d.parseVerticalBar();$s=16;case 16:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}e=m;if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}i=$substring(i,1);$s=15;continue;case 6:n=d.parseRightParen();$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}e=n;if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}i=$substring(i,1);$s=15;continue;case 7:if(!((((d.flags&16)>>>0)===0))){d.op(9);}else{d.op(7);}i=$substring(i,1);$s=15;continue;case 8:if(!((((d.flags&16)>>>0)===0))){o=d.op(10);o.Flags=(o.Flags|(256))>>>0;}else{d.op(8);}i=$substring(i,1);$s=15;continue;case 9:if(!((((d.flags&8)>>>0)===0))){d.op(6);}else{d.op(5);}i=$substring(i,1);$s=15;continue;case 10:q=d.parseClass(i);$s=18;case 18:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;i=p[0];e=p[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}$s=15;continue;case 11:r=i;s=i.charCodeAt(0);if(s===(42)){g=14;}else if(s===(43)){g=15;}else if(s===(63)){g=16;}t=$substring(i,1);u=d.repeat(g,0,0,r,t,h);t=u[0];e=u[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}j=r;i=t;$s=15;continue;case 12:g=17;v=i;w=d.parseRepeat(i);x=w[0];y=w[1];z=w[2];aa=w[3];if(!aa){d.literal(123);i=$substring(i,1);$s=3;continue;}if(x<0||x>1000||y>1000||y>=0&&x>y){$s=-1;return[CH.nil,new M.ptr("invalid repeat count",$substring(v,0,(v.length-z.length>>0)))];}ab=d.repeat(g,x,y,v,z,h);z=ab[0];e=ab[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}j=v;i=z;$s=15;continue;case 13:if(!((((d.flags&64)>>>0)===0))&&i.length>=2){ac=i.charCodeAt(1);if(ac===(65)){d.op(9);i=$substring(i,2);$s=3;continue s;}else if(ac===(98)){d.op(11);i=$substring(i,2);$s=3;continue s;}else if(ac===(66)){d.op(12);i=$substring(i,2);$s=3;continue s;}else if(ac===(67)){$s=-1;return[CH.nil,new M.ptr("invalid escape sequence",$substring(i,0,2))];}else if(ac===(81)){ad="";ae=C.Index(i,"\\E");if(ae<0){ad=$substring(i,2);i="";}else{ad=$substring(i,2,ae);i=$substring(i,(ae+2>>0));}while(true){if(!(!(ad===""))){break;}af=AO(ad);ag=af[0];ah=af[1];ai=af[2];if(!($interfaceIsEqual(ai,$ifaceNil))){$s=-1;return[CH.nil,ai];}d.literal(ag);ad=ah;}$s=3;continue s;}else if(ac===(122)){d.op(10);i=$substring(i,2);$s=3;continue s;}}aj=d.newRegexp(4);aj.Flags=d.flags;if(i.length>=2&&((i.charCodeAt(1)===112)||(i.charCodeAt(1)===80))){$s=19;continue;}$s=20;continue;case 19:al=d.parseUnicodeClass(i,$subslice(new CB(aj.Rune0),0,0));$s=21;case 21:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=al;am=ak[0];an=ak[1];ao=ak[2];if(!($interfaceIsEqual(ao,$ifaceNil))){$s=-1;return[CH.nil,ao];}if(!(am===CB.nil)){aj.Rune=am;i=an;d.push(aj);$s=3;continue s;}case 20:aq=d.parsePerlClassEscape(i,$subslice(new CB(aj.Rune0),0,0));$s=22;case 22:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[0];as=ap[1];if(!(ar===CB.nil)){aj.Rune=ar;i=as;d.push(aj);$s=3;continue s;}d.reuse(aj);at=d.parseEscape(i);f=at[0];i=at[1];e=at[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}d.literal(f);$s=15;continue;case 14:au=AO(i);f=au[0];i=au[1];e=au[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}d.literal(f);case 15:case 3:h=j;$s=1;continue;case 2:av=d.concat();$s=23;case 23:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}av;aw=d.swapVerticalBar();$s=26;case 26:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw){$s=24;continue;}$s=25;continue;case 24:d.stack=$subslice(d.stack,0,(d.stack.$length-1>>0));case 25:ax=d.alternate();$s=27;case 27:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ax;ay=d.stack.$length;if(!((ay===1))){$s=-1;return[CH.nil,new M.ptr("missing closing )",a)];}$s=-1;return[(az=d.stack,(0>=az.$length?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:U};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=U;P.ptr.prototype.parseRepeat=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=0;c=0;d="";e=false;f=this;if(a===""||!((a.charCodeAt(0)===123))){return[b,c,d,e];}a=$substring(a,1);g=false;h=f.parseInt(a);b=h[0];a=h[1];g=h[2];if(!g){return[b,c,d,e];}if(a===""){return[b,c,d,e];}if(!((a.charCodeAt(0)===44))){c=b;}else{a=$substring(a,1);if(a===""){return[b,c,d,e];}if(a.charCodeAt(0)===125){c=-1;}else{i=f.parseInt(a);c=i[0];a=i[1];g=i[2];if(!g){return[b,c,d,e];}else if(c<0){b=-1;}}}if(a===""||!((a.charCodeAt(0)===125))){return[b,c,d,e];}d=$substring(a,1);e=true;return[b,c,d,e];};P.prototype.parseRepeat=function(a){return this.$val.parseRepeat(a);};P.ptr.prototype.parsePerlFlags=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b="";c=$ifaceNil;d=this;e=a;if(e.length>4&&(e.charCodeAt(2)===80)&&(e.charCodeAt(3)===60)){f=C.IndexRune(e,62);if(f<0){c=AN(e);if(!($interfaceIsEqual(c,$ifaceNil))){g="";h=c;b=g;c=h;return[b,c];}i="";j=new M.ptr("invalid named capture",a);b=i;c=j;return[b,c];}k=$substring(e,0,(f+1>>0));l=$substring(e,4,f);c=AN(l);if(!($interfaceIsEqual(c,$ifaceNil))){m="";n=c;b=m;c=n;return[b,c];}if(!V(l)){o="";p=new M.ptr("invalid named capture",k);b=o;c=p;return[b,c];}d.numCap=d.numCap+(1)>>0;q=d.op(128);q.Cap=d.numCap;q.Name=l;r=$substring(e,(f+1>>0));s=$ifaceNil;b=r;c=s;return[b,c];}t=0;e=$substring(e,2);u=d.flags;v=1;w=false;Loop:while(true){if(!(!(e===""))){break;}x=AO(e);t=x[0];e=x[1];c=x[2];if(!($interfaceIsEqual(c,$ifaceNil))){y="";z=c;b=y;c=z;return[b,c];}aa=t;if(aa===(105)){u=(u|(1))>>>0;w=true;}else if(aa===(109)){u=(u&~(16))<<16>>>16;w=true;}else if(aa===(115)){u=(u|(8))>>>0;w=true;}else if(aa===(85)){u=(u|(32))>>>0;w=true;}else if(aa===(45)){if(v<0){break Loop;}v=-1;u=~u<<16>>>16;w=false;}else if((aa===(58))||(aa===(41))){if(v<0){if(!w){break Loop;}u=~u<<16>>>16;}if(t===58){d.op(128);}d.flags=u;ab=e;ac=$ifaceNil;b=ab;c=ac;return[b,c];}else{break Loop;}}ad="";ae=new M.ptr("invalid or unsupported Perl syntax",$substring(a,0,(a.length-e.length>>0)));b=ad;c=ae;return[b,c];};P.prototype.parsePerlFlags=function(a){return this.$val.parsePerlFlags(a);};V=function(a){var $ptr,a,b,c,d,e;if(a===""){return false;}b=a;c=0;while(true){if(!(c<b.length)){break;}d=$decodeRune(b,c);e=d[0];if(!((e===95))&&!AP(e)){return false;}c+=d[1];}return true;};P.ptr.prototype.parseInt=function(a){var $ptr,a,b,c,d,e,f,g;b=0;c="";d=false;e=this;if(a===""||a.charCodeAt(0)<48||57<a.charCodeAt(0)){return[b,c,d];}if(a.length>=2&&(a.charCodeAt(0)===48)&&48<=a.charCodeAt(1)&&a.charCodeAt(1)<=57){return[b,c,d];}f=a;while(true){if(!(!(a==="")&&48<=a.charCodeAt(0)&&a.charCodeAt(0)<=57)){break;}a=$substring(a,1);}c=a;d=true;f=$substring(f,0,(f.length-a.length>>0));g=0;while(true){if(!(g<f.length)){break;}if(b>=100000000){b=-1;break;}b=(($imul(b,10))+(f.charCodeAt(g)>>0)>>0)-48>>0;g=g+(1)>>0;}return[b,c,d];};P.prototype.parseInt=function(a){return this.$val.parseInt(a);};W=function(a){var $ptr,a;return(a.Op===3)&&(a.Rune.$length===1)||(a.Op===4)||(a.Op===5)||(a.Op===6);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=a.Op;if(c===(3)){return(a.Rune.$length===1)&&((d=a.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))===b);}else if(c===(4)){e=0;while(true){if(!(e<a.Rune.$length)){break;}if((f=a.Rune,((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]))<=b&&b<=(g=a.Rune,h=e+1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]))){return true;}e=e+(2)>>0;}return false;}else if(c===(5)){return!((b===10));}else if(c===(6)){return true;}return false;};P.ptr.prototype.parseVerticalBar=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.concat();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;c=a.swapVerticalBar();$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}if(!c){$s=2;continue;}$s=3;continue;case 2:a.op(129);case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseVerticalBar};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseVerticalBar=function(){return this.$val.parseVerticalBar();};Y=function(a,b){var $ptr,a,b,c,d,e,f,g,h;switch(0){default:c=a.Op;if(c===(6)){}else if(c===(5)){if(X(b,10)){a.Op=6;}}else if(c===(4)){if(b.Op===3){a.Rune=AD(a.Rune,(d=b.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),b.Flags);}else{a.Rune=AG(a.Rune,b.Rune);}}else if(c===(3)){if(((e=b.Rune,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))===(f=a.Rune,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])))&&(b.Flags===a.Flags)){break;}a.Op=4;a.Rune=AD($subslice(a.Rune,0,0),(g=a.Rune,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])),a.Flags);a.Rune=AD(a.Rune,(h=b.Rune,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0])),b.Flags);}}};P.ptr.prototype.swapVerticalBar=function(){var $ptr,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.stack.$length;if(b>=3&&((c=a.stack,d=b-2>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op===129)&&W((e=a.stack,f=b-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])))&&W((g=a.stack,h=b-3>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])))){k=(i=a.stack,j=b-1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));n=(l=a.stack,m=b-3>>0,((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]));if(k.Op>n.Op){o=n;p=k;k=o;n=p;(q=a.stack,r=b-3>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]=n));}Y(n,k);a.reuse(k);a.stack=$subslice(a.stack,0,(b-1>>0));$s=-1;return true;}if(b>=2){$s=1;continue;}$s=2;continue;case 1:u=(s=a.stack,t=b-1>>0,((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]));x=(v=a.stack,w=b-2>>0,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]));if(x.Op===129){$s=3;continue;}$s=4;continue;case 3:if(b>=3){$s=5;continue;}$s=6;continue;case 5:$r=S((y=a.stack,z=b-3>>0,((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z])));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:(aa=a.stack,ab=b-2>>0,((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]=u));(ac=a.stack,ad=b-1>>0,((ad<0||ad>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ad]=x));$s=-1;return true;case 4:case 2:$s=-1;return false;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.swapVerticalBar};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.swapVerticalBar=function(){return this.$val.swapVerticalBar();};P.ptr.prototype.parseRightParen=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.concat();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;c=a.swapVerticalBar();$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}if(c){$s=2;continue;}$s=3;continue;case 2:a.stack=$subslice(a.stack,0,(a.stack.$length-1>>0));case 3:d=a.alternate();$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=a.stack.$length;if(e<2){$s=-1;return new M.ptr("unexpected )",a.wholeRegexp);}h=(f=a.stack,g=e-1>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));k=(i=a.stack,j=e-2>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));a.stack=$subslice(a.stack,0,(e-2>>0));if(!((k.Op===128))){$s=-1;return new M.ptr("unexpected )",a.wholeRegexp);}a.flags=k.Flags;if(k.Cap===0){a.push(h);}else{k.Op=13;k.Sub=$subslice(new CI(k.Sub0),0,1);(l=k.Sub,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]=h));a.push(k);}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseRightParen};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseRightParen=function(){return this.$val.parseRightParen();};P.ptr.prototype.parseEscape=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c="";d=$ifaceNil;e=this;f=$substring(a,1);if(f===""){g=0;h="";i=new M.ptr("trailing backslash at end of expression","");b=g;c=h;d=i;return[b,c,d];}j=AO(f);k=j[0];f=j[1];d=j[2];if(!($interfaceIsEqual(d,$ifaceNil))){l=0;m="";n=d;b=l;c=m;d=n;return[b,c,d];}Switch:switch(0){default:o=k;if((o===(49))||(o===(50))||(o===(51))||(o===(52))||(o===(53))||(o===(54))||(o===(55))){if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=k-48>>0;p=1;while(true){if(!(p<3)){break;}if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=(($imul(b,8))+(f.charCodeAt(0)>>0)>>0)-48>>0;f=$substring(f,1);p=p+(1)>>0;}q=b;r=f;s=$ifaceNil;b=q;c=r;d=s;return[b,c,d];}else if(o===(48)){b=k-48>>0;p=1;while(true){if(!(p<3)){break;}if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=(($imul(b,8))+(f.charCodeAt(0)>>0)>>0)-48>>0;f=$substring(f,1);p=p+(1)>>0;}t=b;u=f;v=$ifaceNil;b=t;c=u;d=v;return[b,c,d];}else if(o===(120)){if(f===""){break;}w=AO(f);k=w[0];f=w[1];d=w[2];if(!($interfaceIsEqual(d,$ifaceNil))){x=0;y="";z=d;b=x;c=y;d=z;return[b,c,d];}if(k===123){aa=0;b=0;while(true){if(f===""){break Switch;}ab=AO(f);k=ab[0];f=ab[1];d=ab[2];if(!($interfaceIsEqual(d,$ifaceNil))){ac=0;ad="";ae=d;b=ac;c=ad;d=ae;return[b,c,d];}if(k===125){break;}af=AQ(k);if(af<0){break Switch;}b=($imul(b,16))+af>>0;if(b>1114111){break Switch;}aa=aa+(1)>>0;}if(aa===0){break Switch;}ag=b;ah=f;ai=$ifaceNil;b=ag;c=ah;d=ai;return[b,c,d];}aj=AQ(k);ak=AO(f);k=ak[0];f=ak[1];d=ak[2];if(!($interfaceIsEqual(d,$ifaceNil))){al=0;am="";an=d;b=al;c=am;d=an;return[b,c,d];}ao=AQ(k);if(aj<0||ao<0){break;}ap=($imul(aj,16))+ao>>0;aq=f;ar=$ifaceNil;b=ap;c=aq;d=ar;return[b,c,d];}else if(o===(97)){as=7;at=f;au=d;b=as;c=at;d=au;return[b,c,d];}else if(o===(102)){av=12;aw=f;ax=d;b=av;c=aw;d=ax;return[b,c,d];}else if(o===(110)){ay=10;az=f;ba=d;b=ay;c=az;d=ba;return[b,c,d];}else if(o===(114)){bb=13;bc=f;bd=d;b=bb;c=bc;d=bd;return[b,c,d];}else if(o===(116)){be=9;bf=f;bg=d;b=be;c=bf;d=bg;return[b,c,d];}else if(o===(118)){bh=11;bi=f;bj=d;b=bh;c=bi;d=bj;return[b,c,d];}else if(k<128&&!AP(k)){bk=k;bl=f;bm=$ifaceNil;b=bk;c=bl;d=bm;return[b,c,d];}}bn=0;bo="";bp=new M.ptr("invalid escape sequence",$substring(a,0,(a.length-f.length>>0)));b=bn;c=bo;d=bp;return[b,c,d];};P.prototype.parseEscape=function(a){return this.$val.parseEscape(a);};P.ptr.prototype.parseClassChar=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=0;d="";e=$ifaceNil;f=this;if(a===""){g=0;h="";i=new M.ptr("missing closing ]",b);c=g;d=h;e=i;return[c,d,e];}if(a.charCodeAt(0)===92){j=f.parseEscape(a);c=j[0];d=j[1];e=j[2];return[c,d,e];}k=AO(a);c=k[0];d=k[1];e=k[2];return[c,d,e];};P.prototype.parseClassChar=function(a,b){return this.$val.parseClassChar(a,b);};P.ptr.prototype.parsePerlClassEscape=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=this;if((((e.flags&64)>>>0)===0)||a.length<2||!((a.charCodeAt(0)===92))){$s=-1;return[c,d];}g=$clone((f=AU[$String.keyFor($substring(a,0,2))],f!==undefined?f.v:new Z.ptr(0,CB.nil)),Z);if(g.sign===0){$s=-1;return[c,d];}i=e.appendGroup(b,$clone(g,Z));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=$substring(a,2);c=h;d=j;$s=-1;return[c,d];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parsePerlClassEscape};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parsePerlClassEscape=function(a,b){return this.$val.parsePerlClassEscape(a,b);};P.ptr.prototype.parseNamedClass=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=$ifaceNil;f=this;if(a.length<2||!((a.charCodeAt(0)===91))||!((a.charCodeAt(1)===58))){$s=-1;return[c,d,e];}g=C.Index($substring(a,2),":]");if(g<0){$s=-1;return[c,d,e];}g=g+(2)>>0;h=$substring(a,0,(g+2>>0));i=$substring(a,(g+2>>0));j=h;a=i;l=$clone((k=BJ[$String.keyFor(j)],k!==undefined?k.v:new Z.ptr(0,CB.nil)),Z);if(l.sign===0){m=CB.nil;n="";o=new M.ptr("invalid character class range",j);c=m;d=n;e=o;$s=-1;return[c,d,e];}q=f.appendGroup(b,$clone(l,Z));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=a;s=$ifaceNil;c=p;d=r;e=s;$s=-1;return[c,d,e];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseNamedClass};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseNamedClass=function(a,b){return this.$val.parseNamedClass(a,b);};P.ptr.prototype.appendGroup=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(((c.flags&1)>>>0)===0){$s=1;continue;}$s=2;continue;case 1:if(b.sign<0){a=AI(a,b.class$1);}else{a=AG(a,b.class$1);}$s=3;continue;case 2:d=$subslice(c.tmpClass,0,0);d=AH(d,b.class$1);c.tmpClass=d;e=AC((c.$ptr_tmpClass||(c.$ptr_tmpClass=new CL(function(){return this.$target.tmpClass;},function($v){this.$target.tmpClass=$v;},c))));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;if(b.sign<0){a=AI(a,d);}else{a=AG(a,d);}case 3:$s=-1;return a;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.appendGroup};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.appendGroup=function(a,b){return this.$val.appendGroup(a,b);};AB=function(a){var $ptr,a,b,c,d,e,f,g;if(a==="Any"){return[AA,AA];}c=(b=A.Categories[$String.keyFor(a)],b!==undefined?b.v:CM.nil);if(!(c===CM.nil)){return[c,(d=A.FoldCategory[$String.keyFor(a)],d!==undefined?d.v:CM.nil)];}f=(e=A.Scripts[$String.keyFor(a)],e!==undefined?e.v:CM.nil);if(!(f===CM.nil)){return[f,(g=A.FoldScript[$String.keyFor(a)],g!==undefined?g.v:CM.nil)];}return[CM.nil,CM.nil];};P.ptr.prototype.parseUnicodeClass=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=$ifaceNil;f=this;if((((f.flags&128)>>>0)===0)||a.length<2||!((a.charCodeAt(0)===92))||!((a.charCodeAt(1)===112))&&!((a.charCodeAt(1)===80))){$s=-1;return[c,d,e];}g=1;if(a.charCodeAt(1)===80){g=-1;}h=$substring(a,2);i=AO(h);j=i[0];h=i[1];e=i[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}k="";l="";m=k;n=l;if(!((j===123))){m=$substring(a,0,(a.length-h.length>>0));n=$substring(m,2);}else{o=C.IndexRune(a,125);if(o<0){e=AN(a);if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}p=CB.nil;q="";r=new M.ptr("invalid character class range",a);c=p;d=q;e=r;$s=-1;return[c,d,e];}s=$substring(a,0,(o+1>>0));t=$substring(a,(o+1>>0));m=s;h=t;n=$substring(a,3,o);e=AN(n);if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}}if(!(n==="")&&(n.charCodeAt(0)===94)){g=-g;n=$substring(n,1);}u=AB(n);v=u[0];w=u[1];if(v===CM.nil){x=CB.nil;y="";z=new M.ptr("invalid character class range",m);c=x;d=y;e=z;$s=-1;return[c,d,e];}if((((f.flags&1)>>>0)===0)||w===CM.nil){$s=1;continue;}$s=2;continue;case 1:if(g>0){b=AJ(b,v);}else{b=AK(b,v);}$s=3;continue;case 2:aa=$subslice(f.tmpClass,0,0);aa=AJ(aa,v);aa=AJ(aa,w);f.tmpClass=aa;ab=AC((f.$ptr_tmpClass||(f.$ptr_tmpClass=new CL(function(){return this.$target.tmpClass;},function($v){this.$target.tmpClass=$v;},f))));$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;if(g>0){b=AG(b,aa);}else{b=AI(b,aa);}case 3:ac=b;ad=h;ae=$ifaceNil;c=ac;d=ad;e=ae;$s=-1;return[c,d,e];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseUnicodeClass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseUnicodeClass=function(a,b){return this.$val.parseUnicodeClass(a,b);};P.ptr.prototype.parseClass=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b="";c=$ifaceNil;d=this;e=$substring(a,1);f=d.newRegexp(4);f.Flags=d.flags;f.Rune=$subslice(new CB(f.Rune0),0,0);g=1;if(!(e==="")&&(e.charCodeAt(0)===94)){g=-1;e=$substring(e,1);if(((d.flags&4)>>>0)===0){f.Rune=$append(f.Rune,10,10);}}h=f.Rune;i=true;case 1:if(!(e===""||!((e.charCodeAt(0)===93))||i)){$s=2;continue;}if(!(e==="")&&(e.charCodeAt(0)===45)&&(((d.flags&64)>>>0)===0)&&!i&&((e.length===1)||!((e.charCodeAt(1)===93)))){j=D.DecodeRuneInString($substring(e,1));k=j[1];l="";m=new M.ptr("invalid character class range",$substring(e,0,(1+k>>0)));b=l;c=m;$s=-1;return[b,c];}i=false;if(e.length>2&&(e.charCodeAt(0)===91)&&(e.charCodeAt(1)===58)){$s=3;continue;}$s=4;continue;case 3:o=d.parseNamedClass(e,h);$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];r=n[2];if(!($interfaceIsEqual(r,$ifaceNil))){s="";t=r;b=s;c=t;$s=-1;return[b,c];}if(!(p===CB.nil)){u=p;v=q;h=u;e=v;$s=1;continue;}case 4:x=d.parseUnicodeClass(e,h);$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];z=w[1];aa=w[2];if(!($interfaceIsEqual(aa,$ifaceNil))){ab="";ac=aa;b=ab;c=ac;$s=-1;return[b,c];}if(!(y===CB.nil)){$s=7;continue;}$s=8;continue;case 7:ad=y;ae=z;h=ad;e=ae;$s=1;continue;case 8:ag=d.parsePerlClassEscape(e,h);$s=9;case 9:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[0];ai=af[1];if(!(ah===CB.nil)){aj=ah;ak=ai;h=aj;e=ak;$s=1;continue;}al=e;am=0;an=0;ao=am;ap=an;aq=d.parseClassChar(e,a);ao=aq[0];e=aq[1];aa=aq[2];if(!($interfaceIsEqual(aa,$ifaceNil))){ar="";as=aa;b=ar;c=as;$s=-1;return[b,c];}ap=ao;if(e.length>=2&&(e.charCodeAt(0)===45)&&!((e.charCodeAt(1)===93))){e=$substring(e,1);at=d.parseClassChar(e,a);ap=at[0];e=at[1];aa=at[2];if(!($interfaceIsEqual(aa,$ifaceNil))){au="";av=aa;b=au;c=av;$s=-1;return[b,c];}if(ap<ao){al=$substring(al,0,(al.length-e.length>>0));aw="";ax=new M.ptr("invalid character class range",al);b=aw;c=ax;$s=-1;return[b,c];}}if(((d.flags&1)>>>0)===0){h=AE(h,ao,ap);}else{h=AF(h,ao,ap);}$s=1;continue;case 2:e=$substring(e,1);f.Rune=h;ay=AC((f.$ptr_Rune||(f.$ptr_Rune=new CL(function(){return this.$target.Rune;},function($v){this.$target.Rune=$v;},f))));$s=10;case 10:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}h=ay;if(g<0){h=AL(h);}f.Rune=h;d.push(f);az=e;ba=$ifaceNil;b=az;c=ba;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseClass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseClass=function(a){return this.$val.parseClass(a);};AC=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.Sort((b=new AM.ptr(a),new b.constructor.elem(b)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=a.$get();if(c.$length<2){$s=-1;return c;}d=2;e=2;while(true){if(!(e<c.$length)){break;}f=((e<0||e>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+e]);g=(h=e+1>>0,((h<0||h>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+h]));i=f;j=g;if(i<=((k=d-1>>0,((k<0||k>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+k]))+1>>0)){if(j>(l=d-1>>0,((l<0||l>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+l]))){(m=d-1>>0,((m<0||m>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+m]=j));}e=e+(2)>>0;continue;}((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=i);(n=d+1>>0,((n<0||n>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+n]=j));d=d+(2)>>0;e=e+(2)>>0;}$s=-1;return $subslice(c,0,d);}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};AD=function(a,b,c){var $ptr,a,b,c;if(!((((c&1)>>>0)===0))){return AF(a,b,b);}return AE(a,b,b);};AE=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=a.$length;e=2;while(true){if(!(e<=4)){break;}if(d>=e){f=(g=d-e>>0,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));h=(i=(d-e>>0)+1>>0,((i<0||i>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+i]));j=f;k=h;if(b<=(k+1>>0)&&j<=(c+1>>0)){if(b<j){(l=d-e>>0,((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]=b));}if(c>k){(m=(d-e>>0)+1>>0,((m<0||m>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+m]=c));}return a;}}e=e+(2)>>0;}return $append(a,b,c);};AF=function(a,b,c){var $ptr,a,b,c,d,e;if(b<=65&&c>=125251){return AE(a,b,c);}if(c<65||b>125251){return AE(a,b,c);}if(b<65){a=AE(a,b,64);b=65;}if(c>125251){a=AE(a,125252,c);c=125251;}d=b;while(true){if(!(d<=c)){break;}a=AE(a,d,d);e=A.SimpleFold(d);while(true){if(!(!((e===d)))){break;}a=AE(a,e,e);e=A.SimpleFold(e);}d=d+(1)>>0;}return a;};AG=function(a,b){var $ptr,a,b,c,d;c=0;while(true){if(!(c<b.$length)){break;}a=AE(a,((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]),(d=c+1>>0,((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d])));c=c+(2)>>0;}return a;};AH=function(a,b){var $ptr,a,b,c,d;c=0;while(true){if(!(c<b.$length)){break;}a=AF(a,((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]),(d=c+1>>0,((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d])));c=c+(2)>>0;}return a;};AI=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i;c=0;d=0;while(true){if(!(d<b.$length)){break;}e=((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d]);f=(g=d+1>>0,((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]));h=e;i=f;if(c<=(h-1>>0)){a=AE(a,c,h-1>>0);}c=i+1>>0;d=d+(2)>>0;}if(c<=1114111){a=AE(a,c,1114111);}return a;};AJ=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;c=b.R16;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Range16);f=(e.Lo>>0);g=(e.Hi>>0);h=(e.Stride>>0);i=f;j=g;k=h;if(k===1){a=AE(a,i,j);d++;continue;}l=i;while(true){if(!(l<=j)){break;}a=AE(a,l,l);l=l+(k)>>0;}d++;}m=b.R32;n=0;while(true){if(!(n<m.$length)){break;}o=$clone(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]),A.Range32);p=(o.Lo>>0);q=(o.Hi>>0);r=(o.Stride>>0);s=p;t=q;u=r;if(u===1){a=AE(a,s,t);n++;continue;}v=s;while(true){if(!(v<=t)){break;}a=AE(a,v,v);v=v+(u)>>0;}n++;}return a;};AK=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;c=0;d=b.R16;e=0;while(true){if(!(e<d.$length)){break;}f=$clone(((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]),A.Range16);g=(f.Lo>>0);h=(f.Hi>>0);i=(f.Stride>>0);j=g;k=h;l=i;if(l===1){if(c<=(j-1>>0)){a=AE(a,c,j-1>>0);}c=k+1>>0;e++;continue;}m=j;while(true){if(!(m<=k)){break;}if(c<=(m-1>>0)){a=AE(a,c,m-1>>0);}c=m+1>>0;m=m+(l)>>0;}e++;}n=b.R32;o=0;while(true){if(!(o<n.$length)){break;}p=$clone(((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]),A.Range32);q=(p.Lo>>0);r=(p.Hi>>0);s=(p.Stride>>0);t=q;u=r;v=s;if(v===1){if(c<=(t-1>>0)){a=AE(a,c,t-1>>0);}c=u+1>>0;o++;continue;}w=t;while(true){if(!(w<=u)){break;}if(c<=(w-1>>0)){a=AE(a,c,w-1>>0);}c=w+1>>0;w=w+(v)>>0;}o++;}if(c<=1114111){a=AE(a,c,1114111);}return a;};AL=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;while(true){if(!(d<a.$length)){break;}e=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);f=(g=d+1>>0,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));h=e;i=f;if(b<=(h-1>>0)){((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=b);(j=c+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=(h-1>>0)));c=c+(2)>>0;}b=i+1>>0;d=d+(2)>>0;}a=$subslice(a,0,c);if(b<=1114111){a=$append(a,b,1114111);}return a;};AM.ptr.prototype.Less=function(a,b){var $ptr,a,b,c,d,e,f;c=this;d=c.p.$get();a=$imul(a,(2));b=$imul(b,(2));return((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a])<((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b])||(((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a])===((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]))&&(e=a+1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]))>(f=b+1>>0,((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f]));};AM.prototype.Less=function(a,b){return this.$val.Less(a,b);};AM.ptr.prototype.Len=function(){var $ptr,a,b;a=this;return(b=a.p.$get().$length/2,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};AM.prototype.Len=function(){return this.$val.Len();};AM.ptr.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;c=this;d=c.p.$get();a=$imul(a,(2));b=$imul(b,(2));e=((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]);f=(g=b+1>>0,((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]));h=((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a]);i=(j=a+1>>0,((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]));((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a]=e);(k=a+1>>0,((k<0||k>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+k]=f));((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]=h);(l=b+1>>0,((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]=i));};AM.prototype.Swap=function(a,b){return this.$val.Swap(a,b);};AN=function(a){var $ptr,a,b,c,d;while(true){if(!(!(a===""))){break;}b=D.DecodeRuneInString(a);c=b[0];d=b[1];if((c===65533)&&(d===1)){return new M.ptr("invalid UTF-8",a);}a=$substring(a,d);}return $ifaceNil;};AO=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c="";d=$ifaceNil;e=D.DecodeRuneInString(a);b=e[0];f=e[1];if((b===65533)&&(f===1)){g=0;h="";i=new M.ptr("invalid UTF-8",a);b=g;c=h;d=i;return[b,c,d];}j=b;k=$substring(a,f);l=$ifaceNil;b=j;c=k;d=l;return[b,c,d];};AP=function(a){var $ptr,a;return 48<=a&&a<=57||65<=a&&a<=90||97<=a&&a<=122;};AQ=function(a){var $ptr,a;if(48<=a&&a<=57){return a-48>>0;}if(97<=a&&a<=102){return(a-97>>0)+10>>0;}if(65<=a&&a<=70){return(a-65>>0)+10>>0;}return-1;};BL.prototype.String=function(){var $ptr,a;a=this.$val;if((a>>>0)>=(BM.$length>>>0)){return"";}return((a<0||a>=BM.$length)?($throwRuntimeError("index out of range"),undefined):BM.$array[BM.$offset+a]);};$ptrType(BL).prototype.String=function(){return new BL(this.$get()).String();};BO=function(a,b){var $ptr,a,b,c,d;c=32;d=0;if(BP(a)){d=1;}else if((a===10)){c=(c|(1))>>>0;}else if(a<0){c=(c|(5))>>>0;}if(BP(b)){d=(d^(1))<<24>>>24;}else if((b===10)){c=(c|(2))>>>0;}else if(b<0){c=(c|(10))>>>0;}if(!((d===0))){c=(c^(48))<<24>>>24;}return c;};$pkg.EmptyOpContext=BO;BP=function(a){var $ptr,a;return 65<=a&&a<=90||97<=a&&a<=122||48<=a&&a<=57||(a===95);};$pkg.IsWordChar=BP;BK.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BT(b,a);return b.String();};BK.prototype.String=function(){return this.$val.String();};BK.ptr.prototype.skipNop=function(a){var $ptr,a,b,c,d,e;b=this;d=(c=b.Inst,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]));while(true){if(!((d.Op===6)||(d.Op===2))){break;}a=d.Out;d=(e=b.Inst,((a<0||a>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+a]));}return[d,a];};BK.prototype.skipNop=function(a){return this.$val.skipNop(a);};BQ.ptr.prototype.op=function(){var $ptr,a,b,c;a=this;b=a.Op;c=b;if((c===(8))||(c===(9))||(c===(10))){b=7;}return b;};BQ.prototype.op=function(){return this.$val.op();};BK.ptr.prototype.Prefix=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;a="";b=false;c=this;d=c.skipNop((c.Start>>>0));e=d[0];if(!((e.op()===7))||!((e.Rune.$length===1))){f="";g=e.Op===4;a=f;b=g;return[a,b];}h=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);while(true){if(!((e.op()===7)&&(e.Rune.$length===1)&&((((e.Arg<<16>>>16)&1)>>>0)===0))){break;}h.WriteRune((i=e.Rune,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])));j=c.skipNop(e.Out);e=j[0];}k=h.String();l=e.Op===4;a=k;b=l;return[a,b];};BK.prototype.Prefix=function(){return this.$val.Prefix();};BK.ptr.prototype.StartCond=function(){var $ptr,a,b,c,d,e,f,g;a=this;b=0;c=(a.Start>>>0);e=(d=a.Inst,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));Loop:while(true){f=e.Op;if(f===(3)){b=(b|((e.Arg<<24>>>24)))>>>0;}else if(f===(5)){return 255;}else if((f===(2))||(f===(6))){}else{break Loop;}c=e.Out;e=(g=a.Inst,((c<0||c>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+c]));}return b;};BK.prototype.StartCond=function(){return this.$val.StartCond();};BQ.ptr.prototype.MatchRune=function(a){var $ptr,a,b;b=this;return!((b.MatchRunePos(a)===-1));};BQ.prototype.MatchRune=function(a){return this.$val.MatchRune(a);};BQ.ptr.prototype.MatchRunePos=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;b=this;c=b.Rune;if(c.$length===1){d=(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]);if(a===d){return 0;}if(!(((((b.Arg<<16>>>16)&1)>>>0)===0))){e=A.SimpleFold(d);while(true){if(!(!((e===d)))){break;}if(a===e){return 0;}e=A.SimpleFold(e);}}return-1;}f=0;while(true){if(!(f<c.$length&&f<=8)){break;}if(a<((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f])){return-1;}if(a<=(g=f+1>>0,((g<0||g>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+g]))){return(h=f/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));}f=f+(2)>>0;}i=0;k=(j=c.$length/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(i<k)){break;}m=i+(l=((k-i>>0))/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0;o=(n=$imul(2,m),((n<0||n>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+n]));if(o<=a){if(a<=(p=($imul(2,m))+1>>0,((p<0||p>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+p]))){return m;}i=m+1>>0;}else{k=m;}}return-1;};BQ.prototype.MatchRunePos=function(a){return this.$val.MatchRunePos(a);};BR=function(a){var $ptr,a;return(a===95)||(65<=a&&a<=90)||(97<=a&&a<=122)||(48<=a&&a<=57);};BQ.ptr.prototype.MatchEmptyWidth=function(a,b){var $ptr,a,b,c,d;c=this;d=(c.Arg<<24>>>24);if(d===(1)){return(a===10)||(a===-1);}else if(d===(2)){return(b===10)||(b===-1);}else if(d===(4)){return a===-1;}else if(d===(8)){return b===-1;}else if(d===(16)){return!(BR(a)===BR(b));}else if(d===(32)){return BR(a)===BR(b);}$panic(new $String("unknown empty width arg"));};BQ.prototype.MatchEmptyWidth=function(a,b){return this.$val.MatchEmptyWidth(a,b);};BQ.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BV(b,a);return b.String();};BQ.prototype.String=function(){return this.$val.String();};BS=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);a.WriteString(e);d++;}};BT=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=b.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=d;g=(f=b.Inst,((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]));h=F.Itoa(e);if(h.length<3){a.WriteString($substring(" ",h.length));}if(e===b.Start){h=h+("*");}BS(a,new CE([h,"\t"]));BV(a,g);BS(a,new CE(["\n"]));d++;}};BU=function(a){var $ptr,a;return F.FormatUint(new $Uint64(0,a),10);};BV=function(a,b){var $ptr,a,b,c;c=b.Op;if(c===(0)){BS(a,new CE(["alt -> ",BU(b.Out),", ",BU(b.Arg)]));}else if(c===(1)){BS(a,new CE(["altmatch -> ",BU(b.Out),", ",BU(b.Arg)]));}else if(c===(2)){BS(a,new CE(["cap ",BU(b.Arg)," -> ",BU(b.Out)]));}else if(c===(3)){BS(a,new CE(["empty ",BU(b.Arg)," -> ",BU(b.Out)]));}else if(c===(4)){BS(a,new CE(["match"]));}else if(c===(5)){BS(a,new CE(["fail"]));}else if(c===(6)){BS(a,new CE(["nop -> ",BU(b.Out)]));}else if(c===(7)){if(b.Rune===CB.nil){BS(a,new CE(["rune <nil>"]));}BS(a,new CE(["rune ",F.QuoteToASCII($runesToString(b.Rune))]));if(!(((((b.Arg<<16>>>16)&1)>>>0)===0))){BS(a,new CE(["/i"]));}BS(a,new CE([" -> ",BU(b.Out)]));}else if(c===(8)){BS(a,new CE(["rune1 ",F.QuoteToASCII($runesToString(b.Rune))," -> ",BU(b.Out)]));}else if(c===(9)){BS(a,new CE(["any -> ",BU(b.Out)]));}else if(c===(10)){BS(a,new CE(["anynotnl -> ",BU(b.Out)]));}};BW.ptr.prototype.Equal=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;b=this;if(b===CH.nil||a===CH.nil){return b===a;}if(!((b.Op===a.Op))){return false;}c=b.Op;if(c===(10)){if(!((((b.Flags&256)>>>0)===((a.Flags&256)>>>0)))){return false;}}else if((c===(3))||(c===(4))){if(!((b.Rune.$length===a.Rune.$length))){return false;}d=b.Rune;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(!((g===(h=a.Rune,((f<0||f>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+f]))))){return false;}e++;}}else if((c===(19))||(c===(18))){if(!((b.Sub.$length===a.Sub.$length))){return false;}i=b.Sub;j=0;while(true){if(!(j<i.$length)){break;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(!l.Equal((m=a.Sub,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k])))){return false;}j++;}}else if((c===(14))||(c===(15))||(c===(16))){if(!((((b.Flags&32)>>>0)===((a.Flags&32)>>>0)))||!(n=b.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])).Equal((o=a.Sub,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])))){return false;}}else if(c===(17)){if(!((((b.Flags&32)>>>0)===((a.Flags&32)>>>0)))||!((b.Min===a.Min))||!((b.Max===a.Max))||!(p=b.Sub,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])).Equal((q=a.Sub,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])))){return false;}}else if(c===(13)){if(!((b.Cap===a.Cap))||!(b.Name===a.Name)||!(r=b.Sub,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])).Equal((s=a.Sub,(0>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+0])))){return false;}}return true;};BW.prototype.Equal=function(a){return this.$val.Equal(a);};BY=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;switch(0){default:c=b.Op;if(c===(1)){a.WriteString("[^\\x00-\\x{10FFFF}]");}else if(c===(2)){a.WriteString("(?:)");}else if(c===(3)){if(!((((b.Flags&1)>>>0)===0))){a.WriteString("(?i:");}d=b.Rune;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);BZ(a,f,false);e++;}if(!((((b.Flags&1)>>>0)===0))){a.WriteString(")");}}else if(c===(4)){if(!(((g=b.Rune.$length%2,g===g?g:$throwRuntimeError("integer divide by zero"))===0))){a.WriteString("[invalid char class]");break;}a.WriteRune(91);if(b.Rune.$length===0){a.WriteString("^\\x00-\\x{10FFFF}");}else if(((h=b.Rune,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))===0)&&((i=b.Rune,j=b.Rune.$length-1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]))===1114111)){a.WriteRune(94);k=1;while(true){if(!(k<(b.Rune.$length-1>>0))){break;}l=(m=b.Rune,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k]))+1>>0;n=(o=b.Rune,p=k+1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]))-1>>0;q=l;r=n;BZ(a,q,q===45);if(!((q===r))){a.WriteRune(45);BZ(a,r,r===45);}k=k+(2)>>0;}}else{s=0;while(true){if(!(s<b.Rune.$length)){break;}t=(u=b.Rune,((s<0||s>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+s]));v=(w=b.Rune,x=s+1>>0,((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]));y=t;z=v;BZ(a,y,y===45);if(!((y===z))){a.WriteRune(45);BZ(a,z,z===45);}s=s+(2)>>0;}}a.WriteRune(93);}else if(c===(5)){a.WriteString("(?-s:.)");}else if(c===(6)){a.WriteString("(?s:.)");}else if(c===(7)){a.WriteString("(?m:^)");}else if(c===(8)){a.WriteString("(?m:$)");}else if(c===(9)){a.WriteString("\\A");}else if(c===(10)){if(!((((b.Flags&256)>>>0)===0))){a.WriteString("(?-m:$)");}else{a.WriteString("\\z");}}else if(c===(11)){a.WriteString("\\b");}else if(c===(12)){a.WriteString("\\B");}else if(c===(13)){if(!(b.Name==="")){a.WriteString("(?P<");a.WriteString(b.Name);a.WriteRune(62);}else{a.WriteRune(40);}if(!(((aa=b.Sub,(0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])).Op===2))){BY(a,(ab=b.Sub,(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0])));}a.WriteRune(41);}else if((c===(14))||(c===(15))||(c===(16))||(c===(17))){ad=(ac=b.Sub,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]));if(ad.Op>13||(ad.Op===3)&&ad.Rune.$length>1){a.WriteString("(?:");BY(a,ad);a.WriteString(")");}else{BY(a,ad);}ae=b.Op;if(ae===(14)){a.WriteRune(42);}else if(ae===(15)){a.WriteRune(43);}else if(ae===(16)){a.WriteRune(63);}else if(ae===(17)){a.WriteRune(123);a.WriteString(F.Itoa(b.Min));if(!((b.Max===b.Min))){a.WriteRune(44);if(b.Max>=0){a.WriteString(F.Itoa(b.Max));}}a.WriteRune(125);}if(!((((b.Flags&32)>>>0)===0))){a.WriteRune(63);}}else if(c===(18)){af=b.Sub;ag=0;while(true){if(!(ag<af.$length)){break;}ah=((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag]);if(ah.Op===19){a.WriteString("(?:");BY(a,ah);a.WriteString(")");}else{BY(a,ah);}ag++;}}else if(c===(19)){ai=b.Sub;aj=0;while(true){if(!(aj<ai.$length)){break;}ak=aj;al=((aj<0||aj>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+aj]);if(ak>0){a.WriteRune(124);}BY(a,al);aj++;}}else{a.WriteString("<invalid op"+F.Itoa((b.Op>>0))+">");}}};BW.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BY(b,a);return b.String();};BW.prototype.String=function(){return this.$val.String();};BZ=function(a,b,c){var $ptr,a,b,c,d,e;if(A.IsPrint(b)){if(C.ContainsRune("\\.+*?()|[]{}^$",b)||c){a.WriteRune(92);}a.WriteRune(b);return;}switch(0){default:d=b;if(d===(7)){a.WriteString("\\a");}else if(d===(12)){a.WriteString("\\f");}else if(d===(10)){a.WriteString("\\n");}else if(d===(13)){a.WriteString("\\r");}else if(d===(9)){a.WriteString("\\t");}else if(d===(11)){a.WriteString("\\v");}else{if(b<256){a.WriteString("\\x");e=F.FormatInt(new $Int64(0,b),16);if(e.length===1){a.WriteRune(48);}a.WriteString(e);break;}a.WriteString("\\x{");a.WriteString(F.FormatInt(new $Int64(0,b),16));a.WriteString("}");}}};BW.ptr.prototype.MaxCap=function(){var $ptr,a,b,c,d,e,f;a=this;b=0;if(a.Op===13){b=a.Cap;}c=a.Sub;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);f=e.MaxCap();if(b<f){b=f;}d++;}return b;};BW.prototype.MaxCap=function(){return this.$val.MaxCap();};BW.ptr.prototype.CapNames=function(){var $ptr,a,b;a=this;b=$makeSlice(CE,(a.MaxCap()+1>>0));a.capNames(b);return b;};BW.prototype.CapNames=function(){return this.$val.CapNames();};BW.ptr.prototype.capNames=function(a){var $ptr,a,b,c,d,e,f;b=this;if(b.Op===13){(c=b.Cap,((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=b.Name));}d=b.Sub;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);f.capNames(a);e++;}};BW.prototype.capNames=function(a){return this.$val.capNames(a);};BW.ptr.prototype.Simplify=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=this;if(a===CH.nil){return CH.nil;}b=a.Op;if((b===(13))||(b===(18))||(b===(19))){c=a;d=a.Sub;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);h=g.Simplify();if(c===a&&!(h===g)){c=new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");BW.copy(c,a);c.Rune=CB.nil;c.Sub=$appendSlice($subslice(new CI(c.Sub0),0,0),$subslice(a.Sub,0,f));}if(!(c===a)){c.Sub=$append(c.Sub,h);}e++;}return c;}else if((b===(14))||(b===(15))||(b===(16))){j=(i=a.Sub,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])).Simplify();return CA(a.Op,a.Flags,j,a);}else if(b===(17)){if((a.Min===0)&&(a.Max===0)){return new BW.ptr(2,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}l=(k=a.Sub,(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0])).Simplify();if(a.Max===-1){if(a.Min===0){return CA(14,a.Flags,l,CH.nil);}if(a.Min===1){return CA(15,a.Flags,l,CH.nil);}m=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");m.Sub=$subslice(new CI(m.Sub0),0,0);n=0;while(true){if(!(n<(a.Min-1>>0))){break;}m.Sub=$append(m.Sub,l);n=n+(1)>>0;}m.Sub=$append(m.Sub,CA(15,a.Flags,l,CH.nil));return m;}if((a.Min===1)&&(a.Max===1)){return l;}o=CH.nil;if(a.Min>0){o=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");o.Sub=$subslice(new CI(o.Sub0),0,0);p=0;while(true){if(!(p<a.Min)){break;}o.Sub=$append(o.Sub,l);p=p+(1)>>0;}}if(a.Max>a.Min){q=CA(16,a.Flags,l,CH.nil);r=a.Min+1>>0;while(true){if(!(r<a.Max)){break;}s=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");s.Sub=$append($subslice(new CI(s.Sub0),0,0),l,q);q=CA(16,a.Flags,s,CH.nil);r=r+(1)>>0;}if(o===CH.nil){return q;}o.Sub=$append(o.Sub,q);}if(!(o===CH.nil)){return o;}return new BW.ptr(1,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}return a;};BW.prototype.Simplify=function(){return this.$val.Simplify();};CA=function(a,b,c,d){var $ptr,a,b,c,d,e;if(c.Op===2){return c;}if((a===c.Op)&&(((b&32)>>>0)===((c.Flags&32)>>>0))){return c;}if(!(d===CH.nil)&&(d.Op===a)&&(((d.Flags&32)>>>0)===((b&32)>>>0))&&c===(e=d.Sub,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))){return d;}d=new BW.ptr(a,b,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");d.Sub=$append($subslice(new CI(d.Sub0),0,0),c);return d;};G.methods=[{prop:"next",name:"next",pkg:"regexp/syntax",typ:$funcType([CF],[G],false)},{prop:"patch",name:"patch",pkg:"regexp/syntax",typ:$funcType([CF,$Uint32],[],false)},{prop:"append",name:"append",pkg:"regexp/syntax",typ:$funcType([CF,G],[G],false)}];CP.methods=[{prop:"init",name:"init",pkg:"regexp/syntax",typ:$funcType([],[],false)},{prop:"compile",name:"compile",pkg:"regexp/syntax",typ:$funcType([CH],[H],false)},{prop:"inst",name:"inst",pkg:"regexp/syntax",typ:$funcType([BL],[H],false)},{prop:"nop",name:"nop",pkg:"regexp/syntax",typ:$funcType([],[H],false)},{prop:"fail",name:"fail",pkg:"regexp/syntax",typ:$funcType([],[H],false)},{prop:"cap",name:"cap",pkg:"regexp/syntax",typ:$funcType([$Uint32],[H],false)},{prop:"cat",name:"cat",pkg:"regexp/syntax",typ:$funcType([H,H],[H],false)},{prop:"alt",name:"alt",pkg:"regexp/syntax",typ:$funcType([H,H],[H],false)},{prop:"quest",name:"quest",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"star",name:"star",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"plus",name:"plus",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"empty",name:"empty",pkg:"regexp/syntax",typ:$funcType([BN],[H],false)},{prop:"rune",name:"rune",pkg:"regexp/syntax",typ:$funcType([CB,O],[H],false)}];CQ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];N.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"newRegexp",name:"newRegexp",pkg:"regexp/syntax",typ:$funcType([BX],[CH],false)},{prop:"reuse",name:"reuse",pkg:"regexp/syntax",typ:$funcType([CH],[],false)},{prop:"push",name:"push",pkg:"regexp/syntax",typ:$funcType([CH],[CH],false)},{prop:"maybeConcat",name:"maybeConcat",pkg:"regexp/syntax",typ:$funcType([$Int32,O],[$Bool],false)},{prop:"newLiteral",name:"newLiteral",pkg:"regexp/syntax",typ:$funcType([$Int32,O],[CH],false)},{prop:"literal",name:"literal",pkg:"regexp/syntax",typ:$funcType([$Int32],[],false)},{prop:"op",name:"op",pkg:"regexp/syntax",typ:$funcType([BX],[CH],false)},{prop:"repeat",name:"repeat",pkg:"regexp/syntax",typ:$funcType([BX,$Int,$Int,$String,$String,$String],[$String,$error],false)},{prop:"concat",name:"concat",pkg:"regexp/syntax",typ:$funcType([],[CH],false)},{prop:"alternate",name:"alternate",pkg:"regexp/syntax",typ:$funcType([],[CH],false)},{prop:"collapse",name:"collapse",pkg:"regexp/syntax",typ:$funcType([CI,BX],[CH],false)},{prop:"factor",name:"factor",pkg:"regexp/syntax",typ:$funcType([CI,O],[CI],false)},{prop:"leadingString",name:"leadingString",pkg:"regexp/syntax",typ:$funcType([CH],[CB,O],false)},{prop:"removeLeadingString",name:"removeLeadingString",pkg:"regexp/syntax",typ:$funcType([CH,$Int],[CH],false)},{prop:"leadingRegexp",name:"leadingRegexp",pkg:"regexp/syntax",typ:$funcType([CH],[CH],false)},{prop:"removeLeadingRegexp",name:"removeLeadingRegexp",pkg:"regexp/syntax",typ:$funcType([CH,$Bool],[CH],false)},{prop:"parseRepeat",name:"parseRepeat",pkg:"regexp/syntax",typ:$funcType([$String],[$Int,$Int,$String,$Bool],false)},{prop:"parsePerlFlags",name:"parsePerlFlags",pkg:"regexp/syntax",typ:$funcType([$String],[$String,$error],false)},{prop:"parseInt",name:"parseInt",pkg:"regexp/syntax",typ:$funcType([$String],[$Int,$String,$Bool],false)},{prop:"parseVerticalBar",name:"parseVerticalBar",pkg:"regexp/syntax",typ:$funcType([],[$error],false)},{prop:"swapVerticalBar",name:"swapVerticalBar",pkg:"regexp/syntax",typ:$funcType([],[$Bool],false)},{prop:"parseRightParen",name:"parseRightParen",pkg:"regexp/syntax",typ:$funcType([],[$error],false)},{prop:"parseEscape",name:"parseEscape",pkg:"regexp/syntax",typ:$funcType([$String],[$Int32,$String,$error],false)},{prop:"parseClassChar",name:"parseClassChar",pkg:"regexp/syntax",typ:$funcType([$String,$String],[$Int32,$String,$error],false)},{prop:"parsePerlClassEscape",name:"parsePerlClassEscape",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String],false)},{prop:"parseNamedClass",name:"parseNamedClass",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String,$error],false)},{prop:"appendGroup",name:"appendGroup",pkg:"regexp/syntax",typ:$funcType([CB,Z],[CB],false)},{prop:"parseUnicodeClass",name:"parseUnicodeClass",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String,$error],false)},{prop:"parseClass",name:"parseClass",pkg:"regexp/syntax",typ:$funcType([$String],[$String,$error],false)}];AM.methods=[{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)}];CF.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"skipNop",name:"skipNop",pkg:"regexp/syntax",typ:$funcType([$Uint32],[CS,$Uint32],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String,$Bool],false)},{prop:"StartCond",name:"StartCond",pkg:"",typ:$funcType([],[BN],false)}];BL.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CS.methods=[{prop:"op",name:"op",pkg:"regexp/syntax",typ:$funcType([],[BL],false)},{prop:"MatchRune",name:"MatchRune",pkg:"",typ:$funcType([$Int32],[$Bool],false)},{prop:"MatchRunePos",name:"MatchRunePos",pkg:"",typ:$funcType([$Int32],[$Int],false)},{prop:"MatchEmptyWidth",name:"MatchEmptyWidth",pkg:"",typ:$funcType([$Int32,$Int32],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CH.methods=[{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([CH],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MaxCap",name:"MaxCap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"CapNames",name:"CapNames",pkg:"",typ:$funcType([],[CE],false)},{prop:"capNames",name:"capNames",pkg:"regexp/syntax",typ:$funcType([CE],[],false)},{prop:"Simplify",name:"Simplify",pkg:"",typ:$funcType([],[CH],false)}];H.init("regexp/syntax",[{prop:"i",name:"i",exported:false,typ:$Uint32,tag:""},{prop:"out",name:"out",exported:false,typ:G,tag:""}]);I.init("regexp/syntax",[{prop:"p",name:"p",exported:false,typ:CF,tag:""}]);M.init("",[{prop:"Code",name:"Code",exported:true,typ:N,tag:""},{prop:"Expr",name:"Expr",exported:true,typ:$String,tag:""}]);P.init("regexp/syntax",[{prop:"flags",name:"flags",exported:false,typ:O,tag:""},{prop:"stack",name:"stack",exported:false,typ:CI,tag:""},{prop:"free",name:"free",exported:false,typ:CH,tag:""},{prop:"numCap",name:"numCap",exported:false,typ:$Int,tag:""},{prop:"wholeRegexp",name:"wholeRegexp",exported:false,typ:$String,tag:""},{prop:"tmpClass",name:"tmpClass",exported:false,typ:CB,tag:""}]);Z.init("regexp/syntax",[{prop:"sign",name:"sign",exported:false,typ:$Int,tag:""},{prop:"class$1",name:"class",exported:false,typ:CB,tag:""}]);AM.init("regexp/syntax",[{prop:"p",name:"p",exported:false,typ:CL,tag:""}]);BK.init("",[{prop:"Inst",name:"Inst",exported:true,typ:CG,tag:""},{prop:"Start",name:"Start",exported:true,typ:$Int,tag:""},{prop:"NumCap",name:"NumCap",exported:true,typ:$Int,tag:""}]);BQ.init("",[{prop:"Op",name:"Op",exported:true,typ:BL,tag:""},{prop:"Out",name:"Out",exported:true,typ:$Uint32,tag:""},{prop:"Arg",name:"Arg",exported:true,typ:$Uint32,tag:""},{prop:"Rune",name:"Rune",exported:true,typ:CB,tag:""}]);BW.init("",[{prop:"Op",name:"Op",exported:true,typ:BX,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:O,tag:""},{prop:"Sub",name:"Sub",exported:true,typ:CI,tag:""},{prop:"Sub0",name:"Sub0",exported:true,typ:CJ,tag:""},{prop:"Rune",name:"Rune",exported:true,typ:CB,tag:""},{prop:"Rune0",name:"Rune0",exported:true,typ:CK,tag:""},{prop:"Min",name:"Min",exported:true,typ:$Int,tag:""},{prop:"Max",name:"Max",exported:true,typ:$Int,tag:""},{prop:"Cap",name:"Cap",exported:true,typ:$Int,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=new CB([0,9,11,1114111]);L=new CB([0,1114111]);AA=new A.RangeTable.ptr(new CC([new A.Range16.ptr(0,65535,1)]),new CD([new A.Range32.ptr(65536,1114111,1)]),0);AR=new CB([48,57]);AS=new CB([9,10,12,13,32,32]);AT=new CB([48,57,65,90,95,95,97,122]);AU=$makeMap($String.keyFor,[{k:"\\d",v:new Z.ptr(1,AR)},{k:"\\D",v:new Z.ptr(-1,AR)},{k:"\\s",v:new Z.ptr(1,AS)},{k:"\\S",v:new Z.ptr(-1,AS)},{k:"\\w",v:new Z.ptr(1,AT)},{k:"\\W",v:new Z.ptr(-1,AT)}]);AV=new CB([48,57,65,90,97,122]);AW=new CB([65,90,97,122]);AX=new CB([0,127]);AY=new CB([9,9,32,32]);AZ=new CB([0,31,127,127]);BA=new CB([48,57]);BB=new CB([33,126]);BC=new CB([97,122]);BD=new CB([32,126]);BE=new CB([33,47,58,64,91,96,123,126]);BF=new CB([9,13,32,32]);BG=new CB([65,90]);BH=new CB([48,57,65,90,95,95,97,122]);BI=new CB([48,57,65,70,97,102]);BJ=$makeMap($String.keyFor,[{k:"[:alnum:]",v:new Z.ptr(1,AV)},{k:"[:^alnum:]",v:new Z.ptr(-1,AV)},{k:"[:alpha:]",v:new Z.ptr(1,AW)},{k:"[:^alpha:]",v:new Z.ptr(-1,AW)},{k:"[:ascii:]",v:new Z.ptr(1,AX)},{k:"[:^ascii:]",v:new Z.ptr(-1,AX)},{k:"[:blank:]",v:new Z.ptr(1,AY)},{k:"[:^blank:]",v:new Z.ptr(-1,AY)},{k:"[:cntrl:]",v:new Z.ptr(1,AZ)},{k:"[:^cntrl:]",v:new Z.ptr(-1,AZ)},{k:"[:digit:]",v:new Z.ptr(1,BA)},{k:"[:^digit:]",v:new Z.ptr(-1,BA)},{k:"[:graph:]",v:new Z.ptr(1,BB)},{k:"[:^graph:]",v:new Z.ptr(-1,BB)},{k:"[:lower:]",v:new Z.ptr(1,BC)},{k:"[:^lower:]",v:new Z.ptr(-1,BC)},{k:"[:print:]",v:new Z.ptr(1,BD)},{k:"[:^print:]",v:new Z.ptr(-1,BD)},{k:"[:punct:]",v:new Z.ptr(1,BE)},{k:"[:^punct:]",v:new Z.ptr(-1,BE)},{k:"[:space:]",v:new Z.ptr(1,BF)},{k:"[:^space:]",v:new Z.ptr(-1,BF)},{k:"[:upper:]",v:new Z.ptr(1,BG)},{k:"[:^upper:]",v:new Z.ptr(-1,BG)},{k:"[:word:]",v:new Z.ptr(1,BH)},{k:"[:^word:]",v:new Z.ptr(-1,BH)},{k:"[:xdigit:]",v:new Z.ptr(1,BI)},{k:"[:^xdigit:]",v:new Z.ptr(-1,BI)}]);BM=new CE(["InstAlt","InstAltMatch","InstCapture","InstEmptyWidth","InstMatch","InstFail","InstNop","InstRune","InstRune1","InstRuneAny","InstRuneAnyNotNL"]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["regexp"]=(function(){var $pkg={},$init,C,H,B,A,D,F,G,E,I,J,K,P,Q,R,S,V,W,AA,AH,AN,AO,AV,AW,AX,AY,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,L,U,AC,AD,AI,AJ,AL,M,N,O,T,X,Y,Z,AB,AE,AF,AG,AK,AM,AP,AR,AS,AU,BA,BF;C=$packages["bytes"];H=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];A=$packages["regexp/syntax"];D=$packages["sort"];F=$packages["strconv"];G=$packages["strings"];E=$packages["unicode"];I=$packages["unicode/utf8"];J=$pkg.job=$newType(0,$kindStruct,"regexp.job",true,"regexp",false,function(pc_,arg_,pos_){this.$val=this;if(arguments.length===0){this.pc=0;this.arg=0;this.pos=0;return;}this.pc=pc_;this.arg=arg_;this.pos=pos_;});K=$pkg.bitState=$newType(0,$kindStruct,"regexp.bitState",true,"regexp",false,function(prog_,end_,cap_,jobs_,visited_){this.$val=this;if(arguments.length===0){this.prog=BM.nil;this.end=0;this.cap=BN.nil;this.jobs=BO.nil;this.visited=BJ.nil;return;}this.prog=prog_;this.end=end_;this.cap=cap_;this.jobs=jobs_;this.visited=visited_;});P=$pkg.queue=$newType(0,$kindStruct,"regexp.queue",true,"regexp",false,function(sparse_,dense_){this.$val=this;if(arguments.length===0){this.sparse=BJ.nil;this.dense=BQ.nil;return;}this.sparse=sparse_;this.dense=dense_;});Q=$pkg.entry=$newType(0,$kindStruct,"regexp.entry",true,"regexp",false,function(pc_,t_){this.$val=this;if(arguments.length===0){this.pc=0;this.t=BR.nil;return;}this.pc=pc_;this.t=t_;});R=$pkg.thread=$newType(0,$kindStruct,"regexp.thread",true,"regexp",false,function(inst_,cap_){this.$val=this;if(arguments.length===0){this.inst=BT.nil;this.cap=BN.nil;return;}this.inst=inst_;this.cap=cap_;});S=$pkg.machine=$newType(0,$kindStruct,"regexp.machine",true,"regexp",false,function(re_,p_,op_,maxBitStateLen_,b_,q0_,q1_,pool_,matched_,matchcap_,inputBytes_,inputString_,inputReader_){this.$val=this;if(arguments.length===0){this.re=BP.nil;this.p=BM.nil;this.op=BK.nil;this.maxBitStateLen=0;this.b=BH.nil;this.q0=new P.ptr(BJ.nil,BQ.nil);this.q1=new P.ptr(BJ.nil,BQ.nil);this.pool=BS.nil;this.matched=false;this.matchcap=BN.nil;this.inputBytes=new AX.ptr(BL.nil);this.inputString=new AW.ptr("");this.inputReader=new AY.ptr($ifaceNil,false,0);return;}this.re=re_;this.p=p_;this.op=op_;this.maxBitStateLen=maxBitStateLen_;this.b=b_;this.q0=q0_;this.q1=q1_;this.pool=pool_;this.matched=matched_;this.matchcap=matchcap_;this.inputBytes=inputBytes_;this.inputString=inputString_;this.inputReader=inputReader_;});V=$pkg.onePassProg=$newType(0,$kindStruct,"regexp.onePassProg",true,"regexp",false,function(Inst_,Start_,NumCap_){this.$val=this;if(arguments.length===0){this.Inst=BX.nil;this.Start=0;this.NumCap=0;return;}this.Inst=Inst_;this.Start=Start_;this.NumCap=NumCap_;});W=$pkg.onePassInst=$newType(0,$kindStruct,"regexp.onePassInst",true,"regexp",false,function(Inst_,Next_){this.$val=this;if(arguments.length===0){this.Inst=new A.Inst.ptr(0,0,0,BI.nil);this.Next=BJ.nil;return;}this.Inst=Inst_;this.Next=Next_;});AA=$pkg.queueOnePass=$newType(0,$kindStruct,"regexp.queueOnePass",true,"regexp",false,function(sparse_,dense_,size_,nextIndex_){this.$val=this;if(arguments.length===0){this.sparse=BJ.nil;this.dense=BJ.nil;this.size=0;this.nextIndex=0;return;}this.sparse=sparse_;this.dense=dense_;this.size=size_;this.nextIndex=nextIndex_;});AH=$pkg.runeSlice=$newType(12,$kindSlice,"regexp.runeSlice",true,"regexp",false,null);AN=$pkg.Regexp=$newType(0,$kindStruct,"regexp.Regexp",true,"regexp",true,function(regexpRO_,mu_,machine_){this.$val=this;if(arguments.length===0){this.regexpRO=new AO.ptr("",BM.nil,BK.nil,"",BL.nil,false,0,0,0,0,CB.nil,false);this.mu=new H.Mutex.ptr(false);this.machine=CD.nil;return;}this.regexpRO=regexpRO_;this.mu=mu_;this.machine=machine_;});AO=$pkg.regexpRO=$newType(0,$kindStruct,"regexp.regexpRO",true,"regexp",false,function(expr_,prog_,onepass_,prefix_,prefixBytes_,prefixComplete_,prefixRune_,prefixEnd_,cond_,numSubexp_,subexpNames_,longest_){this.$val=this;if(arguments.length===0){this.expr="";this.prog=BM.nil;this.onepass=BK.nil;this.prefix="";this.prefixBytes=BL.nil;this.prefixComplete=false;this.prefixRune=0;this.prefixEnd=0;this.cond=0;this.numSubexp=0;this.subexpNames=CB.nil;this.longest=false;return;}this.expr=expr_;this.prog=prog_;this.onepass=onepass_;this.prefix=prefix_;this.prefixBytes=prefixBytes_;this.prefixComplete=prefixComplete_;this.prefixRune=prefixRune_;this.prefixEnd=prefixEnd_;this.cond=cond_;this.numSubexp=numSubexp_;this.subexpNames=subexpNames_;this.longest=longest_;});AV=$pkg.input=$newType(8,$kindInterface,"regexp.input",true,"regexp",false,null);AW=$pkg.inputString=$newType(0,$kindStruct,"regexp.inputString",true,"regexp",false,function(str_){this.$val=this;if(arguments.length===0){this.str="";return;}this.str=str_;});AX=$pkg.inputBytes=$newType(0,$kindStruct,"regexp.inputBytes",true,"regexp",false,function(str_){this.$val=this;if(arguments.length===0){this.str=BL.nil;return;}this.str=str_;});AY=$pkg.inputReader=$newType(0,$kindStruct,"regexp.inputReader",true,"regexp",false,function(r_,atEOT_,pos_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.atEOT=false;this.pos=0;return;}this.r=r_;this.atEOT=atEOT_;this.pos=pos_;});BG=$arrayType($Int,0);BH=$ptrType(K);BI=$sliceType($Int32);BJ=$sliceType($Uint32);BK=$ptrType(V);BL=$sliceType($Uint8);BM=$ptrType(A.Prog);BN=$sliceType($Int);BO=$sliceType(J);BP=$ptrType(AN);BQ=$sliceType(Q);BR=$ptrType(R);BS=$sliceType(BR);BT=$ptrType(A.Inst);BU=$ptrType($Int);BV=$arrayType($Uint8,64);BW=$ptrType(AA);BX=$sliceType(W);BY=$ptrType($Uint32);BZ=$sliceType(BI);CA=$ptrType(BI);CB=$sliceType($String);CC=$ptrType(S);CD=$sliceType(CC);CE=$arrayType($Int,2);CF=$arrayType($Int,4);CG=$sliceType(BL);CH=$sliceType(BN);CI=$sliceType(CG);CJ=$sliceType(CB);CK=$ptrType(P);CL=$funcType([$String],[$String],false);CM=$funcType([BL,BN],[BL],false);CN=$funcType([BL],[BL],false);CO=$funcType([BN],[],false);CP=$ptrType(AW);CQ=$ptrType(AX);CR=$ptrType(AY);M=function(a){var $ptr,a,b;if(!O(a)){return 0;}return(b=262144/a.Inst.$length,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};N=function(a){var $ptr,a;if(!O(a)){return L;}return new K.ptr(a,0,BN.nil,BO.nil,BJ.nil);};O=function(a){var $ptr,a;return a.Inst.$length<=500;};K.ptr.prototype.reset=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;c=this;c.end=a;if(c.jobs.$capacity===0){c.jobs=$makeSlice(BO,0,256);}else{c.jobs=$subslice(c.jobs,0,0);}e=(d=(((($imul(c.prog.Inst.$length,((a+1>>0))))+32>>0)-1>>0))/32,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));if(c.visited.$capacity<e){c.visited=$makeSlice(BJ,e,8192);}else{c.visited=$subslice(c.visited,0,e);f=c.visited;g=0;while(true){if(!(g<f.$length)){break;}h=g;(i=c.visited,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]=0));g++;}}if(c.cap.$capacity<b){c.cap=$makeSlice(BN,b);}else{c.cap=$subslice(c.cap,0,b);}j=c.cap;k=0;while(true){if(!(k<j.$length)){break;}l=k;(m=c.cap,((l<0||l>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+l]=-1));k++;}};K.prototype.reset=function(a,b){return this.$val.reset(a,b);};K.ptr.prototype.shouldVisit=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;c=this;d=((($imul((a>>0),((c.end+1>>0))))+b>>0)>>>0);if(!(((((e=c.visited,f=(g=d/32,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero")),((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]))&(((h=(((d&31)>>>0)),h<32?(1<<h):0)>>>0)))>>>0)===0))){return false;}j=(i=d/32,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));(m=c.visited,((j<0||j>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+j]=(((k=c.visited,((j<0||j>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+j]))|(((l=(((d&31)>>>0)),l<32?(1<<l):0)>>>0)))>>>0)));return true;};K.prototype.shouldVisit=function(a,b){return this.$val.shouldVisit(a,b);};K.ptr.prototype.push=function(a,b,c){var $ptr,a,b,c,d,e;d=this;if((e=d.prog.Inst,((a<0||a>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+a])).Op===5){return;}if((c===0)&&!d.shouldVisit(a,b)){return;}d.jobs=$append(d.jobs,new J.ptr(a,c,b));};K.prototype.push=function(a,b,c){return this.$val.push(a,b,c);};S.ptr.prototype.tryBacktrack=function(a,b,c,d){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=e.re.regexpRO.longest;e.matched=false;a.push(c,d,0);case 1:if(!(a.jobs.$length>0)){$s=2;continue;}g=a.jobs.$length-1>>0;i=(h=a.jobs,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g])).pc;k=(j=a.jobs,((g<0||g>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+g])).pos;m=(l=a.jobs,((g<0||g>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+g])).arg;a.jobs=$subslice(a.jobs,0,g);$s=3;continue;case 4:if(!a.shouldVisit(i,k)){$s=1;continue;}case 3:o=$clone((n=a.prog.Inst,((i<0||i>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+i])),A.Inst);p=o.Op;if(p===(5)){$s=6;continue;}if(p===(0)){$s=7;continue;}if(p===(1)){$s=8;continue;}if(p===(7)){$s=9;continue;}if(p===(8)){$s=10;continue;}if(p===(10)){$s=11;continue;}if(p===(9)){$s=12;continue;}if(p===(2)){$s=13;continue;}if(p===(3)){$s=14;continue;}if(p===(6)){$s=15;continue;}if(p===(4)){$s=16;continue;}$s=17;continue;case 6:$panic(new $String("unexpected InstFail"));$s=18;continue;case 7:q=m;if(q===(0)){$s=20;continue;}if(q===(1)){$s=21;continue;}$s=22;continue;case 20:a.push(i,k,1);i=o.Out;$s=4;continue;$s=22;continue;case 21:m=0;i=o.Arg;$s=4;continue;case 22:case 19:$panic(new $String("bad arg in InstAlt"));$s=18;continue;case 8:t=(r=a.prog.Inst,s=o.Out,((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s])).Op;if((t===(7))||(t===(8))||(t===(9))||(t===(10))){$s=24;continue;}$s=25;continue;case 24:a.push(o.Arg,k,0);i=o.Arg;k=a.end;$s=4;continue;case 25:case 23:a.push(o.Out,a.end,0);i=o.Out;$s=4;continue;$s=18;continue;case 9:v=b.step(k);$s=26;case 26:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(!o.MatchRune(w)){$s=27;continue;}$s=28;continue;case 27:$s=1;continue;case 28:k=k+(x)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 10:z=b.step(k);$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];if(!((aa===(ac=o.Rune,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))))){$s=30;continue;}$s=31;continue;case 30:$s=1;continue;case 31:k=k+(ab)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 11:ae=b.step(k);$s=32;case 32:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;af=ad[0];ag=ad[1];if((af===10)||(af===-1)){$s=33;continue;}$s=34;continue;case 33:$s=1;continue;case 34:k=k+(ag)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 12:ai=b.step(k);$s=35;case 35:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;aj=ah[0];ak=ah[1];if(aj===-1){$s=36;continue;}$s=37;continue;case 36:$s=1;continue;case 37:k=k+(ak)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 13:al=m;if(al===(0)){$s=39;continue;}if(al===(1)){$s=40;continue;}$s=41;continue;case 39:if(0<=o.Arg&&o.Arg<(a.cap.$length>>>0)){a.push(i,(am=a.cap,an=o.Arg,((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an])),1);(ao=a.cap,ap=o.Arg,((ap<0||ap>=ao.$length)?($throwRuntimeError("index out of range"),undefined):ao.$array[ao.$offset+ap]=k));}i=o.Out;$s=4;continue;$s=41;continue;case 40:(aq=a.cap,ar=o.Arg,((ar<0||ar>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ar]=k));$s=1;continue;case 41:case 38:$panic(new $String("bad arg in InstCapture"));$s=18;continue;case 14:as=b.context(k);$s=44;case 44:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}if(!(((((o.Arg<<24>>>24)&~as)<<24>>>24)===0))){$s=42;continue;}$s=43;continue;case 42:$s=1;continue;case 43:i=o.Out;$s=4;continue;$s=18;continue;case 15:i=o.Out;$s=4;continue;$s=18;continue;case 16:if(a.cap.$length===0){e.matched=true;$s=-1;return e.matched;}if(a.cap.$length>1){(at=a.cap,(1>=at.$length?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+1]=k));}if(!e.matched||(f&&k>0&&k>(au=e.matchcap,(1>=au.$length?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+1])))){$copySlice(e.matchcap,a.cap);}e.matched=true;if(!f){$s=-1;return e.matched;}if(k===a.end){$s=-1;return e.matched;}$s=1;continue;$s=18;continue;case 17:$panic(new $String("bad inst"));case 18:case 5:$s=1;continue;case 2:$s=-1;return e.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.tryBacktrack};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.tryBacktrack=function(a,b,c,d){return this.$val.tryBacktrack(a,b,c,d);};S.ptr.prototype.backtrack=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=a.canCheckPrefix();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!f){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("backtrack called for a RuneReader"));case 2:g=e.re.regexpRO.cond;if(g===255){$s=-1;return false;}if(!((((g&4)>>>0)===0))&&!((b===0))){$s=-1;return false;}h=e.b;h.reset(c,d);e.matchcap=$subslice(e.matchcap,0,d);i=e.matchcap;j=0;while(true){if(!(j<i.$length)){break;}k=j;(l=e.matchcap,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]=-1));j++;}if(!((((g&4)>>>0)===0))){$s=4;continue;}$s=5;continue;case 4:if(h.cap.$length>0){(m=h.cap,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]=b));}n=e.tryBacktrack(h,a,(e.p.Start>>>0),b);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;case 5:o=-1;case 7:if(!(b<=c&&!((o===0)))){$s=8;continue;}if(e.re.regexpRO.prefix.length>0){$s=9;continue;}$s=10;continue;case 9:p=a.index(e.re,b);$s=11;case 11:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(q<0){$s=-1;return false;}b=b+(q)>>0;case 10:if(h.cap.$length>0){(r=h.cap,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]=b));}s=e.tryBacktrack(h,a,(e.p.Start>>>0),b);$s=14;case 14:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(s){$s=12;continue;}$s=13;continue;case 12:$s=-1;return true;case 13:u=a.step(b);$s=15;case 15:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;o=t[1];b=b+(o)>>0;$s=7;continue;case 8:$s=-1;return false;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.backtrack};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.backtrack=function(a,b,c,d){return this.$val.backtrack(a,b,c,d);};S.ptr.prototype.newInputBytes=function(a){var $ptr,a,b;b=this;b.inputBytes.str=a;return b.inputBytes;};S.prototype.newInputBytes=function(a){return this.$val.newInputBytes(a);};S.ptr.prototype.newInputString=function(a){var $ptr,a,b;b=this;b.inputString.str=a;return b.inputString;};S.prototype.newInputString=function(a){return this.$val.newInputString(a);};S.ptr.prototype.newInputReader=function(a){var $ptr,a,b;b=this;b.inputReader.r=a;b.inputReader.atEOT=false;b.inputReader.pos=0;return b.inputReader;};S.prototype.newInputReader=function(a){return this.$val.newInputReader(a);};T=function(a,b){var $ptr,a,b,c,d,e;c=new S.ptr(BP.nil,a,b,0,BH.nil,new P.ptr(BJ.nil,BQ.nil),new P.ptr(BJ.nil,BQ.nil),BS.nil,false,BN.nil,new AX.ptr(BL.nil),new AW.ptr(""),new AY.ptr($ifaceNil,false,0));d=c.p.Inst.$length;P.copy(c.q0,new P.ptr($makeSlice(BJ,d),$makeSlice(BQ,0,d)));P.copy(c.q1,new P.ptr($makeSlice(BJ,d),$makeSlice(BQ,0,d)));e=a.NumCap;if(e<2){e=2;}if(b===AL){c.maxBitStateLen=M(a);}c.matchcap=$makeSlice(BN,e);return c;};S.ptr.prototype.init=function(a){var $ptr,a,b,c,d,e;b=this;c=b.pool;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);e.cap=$subslice(e.cap,0,a);d++;}b.matchcap=$subslice(b.matchcap,0,a);};S.prototype.init=function(a){return this.$val.init(a);};S.ptr.prototype.alloc=function(a){var $ptr,a,b,c,d,e,f;b=this;c=BR.nil;d=b.pool.$length;if(d>0){c=(e=b.pool,f=d-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));b.pool=$subslice(b.pool,0,(d-1>>0));}else{c=new R.ptr(BT.nil,BN.nil);c.cap=$makeSlice(BN,b.matchcap.$length,b.matchcap.$capacity);}c.inst=a;return c;};S.prototype.alloc=function(a){return this.$val.alloc(a);};S.ptr.prototype.match=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.re.regexpRO.cond;if(d===255){$s=-1;return false;}c.matched=false;e=c.matchcap;f=0;while(true){if(!(f<e.$length)){break;}g=f;(h=c.matchcap,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]=-1));f++;}i=c.q0;j=c.q1;k=i;l=j;m=-1;n=-1;o=m;p=n;q=0;r=0;s=q;t=r;v=a.step(b);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;o=u[0];s=u[1];if(!((o===-1))){$s=2;continue;}$s=3;continue;case 2:x=a.step(b+s>>0);$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;p=w[0];t=w[1];case 3:y=0;if(b===0){$s=5;continue;}$s=6;continue;case 5:y=A.EmptyOpContext(-1,o);$s=7;continue;case 6:z=a.context(b);$s=8;case 8:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;case 7:case 9:if(k.dense.$length===0){$s=11;continue;}$s=12;continue;case 11:if(!((((d&4)>>>0)===0))&&!((b===0))){$s=10;continue;}if(c.matched){$s=10;continue;}if(!(c.re.regexpRO.prefix.length>0&&!((p===c.re.regexpRO.prefixRune)))){aa=false;$s=15;continue s;}ab=a.canCheckPrefix();$s=16;case 16:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;case 15:if(aa){$s=13;continue;}$s=14;continue;case 13:ac=a.index(c.re,b);$s=17;case 17:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;if(ad<0){$s=10;continue;}b=b+(ad)>>0;af=a.step(b);$s=18;case 18:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;o=ae[0];s=ae[1];ah=a.step(b+s>>0);$s=19;case 19:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;p=ag[0];t=ag[1];case 14:case 12:if(!c.matched){if(c.matchcap.$length>0){(ai=c.matchcap,(0>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+0]=b));}c.add(k,(c.p.Start>>>0),b,c.matchcap,y,BR.nil);}y=A.EmptyOpContext(o,p);c.step(k,l,b,b+s>>0,o,y);if(s===0){$s=10;continue;}if((c.matchcap.$length===0)&&c.matched){$s=10;continue;}b=b+(s)>>0;aj=p;ak=t;o=aj;s=ak;if(!((o===-1))){$s=20;continue;}$s=21;continue;case 20:am=a.step(b+s>>0);$s=22;case 22:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}al=am;p=al[0];t=al[1];case 21:an=l;ao=k;k=an;l=ao;$s=9;continue;case 10:c.clear(l);$s=-1;return c.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.match};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.match=function(a,b){return this.$val.match(a,b);};S.ptr.prototype.clear=function(a){var $ptr,a,b,c,d,e;b=this;c=a.dense;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),Q);if(!(e.t===BR.nil)){b.pool=$append(b.pool,e.t);}d++;}a.dense=$subslice(a.dense,0,0);};S.prototype.clear=function(a){return this.$val.clear(a);};S.ptr.prototype.step=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;h=g.re.regexpRO.longest;i=0;while(true){if(!(i<a.dense.$length)){break;}k=(j=a.dense,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i]));l=k.t;if(l===BR.nil){i=i+(1)>>0;continue;}if(h&&g.matched&&l.cap.$length>0&&(m=g.matchcap,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))<(n=l.cap,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))){g.pool=$append(g.pool,l);i=i+(1)>>0;continue;}o=l.inst;p=false;q=o.Op;if(q===(4)){if(l.cap.$length>0&&(!h||!g.matched||(r=g.matchcap,(1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1]))<c)){(s=l.cap,(1>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+1]=c));$copySlice(g.matchcap,l.cap);}if(!h){t=$subslice(a.dense,(i+1>>0));u=0;while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),Q);if(!(v.t===BR.nil)){g.pool=$append(g.pool,v.t);}u++;}a.dense=$subslice(a.dense,0,0);}g.matched=true;}else if(q===(7)){p=o.MatchRune(e);}else if(q===(8)){p=e===(w=o.Rune,(0>=w.$length?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+0]));}else if(q===(9)){p=true;}else if(q===(10)){p=!((e===10));}else{$panic(new $String("bad inst"));}if(p){l=g.add(b,o.Out,d,l.cap,f,l);}if(!(l===BR.nil)){g.pool=$append(g.pool,l);}i=i+(1)>>0;}a.dense=$subslice(a.dense,0,0);};S.prototype.step=function(a,b,c,d,e,f){return this.$val.step(a,b,c,d,e,f);};S.ptr.prototype.add=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;if(b===0){return f;}i=(h=a.sparse,((b<0||b>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+b]));if(i<(a.dense.$length>>>0)&&((j=a.dense,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i])).pc===b)){return f;}k=a.dense.$length;a.dense=$subslice(a.dense,0,(k+1>>0));m=(l=a.dense,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]));m.t=BR.nil;m.pc=b;(n=a.sparse,((b<0||b>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+b]=(k>>>0)));p=(o=g.p.Inst,((b<0||b>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+b]));q=p.Op;if(q===(5)){}else if((q===(0))||(q===(1))){f=g.add(a,p.Out,c,d,e,f);f=g.add(a,p.Arg,c,d,e,f);}else if(q===(3)){if((((p.Arg<<24>>>24)&~e)<<24>>>24)===0){f=g.add(a,p.Out,c,d,e,f);}}else if(q===(6)){f=g.add(a,p.Out,c,d,e,f);}else if(q===(2)){if((p.Arg>>0)<d.$length){s=(r=p.Arg,((r<0||r>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+r]));(t=p.Arg,((t<0||t>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+t]=c));g.add(a,p.Out,c,d,e,BR.nil);(u=p.Arg,((u<0||u>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+u]=s));}else{f=g.add(a,p.Out,c,d,e,f);}}else if((q===(4))||(q===(7))||(q===(8))||(q===(9))||(q===(10))){if(f===BR.nil){f=g.alloc(p);}else{f.inst=p;}if(d.$length>0&&!((v=f.cap,$indexPtr(v.$array,v.$offset+0,BU))===$indexPtr(d.$array,d.$offset+0,BU))){$copySlice(f.cap,d);}m.t=f;f=BR.nil;}else{$panic(new $String("unhandled"));}return f;};S.prototype.add=function(a,b,c,d,e,f){return this.$val.add(a,b,c,d,e,f);};S.ptr.prototype.onepass=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;e=d.re.regexpRO.cond;if(e===255){$s=-1;return false;}d.matched=false;f=d.matchcap;g=0;while(true){if(!(g<f.$length)){break;}h=g;(i=d.matchcap,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]=-1));g++;}j=-1;k=-1;l=j;m=k;n=0;o=0;p=n;q=o;s=a.step(b);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;l=r[0];p=r[1];if(!((l===-1))){$s=2;continue;}$s=3;continue;case 2:u=a.step(b+p>>0);$s=4;case 4:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;m=t[0];q=t[1];case 3:v=0;if(b===0){$s=5;continue;}$s=6;continue;case 5:v=A.EmptyOpContext(-1,l);$s=7;continue;case 6:w=a.context(b);$s=8;case 8:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;case 7:x=d.op.Start;c[0]=$clone((y=d.op.Inst,((x<0||x>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+x])),W);if(!((b===0)&&((((c[0].Inst.Arg<<24>>>24)&~v)<<24>>>24)===0)&&d.re.regexpRO.prefix.length>0)){z=false;$s=11;continue s;}aa=a.canCheckPrefix();$s=12;case 12:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;case 11:if(z){$s=9;continue;}$s=10;continue;case 9:ab=a.hasPrefix(d.re);$s=16;case 16:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab){$s=13;continue;}$s=14;continue;case 13:b=b+(d.re.regexpRO.prefix.length)>>0;ad=a.step(b);$s=17;case 17:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;l=ac[0];p=ac[1];af=a.step(b+p>>0);$s=18;case 18:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;m=ae[0];q=ae[1];ag=a.context(b);$s=19;case 19:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}v=ag;x=(d.re.regexpRO.prefixEnd>>0);$s=15;continue;case 14:$s=-1;return d.matched;case 15:case 10:case 20:W.copy(c[0],(ah=d.op.Inst,((x<0||x>=ah.$length)?($throwRuntimeError("index out of range"),undefined):ah.$array[ah.$offset+x])));x=(c[0].Inst.Out>>0);ai=c[0].Inst.Op;if(ai===(4)){$s=23;continue;}if(ai===(7)){$s=24;continue;}if(ai===(8)){$s=25;continue;}if(ai===(9)){$s=26;continue;}if(ai===(10)){$s=27;continue;}if((ai===(0))||(ai===(1))){$s=28;continue;}if(ai===(5)){$s=29;continue;}if(ai===(6)){$s=30;continue;}if(ai===(3)){$s=31;continue;}if(ai===(2)){$s=32;continue;}$s=33;continue;case 23:d.matched=true;if(d.matchcap.$length>0){(aj=d.matchcap,(0>=aj.$length?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+0]=0));(ak=d.matchcap,(1>=ak.$length?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+1]=b));}$s=-1;return d.matched;case 24:if(!c[0].Inst.MatchRune(l)){$s=-1;return d.matched;}$s=34;continue;case 25:if(!((l===(al=c[0].Inst.Rune,(0>=al.$length?($throwRuntimeError("index out of range"),undefined):al.$array[al.$offset+0]))))){$s=-1;return d.matched;}$s=34;continue;case 26:$s=34;continue;case 27:if(l===10){$s=-1;return d.matched;}$s=34;continue;case 28:x=(Y(c[0],l)>>0);$s=20;continue;$s=34;continue;case 29:$s=-1;return d.matched;case 30:$s=20;continue;$s=34;continue;case 31:if(!(((((c[0].Inst.Arg<<24>>>24)&~v)<<24>>>24)===0))){$s=-1;return d.matched;}$s=20;continue;$s=34;continue;case 32:if((c[0].Inst.Arg>>0)<d.matchcap.$length){(am=d.matchcap,an=c[0].Inst.Arg,((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an]=b));}$s=20;continue;$s=34;continue;case 33:$panic(new $String("bad inst"));case 34:case 22:if(p===0){$s=21;continue;}v=A.EmptyOpContext(l,m);b=b+(p)>>0;ao=m;ap=q;l=ao;p=ap;if(!((l===-1))){$s=35;continue;}$s=36;continue;case 35:ar=a.step(b+p>>0);$s=37;case 37:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=ar;m=aq[0];q=aq[1];case 36:$s=20;continue;case 21:$s=-1;return d.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.onepass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.onepass=function(a,b){return this.$val.onepass(a,b);};AN.ptr.prototype.doMatch=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=d.doExecute(a,b,c,0,0,BN.nil);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return!(e===BN.nil);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.doMatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.doMatch=function(a,b,c){return this.$val.doMatch(a,b,c);};AN.ptr.prototype.doExecute=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=g.get();i=$ifaceNil;j=0;if(!($interfaceIsEqual(a,$ifaceNil))){i=h.newInputReader(a);}else if(!(b===BL.nil)){i=h.newInputBytes(b);j=b.$length;}else{i=h.newInputString(c);j=c.length;}if(!(h.op===AL)){$s=1;continue;}if(j<h.maxBitStateLen&&$interfaceIsEqual(a,$ifaceNil)){$s=2;continue;}$s=3;continue;case 1:k=h.onepass(i,d);$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!k){$s=5;continue;}$s=6;continue;case 5:g.put(h);$s=-1;return BN.nil;case 6:$s=4;continue;case 2:if(h.b===BH.nil){h.b=N(h.p);}l=h.backtrack(i,d,j,e);$s=10;case 10:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(!l){$s=8;continue;}$s=9;continue;case 8:g.put(h);$s=-1;return BN.nil;case 9:$s=4;continue;case 3:h.init(e);m=h.match(i,d);$s=13;case 13:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!m){$s=11;continue;}$s=12;continue;case 11:g.put(h);$s=-1;return BN.nil;case 12:case 4:f=$appendSlice(f,h.matchcap);if(f===BN.nil){f=$subslice(new BN(U),0,0);}g.put(h);$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.doExecute};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.doExecute=function(a,b,c,d,e,f){return this.$val.doExecute(a,b,c,d,e,f);};X=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b="";c=false;d=0;g=(e=a.Inst,f=a.Start,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(!((g.Op===3))||(((((g.Arg<<24>>>24))&4)>>>0)===0)){h="";i=g.Op===4;j=(a.Start>>>0);b=h;c=i;d=j;return[b,c,d];}d=g.Out;g=(k=a.Inst,((d<0||d>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+d]));while(true){if(!(g.Op===6)){break;}d=g.Out;g=(l=a.Inst,((d<0||d>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+d]));}if(!((Z(g)===7))||!((g.Rune.$length===1))){m="";n=g.Op===4;o=(a.Start>>>0);b=m;c=n;d=o;return[b,c,d];}p=new C.Buffer.ptr(BL.nil,0,BV.zero(),0);while(true){if(!((Z(g)===7)&&(g.Rune.$length===1)&&((((g.Arg<<16>>>16)&1)>>>0)===0))){break;}p.WriteRune((q=g.Rune,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])));r=g.Out;s=(t=a.Inst,u=g.Out,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]));d=r;g=s;}if((g.Op===3)&&!(((((g.Arg<<24>>>24)&8)>>>0)===0))&&((v=a.Inst,w=g.Out,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])).Op===4)){c=true;}x=p.String();y=c;z=d;b=x;c=y;d=z;return[b,c,d];};Y=function(a,b){var $ptr,a,b,c,d;c=a.Inst.MatchRunePos(b);if(c>=0){return(d=a.Next,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));}if(a.Inst.Op===1){return a.Inst.Out;}return 0;};Z=function(a){var $ptr,a,b,c;b=a.Op;c=b;if((c===(8))||(c===(9))||(c===(10))){b=7;}return b;};AA.ptr.prototype.empty=function(){var $ptr,a;a=this;return a.nextIndex>=a.size;};AA.prototype.empty=function(){return this.$val.empty();};AA.ptr.prototype.next=function(){var $ptr,a,b,c,d;a=0;b=this;a=(c=b.dense,d=b.nextIndex,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));b.nextIndex=b.nextIndex+(1)>>>0;return a;};AA.prototype.next=function(){return this.$val.next();};AA.ptr.prototype.clear=function(){var $ptr,a;a=this;a.size=0;a.nextIndex=0;};AA.prototype.clear=function(){return this.$val.clear();};AA.ptr.prototype.contains=function(a){var $ptr,a,b,c,d,e,f;b=this;if(a>=(b.sparse.$length>>>0)){return false;}return(c=b.sparse,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]))<b.size&&((d=b.dense,e=(f=b.sparse,((a<0||a>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+a])),((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]))===a);};AA.prototype.contains=function(a){return this.$val.contains(a);};AA.ptr.prototype.insert=function(a){var $ptr,a,b;b=this;if(!b.contains(a)){b.insertNew(a);}};AA.prototype.insert=function(a){return this.$val.insert(a);};AA.ptr.prototype.insertNew=function(a){var $ptr,a,b,c,d,e;b=this;if(a>=(b.sparse.$length>>>0)){return;}(c=b.sparse,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=b.size));(d=b.dense,e=b.size,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]=a));b.size=b.size+(1)>>>0;};AA.prototype.insertNew=function(a){return this.$val.insertNew(a);};AB=function(a){var $ptr,a,b;b=BW.nil;b=new AA.ptr($makeSlice(BJ,a),$makeSlice(BJ,a),0,0);return b;};AE=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);e=[e];f=[f];g=[g];h=[h];i=[i];j=[j];k=a.$get().$length;l=b.$get().$length;if(!(((k&1)===0))||!(((l&1)===0))){$panic(new $String("mergeRuneSets odd length []rune"));}m=0;n=0;f[0]=m;j[0]=n;g[0]=$makeSlice(BI,0);h[0]=$makeSlice(BJ,0);i[0]=true;$deferred.push([(function(e,f,g,h,i,j){return function(){var $ptr;if(!i[0]){g[0]=BI.nil;h[0]=BJ.nil;}};})(e,f,g,h,i,j),[]]);e[0]=-1;o=(function(e,f,g,h,i,j){return function(o,p,q){var $ptr,o,p,q,r,s,t,u,v,w;if(e[0]>0&&(r=p.$get(),s=o.$get(),((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]))<=((e[0]<0||e[0]>=g[0].$length)?($throwRuntimeError("index out of range"),undefined):g[0].$array[g[0].$offset+e[0]])){return false;}g[0]=$append(g[0],(t=p.$get(),u=o.$get(),((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u])),(v=p.$get(),w=o.$get()+1>>0,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])));o.$set(o.$get()+(2)>>0);e[0]=e[0]+(2)>>0;h[0]=$append(h[0],q);return true;};})(e,f,g,h,i,j);case 1:if(!(f[0]<k||j[0]<l)){$s=2;continue;}if(j[0]>=l){$s=4;continue;}if(f[0]>=k){$s=5;continue;}if((p=b.$get(),((j[0]<0||j[0]>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+j[0]]))<(q=a.$get(),((f[0]<0||f[0]>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+f[0]]))){$s=6;continue;}$s=7;continue;case 4:r=o((f.$ptr||(f.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),a,c);$s=9;case 9:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}i[0]=r;$s=8;continue;case 5:s=o((j.$ptr||(j.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},j))),b,d);$s=10;case 10:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}i[0]=s;$s=8;continue;case 6:t=o((j.$ptr||(j.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},j))),b,d);$s=11;case 11:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}i[0]=t;$s=8;continue;case 7:u=o((f.$ptr||(f.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),a,c);$s=12;case 12:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}i[0]=u;case 8:case 3:if(!i[0]){$s=-1;return[AC,AD];}$s=1;continue;case 2:$s=-1;return[g[0],h[0]];}return;}}catch(err){$err=err;$s=-1;return[BI.nil,BJ.nil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AF=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;c=b.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Inst);g=f.Op;if((g===(0))||(g===(1))||(g===(7))){}else if((g===(2))||(g===(3))||(g===(6))||(g===(4))||(g===(5))){(h=a.Inst,((e<0||e>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+e])).Next=BJ.nil;}else if((g===(8))||(g===(9))||(g===(10))){(i=a.Inst,((e<0||e>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+e])).Next=BJ.nil;W.copy((j=a.Inst,((e<0||e>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+e])),new W.ptr($clone(f,A.Inst),BJ.nil));}d++;}};AG=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=new V.ptr(BX.nil,a.Start,a.NumCap);c=a.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Inst);b.Inst=$append(b.Inst,new W.ptr($clone(e,A.Inst),BJ.nil));d++;}f=b.Inst;g=0;while(true){if(!(g<f.$length)){break;}h=g;j=(i=b.Inst,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h])).Inst.Op;if((j===(0))||(j===(1))){m=(k=(l=b.Inst,((h<0||h>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+h])),(k.$ptr_Out||(k.$ptr_Out=new BY(function(){return this.$target.Inst.Out;},function($v){this.$target.Inst.Out=$v;},k))));p=(n=(o=b.Inst,((h<0||h>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+h])),(n.$ptr_Arg||(n.$ptr_Arg=new BY(function(){return this.$target.Inst.Arg;},function($v){this.$target.Inst.Arg=$v;},n))));s=$clone((q=b.Inst,r=p.$get(),((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r])),W);if(!((s.Inst.Op===0)||(s.Inst.Op===1))){t=m;u=p;p=t;m=u;W.copy(s,(v=b.Inst,w=p.$get(),((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])));if(!((s.Inst.Op===0)||(s.Inst.Op===1))){g++;continue;}}z=$clone((x=b.Inst,y=m.$get(),((y<0||y>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+y])),W);if((z.Inst.Op===0)||(z.Inst.Op===1)){g++;continue;}ad=(aa=(ab=b.Inst,ac=p.$get(),((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac])),(aa.$ptr_Out||(aa.$ptr_Out=new BY(function(){return this.$target.Inst.Out;},function($v){this.$target.Inst.Out=$v;},aa))));ah=(ae=(af=b.Inst,ag=p.$get(),((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag])),(ae.$ptr_Arg||(ae.$ptr_Arg=new BY(function(){return this.$target.Inst.Arg;},function($v){this.$target.Inst.Arg=$v;},ae))));ai=false;if(s.Inst.Out===(h>>>0)){ai=true;}else if(s.Inst.Arg===(h>>>0)){ai=true;aj=ah;ak=ad;ad=aj;ah=ak;}if(ai){ad.$set(m.$get());}if(m.$get()===ad.$get()){p.$set(ah.$get());}}else{g++;continue;}g++;}return b;};AH.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AH).prototype.Len=function(){return this.$get().Len();};AH.prototype.Less=function(a,b){var $ptr,a,b,c;c=this;return((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a])<((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);};$ptrType(AH).prototype.Less=function(a,b){return this.$get().Less(a,b);};AH.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e;c=this;d=((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);e=((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]);((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=d);((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]=e);};$ptrType(AH).prototype.Swap=function(a,b){return this.$get().Swap(a,b);};AK=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];d=[d];e=[e];if(a[0].Inst.$length>=1000){$s=-1;return AL;}c[0]=AB(a[0].Inst.$length);e[0]=AB(a[0].Inst.$length);b[0]=$throwNilPointerError;d[0]=$makeSlice(BZ,a[0].Inst.$length);b[0]=(function(a,b,c,d,e){return function $b(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=false;h=true;j=(i=a[0].Inst,((f<0||f>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+f]));if(e[0].contains(f)){$s=-1;return h;}e[0].insert(f);k=j.Inst.Op;if((k===(0))||(k===(1))){$s=2;continue;}if((k===(2))||(k===(6))){$s=3;continue;}if(k===(3)){$s=4;continue;}if((k===(4))||(k===(5))){$s=5;continue;}if(k===(7)){$s=6;continue;}if(k===(8)){$s=7;continue;}if(k===(9)){$s=8;continue;}if(k===(10)){$s=9;continue;}$s=10;continue;case 2:m=b[0](j.Inst.Out,g);$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!(m)){l=false;$s=11;continue s;}n=b[0](j.Inst.Arg,g);$s=13;case 13:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;case 11:h=l;p=(o=g[$Uint32.keyFor(j.Inst.Out)],o!==undefined?o.v:false);r=(q=g[$Uint32.keyFor(j.Inst.Arg)],q!==undefined?q.v:false);if(p&&r){h=false;$s=1;continue;}if(r){s=j.Inst.Arg;t=j.Inst.Out;j.Inst.Out=s;j.Inst.Arg=t;u=r;v=p;p=u;r=v;}if(p){w=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(w)]={k:w,v:true};j.Inst.Op=1;}y=AE($indexPtr(d[0].$array,d[0].$offset+j.Inst.Out,CA),$indexPtr(d[0].$array,d[0].$offset+j.Inst.Arg,CA),j.Inst.Out,j.Inst.Arg);$s=14;case 14:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y;((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=x[0]);j.Next=x[1];if(j.Next.$length>0&&((z=j.Next,(0>=z.$length?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+0]))===4294967295)){h=false;$s=1;continue;}$s=10;continue;case 3:aa=b[0](j.Inst.Out,g);$s=15;case 15:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}h=aa;ab=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(ab)]={k:ab,v:(ac=g[$Uint32.keyFor(j.Inst.Out)],ac!==undefined?ac.v:false)};((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),(ad=j.Inst.Out,((ad<0||ad>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+ad]))));j.Next=new BJ([]);af=(ae=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(af>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);af=af-(1)>>0;}$s=10;continue;case 4:ag=b[0](j.Inst.Out,g);$s=16;case 16:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}h=ag;ah=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(ah)]={k:ah,v:(ai=g[$Uint32.keyFor(j.Inst.Out)],ai!==undefined?ai.v:false)};((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),(aj=j.Inst.Out,((aj<0||aj>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+aj]))));j.Next=new BJ([]);al=(ak=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(al>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);al=al-(1)>>0;}$s=10;continue;case 5:am=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(am)]={k:am,v:j.Inst.Op===4};$s=1;continue;$s=10;continue;case 6:an=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(an)]={k:an,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);if(j.Inst.Rune.$length===0){((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=new BI([]));j.Next=new BJ([j.Inst.Out]);$s=1;continue;}ao=$makeSlice(BI,0);if((j.Inst.Rune.$length===1)&&!(((((j.Inst.Arg<<16>>>16)&1)>>>0)===0))){$s=17;continue;}$s=18;continue;case 17:aq=(ap=j.Inst.Rune,(0>=ap.$length?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+0]));ao=$append(ao,aq,aq);ar=E.SimpleFold(aq);while(true){if(!(!((ar===aq)))){break;}ao=$append(ao,ar,ar);ar=E.SimpleFold(ar);}$r=D.Sort($subslice(new AH(ao.$array),ao.$offset,ao.$offset+ao.$length));$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=19;continue;case 18:ao=$appendSlice(ao,j.Inst.Rune);case 19:((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=ao);j.Next=new BJ([]);at=(as=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(at>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);at=at-(1)>>0;}j.Inst.Op=7;$s=10;continue;case 7:au=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(au)]={k:au,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);av=new BI([]);if(!(((((j.Inst.Arg<<16>>>16)&1)>>>0)===0))){$s=21;continue;}$s=22;continue;case 21:ax=(aw=j.Inst.Rune,(0>=aw.$length?($throwRuntimeError("index out of range"),undefined):aw.$array[aw.$offset+0]));av=$append(av,ax,ax);ay=E.SimpleFold(ax);while(true){if(!(!((ay===ax)))){break;}av=$append(av,ay,ay);ay=E.SimpleFold(ay);}$r=D.Sort($subslice(new AH(av.$array),av.$offset,av.$offset+av.$length));$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=23;continue;case 22:av=$append(av,(az=j.Inst.Rune,(0>=az.$length?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+0])),(ba=j.Inst.Rune,(0>=ba.$length?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+0])));case 23:((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=av);j.Next=new BJ([]);bc=(bb=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(bc>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);bc=bc-(1)>>0;}j.Inst.Op=7;$s=10;continue;case 8:bd=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(bd)]={k:bd,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),AJ));j.Next=new BJ([j.Inst.Out]);$s=10;continue;case 9:be=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(be)]={k:be,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),AI));j.Next=new BJ([]);bg=(bf=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(bf===bf&&bf!==1/0&&bf!==-1/0)?bf>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(bg>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);bg=bg-(1)>>0;}case 10:case 1:$s=-1;return h;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e);c[0].clear();c[0].insert((a[0].Start>>>0));g=(f=a[0].Inst.$length,((f<0||f>2147483647)?$throwRuntimeError("makemap: size out of range"):{}));case 1:if(!(!c[0].empty())){$s=2;continue;}e[0].clear();h=c[0].next();i=b[0](h,g);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=3;continue;}$s=4;continue;case 3:a[0]=AL;$s=2;continue;case 4:$s=1;continue;case 2:if(!(a[0]===AL)){j=a[0].Inst;k=0;while(true){if(!(k<j.$length)){break;}l=k;(m=a[0].Inst,((l<0||l>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+l])).Inst.Rune=((l<0||l>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+l]);k++;}}$s=-1;return a[0];}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};AM=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BK.nil;if(a.Start===0){b=AL;$s=-1;return b;}if(!(((c=a.Inst,d=a.Start,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op===3))||!((((((e=a.Inst,f=a.Start,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])).Arg<<24>>>24)&4)>>>0)===4))){b=AL;$s=-1;return b;}g=a.Inst;h=0;case 1:if(!(h<g.$length)){$s=2;continue;}i=$clone(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]),A.Inst);l=(j=a.Inst,k=i.Out,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k])).Op;m=i.Op;if((m===(0))||(m===(1))){if((l===4)||((n=a.Inst,o=i.Arg,((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o])).Op===4)){b=AL;$s=-1;return b;}}else if(m===(3)){if(l===4){if((((i.Arg<<24>>>24)&8)>>>0)===8){h++;$s=1;continue;}b=AL;$s=-1;return b;}}else if(l===4){b=AL;$s=-1;return b;}h++;$s=1;continue;case 2:b=AG(a);p=AK(b);$s=3;case 3:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}b=p;if(!(b===AL)){AF(b,a);}b=b;$s=-1;return b;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.ptr.prototype.String=function(){var $ptr,a;a=this;return a.regexpRO.expr;};AN.prototype.String=function(){return this.$val.String();};AN.ptr.prototype.Copy=function(){var $ptr,a;a=this;return new AN.ptr($clone(a.regexpRO,AO),new H.Mutex.ptr(false),CD.nil);};AN.prototype.Copy=function(){return this.$val.Copy();};AP=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=AR(a,212,false);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Compile=AP;AN.ptr.prototype.Longest=function(){var $ptr,a;a=this;a.regexpRO.longest=true;};AN.prototype.Longest=function(){return this.$val.Longest();};AR=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=A.Parse(a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return[BP.nil,g];}h=f.MaxCap();i=f.CapNames();f=f.Simplify();j=A.Compile(f);k=j[0];g=j[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return[BP.nil,g];}l=AM(k);$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=new AN.ptr(new AO.ptr(a,k,l,"",BL.nil,false,0,0,k.StartCond(),h,i,c),new H.Mutex.ptr(false),CD.nil);if(m.regexpRO.onepass===AL){n=k.Prefix();m.regexpRO.prefix=n[0];m.regexpRO.prefixComplete=n[1];}else{o=X(k);m.regexpRO.prefix=o[0];m.regexpRO.prefixComplete=o[1];m.regexpRO.prefixEnd=o[2];}if(!(m.regexpRO.prefix==="")){m.regexpRO.prefixBytes=new BL($stringToBytes(m.regexpRO.prefix));p=I.DecodeRuneInString(m.regexpRO.prefix);m.regexpRO.prefixRune=p[0];}$s=-1;return[m,$ifaceNil];}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.ptr.prototype.get=function(){var $ptr,a,b,c,d,e,f;a=this;a.mu.Lock();b=a.machine.$length;if(b>0){e=(c=a.machine,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));a.machine=$subslice(a.machine,0,(b-1>>0));a.mu.Unlock();return e;}a.mu.Unlock();f=T(a.regexpRO.prog,a.regexpRO.onepass);f.re=a;return f;};AN.prototype.get=function(){return this.$val.get();};AN.ptr.prototype.put=function(a){var $ptr,a,b;b=this;b.mu.Lock();b.machine=$append(b.machine,a);b.mu.Unlock();};AN.prototype.put=function(a){return this.$val.put(a);};AS=function(a){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AP(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[0];e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:f=e.Error();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$panic(new $String("regexp: Compile("+AU(a)+"): "+f));case 3:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MustCompile=AS;AU=function(a){var $ptr,a;if(F.CanBackquote(a)){return"`"+a+"`";}return F.Quote(a);};AN.ptr.prototype.NumSubexp=function(){var $ptr,a;a=this;return a.regexpRO.numSubexp;};AN.prototype.NumSubexp=function(){return this.$val.NumSubexp();};AN.ptr.prototype.SubexpNames=function(){var $ptr,a;a=this;return a.regexpRO.subexpNames;};AN.prototype.SubexpNames=function(){return this.$val.SubexpNames();};AW.ptr.prototype.step=function(a){var $ptr,a,b,c;b=this;if(a<b.str.length){c=b.str.charCodeAt(a);if(c<128){return[(c>>0),1];}return I.DecodeRuneInString($substring(b.str,a));}return[-1,0];};AW.prototype.step=function(a){return this.$val.step(a);};AW.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return true;};AW.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AW.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return G.HasPrefix(b.str,a.regexpRO.prefix);};AW.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AW.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return G.Index($substring(c.str,b),a.regexpRO.prefix);};AW.prototype.index=function(a,b){return this.$val.index(a,b);};AW.ptr.prototype.context=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=-1;d=-1;e=c;f=d;if(a>0&&a<=b.str.length){g=I.DecodeLastRuneInString($substring(b.str,0,a));e=g[0];}if(a<b.str.length){h=I.DecodeRuneInString($substring(b.str,a));f=h[0];}return A.EmptyOpContext(e,f);};AW.prototype.context=function(a){return this.$val.context(a);};AX.ptr.prototype.step=function(a){var $ptr,a,b,c,d;b=this;if(a<b.str.$length){d=(c=b.str,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]));if(d<128){return[(d>>0),1];}return I.DecodeRune($subslice(b.str,a));}return[-1,0];};AX.prototype.step=function(a){return this.$val.step(a);};AX.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return true;};AX.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AX.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return C.HasPrefix(b.str,a.regexpRO.prefixBytes);};AX.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AX.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return C.Index($subslice(c.str,b),a.regexpRO.prefixBytes);};AX.prototype.index=function(a,b){return this.$val.index(a,b);};AX.ptr.prototype.context=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=-1;d=-1;e=c;f=d;if(a>0&&a<=b.str.$length){g=I.DecodeLastRune($subslice(b.str,0,a));e=g[0];}if(a<b.str.$length){h=I.DecodeRune($subslice(b.str,a));f=h[0];}return A.EmptyOpContext(e,f);};AX.prototype.context=function(a){return this.$val.context(a);};AY.ptr.prototype.step=function(a){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(!b.atEOT&&!((a===b.pos))){$s=-1;return[-1,0];}d=b.r.ReadRune();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];g=c[2];if(!($interfaceIsEqual(g,$ifaceNil))){b.atEOT=true;$s=-1;return[-1,0];}b.pos=b.pos+(f)>>0;$s=-1;return[e,f];}return;}if($f===undefined){$f={$blk:AY.ptr.prototype.step};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY.prototype.step=function(a){return this.$val.step(a);};AY.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return false;};AY.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AY.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return false;};AY.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AY.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return-1;};AY.prototype.index=function(a,b){return this.$val.index(a,b);};AY.ptr.prototype.context=function(a){var $ptr,a,b;b=this;return 0;};AY.prototype.context=function(a){return this.$val.context(a);};AN.ptr.prototype.LiteralPrefix=function(){var $ptr,a,b,c,d,e;a="";b=false;c=this;d=c.regexpRO.prefix;e=c.regexpRO.prefixComplete;a=d;b=e;return[a,b];};AN.prototype.LiteralPrefix=function(){return this.$val.LiteralPrefix();};AN.ptr.prototype.MatchReader=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch(a,BL.nil,"");$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.MatchReader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.MatchReader=function(a){return this.$val.MatchReader(a);};AN.ptr.prototype.MatchString=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch($ifaceNil,BL.nil,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.MatchString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.MatchString=function(a){return this.$val.MatchString(a);};AN.ptr.prototype.Match=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch($ifaceNil,a,"");$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Match};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Match=function(a){return this.$val.Match(a);};BA=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=false;d=$ifaceNil;f=AP(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];d=e[1];if(!($interfaceIsEqual(d,$ifaceNil))){h=false;i=d;c=h;d=i;$s=-1;return[c,d];}k=g.MatchString(b);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=$ifaceNil;c=j;d=l;$s=-1;return[c,d];}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MatchString=BA;AN.ptr.prototype.ReplaceAllString=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];c[0]=this;d=2;if(G.Contains(b[0],"$")){d=$imul(2,((c[0].regexpRO.numSubexp+1>>0)));}e=c[0].replaceAll(BL.nil,a[0],d,(function(a,b,c){return function(e,f){var $ptr,e,f;return c[0].expand(e,b[0],BL.nil,a[0],f);};})(a,b,c));$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=-1;return $bytesToString(f);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllString=function(a,b){return this.$val.ReplaceAllString(a,b);};AN.ptr.prototype.ReplaceAllLiteralString=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=[b];c=this;d=c.replaceAll(BL.nil,a,2,(function(b){return function(d,e){var $ptr,d,e;return $appendSlice(d,b[0]);};})(b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return $bytesToString(d);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllLiteralString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllLiteralString=function(a,b){return this.$val.ReplaceAllLiteralString(a,b);};AN.ptr.prototype.ReplaceAllStringFunc=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=this;d=c.replaceAll(BL.nil,a[0],2,(function(a,b){return function $b(d,e){var $ptr,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=d;g=b[0]($substring(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return $appendSlice(f,h);}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(a,b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=-1;return $bytesToString(e);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllStringFunc};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllStringFunc=function(a,b){return this.$val.ReplaceAllStringFunc(a,b);};AN.ptr.prototype.replaceAll=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=0;g=0;h=BL.nil;i=0;if(!(a===BL.nil)){i=a.$length;}else{i=b.length;}if(c>e.regexpRO.prog.NumCap){c=e.regexpRO.prog.NumCap;}j=CE.zero();case 1:if(!(g<=i)){$s=2;continue;}k=e.doExecute($ifaceNil,a,b,g,c,$subslice(new BN(j),0,0));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(l.$length===0){$s=2;continue;}if(!(a===BL.nil)){h=$appendSlice(h,$subslice(a,f,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])));}else{h=$appendSlice(h,$substring(b,f,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])));}if((1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])>f||((0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])===0)){$s=4;continue;}$s=5;continue;case 4:m=d(h,l);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}h=m;case 5:f=(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1]);n=0;if(!(a===BL.nil)){o=I.DecodeRune($subslice(a,g));n=o[1];}else{p=I.DecodeRuneInString($substring(b,g));n=p[1];}if((g+n>>0)>(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])){g=g+(n)>>0;}else if((g+1>>0)>(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])){g=g+(1)>>0;}else{g=(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1]);}$s=1;continue;case 2:if(!(a===BL.nil)){h=$appendSlice(h,$subslice(a,f));}else{h=$appendSlice(h,$substring(b,f));}$s=-1;return h;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.replaceAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.replaceAll=function(a,b,c,d){return this.$val.replaceAll(a,b,c,d);};AN.ptr.prototype.ReplaceAll=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];d=[d];c[0]=this;e=2;if(C.IndexByte(b[0],36)>=0){e=$imul(2,((c[0].regexpRO.numSubexp+1>>0)));}d[0]="";f=c[0].replaceAll(a[0],"",e,(function(a,b,c,d){return function(f,g){var $ptr,f,g;if(!((d[0].length===b[0].$length))){d[0]=$bytesToString(b[0]);}return c[0].expand(f,d[0],a[0],"",g);};})(a,b,c,d));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=-1;return g;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAll=function(a,b){return this.$val.ReplaceAll(a,b);};AN.ptr.prototype.ReplaceAllLiteral=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=[b];c=this;d=c.replaceAll(a,"",2,(function(b){return function(d,e){var $ptr,d,e;return $appendSlice(d,b[0]);};})(b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllLiteral};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllLiteral=function(a,b){return this.$val.ReplaceAllLiteral(a,b);};AN.ptr.prototype.ReplaceAllFunc=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=this;d=c.replaceAll(a[0],"",2,(function(a,b){return function $b(d,e){var $ptr,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=d;g=b[0]($subslice(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return $appendSlice(f,h);}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(a,b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllFunc};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllFunc=function(a,b){return this.$val.ReplaceAllFunc(a,b);};AN.ptr.prototype.pad=function(a){var $ptr,a,b,c;b=this;if(a===BN.nil){return BN.nil;}c=$imul(((1+b.regexpRO.numSubexp>>0)),2);while(true){if(!(a.$length<c)){break;}a=$append(a,-1);}return a;};AN.prototype.pad=function(a){return this.$val.pad(a);};AN.ptr.prototype.allMatches=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=0;if(b===BL.nil){f=a.length;}else{f=b.$length;}g=0;h=0;i=-1;j=g;k=h;l=i;case 1:if(!(k<c&&j<=f)){$s=2;continue;}m=e.doExecute($ifaceNil,b,a,j,e.regexpRO.prog.NumCap,BN.nil);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;if(n.$length===0){$s=2;continue;}o=true;if((1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])===j){if((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])===l){o=false;}p=0;if(b===BL.nil){q=I.DecodeRuneInString($substring(a,j,f));p=q[1];}else{r=I.DecodeRune($subslice(b,j,f));p=r[1];}if(p>0){j=j+(p)>>0;}else{j=f+1>>0;}}else{j=(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]);}l=(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]);if(o){$s=4;continue;}$s=5;continue;case 4:$r=d(e.pad(n));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;case 5:$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.allMatches};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.allMatches=function(a,b,c,d){return this.$val.allMatches(a,b,c,d);};AN.ptr.prototype.Find=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CE.zero();d=b.doExecute($ifaceNil,a,"",0,2,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return BL.nil;}$s=-1;return $subslice(a,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Find};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Find=function(a){return this.$val.Find(a);};AN.ptr.prototype.FindIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute($ifaceNil,a,"",0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindIndex=function(a){return this.$val.FindIndex(a);};AN.ptr.prototype.FindString=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CE.zero();d=b.doExecute($ifaceNil,BL.nil,a,0,2,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return"";}$s=-1;return $substring(a,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindString=function(a){return this.$val.FindString(a);};AN.ptr.prototype.FindStringIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute($ifaceNil,BL.nil,a,0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringIndex=function(a){return this.$val.FindStringIndex(a);};AN.ptr.prototype.FindReaderIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute(a,BL.nil,"",0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindReaderIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindReaderIndex=function(a){return this.$val.FindReaderIndex(a);};AN.ptr.prototype.FindSubmatch=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CF.zero();d=b.doExecute($ifaceNil,a,"",0,b.regexpRO.prog.NumCap,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return CG.nil;}f=$makeSlice(CG,(1+b.regexpRO.numSubexp>>0));g=f;h=0;while(true){if(!(h<g.$length)){break;}i=h;if(($imul(2,i))<e.$length&&(j=$imul(2,i),((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))>=0){((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]=$subslice(a,(k=$imul(2,i),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k])),(l=($imul(2,i))+1>>0,((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l]))));}h++;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindSubmatch=function(a){return this.$val.FindSubmatch(a);};AN.ptr.prototype.Expand=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return e.expand(a,$bytesToString(b),c,"",d);};AN.prototype.Expand=function(a,b,c,d){return this.$val.Expand(a,b,c,d);};AN.ptr.prototype.ExpandString=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return e.expand(a,b,BL.nil,c,d);};AN.prototype.ExpandString=function(a,b,c,d){return this.$val.ExpandString(a,b,c,d);};AN.ptr.prototype.expand=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=this;while(true){if(!(b.length>0)){break;}g=G.Index(b,"$");if(g<0){break;}a=$appendSlice(a,$substring(b,0,g));b=$substring(b,g);if(b.length>1&&(b.charCodeAt(1)===36)){a=$append(a,36);b=$substring(b,2);continue;}h=BF(b);i=h[0];j=h[1];k=h[2];l=h[3];if(!l){a=$append(a,36);b=$substring(b,1);continue;}b=k;if(j>=0){if((($imul(2,j))+1>>0)<e.$length&&(m=$imul(2,j),((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))>=0){if(!(c===BL.nil)){a=$appendSlice(a,$subslice(c,(n=$imul(2,j),((n<0||n>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+n])),(o=($imul(2,j))+1>>0,((o<0||o>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+o]))));}else{a=$appendSlice(a,$substring(d,(p=$imul(2,j),((p<0||p>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+p])),(q=($imul(2,j))+1>>0,((q<0||q>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+q]))));}}}else{r=f.regexpRO.subexpNames;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(i===u&&(($imul(2,t))+1>>0)<e.$length&&(v=$imul(2,t),((v<0||v>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+v]))>=0){if(!(c===BL.nil)){a=$appendSlice(a,$subslice(c,(w=$imul(2,t),((w<0||w>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+w])),(x=($imul(2,t))+1>>0,((x<0||x>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+x]))));}else{a=$appendSlice(a,$substring(d,(y=$imul(2,t),((y<0||y>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+y])),(z=($imul(2,t))+1>>0,((z<0||z>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+z]))));}break;}s++;}}}a=$appendSlice(a,b);return a;};AN.prototype.expand=function(a,b,c,d,e){return this.$val.expand(a,b,c,d,e);};BF=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b="";c=0;d="";e=false;if(a.length<2||!((a.charCodeAt(0)===36))){return[b,c,d,e];}f=false;if(a.charCodeAt(1)===123){f=true;a=$substring(a,2);}else{a=$substring(a,1);}g=0;while(true){if(!(g<a.length)){break;}h=I.DecodeRuneInString($substring(a,g));i=h[0];j=h[1];if(!E.IsLetter(i)&&!E.IsDigit(i)&&!((i===95))){break;}g=g+(j)>>0;}if(g===0){return[b,c,d,e];}b=$substring(a,0,g);if(f){if(g>=a.length||!((a.charCodeAt(g)===125))){return[b,c,d,e];}g=g+(1)>>0;}c=0;k=0;while(true){if(!(k<b.length)){break;}if(b.charCodeAt(k)<48||57<b.charCodeAt(k)||c>=100000000){c=-1;break;}c=(($imul(c,10))+(b.charCodeAt(k)>>0)>>0)-48>>0;k=k+(1)>>0;}if((b.charCodeAt(0)===48)&&b.length>1){c=-1;}d=$substring(a,g);e=true;return[b,c,d,e];};AN.ptr.prototype.FindSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute($ifaceNil,a,"",0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindSubmatchIndex=function(a){return this.$val.FindSubmatchIndex(a);};AN.ptr.prototype.FindStringSubmatch=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CF.zero();d=b.doExecute($ifaceNil,BL.nil,a,0,b.regexpRO.prog.NumCap,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return CB.nil;}f=$makeSlice(CB,(1+b.regexpRO.numSubexp>>0));g=f;h=0;while(true){if(!(h<g.$length)){break;}i=h;if(($imul(2,i))<e.$length&&(j=$imul(2,i),((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))>=0){((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]=$substring(a,(k=$imul(2,i),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k])),(l=($imul(2,i))+1>>0,((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l]))));}h++;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringSubmatch=function(a){return this.$val.FindStringSubmatch(a);};AN.ptr.prototype.FindStringSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute($ifaceNil,BL.nil,a,0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringSubmatchIndex=function(a){return this.$val.FindStringSubmatchIndex(a);};AN.ptr.prototype.FindReaderSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute(a,BL.nil,"",0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindReaderSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindReaderSubmatchIndex=function(a){return this.$val.FindReaderSubmatchIndex(a);};AN.ptr.prototype.FindAll=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].$length+1>>0;}c[0]=$makeSlice(CG,0,10);$r=d.allMatches("",a[0],b,(function(a,c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CG.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAll=function(a,b){return this.$val.FindAll(a,b);};AN.ptr.prototype.FindAllIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.$length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches("",a,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(e,0,2));};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllIndex=function(a,b){return this.$val.FindAllIndex(a,b);};AN.ptr.prototype.FindAllString=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].length+1>>0;}c[0]=$makeSlice(CB,0,10);$r=d.allMatches(a[0],BL.nil,b,(function(a,c){return function(e){var $ptr,e;c[0]=$append(c[0],$substring(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CB.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllString=function(a,b){return this.$val.FindAllString(a,b);};AN.ptr.prototype.FindAllStringIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches(a,BL.nil,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(e,0,2));};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringIndex=function(a,b){return this.$val.FindAllStringIndex(a,b);};AN.ptr.prototype.FindAllSubmatch=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].$length+1>>0;}c[0]=$makeSlice(CI,0,10);$r=d.allMatches("",a[0],b,(function(a,c){return function(e){var $ptr,e,f,g,h,i,j,k,l,m;g=$makeSlice(CG,(f=e.$length/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero")));h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;if((k=$imul(2,j),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]))>=0){((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=$subslice(a[0],(l=$imul(2,j),((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l])),(m=($imul(2,j))+1>>0,((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))));}i++;}c[0]=$append(c[0],g);};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CI.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllSubmatch=function(a,b){return this.$val.FindAllSubmatch(a,b);};AN.ptr.prototype.FindAllSubmatchIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.$length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches("",a,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],e);};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllSubmatchIndex=function(a,b){return this.$val.FindAllSubmatchIndex(a,b);};AN.ptr.prototype.FindAllStringSubmatch=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].length+1>>0;}c[0]=$makeSlice(CJ,0,10);$r=d.allMatches(a[0],BL.nil,b,(function(a,c){return function(e){var $ptr,e,f,g,h,i,j,k,l,m;g=$makeSlice(CB,(f=e.$length/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero")));h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;if((k=$imul(2,j),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]))>=0){((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=$substring(a[0],(l=$imul(2,j),((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l])),(m=($imul(2,j))+1>>0,((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))));}i++;}c[0]=$append(c[0],g);};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CJ.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringSubmatch=function(a,b){return this.$val.FindAllStringSubmatch(a,b);};AN.ptr.prototype.FindAllStringSubmatchIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches(a,BL.nil,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],e);};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringSubmatchIndex=function(a,b){return this.$val.FindAllStringSubmatchIndex(a,b);};AN.ptr.prototype.Split=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(b===0){$s=-1;return CB.nil;}if(c.regexpRO.expr.length>0&&(a.length===0)){$s=-1;return new CB([""]);}d=c.FindAllStringIndex(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=$makeSlice(CB,0,e.$length);g=0;h=0;i=e;j=0;while(true){if(!(j<i.$length)){break;}k=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(b>0&&f.$length>=(b-1>>0)){break;}h=(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]);if(!(((1>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+1])===0))){f=$append(f,$substring(a,g,h));}g=(1>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+1]);j++;}if(!((h===a.length))){f=$append(f,$substring(a,g));}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Split};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Split=function(a,b){return this.$val.Split(a,b);};BH.methods=[{prop:"reset",name:"reset",pkg:"regexp",typ:$funcType([$Int,$Int],[],false)},{prop:"shouldVisit",name:"shouldVisit",pkg:"regexp",typ:$funcType([$Uint32,$Int],[$Bool],false)},{prop:"push",name:"push",pkg:"regexp",typ:$funcType([$Uint32,$Int,$Int],[],false)}];CC.methods=[{prop:"tryBacktrack",name:"tryBacktrack",pkg:"regexp",typ:$funcType([BH,AV,$Uint32,$Int],[$Bool],false)},{prop:"backtrack",name:"backtrack",pkg:"regexp",typ:$funcType([AV,$Int,$Int,$Int],[$Bool],false)},{prop:"newInputBytes",name:"newInputBytes",pkg:"regexp",typ:$funcType([BL],[AV],false)},{prop:"newInputString",name:"newInputString",pkg:"regexp",typ:$funcType([$String],[AV],false)},{prop:"newInputReader",name:"newInputReader",pkg:"regexp",typ:$funcType([B.RuneReader],[AV],false)},{prop:"init",name:"init",pkg:"regexp",typ:$funcType([$Int],[],false)},{prop:"alloc",name:"alloc",pkg:"regexp",typ:$funcType([BT],[BR],false)},{prop:"match",name:"match",pkg:"regexp",typ:$funcType([AV,$Int],[$Bool],false)},{prop:"clear",name:"clear",pkg:"regexp",typ:$funcType([CK],[],false)},{prop:"step",name:"step",pkg:"regexp",typ:$funcType([CK,CK,$Int,$Int,$Int32,A.EmptyOp],[],false)},{prop:"add",name:"add",pkg:"regexp",typ:$funcType([CK,$Uint32,$Int,BN,A.EmptyOp,BR],[BR],false)},{prop:"onepass",name:"onepass",pkg:"regexp",typ:$funcType([AV,$Int],[$Bool],false)}];BW.methods=[{prop:"empty",name:"empty",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"next",name:"next",pkg:"regexp",typ:$funcType([],[$Uint32],false)},{prop:"clear",name:"clear",pkg:"regexp",typ:$funcType([],[],false)},{prop:"contains",name:"contains",pkg:"regexp",typ:$funcType([$Uint32],[$Bool],false)},{prop:"insert",name:"insert",pkg:"regexp",typ:$funcType([$Uint32],[],false)},{prop:"insertNew",name:"insertNew",pkg:"regexp",typ:$funcType([$Uint32],[],false)}];AH.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)}];BP.methods=[{prop:"doMatch",name:"doMatch",pkg:"regexp",typ:$funcType([B.RuneReader,BL,$String],[$Bool],false)},{prop:"doExecute",name:"doExecute",pkg:"regexp",typ:$funcType([B.RuneReader,BL,$String,$Int,$Int,BN],[BN],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Copy",name:"Copy",pkg:"",typ:$funcType([],[BP],false)},{prop:"Longest",name:"Longest",pkg:"",typ:$funcType([],[],false)},{prop:"get",name:"get",pkg:"regexp",typ:$funcType([],[CC],false)},{prop:"put",name:"put",pkg:"regexp",typ:$funcType([CC],[],false)},{prop:"NumSubexp",name:"NumSubexp",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SubexpNames",name:"SubexpNames",pkg:"",typ:$funcType([],[CB],false)},{prop:"LiteralPrefix",name:"LiteralPrefix",pkg:"",typ:$funcType([],[$String,$Bool],false)},{prop:"MatchReader",name:"MatchReader",pkg:"",typ:$funcType([B.RuneReader],[$Bool],false)},{prop:"MatchString",name:"MatchString",pkg:"",typ:$funcType([$String],[$Bool],false)},{prop:"Match",name:"Match",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"ReplaceAllString",name:"ReplaceAllString",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"ReplaceAllLiteralString",name:"ReplaceAllLiteralString",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"ReplaceAllStringFunc",name:"ReplaceAllStringFunc",pkg:"",typ:$funcType([$String,CL],[$String],false)},{prop:"replaceAll",name:"replaceAll",pkg:"regexp",typ:$funcType([BL,$String,$Int,CM],[BL],false)},{prop:"ReplaceAll",name:"ReplaceAll",pkg:"",typ:$funcType([BL,BL],[BL],false)},{prop:"ReplaceAllLiteral",name:"ReplaceAllLiteral",pkg:"",typ:$funcType([BL,BL],[BL],false)},{prop:"ReplaceAllFunc",name:"ReplaceAllFunc",pkg:"",typ:$funcType([BL,CN],[BL],false)},{prop:"pad",name:"pad",pkg:"regexp",typ:$funcType([BN],[BN],false)},{prop:"allMatches",name:"allMatches",pkg:"regexp",typ:$funcType([$String,BL,$Int,CO],[],false)},{prop:"Find",name:"Find",pkg:"",typ:$funcType([BL],[BL],false)},{prop:"FindIndex",name:"FindIndex",pkg:"",typ:$funcType([BL],[BN],false)},{prop:"FindString",name:"FindString",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"FindStringIndex",name:"FindStringIndex",pkg:"",typ:$funcType([$String],[BN],false)},{prop:"FindReaderIndex",name:"FindReaderIndex",pkg:"",typ:$funcType([B.RuneReader],[BN],false)},{prop:"FindSubmatch",name:"FindSubmatch",pkg:"",typ:$funcType([BL],[CG],false)},{prop:"Expand",name:"Expand",pkg:"",typ:$funcType([BL,BL,BL,BN],[BL],false)},{prop:"ExpandString",name:"ExpandString",pkg:"",typ:$funcType([BL,$String,$String,BN],[BL],false)},{prop:"expand",name:"expand",pkg:"regexp",typ:$funcType([BL,$String,BL,$String,BN],[BL],false)},{prop:"FindSubmatchIndex",name:"FindSubmatchIndex",pkg:"",typ:$funcType([BL],[BN],false)},{prop:"FindStringSubmatch",name:"FindStringSubmatch",pkg:"",typ:$funcType([$String],[CB],false)},{prop:"FindStringSubmatchIndex",name:"FindStringSubmatchIndex",pkg:"",typ:$funcType([$String],[BN],false)},{prop:"FindReaderSubmatchIndex",name:"FindReaderSubmatchIndex",pkg:"",typ:$funcType([B.RuneReader],[BN],false)},{prop:"FindAll",name:"FindAll",pkg:"",typ:$funcType([BL,$Int],[CG],false)},{prop:"FindAllIndex",name:"FindAllIndex",pkg:"",typ:$funcType([BL,$Int],[CH],false)},{prop:"FindAllString",name:"FindAllString",pkg:"",typ:$funcType([$String,$Int],[CB],false)},{prop:"FindAllStringIndex",name:"FindAllStringIndex",pkg:"",typ:$funcType([$String,$Int],[CH],false)},{prop:"FindAllSubmatch",name:"FindAllSubmatch",pkg:"",typ:$funcType([BL,$Int],[CI],false)},{prop:"FindAllSubmatchIndex",name:"FindAllSubmatchIndex",pkg:"",typ:$funcType([BL,$Int],[CH],false)},{prop:"FindAllStringSubmatch",name:"FindAllStringSubmatch",pkg:"",typ:$funcType([$String,$Int],[CJ],false)},{prop:"FindAllStringSubmatchIndex",name:"FindAllStringSubmatchIndex",pkg:"",typ:$funcType([$String,$Int],[CH],false)},{prop:"Split",name:"Split",pkg:"",typ:$funcType([$String,$Int],[CB],false)}];CP.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];CQ.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];CR.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];J.init("regexp",[{prop:"pc",name:"pc",exported:false,typ:$Uint32,tag:""},{prop:"arg",name:"arg",exported:false,typ:$Int,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);K.init("regexp",[{prop:"prog",name:"prog",exported:false,typ:BM,tag:""},{prop:"end",name:"end",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:BN,tag:""},{prop:"jobs",name:"jobs",exported:false,typ:BO,tag:""},{prop:"visited",name:"visited",exported:false,typ:BJ,tag:""}]);P.init("regexp",[{prop:"sparse",name:"sparse",exported:false,typ:BJ,tag:""},{prop:"dense",name:"dense",exported:false,typ:BQ,tag:""}]);Q.init("regexp",[{prop:"pc",name:"pc",exported:false,typ:$Uint32,tag:""},{prop:"t",name:"t",exported:false,typ:BR,tag:""}]);R.init("regexp",[{prop:"inst",name:"inst",exported:false,typ:BT,tag:""},{prop:"cap",name:"cap",exported:false,typ:BN,tag:""}]);S.init("regexp",[{prop:"re",name:"re",exported:false,typ:BP,tag:""},{prop:"p",name:"p",exported:false,typ:BM,tag:""},{prop:"op",name:"op",exported:false,typ:BK,tag:""},{prop:"maxBitStateLen",name:"maxBitStateLen",exported:false,typ:$Int,tag:""},{prop:"b",name:"b",exported:false,typ:BH,tag:""},{prop:"q0",name:"q0",exported:false,typ:P,tag:""},{prop:"q1",name:"q1",exported:false,typ:P,tag:""},{prop:"pool",name:"pool",exported:false,typ:BS,tag:""},{prop:"matched",name:"matched",exported:false,typ:$Bool,tag:""},{prop:"matchcap",name:"matchcap",exported:false,typ:BN,tag:""},{prop:"inputBytes",name:"inputBytes",exported:false,typ:AX,tag:""},{prop:"inputString",name:"inputString",exported:false,typ:AW,tag:""},{prop:"inputReader",name:"inputReader",exported:false,typ:AY,tag:""}]);V.init("",[{prop:"Inst",name:"Inst",exported:true,typ:BX,tag:""},{prop:"Start",name:"Start",exported:true,typ:$Int,tag:""},{prop:"NumCap",name:"NumCap",exported:true,typ:$Int,tag:""}]);W.init("",[{prop:"Inst",name:"",exported:true,typ:A.Inst,tag:""},{prop:"Next",name:"Next",exported:true,typ:BJ,tag:""}]);AA.init("regexp",[{prop:"sparse",name:"sparse",exported:false,typ:BJ,tag:""},{prop:"dense",name:"dense",exported:false,typ:BJ,tag:""},{prop:"size",name:"size",exported:false,typ:$Uint32,tag:""},{prop:"nextIndex",name:"nextIndex",exported:false,typ:$Uint32,tag:""}]);AH.init($Int32);AN.init("regexp",[{prop:"regexpRO",name:"",exported:false,typ:AO,tag:""},{prop:"mu",name:"mu",exported:false,typ:H.Mutex,tag:""},{prop:"machine",name:"machine",exported:false,typ:CD,tag:""}]);AO.init("regexp",[{prop:"expr",name:"expr",exported:false,typ:$String,tag:""},{prop:"prog",name:"prog",exported:false,typ:BM,tag:""},{prop:"onepass",name:"onepass",exported:false,typ:BK,tag:""},{prop:"prefix",name:"prefix",exported:false,typ:$String,tag:""},{prop:"prefixBytes",name:"prefixBytes",exported:false,typ:BL,tag:""},{prop:"prefixComplete",name:"prefixComplete",exported:false,typ:$Bool,tag:""},{prop:"prefixRune",name:"prefixRune",exported:false,typ:$Int32,tag:""},{prop:"prefixEnd",name:"prefixEnd",exported:false,typ:$Uint32,tag:""},{prop:"cond",name:"cond",exported:false,typ:A.EmptyOp,tag:""},{prop:"numSubexp",name:"numSubexp",exported:false,typ:$Int,tag:""},{prop:"subexpNames",name:"subexpNames",exported:false,typ:CB,tag:""},{prop:"longest",name:"longest",exported:false,typ:$Bool,tag:""}]);AV.init([{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)}]);AW.init("regexp",[{prop:"str",name:"str",exported:false,typ:$String,tag:""}]);AX.init("regexp",[{prop:"str",name:"str",exported:false,typ:BL,tag:""}]);AY.init("regexp",[{prop:"r",name:"r",exported:false,typ:B.RuneReader,tag:""},{prop:"atEOT",name:"atEOT",exported:false,typ:$Bool,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=BG.zero();L=BH.nil;AC=new BI([]);AD=new BJ([4294967295]);AI=new BI([0,9,11,1114111]);AJ=new BI([0,1114111]);AL=BK.nil;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["runtime/debug"]=(function(){var $pkg={},$init,D,A,B,C,Y,Q;D=$packages["os"];A=$packages["runtime"];B=$packages["sort"];C=$packages["time"];Y=$sliceType($Uint8);Q=function(){var $ptr,c,d;c=$makeSlice(Y,1024);while(true){d=A.Stack(c,false);if(d<c.$length){return $subslice(c,0,d);}c=$makeSlice(Y,($imul(2,c.$length)));}};$pkg.Stack=Q;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;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=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;}}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;A=$packages["io"];B=$packages["sync"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["runtime/trace"]=(function(){var $pkg={},$init,A,B;A=$packages["io"];B=$packages["runtime"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["testing"]=(function(){var $pkg={},$init,E,O,J,A,L,K,F,B,I,P,Q,N,G,C,H,M,D,Z,AA,AB,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CP,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;E=$packages["bytes"];O=$packages["errors"];J=$packages["flag"];A=$packages["fmt"];L=$packages["github.com/gopherjs/gopherjs/nosync"];K=$packages["internal/race"];F=$packages["io"];B=$packages["os"];I=$packages["runtime"];P=$packages["runtime/debug"];Q=$packages["runtime/trace"];N=$packages["sort"];G=$packages["strconv"];C=$packages["strings"];H=$packages["sync"];M=$packages["sync/atomic"];D=$packages["time"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=Q.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=J.String("test.bench","","run only benchmarks matching `regexp`");$s=18;case 18:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}Z=b;c=J.Duration("test.benchtime",new D.Duration(0,1000000000),"run each benchmark for duration `d`");$s=19;case 19:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}AA=c;d=J.Bool("test.benchmem",false,"print memory allocations for benchmarks");$s=20;case 20:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}AB=d;e=J.Bool("test.short",false,"run smaller test suite to save time");$s=21;case 21:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}BJ=e;f=J.String("test.outputdir","","write profiles to `dir`");$s=22;case 22:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}BK=f;g=J.Bool("test.v",false,"verbose: print additional output");$s=23;case 23:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}BL=g;h=J.Uint("test.count",1,"run tests and benchmarks `n` times");$s=24;case 24:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}BM=h;i=J.String("test.coverprofile","","write a coverage profile to `file`");$s=25;case 25:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}BN=i;j=J.String("test.run","","run only tests and examples matching `regexp`");$s=26;case 26:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}BO=j;k=J.String("test.memprofile","","write a memory profile to `file`");$s=27;case 27:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}BP=k;l=J.Int("test.memprofilerate",0,"set memory profiling `rate` (see runtime.MemProfileRate)");$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}BQ=l;m=J.String("test.cpuprofile","","write a cpu profile to `file`");$s=29;case 29:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}BR=m;n=J.String("test.blockprofile","","write a goroutine blocking profile to `file`");$s=30;case 30:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}BS=n;o=J.Int("test.blockprofilerate",1,"set blocking profile `rate` (see runtime.SetBlockProfileRate)");$s=31;case 31:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}BT=o;p=J.String("test.mutexprofile","","write a mutex contention profile to the named file after execution");$s=32;case 32:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}BU=p;q=J.Int("test.mutexprofilefraction",1,"if >= 0, calls runtime.SetMutexProfileFraction()");$s=33;case 33:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}BV=q;r=J.String("test.trace","","write an execution trace to `file`");$s=34;case 34:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}BW=r;s=J.Duration("test.timeout",new D.Duration(0,0),"fail test binary execution after duration `d` (0 means unlimited)");$s=35;case 35:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}BX=s;t=J.String("test.cpu","","comma-separated `list` of cpu counts to run each test with");$s=36;case 36:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}BY=t;u=J.Int("test.parallel",I.GOMAXPROCS(0),"run at most `n` tests in parallel");$s=37;case 37:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}BZ=u;CP=O.New("testing: unexpected use of func Main");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/onet.v1/log"]=(function(){var $pkg={},$init,A,E,F,N,B,C,G,H,O,M,P,I,D,J,K,L,CQ,CR,CV,Q,R,AB,CN,AC,CO,AD,CP,AE,AF,AG,a,b,S,AH,AI,AJ,AL,AO,BI,BO,BS,BT,BX,BZ,CD,CI;A=$packages["bytes"];E=$packages["flag"];F=$packages["fmt"];N=$packages["github.com/daviddengcn/go-colortext"];B=$packages["io"];C=$packages["os"];G=$packages["regexp"];H=$packages["runtime"];O=$packages["runtime/debug"];M=$packages["runtime/pprof"];P=$packages["sort"];I=$packages["strconv"];D=$packages["strings"];J=$packages["sync"];K=$packages["testing"];L=$packages["time"];CQ=$sliceType($emptyInterface);CR=$sliceType(N.Color);CV=$sliceType($String);S=function(){var $ptr;Q=C.Stdout;R=C.Stderr;};AH=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=BO();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AI=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$r=AF.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AF,"Unlock"),[]]);if(c>AB){$s=-1;return;}f=H.Caller(d);g=f[0];h=f[2];i=AG.ReplaceAllString(H.FuncForPC(g).Name(),"");$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=F.Sprintf("%d",new CQ([new $Int(h)]));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(!AE){h=0;}if(j.length>$pkg.NamePadding&&$pkg.NamePadding>0){$pkg.NamePadding=j.length;}if(l.length>$pkg.LinePadding&&$pkg.LinePadding>0){$pkg.LinePadding=j.length;}m=F.Sprintf("%%%ds: %%%dd",new CQ([new $Int($pkg.NamePadding),new $Int($pkg.LinePadding)]));$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=F.Sprintf(n,new CQ([new $String(j),new $Int(h)]));$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($pkg.StaticMsg==="")){p=p+("@"+$pkg.StaticMsg);}q=F.Sprintln(e);$s=6;case 6:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=c<0;t=c;if(s){t=$imul(t,(-1));}u=I.Itoa(t);if(c<0){u=u+("!");}v=c;if(v===(-15)){$s=8;continue;}if(v===(-16)){$s=9;continue;}if(v===(-20)){$s=10;continue;}if(v===(-19)){$s=11;continue;}if(v===(-18)){$s=12;continue;}if(v===(-17)){$s=13;continue;}if(!((c===0))){$s=14;continue;}$s=15;continue;case 8:$r=AJ(8,true);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="I";$s=15;continue;case 9:$r=AJ(8,true);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="I";$s=15;continue;case 10:$r=AJ(3,true);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="W";$s=15;continue;case 11:$r=AJ(2,false);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="E";$s=15;continue;case 12:$r=AJ(2,true);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="F";$s=15;continue;case 13:$r=AJ(2,true);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u="P";$s=15;continue;case 14:if(t<=5){$s=22;continue;}$s=23;continue;case 22:w=new CR([4,7,3,5,7]);$r=AJ((x=t-1>>0,((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x])),s);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 23:case 15:case 7:y=F.Sprintf(": (%s) - %s",new CQ([new $String(p),new $String(r)]));$s=25;case 25:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(AC){$s=26;continue;}$s=27;continue;case 26:aa=$clone(L.Now(),L.Time);ab=$clone(aa,L.Time).Format("06/02/01 15:04:05");$s=28;case 28:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=new $String(ab);ad=new $Int($clone(aa,L.Time).Nanosecond());ae=new $String(z);af=F.Sprintf("%s.%09d%s",new CQ([ac,ad,ae]));$s=29;case 29:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}z=af;case 27:ag=F.Sprintf("%-2s%s",new CQ([new $String(u),new $String(z)]));$s=30;case 30:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}z=ag;if(c<-16){$s=31;continue;}$s=32;continue;case 31:ah=F.Fprint(R,new CQ([new $String(z)]));$s=34;case 34:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;$s=33;continue;case 32:ai=F.Fprint(Q,new CQ([new $String(z)]));$s=35;case 35:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;case 33:if(AD){$s=36;continue;}$s=37;continue;case 36:$r=N.ResetColor();$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 37:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AJ=function(c,d){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:if(AD){$s=1;continue;}$s=2;continue;case 1:$r=N.Foreground(c,d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AJ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AL=function(c,d){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:$r=AI(c,3,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AO=function(c){var $ptr,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=AL(3,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AO};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Lvl3=AO;BI=function(){var $ptr,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;$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=AF.RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AF,"RUnlock"),[]]);$s=-1;return AB;}return;}}catch(err){$err=err;$s=-1;return 0;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BI};}$f.$ptr=$ptr;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.DebugVisible=BI;BO=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=$ifaceNil;d=C.Getenv("DEBUG_LVL");$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(e==="")){$s=2;continue;}$s=3;continue;case 2:f=I.Atoi(e);AB=f[0];c=f[1];$r=AO(new CQ([new $String("Setting level to"),new $String(e),new $Int(AB),c]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:$r=BX(new CQ([new $String("Couldn't convert"),new $String(e),new $String("to debug-level")]));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:case 3:g=C.Getenv("DEBUG_TIME");$s=8;case 8:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!(h==="")){$s=9;continue;}$s=10;continue;case 9:i=I.ParseBool(h);AC=i[0];c=i[1];$r=AO(new CQ([new $String("Setting showTime to"),new $String(h),new $Bool(AC),c]));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:$r=BX(new CQ([new $String("Couldn't convert"),new $String(h),new $String("to boolean")]));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:case 10:j=C.Getenv("DEBUG_COLOR");$s=15;case 15:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!(k==="")){$s=16;continue;}$s=17;continue;case 16:l=I.ParseBool(k);AD=l[0];c=l[1];$r=AO(new CQ([new $String("Setting useColor to"),new $String(k),new $Bool(AC),c]));$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:$r=BX(new CQ([new $String("Couldn't convert"),new $String(k),new $String("to boolean")]));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:case 17:$s=-1;return;}return;}if($f===undefined){$f={$blk:BO};}$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.ParseEnv=BO;BS=function(){var $ptr;return $bytesToString(O.Stack());};$pkg.Stack=BS;BT=function(c,d){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=BI();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e>0){$s=1;continue;}$s=2;continue;case 1:$r=AI(c,3,d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=CI(c,d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};BX=function(c){var $ptr,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=BT(-19,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:BX};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Error=BX;BZ=function(c){var $ptr,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=BT(-18,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C.Exit(1);$s=-1;return;}return;}if($f===undefined){$f={$blk:BZ};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=BZ;CD=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=F.Sprintf(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=new $String(e);$r=BT(-19,new CQ([f]));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:CD};}$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=CD;CI=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$r=AF.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AF,"Unlock"),[]]);e=AB;if(e===(-1)){$s=3;continue;}if(e===(0)){$s=4;continue;}$s=5;continue;case 3:f=new CV(["[-]","[!]","[X]","[Q]","[+]",""]);g=c- -20>>0;if(g<0||g>4){$panic(new $String("index out of range "+I.Itoa(g)));}h=F.Fprint(Q,new CQ([new $String(((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g])),new $String(" ")]));$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=5;continue;case 4:case 5:case 2:i=d;j=0;case 7:if(!(j<i.$length)){$s=8;continue;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);m=F.Fprint(Q,new CQ([l]));$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;if(!((k===(d.$length-1>>0)))){$s=10;continue;}$s=11;continue;case 10:n=F.Fprint(Q,new CQ([new $String(" ")]));$s=12;case 12:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;case 11:j++;$s=7;continue;case 8:o=F.Fprint(Q,new CQ([new $String("\n")]));$s=13;case 13:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:CI};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$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=C.$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=O.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$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=J.$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;}$r=L.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=$ifaceNil;R=$ifaceNil;AF=new J.RWMutex.ptr(new J.Mutex.ptr(0,0),0,0,0,0);$pkg.NamePadding=40;$pkg.LinePadding=3;$pkg.StaticMsg="";AB=1;AC=false;AD=false;AE=true;b=G.Compile(".*/");$s=17;case 17:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;AG=a[0];S();$r=AH();$s=18;case 18: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["net/url"]=(function(){var $pkg={},$init,A,B,C,D,E,F,AO,O,S,U;A=$packages["bytes"];B=$packages["errors"];C=$packages["fmt"];D=$packages["sort"];E=$packages["strconv"];F=$packages["strings"];AO=$sliceType($Uint8);O=function(a,b){var $ptr,a,b,c,d,e;if(65<=a&&a<=90||97<=a&&a<=122||48<=a&&a<=57){return false;}if((b===3)||(b===4)){c=a;if((c===(33))||(c===(36))||(c===(38))||(c===(39))||(c===(40))||(c===(41))||(c===(42))||(c===(43))||(c===(44))||(c===(59))||(c===(61))||(c===(58))||(c===(91))||(c===(93))||(c===(60))||(c===(62))||(c===(34))){return false;}}d=a;if((d===(45))||(d===(95))||(d===(46))||(d===(126))){return false;}else if((d===(36))||(d===(38))||(d===(43))||(d===(44))||(d===(47))||(d===(58))||(d===(59))||(d===(61))||(d===(63))||(d===(64))){e=b;if(e===(1)){return a===63;}else if(e===(2)){return(a===47)||(a===59)||(a===44)||(a===63);}else if(e===(5)){return(a===64)||(a===47)||(a===63)||(a===58);}else if(e===(6)){return true;}else if(e===(7)){return false;}}return true;};S=function(a){var $ptr,a;return U(a,6);};$pkg.QueryEscape=S;U=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=0;d=0;e=c;f=d;g=0;while(true){if(!(g<a.length)){break;}h=a.charCodeAt(g);if(O(h,b)){if((h===32)&&(b===6)){e=e+(1)>>0;}else{f=f+(1)>>0;}}g=g+(1)>>0;}if((e===0)&&(f===0)){return a;}i=$makeSlice(AO,(a.length+($imul(2,f))>>0));j=0;k=0;while(true){if(!(k<a.length)){break;}l=a.charCodeAt(k);if((l===32)&&(b===6)){((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]=43);j=j+(1)>>0;}else if(O(l,b)){((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]=37);(m=j+1>>0,((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]="0123456789ABCDEF".charCodeAt((l>>>4<<24>>>24))));(n=j+2>>0,((n<0||n>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+n]="0123456789ABCDEF".charCodeAt(((l&15)>>>0))));j=j+(3)>>0;}else{((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]=a.charCodeAt(k));j=j+(1)>>0;}k=k+(1)>>0;}return $bytesToString(i);};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["text/template/parse"]=(function(){var $pkg={},$init,E,A,G,F,B,C,D;E=$packages["bytes"];A=$packages["fmt"];G=$packages["runtime"];F=$packages["strconv"];B=$packages["strings"];C=$packages["unicode"];D=$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=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=F.$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=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$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["text/template"]=(function(){var $pkg={},$init,A,I,B,C,M,J,N,D,E,F,G,O,H,K,L,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DN,Z,AA,AB,AN,AO,BD,BE,BF,BO,BP,BQ,BR,BS,BW,BX,BY,BZ,CA,CB,CC,a,b,c,d,X,AC,AD,AE,AF,AP,AQ,AS,AT,AV,AW,AX,AY,AZ,BA,BB,BC,BH,BI,BJ,BK,BL,BM,BN,BT,BU,BV,CD,CE,CF,CG,CH,CI;A=$packages["bytes"];I=$packages["errors"];B=$packages["fmt"];C=$packages["io"];M=$packages["io/ioutil"];J=$packages["net/url"];N=$packages["path/filepath"];D=$packages["reflect"];E=$packages["runtime"];F=$packages["sort"];G=$packages["strings"];O=$packages["sync"];H=$packages["text/template/parse"];K=$packages["unicode"];L=$packages["unicode/utf8"];CT=$ptrType(D.rtype);CU=$ptrType($error);CV=$ptrType(B.Stringer);CW=$ptrType(D.Value);CX=$sliceType($Uint8);CY=$sliceType(D.Value);CZ=$funcType([D.Value,CY],[D.Value],true);DA=$funcType([D.Value,CY],[D.Value,$error],true);DB=$sliceType($emptyInterface);DC=$funcType([DB],[$String],true);DD=$funcType([$emptyInterface],[$Int,$error],false);DE=$funcType([D.Value],[$Bool],false);DF=$funcType([$String,DB],[$String],true);DG=$funcType([D.Value,CY],[$Bool,$error],true);DH=$funcType([D.Value,D.Value],[$Bool,$error],false);DN=$arrayType($Uint8,64);X=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o;f=false;g=false;if(!$clone(e,D.Value).IsValid()){h=false;i=true;f=h;g=i;return[f,g];}j=$clone(e,D.Value).Kind();if((j===(17))||(j===(21))||(j===(23))||(j===(24))){f=$clone(e,D.Value).Len()>0;}else if(j===(1)){f=$clone(e,D.Value).Bool();}else if((j===(15))||(j===(16))){f=!((k=$clone(e,D.Value).Complex(),(k.$real===0&&k.$imag===0)));}else if((j===(18))||(j===(19))||(j===(22))||(j===(20))){f=!$clone(e,D.Value).IsNil();}else if((j===(2))||(j===(3))||(j===(4))||(j===(5))||(j===(6))){f=!((l=$clone(e,D.Value).Int(),(l.$high===0&&l.$low===0)));}else if((j===(13))||(j===(14))){f=!(($clone(e,D.Value).Float()===0));}else if((j===(7))||(j===(8))||(j===(9))||(j===(10))||(j===(11))||(j===(12))){f=!((m=$clone(e,D.Value).Uint(),(m.$high===0&&m.$low===0)));}else if(j===(25)){f=true;}else{return[f,g];}n=f;o=true;f=n;g=o;return[f,g];};AC=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=e.Kind();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if((g===(18))||(g===(19))||(g===(20))||(g===(21))||(g===(22))||(g===(23))){$s=-1;return true;}else if(g===(25)){$s=-1;return $interfaceIsEqual(e,AB);}case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AD=function(e){var $ptr,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=new D.Value.ptr(CT.nil,0,0);g=false;case 1:if(!(($clone(e,D.Value).Kind()===22)||($clone(e,D.Value).Kind()===20))){$s=2;continue;}if($clone(e,D.Value).IsNil()){h=e;i=true;f=h;g=i;$s=-1;return[f,g];}j=$clone(e,D.Value).Elem();$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}e=j;$s=1;continue;case 2:k=e;l=false;f=k;g=l;$s=-1;return[f,g];}return;}if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AE=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(($clone(e,D.Value).Kind()===20))){$s=-1;return e;}if($clone(e,D.Value).IsNil()){$s=-1;return new D.Value.ptr(CT.nil,0,0);}f=$clone(e,D.Value).Elem();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AF=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(e,D.Value).Kind()===22){$s=1;continue;}$s=2;continue;case 1:g=AD($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;e=f[0];case 2:if(!$clone(e,D.Value).IsValid()){$s=-1;return[new $String("<no value>"),true];}i=$clone(e,D.Value).Type().Implements(Z);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!(!i)){h=false;$s=6;continue s;}j=$clone(e,D.Value).Type().Implements(AA);$s=8;case 8:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}h=!j;case 6:if(h){$s=4;continue;}$s=5;continue;case 4:if(!($clone(e,D.Value).CanAddr())){k=false;$s=12;continue s;}m=D.PtrTo($clone(e,D.Value).Type()).Implements(Z);$s=14;case 14:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(m){l=true;$s=13;continue s;}n=D.PtrTo($clone(e,D.Value).Type()).Implements(AA);$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;case 13:k=l;case 12:if(k){$s=9;continue;}$s=10;continue;case 9:e=$clone(e,D.Value).Addr();$s=11;continue;case 10:o=$clone(e,D.Value).Kind();if((o===(18))||(o===(19))){$s=-1;return[$ifaceNil,false];}case 11:case 5:p=$clone(e,D.Value).Interface();$s=16;case 16:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[p,true];}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AP=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f={};$r=AQ(f,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AQ=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=f;h=0;i=$keys(g);case 1:if(!(h<i.length)){$s=2;continue;}j=g[i[h]];if(j===undefined){h++;$s=1;continue;}k=j.k;l=j.v;if(!AT(k)){$s=3;continue;}$s=4;continue;case 3:m=B.Errorf("function name %s is not a valid identifier",new DB([new $String(k)]));$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$panic(m);case 4:n=D.ValueOf(l);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(!(($clone(o,D.Value).Kind()===19))){$panic(new $String("value for "+k+" not a function"));}p=AS($clone(o,D.Value).Type());$s=9;case 9:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(!p){$s=7;continue;}$s=8;continue;case 7:q=new $String(k);r=$clone(o,D.Value).Type().NumOut();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new $Int(r);t=B.Errorf("can't install method/function %q with %d results",new DB([q,s]));$s=11;case 11:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$panic(t);case 8:u=k;(e||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(u)]={k:u,v:$clone(o,D.Value)};h++;$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};AS=function(e){var $ptr,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=e.NumOut();$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if((f===1)){$s=2;continue;}h=e.NumOut();$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!(h===2)){g=false;$s=6;continue s;}i=e.Out(1);$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=$interfaceIsEqual(i,Z);case 6:if(g){$s=3;continue;}$s=4;continue;case 2:$s=-1;return true;case 3:$s=-1;return true;case 4:case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AT=function(e){var $ptr,e,f,g,h,i,j;if(e===""){return false;}f=e;g=0;while(true){if(!(g<f.length)){break;}h=$decodeRune(f,g);i=g;j=h[0];if((j===95)){}else if((i===0)&&!K.IsLetter(j)){return false;}else if(!K.IsLetter(j)&&!K.IsDigit(j)){return false;}g+=h[1];}return true;};AV=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!$clone(e,D.Value).IsValid()){$s=1;continue;}$s=2;continue;case 1:g=AC(f);$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!g){$s=3;continue;}$s=4;continue;case 3:h=B.Errorf("value is nil; should be of type %s",new DB([f]));$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),h];case 4:i=D.Zero(f);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}e=i;case 2:j=$clone(e,D.Value).Type().AssignableTo(f);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(!j){$s=8;continue;}$s=9;continue;case 8:k=B.Errorf("value has type %s; should be %s",new DB([$clone(e,D.Value).Type(),f]));$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),k];case 9:$s=-1;return[e,$ifaceNil];}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AW=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!$clone(h,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:i=B.Errorf("index of untyped nil",new DB([]));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),i];case 3:j=f;k=0;case 5:if(!(k<j.$length)){$s=6;continue;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);m=AE($clone(l,D.Value));$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=false;q=AD($clone(h,D.Value));$s=8;case 8:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;h=p[0];o=p[1];if(o){$s=9;continue;}$s=10;continue;case 9:r=B.Errorf("index of nil pointer",new DB([]));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),r];case 10:s=$clone(h,D.Value).Kind();if((s===(17))||(s===(23))||(s===(24))){$s=13;continue;}if(s===(21)){$s=14;continue;}if(s===(0)){$s=15;continue;}$s=16;continue;case 13:t=new $Int64(0,0);u=$clone(n,D.Value).Kind();if((u===(2))||(u===(3))||(u===(4))||(u===(5))||(u===(6))){$s=19;continue;}if((u===(7))||(u===(8))||(u===(9))||(u===(10))||(u===(11))||(u===(12))){$s=20;continue;}if(u===(0)){$s=21;continue;}$s=22;continue;case 19:t=$clone(n,D.Value).Int();$s=23;continue;case 20:t=(v=$clone(n,D.Value).Uint(),new $Int64(v.$high,v.$low));$s=23;continue;case 21:w=B.Errorf("cannot index slice/array with nil",new DB([]));$s=24;case 24:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),w];case 22:x=B.Errorf("cannot index slice/array with type %s",new DB([$clone(n,D.Value).Type()]));$s=25;case 25:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),x];case 23:case 18:if((t.$high<0||(t.$high===0&&t.$low<0))||(y=new $Int64(0,$clone(h,D.Value).Len()),(t.$high>y.$high||(t.$high===y.$high&&t.$low>=y.$low)))){$s=26;continue;}$s=27;continue;case 26:z=B.Errorf("index out of range: %d",new DB([t]));$s=28;case 28:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),z];case 27:aa=$clone(h,D.Value).Index(((t.$low+((t.$high>>31)*4294967296))>>0));$s=29;case 29:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}h=aa;$s=17;continue;case 14:ac=$clone(n,D.Value);ad=$clone(h,D.Value).Type().Key();$s=30;case 30:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;af=AV(ac,ae);$s=31;case 31:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ab=af;ag=ab[0];ah=ab[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new D.Value.ptr(CT.nil,0,0),ah];}ai=$clone(h,D.Value).MapIndex($clone(ag,D.Value));$s=32;case 32:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if($clone(aj,D.Value).IsValid()){$s=33;continue;}$s=34;continue;case 33:h=aj;$s=35;continue;case 34:ak=$clone(h,D.Value).Type().Elem();$s=36;case 36:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=D.Zero(ak);$s=37;case 37:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}h=al;case 35:$s=17;continue;case 15:$panic(new $String("unreachable"));$s=17;continue;case 16:am=B.Errorf("can't index item of type %s",new DB([$clone(h,D.Value).Type()]));$s=38;case 38:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),am];case 17:case 12:k++;$s=5;continue;case 6:$s=-1;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AX=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=D.ValueOf(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!$clone(g,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:h=B.Errorf("len of untyped nil",new DB([]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return[0,h];case 3:j=AD($clone(g,D.Value));$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;g=i[0];k=i[1];if(k){$s=6;continue;}$s=7;continue;case 6:l=B.Errorf("len of nil pointer",new DB([]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return[0,l];case 7:m=$clone(g,D.Value).Kind();if((m===(17))||(m===(18))||(m===(21))||(m===(23))||(m===(24))){$s=-1;return[$clone(g,D.Value).Len(),$ifaceNil];}n=B.Errorf("len of type %s",new DB([$clone(g,D.Value).Type()]));$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return[0,n];}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};AY=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!$clone(h,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:i=B.Errorf("call of nil",new DB([]));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),i];case 3:j=$clone(h,D.Value).Type();k=j.Kind();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!((k===19))){$s=5;continue;}$s=6;continue;case 5:l=B.Errorf("non-function of type %s",new DB([j]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),l];case 6:m=AS(j);$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!m){$s=9;continue;}$s=10;continue;case 9:n=j.NumOut();$s=12;case 12:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new $Int(n);p=B.Errorf("function called with %d args; should be 1 or 2",new DB([o]));$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),p];case 10:q=j.NumIn();$s=14;case 14:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=$ifaceNil;t=j.IsVariadic();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}if(t){$s=15;continue;}$s=16;continue;case 15:if(f.$length<(r-1>>0)){$s=19;continue;}$s=20;continue;case 19:u=B.Errorf("wrong number of args: got %d want at least %d",new DB([new $Int(f.$length),new $Int((r-1>>0))]));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),u];case 20:v=j.In(r-1>>0);$s=22;case 22:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v.Elem();$s=23;case 23:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}s=w;$s=17;continue;case 16:if(!((f.$length===r))){$s=24;continue;}$s=25;continue;case 24:x=B.Errorf("wrong number of args: got %d want %d",new DB([new $Int(f.$length),new $Int(r)]));$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),x];case 25:case 17:y=$makeSlice(CY,f.$length);z=f;aa=0;case 27:if(!(aa<z.$length)){$s=28;continue;}ab=aa;ac=((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]);ad=AE($clone(ac,D.Value));$s=29;case 29:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;af=$ifaceNil;ag=j.IsVariadic();$s=33;case 33:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}if(!ag||ab<(r-1>>0)){$s=30;continue;}$s=31;continue;case 30:ah=j.In(ab);$s=34;case 34:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}af=ah;$s=32;continue;case 31:af=s;case 32:ai=$ifaceNil;ak=AV($clone(ae,D.Value),af);$s=35;case 35:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;((ab<0||ab>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+ab]=aj[0]);ai=aj[1];if(!($interfaceIsEqual(ai,$ifaceNil))){$s=36;continue;}$s=37;continue;case 36:al=B.Errorf("arg %d: %s",new DB([new $Int(ab),ai]));$s=38;case 38:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),al];case 37:aa++;$s=27;continue;case 28:am=$clone(h,D.Value).Call(y);$s=39;case 39:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if((an.$length===2)&&!$clone((1>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+1]),D.Value).IsNil()){$s=40;continue;}$s=41;continue;case 40:ao=$clone((1>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+1]),D.Value).Interface();$s=42;case 42:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return[(0>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+0]),$assertType(ao,$error)];case 41:$s=-1;return[(0>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+0]),$ifaceNil];}return;}if($f===undefined){$f={$blk:AY};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AZ=function(e){var $ptr,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=X($clone(g,D.Value));$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;i=f[0];$s=-1;return i;}return;}if($f===undefined){$f={$blk:AZ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BA=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AZ($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!g){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:h=f;i=0;case 4:if(!(i<h.$length)){$s=5;continue;}j=i;e=((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]);k=AZ($clone(e,D.Value));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!k){$s=6;continue;}$s=7;continue;case 6:$s=5;continue;case 7:i++;$s=4;continue;case 5:$s=-1;return e;}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BB=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AZ($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:h=f;i=0;case 4:if(!(i<h.$length)){$s=5;continue;}j=i;e=((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]);k=AZ($clone(e,D.Value));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k){$s=6;continue;}$s=7;continue;case 6:$s=5;continue;case 7:i++;$s=4;continue;case 5:$s=-1;return e;}return;}if($f===undefined){$f={$blk:BB};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BC=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=AZ($clone(e,D.Value));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return!f;}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};BH=function(e){var $ptr,e,f;f=$clone(e,D.Value).Kind();if(f===(1)){return[1,$ifaceNil];}else if((f===(2))||(f===(3))||(f===(4))||(f===(5))||(f===(6))){return[3,$ifaceNil];}else if((f===(7))||(f===(8))||(f===(9))||(f===(10))||(f===(11))||(f===(12))){return[6,$ifaceNil];}else if((f===(13))||(f===(14))){return[4,$ifaceNil];}else if((f===(15))||(f===(16))){return[2,$ifaceNil];}else if(f===(24)){return[5,$ifaceNil];}return[0,BD];};BI=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=BH($clone(h,D.Value));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}if(f.$length===0){$s=-1;return[false,BF];}l=f;m=0;case 2:if(!(m<l.$length)){$s=3;continue;}n=((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]);o=AE($clone(n,D.Value));$s=4;case 4:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=BH($clone(p,D.Value));r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[false,s];}t=false;if(!((j===r))){$s=5;continue;}$s=6;continue;case 5:if((j===3)&&(r===6)){t=(u=$clone(h,D.Value).Int(),(u.$high>0||(u.$high===0&&u.$low>=0)))&&(v=(w=$clone(h,D.Value).Int(),new $Uint64(w.$high,w.$low)),x=$clone(p,D.Value).Uint(),(v.$high===x.$high&&v.$low===x.$low));}else if((j===6)&&(r===3)){t=(y=$clone(p,D.Value).Int(),(y.$high>0||(y.$high===0&&y.$low>=0)))&&(z=$clone(h,D.Value).Uint(),aa=(ab=$clone(p,D.Value).Int(),new $Uint64(ab.$high,ab.$low)),(z.$high===aa.$high&&z.$low===aa.$low));}else{$s=-1;return[false,BE];}$s=7;continue;case 6:ac=j;if(ac===(1)){$s=9;continue;}if(ac===(2)){$s=10;continue;}if(ac===(4)){$s=11;continue;}if(ac===(3)){$s=12;continue;}if(ac===(5)){$s=13;continue;}if(ac===(6)){$s=14;continue;}$s=15;continue;case 9:t=$clone(h,D.Value).Bool()===$clone(p,D.Value).Bool();$s=16;continue;case 10:t=(ad=$clone(h,D.Value).Complex(),ae=$clone(p,D.Value).Complex(),(ad.$real===ae.$real&&ad.$imag===ae.$imag));$s=16;continue;case 11:t=$clone(h,D.Value).Float()===$clone(p,D.Value).Float();$s=16;continue;case 12:t=(af=$clone(h,D.Value).Int(),ag=$clone(p,D.Value).Int(),(af.$high===ag.$high&&af.$low===ag.$low));$s=16;continue;case 13:ah=$clone(h,D.Value).String();$s=17;case 17:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(p,D.Value).String();$s=18;case 18:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}t=ah===ai;$s=16;continue;case 14:t=(aj=$clone(h,D.Value).Uint(),ak=$clone(p,D.Value).Uint(),(aj.$high===ak.$high&&aj.$low===ak.$low));$s=16;continue;case 15:$panic(new $String("invalid kind"));case 16:case 8:case 7:if(t){$s=-1;return[true,$ifaceNil];}m++;$s=2;continue;case 3:$s=-1;return[false,$ifaceNil];}return;}if($f===undefined){$f={$blk:BI};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BJ=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BI($clone(e,D.Value),new CY([$clone(f,D.Value)]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];$s=-1;return[!i,j];}return;}if($f===undefined){$f={$blk:BJ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BK=function(e,f){var $ptr,aa,ab,ac,ad,ae,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=BH($clone(h,D.Value));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}l=AE($clone(f,D.Value));$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=BH($clone(m,D.Value));o=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}p=false;if(!((j===o))){$s=3;continue;}$s=4;continue;case 3:if((j===3)&&(o===6)){p=(q=$clone(h,D.Value).Int(),(q.$high<0||(q.$high===0&&q.$low<0)))||(r=(s=$clone(h,D.Value).Int(),new $Uint64(s.$high,s.$low)),t=$clone(m,D.Value).Uint(),(r.$high<t.$high||(r.$high===t.$high&&r.$low<t.$low)));}else if((j===6)&&(o===3)){p=(u=$clone(m,D.Value).Int(),(u.$high>0||(u.$high===0&&u.$low>=0)))&&(v=$clone(h,D.Value).Uint(),w=(x=$clone(m,D.Value).Int(),new $Uint64(x.$high,x.$low)),(v.$high<w.$high||(v.$high===w.$high&&v.$low<w.$low)));}else{$s=-1;return[false,BE];}$s=5;continue;case 4:y=j;if((y===(1))||(y===(2))){$s=7;continue;}if(y===(4)){$s=8;continue;}if(y===(3)){$s=9;continue;}if(y===(5)){$s=10;continue;}if(y===(6)){$s=11;continue;}$s=12;continue;case 7:$s=-1;return[false,BD];case 8:p=$clone(h,D.Value).Float()<$clone(m,D.Value).Float();$s=13;continue;case 9:p=(z=$clone(h,D.Value).Int(),aa=$clone(m,D.Value).Int(),(z.$high<aa.$high||(z.$high===aa.$high&&z.$low<aa.$low)));$s=13;continue;case 10:ab=$clone(h,D.Value).String();$s=14;case 14:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=$clone(m,D.Value).String();$s=15;case 15:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}p=ab<ac;$s=13;continue;case 11:p=(ad=$clone(h,D.Value).Uint(),ae=$clone(m,D.Value).Uint(),(ad.$high<ae.$high||(ad.$high===ae.$high&&ad.$low<ae.$low)));$s=13;continue;case 12:$panic(new $String("invalid kind"));case 13:case 6:case 5:$s=-1;return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BK};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BL=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BK($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(i||!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[i,j];}k=BI($clone(e,D.Value),new CY([$clone(f,D.Value)]));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:BL};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BM=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BL($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[false,j];}$s=-1;return[!i,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BN=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BK($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[false,j];}$s=-1;return[!i,$ifaceNil];}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BT=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=0;h=f;i=0;case 1:if(!(i<h.$length)){$s=2;continue;}j=i;k=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);l=CX.nil;m=k;if(m===(34)){l=BO;}else if(m===(39)){l=BP;}else if(m===(38)){l=BQ;}else if(m===(60)){l=BR;}else if(m===(62)){l=BS;}else{i++;$s=1;continue;}case 3:n=e.Write($subslice(f,g,j));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;o=e.Write(l);$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;g=j+1>>0;i++;$s=1;continue;case 2:p=e.Write($subslice(f,g));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscape=BT;BU=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=[f];if(!G.ContainsAny(e,"'\"&<>")){$s=-1;return e;}f[0]=new A.Buffer.ptr(CX.nil,0,DN.zero(),0);$r=BT(f[0],new CX($stringToBytes(e)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f[0].String();}return;}if($f===undefined){$f={$blk:BU};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscapeString=BU;BV=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=BU(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscaper=BV;CD=function(e,f){var $ptr,aa,ab,ac,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=0;h=0;case 1:if(!(h<f.$length)){$s=2;continue;}i=((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]);if(!CF((i>>0))){$s=3;continue;}$s=4;continue;case 3:h=h+(1)>>0;$s=1;continue;case 4:j=e.Write($subslice(f,g,h));$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(i<128){$s=6;continue;}$s=7;continue;case 6:k=i;if(k===(92)){$s=10;continue;}if(k===(39)){$s=11;continue;}if(k===(34)){$s=12;continue;}if(k===(60)){$s=13;continue;}if(k===(62)){$s=14;continue;}$s=15;continue;case 10:l=e.Write(BY);$s=17;case 17:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;$s=16;continue;case 11:m=e.Write(BZ);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;$s=16;continue;case 12:n=e.Write(CA);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=16;continue;case 13:o=e.Write(CB);$s=20;case 20:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=16;continue;case 14:p=e.Write(CC);$s=21;case 21:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=16;continue;case 15:q=e.Write(BW);$s=22;case 22:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;r=i>>>4<<24>>>24;s=(i&15)>>>0;t=r;u=s;v=e.Write($subslice(BX,t,(t+1<<24>>>24)));$s=23;case 23:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;w=e.Write($subslice(BX,u,(u+1<<24>>>24)));$s=24;case 24:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;case 16:case 9:$s=8;continue;case 7:x=L.DecodeRune($subslice(f,h));y=x[0];z=x[1];if(K.IsPrint(y)){$s=25;continue;}$s=26;continue;case 25:aa=e.Write($subslice(f,h,(h+z>>0)));$s=28;case 28:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;$s=27;continue;case 26:ab=B.Fprintf(e,"\\u%04X",new DB([new $Int32(y)]));$s=29;case 29:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;case 27:h=h+((z-1>>0))>>0;case 8:g=h+1>>0;h=h+(1)>>0;$s=1;continue;case 2:ac=e.Write($subslice(f,g));$s=30;case 30:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;$s=-1;return;}return;}if($f===undefined){$f={$blk:CD};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscape=CD;CE=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=[f];g=G.IndexFunc(e,CF);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g<0){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:f[0]=new A.Buffer.ptr(CX.nil,0,DN.zero(),0);$r=CD(f[0],new CX($stringToBytes(e)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f[0].String();}return;}if($f===undefined){$f={$blk:CE};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscapeString=CE;CF=function(e){var $ptr,e,f;f=e;if((f===(92))||(f===(39))||(f===(34))||(f===(60))||(f===(62))){return true;}return e<32||128<=e;};CG=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=CE(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:CG};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscaper=CG;CH=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=J.QueryEscape(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:CH};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.URLQueryEscaper=CH;CI=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=false;g="";if(e.$length===1){h=$assertType((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),$String,true);g=h[0];f=h[1];}if(!f){$s=1;continue;}$s=2;continue;case 1:i=e;j=0;case 3:if(!(j<i.$length)){$s=4;continue;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);n=D.ValueOf(l);$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=AF($clone(n,D.Value));$s=6;case 6:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}m=o;p=m[0];q=m[1];if(q){((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]=p);}j++;$s=3;continue;case 4:r=B.Sprint(e);$s=7;case 7:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}g=r;case 2:$s=-1;return g;}return;}if($f===undefined){$f={$blk:CI};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=D.TypeOf(CU.nil).Elem();$s=16;case 16:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}Z=a;b=D.TypeOf(CV.nil).Elem();$s=17;case 17:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AA=b;c=D.TypeOf(CW.nil).Elem();$s=18;case 18:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}AB=c;BD=I.New("invalid type for comparison");BE=I.New("incompatible types for comparison");BF=I.New("missing argument for comparison");BO=new CX($stringToBytes("&#34;"));BP=new CX($stringToBytes("&#39;"));BQ=new CX($stringToBytes("&amp;"));BR=new CX($stringToBytes("&lt;"));BS=new CX($stringToBytes("&gt;"));BW=new CX($stringToBytes("\\u00"));BX=new CX($stringToBytes("0123456789ABCDEF"));BY=new CX($stringToBytes("\\\\"));BZ=new CX($stringToBytes("\\'"));CA=new CX($stringToBytes("\\\""));CB=new CX($stringToBytes("\\x3C"));CC=new CX($stringToBytes("\\x3E"));AN=$makeMap($String.keyFor,[{k:"and",v:new CZ(BA)},{k:"call",v:new DA(AY)},{k:"html",v:new DC(BV)},{k:"index",v:new DA(AW)},{k:"js",v:new DC(CG)},{k:"len",v:new DD(AX)},{k:"not",v:new DE(BC)},{k:"or",v:new CZ(BB)},{k:"print",v:new DC(B.Sprint)},{k:"printf",v:new DF(B.Sprintf)},{k:"println",v:new DC(B.Sprintln)},{k:"urlquery",v:new DC(CH)},{k:"eq",v:new DG(BI)},{k:"ge",v:new DH(BN)},{k:"gt",v:new DH(BM)},{k:"le",v:new DH(BL)},{k:"lt",v:new DH(BK)},{k:"ne",v:new DH(BJ)}]);d=AP(AN);$s=19;case 19:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}AO=d;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/dedis/protobuf"]=(function(){var $pkg={},$init,H,A,B,C,D,L,E,F,M,N,I,J,K,O,G,P,Q,X,Y,Z,AA,AC,AH,AJ,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CG,CH,CI,T,U,V,W,AE,AF,AG,AK,AL,AO,a,b,R,S,AD,AI,AM,AN;H=$packages["bytes"];A=$packages["encoding"];B=$packages["encoding/binary"];C=$packages["errors"];D=$packages["fmt"];L=$packages["io"];E=$packages["math"];F=$packages["reflect"];M=$packages["regexp"];N=$packages["sort"];I=$packages["strconv"];J=$packages["strings"];K=$packages["sync"];O=$packages["text/template"];G=$packages["time"];P=$pkg.Constructors=$newType(4,$kindMap,"protobuf.Constructors",true,"github.com/dedis/protobuf",true,null);Q=$pkg.decoder=$newType(0,$kindStruct,"protobuf.decoder",true,"github.com/dedis/protobuf",false,function(nm_){this.$val=this;if(arguments.length===0){this.nm=false;return;}this.nm=nm_;});X=$pkg.Ufixed32=$newType(4,$kindUint32,"protobuf.Ufixed32",true,"github.com/dedis/protobuf",true,null);Y=$pkg.Ufixed64=$newType(8,$kindUint64,"protobuf.Ufixed64",true,"github.com/dedis/protobuf",true,null);Z=$pkg.Sfixed32=$newType(4,$kindInt32,"protobuf.Sfixed32",true,"github.com/dedis/protobuf",true,null);AA=$pkg.Sfixed64=$newType(8,$kindInt64,"protobuf.Sfixed64",true,"github.com/dedis/protobuf",true,null);AC=$pkg.encoder=$newType(0,$kindStruct,"protobuf.encoder",true,"github.com/dedis/protobuf",false,function(Buffer_){this.$val=this;if(arguments.length===0){this.Buffer=new H.Buffer.ptr(BD.nil,0,BK.zero(),0);return;}this.Buffer=Buffer_;});AH=$pkg.TagPrefix=$newType(4,$kindInt,"protobuf.TagPrefix",true,"github.com/dedis/protobuf",true,null);AJ=$pkg.ProtoField=$newType(0,$kindStruct,"protobuf.ProtoField",true,"github.com/dedis/protobuf",true,function(ID_,Prefix_,Name_,Index_,Field_){this.$val=this;if(arguments.length===0){this.ID=new $Int64(0,0);this.Prefix=0;this.Name="";this.Index=BH.nil;this.Field=new F.StructField.ptr("","",$ifaceNil,"",0,BH.nil,false);return;}this.ID=ID_;this.Prefix=Prefix_;this.Name=Name_;this.Index=Index_;this.Field=Field_;});BC=$ptrType(G.Location);BD=$sliceType($Uint8);BE=$funcType([],[$emptyInterface],false);BF=$sliceType($emptyInterface);BG=$ptrType(F.rtype);BH=$sliceType($Int);BI=$ptrType(AJ);BJ=$sliceType(F.Value);BK=$arrayType($Uint8,64);BL=$sliceType($Bool);BM=$sliceType($Int32);BN=$sliceType($Int64);BO=$sliceType($Uint32);BP=$sliceType($Uint64);BQ=$sliceType(Z);BR=$sliceType(AA);BS=$sliceType(X);BT=$sliceType(Y);BU=$sliceType($Float32);BV=$sliceType($Float64);BW=$sliceType($String);BX=$arrayType($Uint8,10);BY=$arrayType($Uint8,4);BZ=$arrayType($Uint8,8);CA=$sliceType(BI);CB=$ptrType($Int);CC=$structType("",[]);CG=$ptrType(P);CH=$ptrType(Q);CI=$ptrType(AC);$ptrType(P).prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d="";e=c.$get();f=0;g=$keys(e);case 1:if(!(f<g.length)){$s=2;continue;}h=e[g[f]];if(h===undefined){f++;$s=1;continue;}i=h.k;j=h.v;k=i.String();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=D.Sprintf("%+v",new BF([new BE(j)]));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}d=d+(k+"=>"+l+"\t");f++;$s=1;continue;case 2:$s=-1;return d;}return;}if($f===undefined){$f={$blk:$ptrType(P).prototype.String};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};R=function(c,d){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=S(c,d,false);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Decode=R;S=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(d,$ifaceNil)){$s=-1;return $ifaceNil;}f=new Q.ptr(e);g=F.ValueOf(d);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!(($clone(h,F.Value).Kind()===22))){$s=-1;return C.New("Decode has been given a non pointer type");}i=c;j=$clone(h,F.Value).Elem();$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone(j,F.Value);l=f.message(i,k);$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeWithConstructors=S;Q.ptr.prototype.message=function(c,d){var $ptr,aa,ab,ac,ad,ae,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=AM($clone(d,F.Value).Type());$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=0;case 2:if(!(c.$length>0)){$s=3;continue;}i=B.Uvarint(c);j=i[0];k=i[1];if(k<=0){$s=-1;return C.New("bad protobuf field key");}c=$subslice(c,k);l=(new $Uint64(j.$high&0,(j.$low&7)>>>0).$low>>0);m=$shiftRightUint64(j,3);n=new F.Value.ptr(BG.nil,0,0);while(true){if(!(h<g.$length&&(o=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).ID,p=new $Int64(m.$high,m.$low),(o.$high<p.$high||(o.$high===p.$high&&o.$low<p.$low))))){break;}h=h+(1)>>0;}if(h<g.$length&&(q=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).ID,r=new $Int64(m.$high,m.$low),(q.$high===r.$high&&q.$low===r.$low))){$s=4;continue;}$s=5;continue;case 4:s=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).Index;t=$makeSlice(BH,0,s.$length);u=s;v=0;case 6:if(!(v<u.$length)){$s=7;continue;}w=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);t=$append(t,w);x=$clone(d,F.Value).FieldByIndex(t);$s=8;case 8:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}n=x;if(($clone(n,F.Value).Kind()===22)&&$clone(n,F.Value).IsNil()){$s=9;continue;}$s=10;continue;case 9:y=$clone(n,F.Value).Type().Elem();$s=11;case 11:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=F.New(y);$s=12;case 12:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=$clone(n,F.Value).Set($clone(z,F.Value));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:v++;$s=6;continue;case 7:case 5:ab=e.value(l,c,$clone(n,F.Value));$s=14;case 14:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;ac=aa[0];ad=aa[1];if(!($interfaceIsEqual(ad,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:if(h<g.$length&&!(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])===BI.nil)){$s=17;continue;}$s=18;continue;case 17:ae=D.Errorf("Error while decding FieldName %s: %v",new BF([new $String(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).Name),ad]));$s=20;case 20:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return ae;case 18:$s=-1;return ad;case 19:case 16:c=ac;$s=2;continue;case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.message};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.message=function(c,d){return this.$val.message(c,d);};Q.ptr.prototype.value=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;g=new $Uint64(0,0);h=0;i=BD.nil;j=c;if(j===(0)){k=B.Uvarint(d);g=k[0];h=k[1];if(h<=0){$s=-1;return[BD.nil,C.New("bad protobuf varint value")];}d=$subslice(d,h);}else if(j===(5)){if(d.$length<4){$s=-1;return[BD.nil,C.New("bad protobuf 32-bit value")];}g=(l=(m=(n=new $Uint64(0,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),o=$shiftLeft64(new $Uint64(0,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])),8),new $Uint64(n.$high|o.$high,(n.$low|o.$low)>>>0)),p=$shiftLeft64(new $Uint64(0,(2>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+2])),16),new $Uint64(m.$high|p.$high,(m.$low|p.$low)>>>0)),q=$shiftLeft64(new $Uint64(0,(3>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+3])),24),new $Uint64(l.$high|q.$high,(l.$low|q.$low)>>>0));d=$subslice(d,4);}else if(j===(1)){if(d.$length<8){$s=-1;return[BD.nil,C.New("bad protobuf 64-bit value")];}g=(r=(s=(t=(u=(v=(w=(x=new $Uint64(0,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),y=$shiftLeft64(new $Uint64(0,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])),8),new $Uint64(x.$high|y.$high,(x.$low|y.$low)>>>0)),z=$shiftLeft64(new $Uint64(0,(2>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+2])),16),new $Uint64(w.$high|z.$high,(w.$low|z.$low)>>>0)),aa=$shiftLeft64(new $Uint64(0,(3>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+3])),24),new $Uint64(v.$high|aa.$high,(v.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(4>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+4])),32),new $Uint64(u.$high|ab.$high,(u.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(5>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+5])),40),new $Uint64(t.$high|ac.$high,(t.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(6>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+6])),48),new $Uint64(s.$high|ad.$high,(s.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(7>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+7])),56),new $Uint64(r.$high|ae.$high,(r.$low|ae.$low)>>>0));d=$subslice(d,8);}else if(j===(2)){af=B.Uvarint(d);g=af[0];h=af[1];if(h<=0||(ag=new $Uint64(0,(d.$length-h>>0)),(g.$high>ag.$high||(g.$high===ag.$high&&g.$low>ag.$low)))){$s=-1;return[BD.nil,C.New("bad protobuf length-delimited value")];}i=$subslice(d,h,(h+(g.$low>>0)>>0));d=$subslice(d,(h+(g.$low>>0)>>0));}else{$s=-1;return[BD.nil,C.New("unknown protobuf wire-type")];}ah=f.putvalue(c,$clone(e,F.Value),g,i);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(!($interfaceIsEqual(ai,$ifaceNil))){$s=-1;return[BD.nil,ai];}$s=-1;return[d,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.value=function(c,d,e){return this.$val.value(c,d,e);};Q.ptr.prototype.decodeSignedInt=function(c,d){var $ptr,c,d,e,f,g;e=this;if(c===0){f=$shiftRightInt64(new $Int64(d.$high,d.$low),1);if(!((g=new $Uint64(d.$high&0,(d.$low&1)>>>0),(g.$high===0&&g.$low===0)))){f=new $Int64(~f.$high,~f.$low>>>0);}return[f,$ifaceNil];}else if(c===5){return[new $Int64(0,(d.$low>>0)),$ifaceNil];}else if(c===1){return[new $Int64(d.$high,d.$low),$ifaceNil];}else{return[new $Int64(-1,4294967295),C.New("bad wiretype for sint")];}};Q.prototype.decodeSignedInt=function(c,d){return this.$val.decodeSignedInt(c,d);};Q.ptr.prototype.putvalue=function(c,d,e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;if(!$clone(d,F.Value).CanSet()){$s=-1;return $ifaceNil;}h=$clone(d,F.Value).Kind();if(h===(1)){$s=2;continue;}if((h===(2))||(h===(5))||(h===(6))){$s=3;continue;}if((h===(10))||(h===(11))){$s=4;continue;}if(h===(13)){$s=5;continue;}if(h===(14)){$s=6;continue;}if(h===(24)){$s=7;continue;}if(h===(25)){$s=8;continue;}if(h===(22)){$s=9;continue;}if((h===(23))||(h===(17))){$s=10;continue;}if(h===(21)){$s=11;continue;}if(h===(20)){$s=12;continue;}$s=13;continue;case 2:if(!((c===0))){$s=-1;return C.New("bad wiretype for bool");}if((e.$high>0||(e.$high===0&&e.$low>1))){$s=-1;return C.New("invalid bool value");}$clone(d,F.Value).SetBool(!((e.$high===0&&e.$low===0)));$s=14;continue;case 3:i=g.decodeSignedInt(c,e);j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:l=e;m=new $Int(c);n=$clone(d,F.Value).Type().Name();$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new $String(n);p=D.Println(new BF([new $String("Error Reflect.Int for v="),l,new $String("wiretype="),m,new $String("for Value="),o]));$s=18;case 18:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return k;case 16:$clone(d,F.Value).SetInt(j);$s=14;continue;case 4:if(c===0){$clone(d,F.Value).SetUint(e);}else if(c===5){$clone(d,F.Value).SetUint(new $Uint64(0,(e.$low>>>0)));}else if(c===1){$clone(d,F.Value).SetUint(e);}else{$s=-1;return C.New("bad wiretype for uint");}$s=14;continue;case 5:if(!((c===5))){$s=-1;return C.New("bad wiretype for float32");}$clone(d,F.Value).SetFloat(E.Float32frombits((e.$low>>>0)));$s=14;continue;case 6:if(!((c===1))){$s=-1;return C.New("bad wiretype for float64");}$clone(d,F.Value).SetFloat(E.Float64frombits(e));$s=14;continue;case 7:if(!((c===2))){$s=-1;return C.New("bad wiretype for string");}$clone(d,F.Value).SetString($bytesToString(f));$s=14;continue;case 8:if($interfaceIsEqual($clone(d,F.Value).Type(),AE)){$s=19;continue;}$s=20;continue;case 19:q=g.decodeSignedInt(c,e);r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return s;}t=$clone(G.Unix($div64(r,new $Int64(0,1000000000),false),$div64(r,new $Int64(0,1000000000),true)),G.Time);u=F.ValueOf(new t.constructor.elem(t));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(u,F.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;case 20:if(!((c===2))){$s=-1;return C.New("bad wiretype for embedded message");}v=g.message(f,$clone(d,F.Value));$s=23;case 23:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;case 9:if($clone(d,F.Value).IsNil()){$s=24;continue;}$s=25;continue;case 24:w=$clone(d,F.Value).Type().Elem();$s=26;case 26:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=g.instantiate(w);$s=27;case 27:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(x,F.Value));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 25:y=c;z=$clone(d,F.Value).Elem();$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=$clone(z,F.Value);ab=e;ac=f;ad=g.putvalue(y,aa,ab,ac);$s=30;case 30:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$s=-1;return ad;case 10:if(!((c===2))){$s=-1;return C.New("bad wiretype for repeated field");}ae=g.slice($clone(d,F.Value),f);$s=31;case 31:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return ae;case 11:if(!((c===2))){$s=-1;return C.New("bad wiretype for repeated field");}if($clone(d,F.Value).IsNil()){$s=32;continue;}$s=33;continue;case 32:af=F.MakeMap($clone(d,F.Value).Type());$s=34;case 34:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(af,F.Value));$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 33:ag=g.mapEntry($clone(d,F.Value),f);$s=36;case 36:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}$s=-1;return ag;case 12:if($clone(d,F.Value).IsNil()){$s=37;continue;}$s=38;continue;case 37:ah=g.instantiate($clone(d,F.Value).Type());$s=39;case 39:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(ah,F.Value));$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 38:aj=$clone(d,F.Value).Interface();$s=41;case 41:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=$assertType(aj,A.BinaryUnmarshaler,true);ak=ai[0];al=ai[1];if(al){$s=42;continue;}$s=43;continue;case 42:if(!((c===2))){$s=-1;return C.New("bad wiretype for bytes");}am=ak.UnmarshalBinary(f);$s=44;case 44:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=-1;return am;case 43:an=f;ao=$clone(d,F.Value).Interface();$s=45;case 45:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=ao;aq=R(an,ap);$s=46;case 46:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return aq;case 13:$panic(new $String("unsupported value kind "+new F.Kind($clone(d,F.Value).Kind()).String()));case 14:case 1:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.putvalue};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.putvalue=function(c,d,e,f){return this.$val.putvalue(c,d,e,f);};Q.ptr.prototype.instantiate=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=c.Kind();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e===20){$s=1;continue;}$s=2;continue;case 1:f=(g=d.nm[F.Type.keyFor(c)],g!==undefined?[g.v,true]:[$throwNilPointerError,false]);h=f[0];i=f[1];if(!i){$s=4;continue;}$s=5;continue;case 4:j=c.String();$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$panic(new $String("no constructor for interface "+j));case 5:k=h();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=F.ValueOf(k);$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return l;case 2:m=F.New(c);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=-1;return m;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.instantiate};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.instantiate=function(c){return this.$val.instantiate(c);};Q.ptr.prototype.slice=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(c,F.Value).Type().Elem();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=F.New(g);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=$clone(h,F.Value).Elem();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=0;l=g.Kind();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if((m===(1))||(m===(5))||(m===(6))||(m===(10))||(m===(11))){$s=6;continue;}if(m===(13)){$s=7;continue;}if(m===(14)){$s=8;continue;}if(m===(8)){$s=9;continue;}$s=10;continue;case 6:n=g;if($interfaceIsEqual(n,(T))){k=5;}else if($interfaceIsEqual(n,(U))){k=1;}else if($interfaceIsEqual(n,(V))){k=5;}else if($interfaceIsEqual(n,(W))){k=1;}else{k=0;}$s=11;continue;case 7:k=5;$s=11;continue;case 8:k=1;$s=11;continue;case 9:if($clone(c,F.Value).Kind()===17){$s=12;continue;}$s=13;continue;case 12:if(!(($clone(c,F.Value).Len()===d.$length))){$panic(new $String("Array length != buffer length"));}o=0;case 15:if(!(o<$clone(c,F.Value).Len())){$s=16;continue;}p=$clone(c,F.Value).Index(o);$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=$clone(p,F.Value).SetUint(new $Uint64(0,((o<0||o>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+o])));$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=15;continue;case 16:$s=14;continue;case 13:$r=$clone(c,F.Value).SetBytes(d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:$s=-1;return $ifaceNil;case 10:q=e.putvalue(2,$clone(j,F.Value),new $Uint64(0,0),d);$s=20;case 20:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(!($interfaceIsEqual(r,$ifaceNil))){$s=-1;return r;}s=F.Append($clone(c,F.Value),new BJ([$clone(j,F.Value)]));$s=21;case 21:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=$clone(c,F.Value).Set($clone(s,F.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;case 11:case 4:case 23:if(!(d.$length>0)){$s=24;continue;}u=e.value(k,d,$clone(j,F.Value));$s=25;case 25:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];if(!($interfaceIsEqual(w,$ifaceNil))){$s=-1;return w;}x=F.Append($clone(c,F.Value),new BJ([$clone(j,F.Value)]));$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(c,F.Value).Set($clone(x,F.Value));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=v;$s=23;continue;case 24:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.slice};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.slice=function(c,d){return this.$val.slice(c,d);};Q.ptr.prototype.mapEntry=function(c,d){var $ptr,aa,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(c,F.Value).Type().Key();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=F.New(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(c,F.Value).Type().Elem();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=F.New(i);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$clone(h,F.Value).Elem();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=$clone(k,F.Value).Elem();$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;p=B.Uvarint(d);q=p[0];r=p[1];if(r<=0){$s=-1;return C.New("bad protobuf field key");}s=$subslice(d,r);t=(new $Uint64(q.$high&0,(q.$low&7)>>>0).$low>>0);u=$ifaceNil;w=e.value(t,s,$clone(m,F.Value));$s=7;case 7:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;s=v[0];u=v[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return u;}case 8:if(!(s.$length>0)){$s=9;continue;}x=B.Uvarint(s);q=x[0];r=x[1];if(r<=0){$s=-1;return C.New("bad protobuf field key");}s=$subslice(s,r);t=(new $Uint64(q.$high&0,(q.$low&7)>>>0).$low>>0);z=e.value(t,s,$clone(o,F.Value));$s=10;case 10:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;s=y[0];u=y[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return u;}$s=8;continue;case 9:if(!$clone(m,F.Value).IsValid()||!$clone(o,F.Value).IsValid()){$s=11;continue;}$s=12;continue;case 11:aa=D.Errorf("proto: bad map data: missing key/val",new BF([]));$s=13;case 13:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return aa;case 12:$r=$clone(c,F.Value).SetMapIndex($clone(m,F.Value),$clone(o,F.Value));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mapEntry};}$f.$ptr=$ptr;$f.aa=aa;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.mapEntry=function(c,d){return this.$val.mapEntry(c,d);};AD=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];e=[e];d[0]=BD.nil;e[0]=$ifaceNil;$deferred.push([(function(d,e){return function(){var $ptr,f;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){e[0]=C.New($assertType(f,$String));d[0]=BD.nil;}};})(d,e),[]]);if($interfaceIsEqual(c,$ifaceNil)){f=BD.nil;g=$ifaceNil;d[0]=f;e[0]=g;$s=-1;return[d[0],e[0]];}h=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));i=F.ValueOf(c);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!(($clone(j,F.Value).Kind()===22))){k=BD.nil;l=C.New("Encode takes a pointer to struct");d[0]=k;e[0]=l;$s=-1;return[d[0],e[0]];}m=$clone(j,F.Value).Elem();$s=2;case 2:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$r=h.message($clone(m,F.Value));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=h.Buffer.Bytes();o=$ifaceNil;d[0]=n;e[0]=o;$s=-1;return[d[0],e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[d[0],e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.Encode=AD;AC.ptr.prototype.message=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];e=this;d[0]=BI.nil;$deferred.push([(function(d){return function $b(){var $ptr,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:if(!(d[0]===BI.nil)){$s=3;continue;}$s=4;continue;case 3:g=D.Sprintf("%s (field %s)",new BF([f,new $String(d[0].Field.Name)]));$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$panic(new $String(g));$s=5;continue;case 4:$panic(f);case 5:case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};})(d),[]]);g=AM($clone(c,F.Value).Type());$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=0;case 2:if(!(h<f.$length)){$s=3;continue;}d[0]=((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]);i=$clone(c,F.Value).FieldByIndex(d[0].Index);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;l=$shiftLeft64((k=d[0].ID,new $Uint64(k.$high,k.$low)),3);if($clone(j,F.Value).CanSet()){$s=5;continue;}$s=6;continue;case 5:$r=e.value(l,$clone(j,F.Value),d[0].Prefix);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:h++;$s=2;continue;case 3:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AC.ptr.prototype.message};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AC.prototype.message=function(c){return this.$val.message(c);};AC.ptr.prototype.value=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;h=$clone(d,F.Value).Interface();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;if($assertType(g,$Bool,true)[1]){$s=2;continue;}if($assertType(g,$Int,true)[1]){$s=3;continue;}if($assertType(g,$Int32,true)[1]){$s=4;continue;}if($assertType(g,G.Time,true)[1]){$s=5;continue;}if($assertType(g,$Int64,true)[1]){$s=6;continue;}if($assertType(g,$Uint32,true)[1]){$s=7;continue;}if($assertType(g,$Uint64,true)[1]){$s=8;continue;}if($assertType(g,Z,true)[1]){$s=9;continue;}if($assertType(g,AA,true)[1]){$s=10;continue;}if($assertType(g,X,true)[1]){$s=11;continue;}if($assertType(g,Y,true)[1]){$s=12;continue;}if($assertType(g,$Float32,true)[1]){$s=13;continue;}if($assertType(g,$Float64,true)[1]){$s=14;continue;}if($assertType(g,$String,true)[1]){$s=15;continue;}if($assertType(g,BD,true)[1]){$s=16;continue;}$s=17;continue;case 2:i=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));x=new $Uint64(0,0);if(i){x=new $Uint64(0,1);}f.uvarint(x);$s=-1;return;case 3:j=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(new $Int64(0,j));$s=-1;return;case 4:k=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(new $Int64(0,k));$s=-1;return;case 5:l=$clone(g.$val,G.Time);y=$clone(l,G.Time).UnixNano();f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(y.$high,y.$low));$s=-1;return;case 6:m=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(m);$s=-1;return;case 7:n=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint(new $Uint64(0,n));$s=-1;return;case 8:o=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint(o);$s=-1;return;case 9:p=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32((p>>>0));$s=-1;return;case 10:q=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(q.$high,q.$low));$s=-1;return;case 11:r=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32((r>>>0));$s=-1;return;case 12:s=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(s.$high,s.$low));$s=-1;return;case 13:t=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32(E.Float32bits(t));$s=-1;return;case 14:u=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(E.Float64bits(u));$s=-1;return;case 15:v=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));z=new BD($stringToBytes(v));f.uvarint(new $Uint64(0,z.$length));f.Buffer.Write(z);$s=-1;return;case 16:w=g.$val;if(w===BD.nil){if(!((e===1))){$panic(new $String("passed nil []byte to required field"));}$s=-1;return;}f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));f.uvarint(new $Uint64(0,w.$length));f.Buffer.Write(w);$s=-1;return;case 17:aa=$clone(d,F.Value).Kind();if(aa===(1)){$s=19;continue;}if((aa===(2))||(aa===(5))||(aa===(6))){$s=20;continue;}if((aa===(10))||(aa===(11))){$s=21;continue;}if(aa===(13)){$s=22;continue;}if(aa===(14)){$s=23;continue;}if(aa===(24)){$s=24;continue;}if(aa===(25)){$s=25;continue;}if((aa===(23))||(aa===(17))){$s=26;continue;}if(aa===(22)){$s=27;continue;}if(aa===(20)){$s=28;continue;}if(aa===(21)){$s=29;continue;}$s=30;continue;case 19:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));ab=new $Uint64(0,0);if($clone(d,F.Value).Bool()){ab=new $Uint64(0,1);}f.uvarint(ab);$s=31;continue;case 20:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint($clone(d,F.Value).Int());$s=31;continue;case 21:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint($clone(d,F.Value).Uint());$s=31;continue;case 22:f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32(E.Float32bits($fround($clone(d,F.Value).Float())));$s=31;continue;case 23:f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(E.Float64bits($clone(d,F.Value).Float()));$s=31;continue;case 24:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ac=$clone(d,F.Value).String();$s=32;case 32:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=new BD($stringToBytes(ac));f.uvarint(new $Uint64(0,ad.$length));f.Buffer.Write(ad);$s=31;continue;case 25:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ae=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));$r=ae.message($clone(d,F.Value));$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}af=ae.Buffer.Bytes();f.uvarint(new $Uint64(0,af.$length));f.Buffer.Write(af);$s=31;continue;case 26:$r=f.slice(c,$clone(d,F.Value));$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 27:if($clone(d,F.Value).IsNil()){if(e===2){$panic(new $String("required field is nil"));}$s=-1;return;}ag=c;ah=$clone(d,F.Value).Elem();$s=35;case 35:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value);aj=e;$r=f.value(ag,ai,aj);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=31;continue;case 28:if($clone(d,F.Value).IsNil()){$s=-1;return;}al=$clone(d,F.Value).Interface();$s=37;case 37:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=$assertType(al,A.BinaryMarshaler,true);am=ak[0];an=ak[1];if(an){$s=38;continue;}$s=39;continue;case 38:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ap=am.MarshalBinary();$s=40;case 40:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=ao[0];ar=ao[1];if(!($interfaceIsEqual(ar,$ifaceNil))){$s=41;continue;}$s=42;continue;case 41:as=ar.Error();$s=43;case 43:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$panic(new $String(as));case 42:f.uvarint(new $Uint64(0,aq.$length));f.Buffer.Write(aq);$s=-1;return;case 39:at=c;au=$clone(d,F.Value).Elem();$s=44;case 44:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=$clone(au,F.Value);aw=e;$r=f.value(at,av,aw);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=31;continue;case 29:$r=f.handleMap(c,$clone(d,F.Value),e);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 30:ax=D.Sprintf("unsupported field Kind %d",new BF([new F.Kind($clone(d,F.Value).Kind())]));$s=47;case 47:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$panic(new $String(ax));case 31:case 18:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.value=function(c,d,e){return this.$val.value(c,d,e);};AC.ptr.prototype.slice=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(d,F.Value).Len();g=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));i=$clone(d,F.Value).Interface();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;if($assertType(h,BL,true)[1]){$s=2;continue;}if($assertType(h,BM,true)[1]){$s=3;continue;}if($assertType(h,BN,true)[1]){$s=4;continue;}if($assertType(h,BO,true)[1]){$s=5;continue;}if($assertType(h,BP,true)[1]){$s=6;continue;}if($assertType(h,BQ,true)[1]){$s=7;continue;}if($assertType(h,BR,true)[1]){$s=8;continue;}if($assertType(h,BS,true)[1]){$s=9;continue;}if($assertType(h,BT,true)[1]){$s=10;continue;}if($assertType(h,BU,true)[1]){$s=11;continue;}if($assertType(h,BV,true)[1]){$s=12;continue;}if($assertType(h,BD,true)[1]){$s=13;continue;}if($assertType(h,BW,true)[1]){$s=14;continue;}$s=15;continue;case 2:j=h.$val;x=0;while(true){if(!(x<f)){break;}y=new $Uint64(0,0);if(((x<0||x>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+x])){y=new $Uint64(0,1);}g.uvarint(y);x=x+(1)>>0;}$s=16;continue;case 3:k=h.$val;z=0;while(true){if(!(z<f)){break;}g.svarint(new $Int64(0,((z<0||z>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+z])));z=z+(1)>>0;}$s=16;continue;case 4:l=h.$val;aa=0;while(true){if(!(aa<f)){break;}g.svarint(((aa<0||aa>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+aa]));aa=aa+(1)>>0;}$s=16;continue;case 5:m=h.$val;ab=0;while(true){if(!(ab<f)){break;}g.uvarint(new $Uint64(0,((ab<0||ab>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ab])));ab=ab+(1)>>0;}$s=16;continue;case 6:n=h.$val;ac=0;while(true){if(!(ac<f)){break;}g.uvarint(((ac<0||ac>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+ac]));ac=ac+(1)>>0;}$s=16;continue;case 7:o=h.$val;ad=0;while(true){if(!(ad<f)){break;}g.u32((((ad<0||ad>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+ad])>>>0));ad=ad+(1)>>0;}$s=16;continue;case 8:p=h.$val;ae=0;while(true){if(!(ae<f)){break;}g.u64((af=((ae<0||ae>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ae]),new $Uint64(af.$high,af.$low)));ae=ae+(1)>>0;}$s=16;continue;case 9:q=h.$val;ag=0;while(true){if(!(ag<f)){break;}g.u32((((ag<0||ag>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+ag])>>>0));ag=ag+(1)>>0;}$s=16;continue;case 10:r=h.$val;ah=0;while(true){if(!(ah<f)){break;}g.u64((ai=((ah<0||ah>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ah]),new $Uint64(ai.$high,ai.$low)));ah=ah+(1)>>0;}$s=16;continue;case 11:s=h.$val;aj=0;while(true){if(!(aj<f)){break;}g.u32(E.Float32bits(((aj<0||aj>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+aj])));aj=aj+(1)>>0;}$s=16;continue;case 12:t=h.$val;ak=0;while(true){if(!(ak<f)){break;}g.u64(E.Float64bits(((ak<0||ak>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+ak])));ak=ak+(1)>>0;}$s=16;continue;case 13:u=h.$val;e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,f));e.Buffer.Write(u);$s=-1;return;case 14:v=h.$val;al=0;case 17:if(!(al<f)){$s=18;continue;}am=$clone(d,F.Value).Index(al);$s=19;case 19:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;ao=$clone(an,F.Value).Interface();$s=20;case 20:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=$assertType(ao,$String);aq=new BD($stringToBytes(ap));e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,aq.$length));e.Buffer.Write(aq);al=al+(1)>>0;$s=17;continue;case 18:$s=-1;return;case 15:w=h;$r=e.sliceReflect(c,$clone(d,F.Value));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 16:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ar=g.Buffer.Bytes();e.uvarint(new $Uint64(0,ar.$length));e.Buffer.Write(ar);$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.slice};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.slice=function(c,d){return this.$val.slice(c,d);};AC.ptr.prototype.handleMap=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;h=$clone(d,F.Value).MapKeys();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=0;case 2:if(!(i<g.$length)){$s=3;continue;}j=((i<0||i>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+i]);k=$clone(d,F.Value).MapIndex($clone(j,F.Value));$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=$clone(l,F.Value).Kind();n=m;if(n===(22)){$s=6;continue;}if((n===(23))||(n===(17))){$s=7;continue;}$s=8;continue;case 6:if($clone(l,F.Value).IsNil()){$panic(new $String("proto: map has nil element"));}$s=8;continue;case 7:o=$clone(l,F.Value).Type().Elem();$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o.Kind();$s=12;case 12:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(!((p===8))){$s=9;continue;}$s=10;continue;case 9:$panic(new $String("protobuf: map only support []byte or string as repeated value"));case 10:case 8:case 5:q=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));$r=q.value(c,$clone(j,F.Value),e);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}r=$shiftRightUint64(c,3);$r=q.value($shiftLeft64(new $Uint64(r.$high+0,r.$low+1),3),$clone(l,F.Value),e);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));s=q.Buffer.Bytes();f.uvarint(new $Uint64(0,s.$length));f.Buffer.Write(s);i++;$s=2;continue;case 3:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.handleMap};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.handleMap=function(c,d,e){return this.$val.handleMap(c,d,e);};AC.ptr.prototype.sliceReflect=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(d,F.Value).Kind();if(!((f===23))&&!((f===17))){$panic(new $String("no slice passed"));}g=$clone(d,F.Value).Len();h=$clone(d,F.Value).Type().Elem();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));k=i.Kind();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(l===(1)){$s=4;continue;}if((l===(2))||(l===(5))||(l===(6))){$s=5;continue;}if((l===(10))||(l===(11))){$s=6;continue;}if(l===(13)){$s=7;continue;}if(l===(14)){$s=8;continue;}if(l===(8)){$s=9;continue;}$s=10;continue;case 4:m=0;case 12:if(!(m<g)){$s=13;continue;}n=new $Uint64(0,0);o=$clone(d,F.Value).Index(m);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=$clone(o,F.Value).Bool();$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(p){$s=14;continue;}$s=15;continue;case 14:n=new $Uint64(0,1);case 15:j.uvarint(n);m=m+(1)>>0;$s=12;continue;case 13:$s=11;continue;case 5:q=0;case 18:if(!(q<g)){$s=19;continue;}r=$clone(d,F.Value).Index(q);$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=$clone(r,F.Value).Int();$s=21;case 21:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=j.svarint(s);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=q+(1)>>0;$s=18;continue;case 19:$s=11;continue;case 6:t=0;case 23:if(!(t<g)){$s=24;continue;}u=$clone(d,F.Value).Index(t);$s=25;case 25:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=$clone(u,F.Value).Uint();$s=26;case 26:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=j.uvarint(v);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}t=t+(1)>>0;$s=23;continue;case 24:$s=11;continue;case 7:w=0;case 28:if(!(w<g)){$s=29;continue;}x=$clone(d,F.Value).Index(w);$s=30;case 30:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=$clone(x,F.Value).Float();$s=31;case 31:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=E.Float32bits($fround(y));$s=32;case 32:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=j.u32(z);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}w=w+(1)>>0;$s=28;continue;case 29:$s=11;continue;case 8:aa=0;case 34:if(!(aa<g)){$s=35;continue;}ab=$clone(d,F.Value).Index(aa);$s=36;case 36:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=$clone(ab,F.Value).Float();$s=37;case 37:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=E.Float64bits(ac);$s=38;case 38:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$r=j.u64(ad);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}aa=aa+(1)>>0;$s=34;continue;case 35:$s=11;continue;case 9:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,g));ae=BD.nil;if($clone(d,F.Value).Kind()===17){$s=40;continue;}$s=41;continue;case 40:af=$clone(d,F.Value).Slice(0,g);$s=43;case 43:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;ah=$clone(ag,F.Value).Convert(AG);$s=44;case 44:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value).Interface();$s=45;case 45:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ae=$assertType(ai,BD);$s=42;continue;case 41:aj=$clone(d,F.Value).Convert(AG);$s=46;case 46:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$clone(aj,F.Value).Interface();$s=47;case 47:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ae=$assertType(ak,BD);case 42:e.Buffer.Write(ae);$s=-1;return;case 10:al=$clone(d,F.Value).Type().Elem();$s=48;case 48:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;ao=am.Kind();$s=52;case 52:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(ao===23){an=true;$s=51;continue s;}ap=am.Kind();$s=53;case 53:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}an=ap===17;case 51:if(an){$s=49;continue;}$s=50;continue;case 49:aq=am.Elem();$s=54;case 54:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;as=ar.Kind();$s=57;case 57:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}if(!((as===8))){$s=55;continue;}$s=56;continue;case 55:$panic(new $String("protobuf: no support for 2-dimensional array except for [][]byte"));case 56:case 50:at=0;case 58:if(!(at<g)){$s=59;continue;}au=c;av=$clone(d,F.Value).Index(at);$s=60;case 60:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=$clone(av,F.Value);$r=e.value(au,aw,0);$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}at=at+(1)>>0;$s=58;continue;case 59:$s=-1;return;case 11:case 2:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ax=j.Buffer.Bytes();e.uvarint(new $Uint64(0,ax.$length));e.Buffer.Write(ax);$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.sliceReflect};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.sliceReflect=function(c,d){return this.$val.sliceReflect(c,d);};AC.ptr.prototype.uvarint=function(c){var $ptr,c,d,e,f;d=this;e=BX.zero();f=B.PutUvarint(new BD(e),c);d.Buffer.Write($subslice(new BD(e),0,f));};AC.prototype.uvarint=function(c){return this.$val.uvarint(c);};AC.ptr.prototype.svarint=function(c){var $ptr,c,d,e,f;d=this;if((c.$high>0||(c.$high===0&&c.$low>=0))){d.uvarint($shiftLeft64(new $Uint64(c.$high,c.$low),1));}else{d.uvarint((e=(f=$shiftLeft64(c,1),new $Uint64(f.$high,f.$low)),new $Uint64(~e.$high,~e.$low>>>0)));}};AC.prototype.svarint=function(c){return this.$val.svarint(c);};AC.ptr.prototype.u32=function(c){var $ptr,c,d,e;d=this;e=BY.zero();e[0]=(c<<24>>>24);e[1]=((c>>>8>>>0)<<24>>>24);e[2]=((c>>>16>>>0)<<24>>>24);e[3]=((c>>>24>>>0)<<24>>>24);d.Buffer.Write(new BD(e));};AC.prototype.u32=function(c){return this.$val.u32(c);};AC.ptr.prototype.u64=function(c){var $ptr,c,d,e;d=this;e=BZ.zero();e[0]=(c.$low<<24>>>24);e[1]=($shiftRightUint64(c,8).$low<<24>>>24);e[2]=($shiftRightUint64(c,16).$low<<24>>>24);e[3]=($shiftRightUint64(c,24).$low<<24>>>24);e[4]=($shiftRightUint64(c,32).$low<<24>>>24);e[5]=($shiftRightUint64(c,40).$low<<24>>>24);e[6]=($shiftRightUint64(c,48).$low<<24>>>24);e[7]=($shiftRightUint64(c,56).$low<<24>>>24);d.Buffer.Write(new BD(e));};AC.prototype.u64=function(c){return this.$val.u64(c);};AI=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=0;f="";g=new F.StructTag(c.Tag).Get("protobuf");if(g===""){return[d,e,f];}h=J.Split(g,",");i=h;j=0;while(true){if(!(j<i.$length)){break;}k=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(k==="opt"){e=1;}else if(k==="req"){e=2;}else{l=I.Atoi(k);m=l[0];n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){f=k;}else{d=m;}}j++;}return[d,e,f];};$pkg.ParseTag=AI;AJ.ptr.prototype.Required=function(){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(c.Prefix===2){d=true;$s=1;continue s;}e=c.Field.Type.Kind();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=!((e===22));case 1:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Required};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Required=function(){return this.$val.Required();};AM=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];$r=AL.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=(f=AK[F.Type.keyFor(c)],f!==undefined?[f.v,true]:[CA.nil,false]);g=e[0];h=e[1];$r=AL.Unlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(h){$s=-1;return g;}d[0]=0;i=AN((d.$ptr||(d.$ptr=new CB(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d))),c);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=i;j=$makeMap($Int64.keyFor,[]);k=g;l=0;case 4:if(!(l<k.$length)){$s=5;continue;}m=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);n=(o=j[$Int64.keyFor(m.ID)],o!==undefined?[o.v,true]:[new CC.ptr(),false]);p=n[1];if(p){$s=6;continue;}$s=7;continue;case 6:q=m.ID;r=c.PkgPath();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new $String(r);t=c.Name();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=new $String(t);v=D.Sprintf("protobuf ID %d reused in %s.%s",new BF([q,s,u]));$s=10;case 10:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$panic(new $String(v));case 7:w=m.ID;(j||$throwRuntimeError("assignment to entry in nil map"))[$Int64.keyFor(w)]={k:w,v:new CC.ptr()};l++;$s=4;continue;case 5:$r=AL.Lock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AL,"Unlock"),[]]);x=c;(AK||$throwRuntimeError("assignment to entry in nil map"))[F.Type.keyFor(x)]={k:x,v:g};$s=-1;return g;}return;}}catch(err){$err=err;$s=-1;return CA.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.ProtoFields=AM;AN=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=d.Kind();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e===22){$s=1;continue;}$s=2;continue;case 1:f=c;g=d.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=AN(f,h);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;case 2:j=new CA([]);k=0;case 6:l=d.NumField();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(!(k<l)){$s=7;continue;}m=d.Field(k);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$clone(m,F.StructField);c.$set(c.$get()+(1)>>0);o=AI($clone(n,F.StructField));p=o[0];q=o[1];r=o[2];if(!((p===0))){c.$set(p);}if(n.Anonymous){$s=10;continue;}$s=11;continue;case 10:c.$set(c.$get()-(1)>>0);t=AN(c,n.Type);$s=13;case 13:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=0;case 14:if(!(u<s.$length)){$s=15;continue;}v=((u<0||u>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+u]);v.Index=$appendSlice(new BH([k]),v.Index);j=$append(j,v);u++;$s=14;continue;case 15:$s=12;continue;case 11:j=$append(j,new AJ.ptr(new $Int64(0,c.$get()),q,r,new BH([k]),$clone(n,F.StructField)));case 12:k=k+(1)>>0;$s=6;continue;case 7:$s=-1;return j;}return;}if($f===undefined){$f={$blk:AN};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};CG.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CH.methods=[{prop:"message",name:"message",pkg:"github.com/dedis/protobuf",typ:$funcType([BD,F.Value],[$error],false)},{prop:"value",name:"value",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,BD,F.Value],[BD,$error],false)},{prop:"decodeSignedInt",name:"decodeSignedInt",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,$Uint64],[$Int64,$error],false)},{prop:"putvalue",name:"putvalue",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,F.Value,$Uint64,BD],[$error],false)},{prop:"instantiate",name:"instantiate",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Type],[F.Value],false)},{prop:"slice",name:"slice",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value,BD],[$error],false)},{prop:"mapEntry",name:"mapEntry",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value,BD],[$error],false)}];CI.methods=[{prop:"message",name:"message",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value],[],false)},{prop:"value",name:"value",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value,AH],[],false)},{prop:"slice",name:"slice",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value],[],false)},{prop:"handleMap",name:"handleMap",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value,AH],[],false)},{prop:"sliceReflect",name:"sliceReflect",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value],[],false)},{prop:"uvarint",name:"uvarint",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64],[],false)},{prop:"svarint",name:"svarint",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int64],[],false)},{prop:"u32",name:"u32",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint32],[],false)},{prop:"u64",name:"u64",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64],[],false)}];BI.methods=[{prop:"Required",name:"Required",pkg:"",typ:$funcType([],[$Bool],false)}];P.init(F.Type,BE);Q.init("github.com/dedis/protobuf",[{prop:"nm",name:"nm",exported:false,typ:P,tag:""}]);AC.init("",[{prop:"Buffer",name:"",exported:true,typ:H.Buffer,tag:""}]);AJ.init("",[{prop:"ID",name:"ID",exported:true,typ:$Int64,tag:""},{prop:"Prefix",name:"Prefix",exported:true,typ:AH,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Index",name:"Index",exported:true,typ:BH,tag:""},{prop:"Field",name:"Field",exported:true,typ:F.StructField,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=H.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AL=new K.Mutex.ptr(0,0);T=F.TypeOf(new Z(0));U=F.TypeOf(new AA(0,0));V=F.TypeOf(new X(0));W=F.TypeOf(new Y(0,0));AE=F.TypeOf((a=new G.Time.ptr(new $Int64(0,0),0,BC.nil),new a.constructor.elem(a)));AF=F.TypeOf(new G.Duration(0,0));AG=F.TypeOf(new BD([]));AK=$makeMap(F.Type.keyFor,[]);b=M.MustCompile("((?:ID)|(?:[A-Z][a-z_0-9]+)|([\\w\\d]+))");$s=16;case 16:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AO=b;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto"]=(function(){var $pkg={},$init,A,B,C,D,N,O,P,E,F,G;A=$packages["hash"];B=$packages["io"];C=$packages["strconv"];D=$pkg.Hash=$newType(4,$kindUint,"crypto.Hash",true,"crypto",true,null);N=$sliceType($Uint8);O=$funcType([],[A.Hash],false);P=$sliceType(O);D.prototype.HashFunc=function(){var $ptr,a;a=this.$val;return a;};$ptrType(D).prototype.HashFunc=function(){return new D(this.$get()).HashFunc();};D.prototype.Size=function(){var $ptr,a;a=this.$val;if(a>0&&a<16){return(((a<0||a>=E.$length)?($throwRuntimeError("index out of range"),undefined):E.$array[E.$offset+a])>>0);}$panic(new $String("crypto: Size of unknown hash function"));};$ptrType(D).prototype.Size=function(){return new D(this.$get()).Size();};D.prototype.New=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;if(a>0&&a<16){$s=1;continue;}$s=2;continue;case 1:b=((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a]);if(!(b===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:c=b();$s=5;case 5:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;case 4:case 2:$panic(new $String("crypto: requested hash function #"+C.Itoa((a>>0))+" is unavailable"));$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:D.prototype.New};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(D).prototype.New=function(){return new D(this.$get()).New();};D.prototype.Available=function(){var $ptr,a;a=this.$val;return a<16&&!(((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a])===$throwNilPointerError);};$ptrType(D).prototype.Available=function(){return new D(this.$get()).Available();};G=function(a,b){var $ptr,a,b;if(a>=16){$panic(new $String("crypto: RegisterHash of unknown hash function"));}((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a]=b);};$pkg.RegisterHash=G;D.methods=[{prop:"HashFunc",name:"HashFunc",pkg:"",typ:$funcType([],[D],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"New",name:"New",pkg:"",typ:$funcType([],[A.Hash],false)},{prop:"Available",name:"Available",pkg:"",typ:$funcType([],[$Bool],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}E=new N([0,16,16,20,28,32,48,64,36,20,28,32,48,64,28,32]);F=$makeSlice(P,16);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/md5"]=(function(){var $pkg={},$init,A,B,C,E,L,M,N,O,P,Q,R,S,H,K,D,F,I,J;A=$packages["crypto"];B=$packages["hash"];C=$packages["runtime"];E=$pkg.digest=$newType(0,$kindStruct,"md5.digest",true,"crypto/md5",false,function(s_,x_,nx_,len_){this.$val=this;if(arguments.length===0){this.s=L.zero();this.x=M.zero();this.nx=0;this.len=new $Uint64(0,0);return;}this.s=s_;this.x=x_;this.nx=nx_;this.len=len_;});L=$arrayType($Uint32,4);M=$arrayType($Uint8,64);N=$sliceType($Uint8);O=$arrayType($Uint8,16);P=$arrayType($Uint8,4);Q=$arrayType($Uint32,16);R=$ptrType(Q);S=$ptrType(E);D=function(){var $ptr;A.RegisterHash(2,F);};E.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.s[0]=1732584193;a.s[1]=4023233417;a.s[2]=2562383102;a.s[3]=271733878;a.nx=0;a.len=new $Uint64(0,0);};E.prototype.Reset=function(){return this.$val.Reset();};F=function(){var $ptr,a;a=new E.ptr(L.zero(),M.zero(),0,new $Uint64(0,0));a.Reset();return a;};$pkg.New=F;E.ptr.prototype.Size=function(){var $ptr,a;a=this;return 16;};E.prototype.Size=function(){return this.$val.Size();};E.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};E.prototype.BlockSize=function(){return this.$val.BlockSize();};E.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new N(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=K(d,new N(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=K(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new N(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Write=function(a){return this.$val.Write(a);};E.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,E);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,O);$s=-1;return $appendSlice(a,new N(e));}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Sum=function(a){return this.$val.Sum(a);};E.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=M.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new N(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new N(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((8*i>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new N(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=O.zero();l=a.s;m=0;while(true){if(!(m<4)){break;}n=m;o=((m<0||m>=l.length)?($throwRuntimeError("index out of range"),undefined):l[m]);(p=$imul(n,4),((p<0||p>=k.length)?($throwRuntimeError("index out of range"),undefined):k[p]=(o<<24>>>24)));(q=($imul(n,4))+1>>0,((q<0||q>=k.length)?($throwRuntimeError("index out of range"),undefined):k[q]=((o>>>8>>>0)<<24>>>24)));(r=($imul(n,4))+2>>0,((r<0||r>=k.length)?($throwRuntimeError("index out of range"),undefined):k[r]=((o>>>16>>>0)<<24>>>24)));(s=($imul(n,4))+3>>0,((s<0||s>=k.length)?($throwRuntimeError("index out of range"),undefined):k[s]=((o>>>24>>>0)<<24>>>24)));m++;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.checkSum=function(){return this.$val.checkSum();};I=function(){var $ptr,a,b;a=67305985;b=$toNativeArray($kindUint8,[1,2,3,4]);H=$equal(a,b,P);};J=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;c=a.s[0];d=a.s[1];e=a.s[2];f=a.s[3];g=R.nil;h=Q.zero();while(true){if(!(b.$length>=64)){break;}i=c;j=d;k=e;l=f;m=i;n=j;o=k;p=l;if(false){g=$sliceToArray(b);}else if(H&&((($sliceToArray(b)&3)>>>0)===0)){g=$sliceToArray(b);}else{g=h;q=0;r=0;while(true){if(!(r<16)){break;}(v=r&15,g.nilCheck,((v<0||v>=g.length)?($throwRuntimeError("index out of range"),undefined):g[v]=(((((((((q<0||q>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+q])>>>0)|(((s=q+1>>0,((s<0||s>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+s]))>>>0)<<8>>>0))>>>0)|(((t=q+2>>0,((t<0||t>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+t]))>>>0)<<16>>>0))>>>0)|(((u=q+3>>0,((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u]))>>>0)<<24>>>0))>>>0)));q=q+(4)>>0;r=r+(1)>>0;}}c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[0])>>>0)+3614090360>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[1])>>>0)+3905402710>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[2])>>>0)+606105819>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[3])>>>0)+3250441966>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[4])>>>0)+4118548399>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[5])>>>0)+1200080426>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[6])>>>0)+2821735955>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[7])>>>0)+4249261313>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[8])>>>0)+1770035416>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[9])>>>0)+2336552879>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[10])>>>0)+4294925233>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[11])>>>0)+2304563134>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[12])>>>0)+1804603682>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[13])>>>0)+4254626195>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[14])>>>0)+2792965006>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[15])>>>0)+1236535329>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[1])>>>0)+4129170786>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[6])>>>0)+3225465664>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[11])>>>0)+643717713>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[0])>>>0)+3921069994>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[5])>>>0)+3593408605>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[10])>>>0)+38016083>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[15])>>>0)+3634488961>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[4])>>>0)+3889429448>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[9])>>>0)+568446438>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[14])>>>0)+3275163606>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[3])>>>0)+4107603335>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[8])>>>0)+1163531501>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[13])>>>0)+2850285829>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[2])>>>0)+4243563512>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[7])>>>0)+1735328473>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[12])>>>0)+2368359562>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[5])>>>0)+4294588738>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[8])>>>0)+2272392833>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[11])>>>0)+1839030562>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[14])>>>0)+4259657740>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[1])>>>0)+2763975236>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[4])>>>0)+1272893353>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[7])>>>0)+4139469664>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[10])>>>0)+3200236656>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[13])>>>0)+681279174>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[0])>>>0)+3936430074>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[3])>>>0)+3572445317>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[6])>>>0)+76029189>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[9])>>>0)+3654602809>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[12])>>>0)+3873151461>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[15])>>>0)+530742520>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[2])>>>0)+3299628645>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[0])>>>0)+4096336452>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[7])>>>0)+1126891415>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[14])>>>0)+2878612391>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[5])>>>0)+4237533241>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[12])>>>0)+1700485571>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[3])>>>0)+2399980690>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[10])>>>0)+4293915773>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[1])>>>0)+2240044497>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[8])>>>0)+1873313359>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[15])>>>0)+4264355552>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[6])>>>0)+2734768916>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[13])>>>0)+1309151649>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[4])>>>0)+4149444226>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[11])>>>0)+3174756917>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[2])>>>0)+718787259>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[9])>>>0)+3951481745>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+(m)>>>0;d=d+(n)>>>0;e=e+(o)>>>0;f=f+(p)>>>0;b=$subslice(b,64);}a.s[0]=c;a.s[1]=d;a.s[2]=e;a.s[3]=f;};S.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([N],[N],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/md5",typ:$funcType([],[O],false)}];E.init("crypto/md5",[{prop:"s",name:"s",exported:false,typ:L,tag:""},{prop:"x",name:"x",exported:false,typ:M,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}H=false;K=J;D();I();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/sha1"]=(function(){var $pkg={},$init,A,B,D,I,J,K,L,M,N,O,H,C,E,G;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha1.digest",true,"crypto/sha1",false,function(h_,x_,nx_,len_){this.$val=this;if(arguments.length===0){this.h=I.zero();this.x=J.zero();this.nx=0;this.len=new $Uint64(0,0);return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;});I=$arrayType($Uint32,5);J=$arrayType($Uint8,64);K=$sliceType($Uint8);L=$arrayType($Uint8,20);M=$arrayType($Uint8,8);N=$arrayType($Uint32,16);O=$ptrType(D);C=function(){var $ptr;A.RegisterHash(3,E);};D.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.h[0]=1732584193;a.h[1]=4023233417;a.h[2]=2562383102;a.h[3]=271733878;a.h[4]=3285377520;a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(I.zero(),J.zero(),0,new $Uint64(0,0));a.Reset();return a;};$pkg.New=E;D.ptr.prototype.Size=function(){var $ptr,a;a=this;return 20;};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new K(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=H(d,new K(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=H(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new K(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,L);$s=-1;return $appendSlice(a,new K(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=J.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new K(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new K(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((56-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new K(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=L.zero();l=a.h;m=0;while(true){if(!(m<5)){break;}n=m;o=((m<0||m>=l.length)?($throwRuntimeError("index out of range"),undefined):l[m]);(p=$imul(n,4),((p<0||p>=k.length)?($throwRuntimeError("index out of range"),undefined):k[p]=((o>>>24>>>0)<<24>>>24)));(q=($imul(n,4))+1>>0,((q<0||q>=k.length)?($throwRuntimeError("index out of range"),undefined):k[q]=((o>>>16>>>0)<<24>>>24)));(r=($imul(n,4))+2>>0,((r<0||r>=k.length)?($throwRuntimeError("index out of range"),undefined):k[r]=((o>>>8>>>0)<<24>>>24)));(s=($imul(n,4))+3>>0,((s<0||s>=k.length)?($throwRuntimeError("index out of range"),undefined):k[s]=(o<<24>>>24)));m++;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};D.ptr.prototype.ConstantTimeSum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.constSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,L);$s=-1;return $appendSlice(a,new K(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.ConstantTimeSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.ConstantTimeSum=function(a){return this.$val.ConstantTimeSum(a);};D.ptr.prototype.constSum=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=M.zero();c=$shiftLeft64(a.len,3);d=0;while(true){if(!(d<8)){break;}((d<0||d>=b.length)?($throwRuntimeError("index out of range"),undefined):b[d]=($shiftRightUint64(c,((56-(8*d>>>0)>>>0))).$low<<24>>>24));d=d+(1)>>>0;}e=(a.nx<<24>>>24);f=e-56<<24>>>24;g=(((f<<24>>24)>>7<<24>>24)<<24>>>24);h=128;i=0;while(true){if(!(i<64)){break;}j=((((i-e<<24>>>24)<<24>>24)>>7<<24>>24)<<24>>>24);(l=a.x,((i<0||i>=l.length)?($throwRuntimeError("index out of range"),undefined):l[i]=((((((~j<<24>>>24)&h)>>>0))|(((j&(k=a.x,((i<0||i>=k.length)?($throwRuntimeError("index out of range"),undefined):k[i])))>>>0)))>>>0)));h=(h&(j))>>>0;if(i>=56){(o=a.x,((i<0||i>=o.length)?($throwRuntimeError("index out of range"),undefined):o[i]=(((m=a.x,((i<0||i>=m.length)?($throwRuntimeError("index out of range"),undefined):m[i]))|(((g&(n=i-56<<24>>>24,((n<0||n>=b.length)?($throwRuntimeError("index out of range"),undefined):b[n])))>>>0)))>>>0)));}i=i+(1)<<24>>>24;}$r=H(a,new K(a.x));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=L.zero();q=a.h;r=0;while(true){if(!(r<5)){break;}s=r;t=((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]);(u=$imul(s,4),((u<0||u>=p.length)?($throwRuntimeError("index out of range"),undefined):p[u]=((g&((t>>>24>>>0)<<24>>>24))>>>0)));(v=($imul(s,4))+1>>0,((v<0||v>=p.length)?($throwRuntimeError("index out of range"),undefined):p[v]=((g&((t>>>16>>>0)<<24>>>24))>>>0)));(w=($imul(s,4))+2>>0,((w<0||w>=p.length)?($throwRuntimeError("index out of range"),undefined):p[w]=((g&((t>>>8>>>0)<<24>>>24))>>>0)));(x=($imul(s,4))+3>>0,((x<0||x>=p.length)?($throwRuntimeError("index out of range"),undefined):p[x]=((g&(t<<24>>>24))>>>0)));r++;}y=0;while(true){if(!(y<64)){break;}if(y<56){(z=a.x,((y<0||y>=z.length)?($throwRuntimeError("index out of range"),undefined):z[y]=h));h=0;}else{(ab=a.x,((y<0||y>=ab.length)?($throwRuntimeError("index out of range"),undefined):ab[y]=(aa=y-56<<24>>>24,((aa<0||aa>=b.length)?($throwRuntimeError("index out of range"),undefined):b[aa]))));}y=y+(1)<<24>>>24;}$r=H(a,new K(a.x));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ac=a.h;ad=0;while(true){if(!(ad<5)){break;}ae=ad;af=((ad<0||ad>=ac.length)?($throwRuntimeError("index out of range"),undefined):ac[ad]);ag=$imul(ae,4);((ag<0||ag>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ag]=((((ag<0||ag>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ag])|((((~g<<24>>>24)&((af>>>24>>>0)<<24>>>24))>>>0)))>>>0));ah=($imul(ae,4))+1>>0;((ah<0||ah>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ah]=((((ah<0||ah>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ah])|((((~g<<24>>>24)&((af>>>16>>>0)<<24>>>24))>>>0)))>>>0));ai=($imul(ae,4))+2>>0;((ai<0||ai>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ai]=((((ai<0||ai>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ai])|((((~g<<24>>>24)&((af>>>8>>>0)<<24>>>24))>>>0)))>>>0));aj=($imul(ae,4))+3>>0;((aj<0||aj>=p.length)?($throwRuntimeError("index out of range"),undefined):p[aj]=((((aj<0||aj>=p.length)?($throwRuntimeError("index out of range"),undefined):p[aj])|((((~g<<24>>>24)&(af<<24>>>24))>>>0)))>>>0));ad++;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.constSum};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.constSum=function(){return this.$val.constSum();};G=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=N.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=d;j=e;k=f;l=g;m=h;while(true){if(!(b.$length>=64)){break;}n=0;while(true){if(!(n<16)){break;}o=$imul(n,4);((n<0||n>=c.length)?($throwRuntimeError("index out of range"),undefined):c[n]=((((((((((o<0||o>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+o])>>>0)<<24>>>0)|(((p=o+1>>0,((p<0||p>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+p]))>>>0)<<16>>>0))>>>0)|(((q=o+2>>0,((q<0||q>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+q]))>>>0)<<8>>>0))>>>0)|((r=o+3>>0,((r<0||r>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+r]))>>>0))>>>0));n=n+(1)>>0;}s=i;t=j;u=k;v=l;w=m;x=s;y=t;z=u;aa=v;ab=w;ac=0;while(true){if(!(ac<16)){break;}ad=(((y&z)>>>0)|((((~y>>>0))&aa)>>>0))>>>0;ae=((x<<5>>>0)|(x>>>27>>>0))>>>0;af=((y<<30>>>0)|(y>>>2>>>0))>>>0;ah=(((ae+ad>>>0)+ab>>>0)+(ag=ac&15,((ag<0||ag>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ag]))>>>0)+1518500249>>>0;ai=ah;aj=x;ak=af;al=z;am=aa;x=ai;y=aj;z=ak;aa=al;ab=am;ac=ac+(1)>>0;}while(true){if(!(ac<20)){break;}ar=((((((an=((ac-3>>0))&15,((an<0||an>=c.length)?($throwRuntimeError("index out of range"),undefined):c[an]))^(ao=((ac-8>>0))&15,((ao<0||ao>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ao])))>>>0)^(ap=((ac-14>>0))&15,((ap<0||ap>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ap])))>>>0)^(aq=(ac)&15,((aq<0||aq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aq])))>>>0;(as=ac&15,((as<0||as>=c.length)?($throwRuntimeError("index out of range"),undefined):c[as]=(((ar<<1>>>0)|(ar>>>31>>>0))>>>0)));at=(((y&z)>>>0)|((((~y>>>0))&aa)>>>0))>>>0;au=((x<<5>>>0)|(x>>>27>>>0))>>>0;av=((y<<30>>>0)|(y>>>2>>>0))>>>0;ax=(((au+at>>>0)+ab>>>0)+(aw=ac&15,((aw<0||aw>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aw]))>>>0)+1518500249>>>0;ay=ax;az=x;ba=av;bb=z;bc=aa;x=ay;y=az;z=ba;aa=bb;ab=bc;ac=ac+(1)>>0;}while(true){if(!(ac<40)){break;}bh=((((((bd=((ac-3>>0))&15,((bd<0||bd>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bd]))^(be=((ac-8>>0))&15,((be<0||be>=c.length)?($throwRuntimeError("index out of range"),undefined):c[be])))>>>0)^(bf=((ac-14>>0))&15,((bf<0||bf>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bf])))>>>0)^(bg=(ac)&15,((bg<0||bg>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bg])))>>>0;(bi=ac&15,((bi<0||bi>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bi]=(((bh<<1>>>0)|(bh>>>31>>>0))>>>0)));bj=(((y^z)>>>0)^aa)>>>0;bk=((x<<5>>>0)|(x>>>27>>>0))>>>0;bl=((y<<30>>>0)|(y>>>2>>>0))>>>0;bn=(((bk+bj>>>0)+ab>>>0)+(bm=ac&15,((bm<0||bm>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bm]))>>>0)+1859775393>>>0;bo=bn;bp=x;bq=bl;br=z;bs=aa;x=bo;y=bp;z=bq;aa=br;ab=bs;ac=ac+(1)>>0;}while(true){if(!(ac<60)){break;}bx=((((((bt=((ac-3>>0))&15,((bt<0||bt>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bt]))^(bu=((ac-8>>0))&15,((bu<0||bu>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bu])))>>>0)^(bv=((ac-14>>0))&15,((bv<0||bv>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bv])))>>>0)^(bw=(ac)&15,((bw<0||bw>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bw])))>>>0;(by=ac&15,((by<0||by>=c.length)?($throwRuntimeError("index out of range"),undefined):c[by]=(((bx<<1>>>0)|(bx>>>31>>>0))>>>0)));bz=(((((((y|z)>>>0))&aa)>>>0))|(((y&z)>>>0)))>>>0;ca=((x<<5>>>0)|(x>>>27>>>0))>>>0;cb=((y<<30>>>0)|(y>>>2>>>0))>>>0;cd=(((ca+bz>>>0)+ab>>>0)+(cc=ac&15,((cc<0||cc>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cc]))>>>0)+2400959708>>>0;ce=cd;cf=x;cg=cb;ch=z;ci=aa;x=ce;y=cf;z=cg;aa=ch;ab=ci;ac=ac+(1)>>0;}while(true){if(!(ac<80)){break;}cn=((((((cj=((ac-3>>0))&15,((cj<0||cj>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cj]))^(ck=((ac-8>>0))&15,((ck<0||ck>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ck])))>>>0)^(cl=((ac-14>>0))&15,((cl<0||cl>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cl])))>>>0)^(cm=(ac)&15,((cm<0||cm>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cm])))>>>0;(co=ac&15,((co<0||co>=c.length)?($throwRuntimeError("index out of range"),undefined):c[co]=(((cn<<1>>>0)|(cn>>>31>>>0))>>>0)));cp=(((y^z)>>>0)^aa)>>>0;cq=((x<<5>>>0)|(x>>>27>>>0))>>>0;cr=((y<<30>>>0)|(y>>>2>>>0))>>>0;ct=(((cq+cp>>>0)+ab>>>0)+(cs=ac&15,((cs<0||cs>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cs]))>>>0)+3395469782>>>0;cu=ct;cv=x;cw=cr;cx=z;cy=aa;x=cu;y=cv;z=cw;aa=cx;ab=cy;ac=ac+(1)>>0;}i=i+(x)>>>0;j=j+(y)>>>0;k=k+(z)>>>0;l=l+(aa)>>>0;m=m+(ab)>>>0;b=$subslice(b,64);}cz=i;da=j;db=k;dc=l;dd=m;a.h[0]=cz;a.h[1]=da;a.h[2]=db;a.h[3]=dc;a.h[4]=dd;};O.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([K],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([K],[K],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha1",typ:$funcType([],[L],false)},{prop:"ConstantTimeSum",name:"ConstantTimeSum",pkg:"",typ:$funcType([K],[K],false)},{prop:"constSum",name:"constSum",pkg:"crypto/sha1",typ:$funcType([],[L],false)}];D.init("crypto/sha1",[{prop:"h",name:"h",exported:false,typ:I,tag:""},{prop:"x",name:"x",exported:false,typ:J,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}H=G;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["context"]=(function(){var $pkg={},$init,A,B,C,D,E,H,Z,AA,AB,AH,I,J;A=$packages["errors"];B=$packages["fmt"];C=$packages["reflect"];D=$packages["sync"];E=$packages["time"];H=$pkg.emptyCtx=$newType(4,$kindInt,"context.emptyCtx",true,"context",false,null);Z=$ptrType(H);AA=$ptrType(E.Location);AB=$structType("",[]);AH=$chanType(AB,false,true);$ptrType(H).prototype.Deadline=function(){var $ptr,b,c;b=new E.Time.ptr(new $Int64(0,0),0,AA.nil);c=false;return[b,c];};$ptrType(H).prototype.Done=function(){var $ptr;return $chanNil;};$ptrType(H).prototype.Err=function(){var $ptr;return $ifaceNil;};$ptrType(H).prototype.Value=function(b){var $ptr,b;return $ifaceNil;};$ptrType(H).prototype.String=function(){var $ptr,b,c;b=this;c=b;if(c===(I)){return"context.Background";}else if(c===(J)){return"context.TODO";}return"unknown empty Context";};Z.methods=[{prop:"Deadline",name:"Deadline",pkg:"",typ:$funcType([],[E.Time,$Bool],false)},{prop:"Done",name:"Done",pkg:"",typ:$funcType([],[AH],false)},{prop:"Err",name:"Err",pkg:"",typ:$funcType([],[$error],false)},{prop:"Value",name:"Value",pkg:"",typ:$funcType([$emptyInterface],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Canceled=A.New("context canceled");I=$newDataPointer(0,Z);J=$newDataPointer(0,Z);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["database/sql/driver"]=(function(){var $pkg={},$init,A,B,D,C,E,F,G,AJ,AU,AS,a;A=$packages["context"];B=$packages["errors"];D=$packages["fmt"];C=$packages["reflect"];E=$packages["strconv"];F=$packages["time"];G=$pkg.Value=$newType(8,$kindInterface,"driver.Value",true,"database/sql/driver",true,null);AJ=$pkg.Valuer=$newType(8,$kindInterface,"driver.Valuer",true,"database/sql/driver",true,null);AU=$ptrType(AJ);G.init([]);AJ.init([{prop:"Value",name:"Value",pkg:"",typ:$funcType([],[G,$error],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrSkip=B.New("driver: skip fast-path; continue as if unimplemented");$pkg.ErrBadConn=B.New("driver: bad connection");a=C.TypeOf(AU.nil).Elem();$s=7;case 7:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}AS=a;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["encoding/hex"]=(function(){var $pkg={},$init,A,B,C,D,H,R,S,E,F,G,J,K,L;A=$packages["bytes"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];H=$pkg.InvalidByteError=$newType(1,$kindUint8,"hex.InvalidByteError",true,"encoding/hex",true,null);R=$sliceType($emptyInterface);S=$sliceType($Uint8);F=function(a){var $ptr,a;return $imul(a,2);};$pkg.EncodedLen=F;G=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);(h=$imul(e,2),((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]=(g=f>>>4<<24>>>24,((g<0||g>=E.length)?($throwRuntimeError("index out of range"),undefined):E[g]))));(j=($imul(e,2))+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=(i=(f&15)>>>0,((i<0||i>=E.length)?($throwRuntimeError("index out of range"),undefined):E[i]))));d++;}return $imul(b.$length,2);};$pkg.Encode=G;H.prototype.Error=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;b=C.Sprintf("encoding/hex: invalid byte: %#U",new R([new $Int32((a>>0))]));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:H.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(H).prototype.Error=function(){return new H(this.$get()).Error();};J=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;if((c=b.$length%2,c===c?c:$throwRuntimeError("integer divide by zero"))===1){return[0,$pkg.ErrLength];}d=0;while(true){if(!(d<(e=b.$length/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")))){break;}f=K((g=$imul(d,2),((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])));h=f[0];i=f[1];if(!i){return[0,new H(((j=$imul(d,2),((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))<<24>>>24))];}k=K((l=($imul(d,2))+1>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l])));m=k[0];i=k[1];if(!i){return[0,new H(((n=($imul(d,2))+1>>0,((n<0||n>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+n]))<<24>>>24))];}((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=((((h<<4<<24>>>24))|m)>>>0));d=d+(1)>>0;}return[(o=b.$length/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero")),$ifaceNil];};$pkg.Decode=J;K=function(a){var $ptr,a;if(48<=a&&a<=57){return[a-48<<24>>>24,true];}else if(97<=a&&a<=102){return[(a-97<<24>>>24)+10<<24>>>24,true];}else if(65<=a&&a<=70){return[(a-65<<24>>>24)+10<<24>>>24,true];}return[0,false];};L=function(a){var $ptr,a,b;b=$makeSlice(S,F(a.$length));G(b,a);return $bytesToString(b);};$pkg.EncodeToString=L;H.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}E=$toNativeArray($kindUint8,[48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102]);$pkg.ErrLength=B.New("encoding/hex: odd length hex string");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["internal/nettrace"]=(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["internal/singleflight"]=(function(){var $pkg={},$init,A;A=$packages["sync"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["net"]=(function(){var $pkg={},$init,E,A,C,I,N,L,K,F,G,D,H,M,B,J,AB,AC,AF,CZ,DB,DC,DD,DE,DF,DG,DH,DI,DJ,FV,FW,GD,GQ,GR,GS,HL,JE,JJ,JW,KA,KB,KD,KE,KY,MK,OV,OY,PD,PE,PF,PH,PO,PU,PV,QA,QB,QD,QE,QF,QG,QR,QT,QX,QY,QZ,RA,RB,RC,RD,RL,RO,RR,RS,RU,RV,RX,SK,SN,SS,ST,SU,SV,SY,AD,DK,FA,FQ,FR,FS,FT,FU,FX,GE,GU,GY,GZ,HA,HV,HW,HX,JG,JN,JQ,JR,JT,JU,JX,KI,KM,g,h,i,j,k,l,m,n,o,O,Q,R,S,U,AE,AG,AK,GB,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GT,GV,GW,GX,HB,HC,HD,HE,HF,HG,HH,HI,HJ,HK,ID,IE,JI,KZ,LB,LC,LE,LF,LG,LI,LJ,LL;E=$packages["context"];A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];I=$packages["internal/nettrace"];N=$packages["internal/singleflight"];L=$packages["io"];K=$packages["math/rand"];F=$packages["os"];G=$packages["runtime"];D=$packages["sort"];H=$packages["sync"];M=$packages["sync/atomic"];B=$packages["syscall"];J=$packages["time"];AB=$pkg.policyTableEntry=$newType(0,$kindStruct,"net.policyTableEntry",true,"net",false,function(Prefix_,Precedence_,Label_){this.$val=this;if(arguments.length===0){this.Prefix=PH.nil;this.Precedence=0;this.Label=0;return;}this.Prefix=Prefix_;this.Precedence=Precedence_;this.Label=Label_;});AC=$pkg.policyTable=$newType(12,$kindSlice,"net.policyTable",true,"net",false,null);AF=$pkg.byMaskLength=$newType(12,$kindSlice,"net.byMaskLength",true,"net",false,null);CZ=$pkg.dnsRR_Header=$newType(0,$kindStruct,"net.dnsRR_Header",true,"net",false,function(Name_,Rrtype_,Class_,Ttl_,Rdlength_){this.$val=this;if(arguments.length===0){this.Name="";this.Rrtype=0;this.Class=0;this.Ttl=0;this.Rdlength=0;return;}this.Name=Name_;this.Rrtype=Rrtype_;this.Class=Class_;this.Ttl=Ttl_;this.Rdlength=Rdlength_;});DB=$pkg.dnsRR_CNAME=$newType(0,$kindStruct,"net.dnsRR_CNAME",true,"net",false,function(Hdr_,Cname_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Cname="";return;}this.Hdr=Hdr_;this.Cname=Cname_;});DC=$pkg.dnsRR_MX=$newType(0,$kindStruct,"net.dnsRR_MX",true,"net",false,function(Hdr_,Pref_,Mx_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Pref=0;this.Mx="";return;}this.Hdr=Hdr_;this.Pref=Pref_;this.Mx=Mx_;});DD=$pkg.dnsRR_NS=$newType(0,$kindStruct,"net.dnsRR_NS",true,"net",false,function(Hdr_,Ns_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ns="";return;}this.Hdr=Hdr_;this.Ns=Ns_;});DE=$pkg.dnsRR_PTR=$newType(0,$kindStruct,"net.dnsRR_PTR",true,"net",false,function(Hdr_,Ptr_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ptr="";return;}this.Hdr=Hdr_;this.Ptr=Ptr_;});DF=$pkg.dnsRR_SOA=$newType(0,$kindStruct,"net.dnsRR_SOA",true,"net",false,function(Hdr_,Ns_,Mbox_,Serial_,Refresh_,Retry_,Expire_,Minttl_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ns="";this.Mbox="";this.Serial=0;this.Refresh=0;this.Retry=0;this.Expire=0;this.Minttl=0;return;}this.Hdr=Hdr_;this.Ns=Ns_;this.Mbox=Mbox_;this.Serial=Serial_;this.Refresh=Refresh_;this.Retry=Retry_;this.Expire=Expire_;this.Minttl=Minttl_;});DG=$pkg.dnsRR_TXT=$newType(0,$kindStruct,"net.dnsRR_TXT",true,"net",false,function(Hdr_,Txt_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Txt="";return;}this.Hdr=Hdr_;this.Txt=Txt_;});DH=$pkg.dnsRR_SRV=$newType(0,$kindStruct,"net.dnsRR_SRV",true,"net",false,function(Hdr_,Priority_,Weight_,Port_,Target_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Priority=0;this.Weight=0;this.Port=0;this.Target="";return;}this.Hdr=Hdr_;this.Priority=Priority_;this.Weight=Weight_;this.Port=Port_;this.Target=Target_;});DI=$pkg.dnsRR_A=$newType(0,$kindStruct,"net.dnsRR_A",true,"net",false,function(Hdr_,A_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.A=0;return;}this.Hdr=Hdr_;this.A=A_;});DJ=$pkg.dnsRR_AAAA=$newType(0,$kindStruct,"net.dnsRR_AAAA",true,"net",false,function(Hdr_,AAAA_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.AAAA=PD.zero();return;}this.Hdr=Hdr_;this.AAAA=AAAA_;});FV=$pkg.Interface=$newType(0,$kindStruct,"net.Interface",true,"net",true,function(Index_,MTU_,Name_,HardwareAddr_,Flags_){this.$val=this;if(arguments.length===0){this.Index=0;this.MTU=0;this.Name="";this.HardwareAddr=JE.nil;this.Flags=0;return;}this.Index=Index_;this.MTU=MTU_;this.Name=Name_;this.HardwareAddr=HardwareAddr_;this.Flags=Flags_;});FW=$pkg.Flags=$newType(4,$kindUint,"net.Flags",true,"net",true,null);GD=$pkg.ipv6ZoneCache=$newType(0,$kindStruct,"net.ipv6ZoneCache",true,"net",false,function(RWMutex_,lastFetched_,toIndex_,toName_){this.$val=this;if(arguments.length===0){this.RWMutex=new H.RWMutex.ptr(new H.Mutex.ptr(0,0),0,0,0,0);this.lastFetched=new J.Time.ptr(new $Int64(0,0),0,OV.nil);this.toIndex=false;this.toName=false;return;}this.RWMutex=RWMutex_;this.lastFetched=lastFetched_;this.toIndex=toIndex_;this.toName=toName_;});GQ=$pkg.IP=$newType(12,$kindSlice,"net.IP",true,"net",true,null);GR=$pkg.IPMask=$newType(12,$kindSlice,"net.IPMask",true,"net",true,null);GS=$pkg.IPNet=$newType(0,$kindStruct,"net.IPNet",true,"net",true,function(IP_,Mask_){this.$val=this;if(arguments.length===0){this.IP=GQ.nil;this.Mask=GR.nil;return;}this.IP=IP_;this.Mask=Mask_;});HL=$pkg.IPAddr=$newType(0,$kindStruct,"net.IPAddr",true,"net",true,function(IP_,Zone_){this.$val=this;if(arguments.length===0){this.IP=GQ.nil;this.Zone="";return;}this.IP=IP_;this.Zone=Zone_;});JE=$pkg.HardwareAddr=$newType(12,$kindSlice,"net.HardwareAddr",true,"net",true,null);JJ=$pkg.Addr=$newType(8,$kindInterface,"net.Addr",true,"net",true,null);JW=$pkg.OpError=$newType(0,$kindStruct,"net.OpError",true,"net",true,function(Op_,Net_,Source_,Addr_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Net="";this.Source=$ifaceNil;this.Addr=$ifaceNil;this.Err=$ifaceNil;return;}this.Op=Op_;this.Net=Net_;this.Source=Source_;this.Addr=Addr_;this.Err=Err_;});KA=$pkg.timeout=$newType(8,$kindInterface,"net.timeout",true,"net",false,null);KB=$pkg.temporary=$newType(8,$kindInterface,"net.temporary",true,"net",false,null);KD=$pkg.ParseError=$newType(0,$kindStruct,"net.ParseError",true,"net",true,function(Type_,Text_){this.$val=this;if(arguments.length===0){this.Type="";this.Text="";return;}this.Type=Type_;this.Text=Text_;});KE=$pkg.AddrError=$newType(0,$kindStruct,"net.AddrError",true,"net",true,function(Err_,Addr_){this.$val=this;if(arguments.length===0){this.Err="";this.Addr="";return;}this.Err=Err_;this.Addr=Addr_;});KY=$pkg.file=$newType(0,$kindStruct,"net.file",true,"net",false,function(file_,data_,atEOF_){this.$val=this;if(arguments.length===0){this.file=QT.nil;this.data=PE.nil;this.atEOF=false;return;}this.file=file_;this.data=data_;this.atEOF=atEOF_;});MK=$pkg.sockaddr=$newType(8,$kindInterface,"net.sockaddr",true,"net",false,null);OV=$ptrType(J.Location);OY=$sliceType($String);PD=$arrayType($Uint8,16);PE=$sliceType($Uint8);PF=$structType("",[]);PH=$ptrType(GS);PO=$ptrType(HL);PU=$ptrType(CZ);PV=$ptrType(DB);QA=$ptrType(DI);QB=$ptrType(DJ);QD=$ptrType(DE);QE=$ptrType($Uint32);QF=$ptrType($Uint16);QG=$ptrType($String);QR=$ptrType(F.SyscallError);QT=$ptrType(F.File);QX=$ptrType(KY);QY=$ptrType(FV);QZ=$sliceType(JJ);RA=$sliceType(FV);RB=$ptrType(B.IfInfomsg);RC=$ptrType(B.IfAddrmsg);RD=$arrayType($Uint8,4);RL=$ptrType(DH);RO=$ptrType(DC);RR=$ptrType(DD);RS=$ptrType(DG);RU=$ptrType(JW);RV=$ptrType(KE);RX=$arrayType($Uint8,20);SK=$funcType([$emptyInterface,$String,$String],[$Bool],false);SN=$ptrType(DF);SS=$ptrType(GD);ST=$mapType($String,$Int);SU=$mapType($Int,$String);SV=$ptrType(GQ);SY=$ptrType(KD);O=function(p,q){var $ptr,p,q;return $parseInt(p.indexOf($global.String.fromCharCode(q)))>>0;};Q=function(){var $ptr;};R=function(){var $ptr;return false;};S=function(){var $ptr,p,q,r,s;p=false;q=false;r=false;s=false;p=r;q=s;return[p,q];};U=function(){var $ptr;return 128;};AE=function(){var $ptr,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=D.Sort(D.Reverse($subslice(new AF(AD.$array),AD.$offset,AD.$offset+AD.$length)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Len=function(){var $ptr,p;p=this;return p.$length;};$ptrType(AF).prototype.Len=function(){return this.$get().Len();};AF.prototype.Swap=function(p,q){var $ptr,p,q,r,s,t;r=this;s=$clone(((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]),AB);t=$clone(((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]),AB);AB.copy(((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]),s);AB.copy(((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]),t);};$ptrType(AF).prototype.Swap=function(p,q){return this.$get().Swap(p,q);};AF.prototype.Less=function(p,q){var $ptr,p,q,r,s,t,u,v;r=this;s=((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]).Prefix.Mask.Size();t=s[0];u=((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]).Prefix.Mask.Size();v=u[0];return t<v;};$ptrType(AF).prototype.Less=function(p,q){return this.$get().Less(p,q);};AG=function(p){var $ptr,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=HK(p);r=q[0];s=q[1];t=q[2];if(!($interfaceIsEqual(t,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:u=t.Error();$s=3;case 3:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$panic(new $String(u));case 2:if(!((r.$length===16))){$panic(new $String("unexpected IP length"));}$s=-1;return s;}return;}if($f===undefined){$f={$blk:AG};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Classify=function(p){var $ptr,p,q,r,s,t;q=this;r=q;s=0;while(true){if(!(s<r.$length)){break;}t=$clone(((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]),AB);if(t.Prefix.Contains(p)){return t;}s++;}return new AB.ptr(PH.nil,0,0);};$ptrType(AC).prototype.Classify=function(p){return this.$get().Classify(p);};AK=function(){var $ptr;JG=true;};CZ.ptr.prototype.Header=function(){var $ptr,p;p=this;return p;};CZ.prototype.Header=function(){return this.$val.Header();};CZ.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;v=p((q.$ptr_Name||(q.$ptr_Name=new QG(function(){return this.$target.Name;},function($v){this.$target.Name=$v;},q))),"Name","domain");$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}if(!(v)){u=false;$s=4;continue s;}w=p((q.$ptr_Rrtype||(q.$ptr_Rrtype=new QF(function(){return this.$target.Rrtype;},function($v){this.$target.Rrtype=$v;},q))),"Rrtype","");$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;case 4:if(!(u)){t=false;$s=3;continue s;}x=p((q.$ptr_Class||(q.$ptr_Class=new QF(function(){return this.$target.Class;},function($v){this.$target.Class=$v;},q))),"Class","");$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}t=x;case 3:if(!(t)){s=false;$s=2;continue s;}y=p((q.$ptr_Ttl||(q.$ptr_Ttl=new QE(function(){return this.$target.Ttl;},function($v){this.$target.Ttl=$v;},q))),"Ttl","");$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}s=y;case 2:if(!(s)){r=false;$s=1;continue s;}z=p((q.$ptr_Rdlength||(q.$ptr_Rdlength=new QF(function(){return this.$target.Rdlength;},function($v){this.$target.Rdlength=$v;},q))),"Rdlength","");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}r=z;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:CZ.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CZ.prototype.Walk=function(p){return this.$val.Walk(p);};DB.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DB.prototype.Header=function(){return this.$val.Header();};DB.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Cname||(q.$ptr_Cname=new QG(function(){return this.$target.Cname;},function($v){this.$target.Cname=$v;},q))),"Cname","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DB.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DB.prototype.Walk=function(p){return this.$val.Walk(p);};DC.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DC.prototype.Header=function(){return this.$val.Header();};DC.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;t=q.Hdr.Walk(p);$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}if(!(t)){s=false;$s=2;continue s;}u=p((q.$ptr_Pref||(q.$ptr_Pref=new QF(function(){return this.$target.Pref;},function($v){this.$target.Pref=$v;},q))),"Pref","");$s=4;case 4:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}s=u;case 2:if(!(s)){r=false;$s=1;continue s;}v=p((q.$ptr_Mx||(q.$ptr_Mx=new QG(function(){return this.$target.Mx;},function($v){this.$target.Mx=$v;},q))),"Mx","domain");$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}r=v;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DC.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};DC.prototype.Walk=function(p){return this.$val.Walk(p);};DD.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DD.prototype.Header=function(){return this.$val.Header();};DD.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Ns||(q.$ptr_Ns=new QG(function(){return this.$target.Ns;},function($v){this.$target.Ns=$v;},q))),"Ns","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DD.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DD.prototype.Walk=function(p){return this.$val.Walk(p);};DE.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DE.prototype.Header=function(){return this.$val.Header();};DE.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Ptr||(q.$ptr_Ptr=new QG(function(){return this.$target.Ptr;},function($v){this.$target.Ptr=$v;},q))),"Ptr","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DE.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DE.prototype.Walk=function(p){return this.$val.Walk(p);};DF.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DF.prototype.Header=function(){return this.$val.Header();};DF.ptr.prototype.Walk=function(p){var $ptr,aa,ab,ac,ad,ae,af,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;y=q.Hdr.Walk(p);$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(!(y)){x=false;$s=7;continue s;}z=p((q.$ptr_Ns||(q.$ptr_Ns=new QG(function(){return this.$target.Ns;},function($v){this.$target.Ns=$v;},q))),"Ns","domain");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}x=z;case 7:if(!(x)){w=false;$s=6;continue s;}aa=p((q.$ptr_Mbox||(q.$ptr_Mbox=new QG(function(){return this.$target.Mbox;},function($v){this.$target.Mbox=$v;},q))),"Mbox","domain");$s=10;case 10:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}w=aa;case 6:if(!(w)){v=false;$s=5;continue s;}ab=p((q.$ptr_Serial||(q.$ptr_Serial=new QE(function(){return this.$target.Serial;},function($v){this.$target.Serial=$v;},q))),"Serial","");$s=11;case 11:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}v=ab;case 5:if(!(v)){u=false;$s=4;continue s;}ac=p((q.$ptr_Refresh||(q.$ptr_Refresh=new QE(function(){return this.$target.Refresh;},function($v){this.$target.Refresh=$v;},q))),"Refresh","");$s=12;case 12:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}u=ac;case 4:if(!(u)){t=false;$s=3;continue s;}ad=p((q.$ptr_Retry||(q.$ptr_Retry=new QE(function(){return this.$target.Retry;},function($v){this.$target.Retry=$v;},q))),"Retry","");$s=13;case 13:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}t=ad;case 3:if(!(t)){s=false;$s=2;continue s;}ae=p((q.$ptr_Expire||(q.$ptr_Expire=new QE(function(){return this.$target.Expire;},function($v){this.$target.Expire=$v;},q))),"Expire","");$s=14;case 14:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}s=ae;case 2:if(!(s)){r=false;$s=1;continue s;}af=p((q.$ptr_Minttl||(q.$ptr_Minttl=new QE(function(){return this.$target.Minttl;},function($v){this.$target.Minttl=$v;},q))),"Minttl","");$s=15;case 15:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}r=af;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DF.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};DF.prototype.Walk=function(p){return this.$val.Walk(p);};DG.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DG.prototype.Header=function(){return this.$val.Header();};DG.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;r=q.Hdr.Walk(p);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!r){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:s=0;case 4:if(!(s<q.Hdr.Rdlength)){$s=5;continue;}t=[t];t[0]="";u=p((t.$ptr||(t.$ptr=new QG(function(){return this.$target[0];},function($v){this.$target[0]=$v;},t))),"Txt","");$s=8;case 8:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}if(!u){$s=6;continue;}$s=7;continue;case 6:$s=-1;return false;case 7:if((q.Hdr.Rdlength-s<<16>>>16)<((t[0].length<<16>>>16)+1<<16>>>16)){$s=-1;return false;}s=s+(((t[0].length<<16>>>16)+1<<16>>>16))<<16>>>16;q.Txt=q.Txt+(t[0]);$s=4;continue;case 5:$s=-1;return true;}return;}if($f===undefined){$f={$blk:DG.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};DG.prototype.Walk=function(p){return this.$val.Walk(p);};DH.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DH.prototype.Header=function(){return this.$val.Header();};DH.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;v=q.Hdr.Walk(p);$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}if(!(v)){u=false;$s=4;continue s;}w=p((q.$ptr_Priority||(q.$ptr_Priority=new QF(function(){return this.$target.Priority;},function($v){this.$target.Priority=$v;},q))),"Priority","");$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;case 4:if(!(u)){t=false;$s=3;continue s;}x=p((q.$ptr_Weight||(q.$ptr_Weight=new QF(function(){return this.$target.Weight;},function($v){this.$target.Weight=$v;},q))),"Weight","");$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}t=x;case 3:if(!(t)){s=false;$s=2;continue s;}y=p((q.$ptr_Port||(q.$ptr_Port=new QF(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},q))),"Port","");$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}s=y;case 2:if(!(s)){r=false;$s=1;continue s;}z=p((q.$ptr_Target||(q.$ptr_Target=new QG(function(){return this.$target.Target;},function($v){this.$target.Target=$v;},q))),"Target","domain");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}r=z;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DH.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};DH.prototype.Walk=function(p){return this.$val.Walk(p);};DI.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DI.prototype.Header=function(){return this.$val.Header();};DI.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_A||(q.$ptr_A=new QE(function(){return this.$target.A;},function($v){this.$target.A=$v;},q))),"A","ipv4");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Walk=function(p){return this.$val.Walk(p);};DJ.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DJ.prototype.Header=function(){return this.$val.Header();};DJ.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p(new PE(q.AAAA),"AAAA","ipv6");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DJ.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DJ.prototype.Walk=function(p){return this.$val.Walk(p);};FW.prototype.String=function(){var $ptr,p,q,r,s,t,u,v;p=this.$val;q="";r=FX;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(!((((p&(((v=(t>>>0),v<32?(1<<v):0)>>>0)))>>>0)===0))){if(!(q==="")){q=q+("|");}q=q+(u);}s++;}if(q===""){q="0";}return q;};$ptrType(FW).prototype.String=function(){return new FW(this.$get()).String();};FV.ptr.prototype.Addrs=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===QY.nil){$s=-1;return[QZ.nil,new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,FQ)];}r=GK(p);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){t=new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,t);}$s=-1;return[s,t];}return;}if($f===undefined){$f={$blk:FV.ptr.prototype.Addrs};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};FV.prototype.Addrs=function(){return this.$val.Addrs();};FV.ptr.prototype.MulticastAddrs=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===QY.nil){$s=-1;return[QZ.nil,new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,FQ)];}r=GN(p);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){t=new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,t);}$s=-1;return[s,t];}return;}if($f===undefined){$f={$blk:FV.ptr.prototype.MulticastAddrs};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};FV.prototype.MulticastAddrs=function(){return this.$val.MulticastAddrs();};GB=function(p,q){var $ptr,p,q,r,s,t;r=p;s=0;while(true){if(!(s<r.$length)){break;}t=$clone(((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]),FV);if(q===t.Index){return[t,$ifaceNil];}s++;}return[QY.nil,FT];};GH=function(p){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=[q];s=B.NetlinkRIB(18,0);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("netlinkrib",u)];}v=B.ParseNetlinkMessage(t);w=v[0];u=v[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("parsenetlinkmessage",u)];}x=RA.nil;y=w;z=0;loop:while(true){if(!(z<y.$length)){break;}q[0]=$clone(((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z]),B.NetlinkMessage);aa=q[0].Header.Type;if(aa===(3)){break loop;}else if(aa===(16)){ab=$pointerOfStructConversion($sliceToArray(q[0].Data),RB);if((p===0)||(p===(ab.Index>>0))){ac=B.ParseNetlinkRouteAttr(q[0]);ad=ac[0];ae=ac[1];if(!($interfaceIsEqual(ae,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("parsenetlinkrouteattr",ae)];}x=$append(x,GI(ab,ad));if(p===(ab.Index>>0)){break loop;}}}z++;}$s=-1;return[x,$ifaceNil];}return;}if($f===undefined){$f={$blk:GH};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};GI=function(p,q){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z;r=new FV.ptr((p.Index>>0),0,"",JE.nil,GJ(p.Flags));s=q;t=0;while(true){if(!(t<s.$length)){break;}u=$clone(((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]),B.NetlinkRouteAttr);v=u.Attr.Type;if(v===(1)){w=u.Value.$length;if(w===(4)){x=p.Type;if((x===(768))||(x===(778))||(x===(776))){t++;continue;}}else if(w===(16)){y=p.Type;if((y===(769))||(y===(823))){t++;continue;}}z=false;aa=u.Value;ab=0;while(true){if(!(ab<aa.$length)){break;}ac=((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]);if(!((ac===0))){z=true;break;}ab++;}if(z){r.HardwareAddr=(ad=u.Value,$subslice(new JE(ad.$array),ad.$offset,ad.$offset+ad.$length));}}else if(v===(3)){r.Name=$bytesToString($subslice(u.Value,0,(u.Value.$length-1>>0)));}else if(v===(4)){r.MTU=((ae=$subslice(u.Value,0,4),(0>=ae.$length?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+0]))>>0);}t++;}return r;};GJ=function(p){var $ptr,p,q;q=0;if(!((((p&1)>>>0)===0))){q=(q|(1))>>>0;}if(!((((p&2)>>>0)===0))){q=(q|(2))>>>0;}if(!((((p&8)>>>0)===0))){q=(q|(4))>>>0;}if(!((((p&16)>>>0)===0))){q=(q|(8))>>>0;}if(!((((p&4096)>>>0)===0))){q=(q|(16))>>>0;}return q;};GK=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:r=B.NetlinkRIB(22,0);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,F.NewSyscallError("netlinkrib",t)];}u=B.ParseNetlinkMessage(s);v=u[0];t=u[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,F.NewSyscallError("parsenetlinkmessage",t)];}w=RA.nil;if(p===QY.nil){$s=2;continue;}$s=3;continue;case 2:x=$ifaceNil;z=GH(0);$s=4;case 4:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;w=y[0];x=y[1];if(!($interfaceIsEqual(x,$ifaceNil))){$s=-1;return[QZ.nil,x];}case 3:aa=GL(w,p,v);ab=aa[0];t=aa[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,t];}$s=-1;return[ab,$ifaceNil];}return;}if($f===undefined){$f={$blk:GK};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};GL=function(p,q,r){var $ptr,aa,ab,ac,ad,p,q,r,s,t,u,v,w,x,y,z;s=QZ.nil;t=r;u=0;loop:while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),B.NetlinkMessage);w=v.Header.Type;if(w===(3)){break loop;}else if(w===(20)){x=$pointerOfStructConversion($sliceToArray(v.Data),RC);if(!((p.$length===0))||(q.Index===(x.Index>>0))){if(!((p.$length===0))){y=$ifaceNil;z=GB(p,(x.Index>>0));q=z[0];y=z[1];if(!($interfaceIsEqual(y,$ifaceNil))){return[QZ.nil,y];}}aa=B.ParseNetlinkRouteAttr(v);ab=aa[0];ac=aa[1];if(!($interfaceIsEqual(ac,$ifaceNil))){return[QZ.nil,F.NewSyscallError("parsenetlinkrouteattr",ac)];}ad=GM(q,x,ab);if(!($interfaceIsEqual(ad,$ifaceNil))){s=$append(s,ad);}}}u++;}return[s,$ifaceNil];};GM=function(p,q,r){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z;s=false;t=r;u=0;while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),B.NetlinkRouteAttr);if(v.Attr.Type===2){s=true;break;}u++;}w=r;x=0;while(true){if(!(x<w.$length)){break;}y=$clone(((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]),B.NetlinkRouteAttr);if(s&&(y.Attr.Type===1)){x++;continue;}z=q.Family;if(z===(2)){return new GS.ptr(GT((aa=y.Value,(0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])),(ab=y.Value,(1>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+1])),(ac=y.Value,(2>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+2])),(ad=y.Value,(3>=ad.$length?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+3]))),GW((q.Prefixlen>>0),32));}else if(z===(10)){ae=new GS.ptr($makeSlice(GQ,16),GW((q.Prefixlen>>0),128));$copySlice(ae.IP,y.Value);return ae;}x++;}return $ifaceNil;};GN=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=GO("/proc/net/igmp",p);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=GP("/proc/net/igmp6",p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;$s=-1;return[$appendSlice(r,t),$ifaceNil];}return;}if($f===undefined){$f={$blk:GN};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};GO=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);r=KZ(p);s=r[0];t=r[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return QZ.nil;}$deferred.push([$methodVal(s,"close"),[]]);u=QZ.nil;v="";w=s.readLine();$s=1;case 1:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;x=$makeSlice(PE,4);z=s.readLine();$s=2;case 2:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];case 3:if(!(ab)){$s=4;continue;}ac=LC(aa," :\r\t\n");if(ac.$length<4){$s=5;continue;}$s=6;continue;case 5:ae=s.readLine();$s=7;case 7:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;aa=ad[0];ab=ad[1];$s=3;continue;case 6:if(!((aa.charCodeAt(0)===32))&&!((aa.charCodeAt(0)===9))){v=(1>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+1]);}else if(((0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]).length===8)){if(q===QY.nil||v===q.Name){af=0;while(true){if(!((af+1>>0)<(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]).length)){break;}ag=LG($substring((0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]),af,(af+2>>0)),0);(ah=(ai=af/2,(ai===ai&&ai!==1/0&&ai!==-1/0)?ai>>0:$throwRuntimeError("integer divide by zero")),((ah<0||ah>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+ah]=ag[0]));af=af+(2)>>0;}ak=(aj=$subslice(x,0,4),(0>=aj.$length?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+0]));al=new HL.ptr(GT(((ak>>>24>>>0)<<24>>>24),((ak>>>16>>>0)<<24>>>24),((ak>>>8>>>0)<<24>>>24),(ak<<24>>>24)),"");u=$append(u,al);}}an=s.readLine();$s=8;case 8:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;aa=am[0];ab=am[1];$s=3;continue;case 4:$s=-1;return u;}return;}}catch(err){$err=err;$s=-1;return QZ.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:GO};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};GP=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);r=KZ(p);s=r[0];t=r[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return QZ.nil;}$deferred.push([$methodVal(s,"close"),[]]);u=QZ.nil;v=$makeSlice(PE,16);x=s.readLine();$s=1;case 1:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];z=w[1];case 2:if(!(z)){$s=3;continue;}aa=LC(y," \r\t\n");if(aa.$length<6){$s=4;continue;}$s=5;continue;case 4:ac=s.readLine();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;y=ab[0];z=ab[1];$s=2;continue;case 5:if(q===QY.nil||(1>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+1])===q.Name){ad=0;while(true){if(!((ad+1>>0)<(2>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+2]).length)){break;}ae=LG($substring((2>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+2]),ad,(ad+2>>0)),0);(af=(ag=ad/2,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero")),((af<0||af>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+af]=ae[0]));ad=ad+(2)>>0;}ah=new HL.ptr(new GQ([(0>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+0]),(1>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+1]),(2>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+2]),(3>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+3]),(4>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+4]),(5>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+5]),(6>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+6]),(7>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+7]),(8>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+8]),(9>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+9]),(10>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+10]),(11>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+11]),(12>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+12]),(13>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+13]),(14>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+14]),(15>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+15])]),"");u=$append(u,ah);}aj=s.readLine();$s=7;case 7:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;y=ai[0];z=ai[1];$s=2;continue;case 3:$s=-1;return u;}return;}}catch(err){$err=err;$s=-1;return QZ.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:GP};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};GT=function(p,q,r,s){var $ptr,p,q,r,s,t;t=$makeSlice(GQ,16);$copySlice(t,GU);(12>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+12]=p);(13>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+13]=q);(14>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+14]=r);(15>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+15]=s);return t;};$pkg.IPv4=GT;GV=function(p,q,r,s){var $ptr,p,q,r,s,t;t=$makeSlice(GR,4);(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]=p);(1>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+1]=q);(2>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+2]=r);(3>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+3]=s);return t;};$pkg.IPv4Mask=GV;GW=function(p,q){var $ptr,p,q,r,s,t,u,v,w;if(!((q===32))&&!((q===128))){return GR.nil;}if(p<0||p>q){return GR.nil;}s=(r=q/8,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"));t=$makeSlice(GR,s);u=(p>>>0);v=0;while(true){if(!(v<s)){break;}if(u>=8){((v<0||v>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+v]=255);u=u-(8)>>>0;v=v+(1)>>0;continue;}((v<0||v>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+v]=(~((w=u,w<32?(255>>>w):0)<<24>>>24)<<24>>>24));u=0;v=v+(1)>>0;}return t;};$pkg.CIDRMask=GW;GQ.prototype.IsUnspecified=function(){var $ptr,p;p=this;return p.Equal($pkg.IPv4zero)||p.Equal($pkg.IPv6unspecified);};$ptrType(GQ).prototype.IsUnspecified=function(){return this.$get().IsUnspecified();};GQ.prototype.IsLoopback=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===127;}return p.Equal($pkg.IPv6loopback);};$ptrType(GQ).prototype.IsLoopback=function(){return this.$get().IsLoopback();};GQ.prototype.IsMulticast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return(((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])&240)>>>0)===224;}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255);};$ptrType(GQ).prototype.IsMulticast=function(){return this.$get().IsMulticast();};GQ.prototype.IsInterfaceLocalMulticast=function(){var $ptr,p;p=this;return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&15)>>>0)===1);};$ptrType(GQ).prototype.IsInterfaceLocalMulticast=function(){return this.$get().IsInterfaceLocalMulticast();};GQ.prototype.IsLinkLocalMulticast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===224)&&((1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])===0)&&((2>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+2])===0);}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&15)>>>0)===2);};$ptrType(GQ).prototype.IsLinkLocalMulticast=function(){return this.$get().IsLinkLocalMulticast();};GQ.prototype.IsLinkLocalUnicast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===169)&&((1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])===254);}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===254)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&192)>>>0)===128);};$ptrType(GQ).prototype.IsLinkLocalUnicast=function(){return this.$get().IsLinkLocalUnicast();};GQ.prototype.IsGlobalUnicast=function(){var $ptr,p;p=this;return((p.$length===4)||(p.$length===16))&&!p.Equal($pkg.IPv4bcast)&&!p.IsUnspecified()&&!p.IsLoopback()&&!p.IsMulticast()&&!p.IsLinkLocalUnicast();};$ptrType(GQ).prototype.IsGlobalUnicast=function(){return this.$get().IsGlobalUnicast();};GX=function(p){var $ptr,p,q;q=0;while(true){if(!(q<p.$length)){break;}if(!((((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q])===0))){return false;}q=q+(1)>>0;}return true;};GQ.prototype.To4=function(){var $ptr,p;p=this;if(p.$length===4){return p;}if((p.$length===16)&&GX($subslice(p,0,10))&&((10>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+10])===255)&&((11>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+11])===255)){return $subslice(p,12,16);}return GQ.nil;};$ptrType(GQ).prototype.To4=function(){return this.$get().To4();};GQ.prototype.To16=function(){var $ptr,p;p=this;if(p.$length===4){return GT((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0]),(1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1]),(2>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+2]),(3>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+3]));}if(p.$length===16){return p;}return GQ.nil;};$ptrType(GQ).prototype.To16=function(){return this.$get().To16();};GQ.prototype.DefaultMask=function(){var $ptr,p,q;p=this;p=p.To4();if(p===GQ.nil){return GR.nil;}q=true;if(q===((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])<128)){return GY;}else if(q===((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])<192)){return GZ;}else{return HA;}};$ptrType(GQ).prototype.DefaultMask=function(){return this.$get().DefaultMask();};HB=function(p){var $ptr,p,q,r,s;q=p;r=0;while(true){if(!(r<q.$length)){break;}s=((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]);if(!((s===255))){return false;}r++;}return true;};GQ.prototype.Mask=function(p){var $ptr,p,q,r,s,t,u,v;q=this;if((p.$length===16)&&(q.$length===4)&&HB((r=$subslice(p,0,12),$subslice(new PE(r.$array),r.$offset,r.$offset+r.$length)))){p=$subslice(p,12);}if((p.$length===4)&&(q.$length===16)&&HE((s=$subslice(q,0,12),$subslice(new PE(s.$array),s.$offset,s.$offset+s.$length)),GU)){q=$subslice(q,12);}t=q.$length;if(!((t===p.$length))){return GQ.nil;}u=$makeSlice(GQ,t);v=0;while(true){if(!(v<t)){break;}((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]=((((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])&((v<0||v>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+v]))>>>0));v=v+(1)>>0;}return u;};$ptrType(GQ).prototype.Mask=function(p){return this.$get().Mask(p);};GQ.prototype.String=function(){var $ptr,p,q,r,s,t,u,v,w,x,y,z;p=this;q=p;if(p.$length===0){return"<nil>";}r=q.To4();if(r.$length===4){return LI(((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])>>>0))+"."+LI(((1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1])>>>0))+"."+LI(((2>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+2])>>>0))+"."+LI(((3>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+3])>>>0));}if(!((q.$length===16))){return"?"+HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}s=-1;t=-1;u=0;while(true){if(!(u<16)){break;}v=u;while(true){if(!(v<16&&(((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])===0)&&((w=v+1>>0,((w<0||w>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+w]))===0))){break;}v=v+(2)>>0;}if(v>u&&(v-u>>0)>(t-s>>0)){s=u;t=v;u=v;}u=u+(2)>>0;}if((t-s>>0)<=2){s=-1;t=-1;}x=$makeSlice(PE,0,39);y=0;while(true){if(!(y<16)){break;}if(y===s){x=$append(x,58,58);y=t;if(y>=16){break;}}else if(y>0){x=$append(x,58);}x=LJ(x,((((((y<0||y>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+y])>>>0)<<8>>>0))|((z=y+1>>0,((z<0||z>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+z]))>>>0))>>>0);y=y+(2)>>0;}return $bytesToString(x);};$ptrType(GQ).prototype.String=function(){return this.$get().String();};HC=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y;q=$makeSlice(PE,($imul(p.$length,2)));r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);v="0123456789abcdef".charCodeAt((u>>>4<<24>>>24));w="0123456789abcdef".charCodeAt(((u&15)>>>0));(x=$imul(t,2),((x<0||x>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+x]=v));(y=($imul(t,2))+1>>0,((y<0||y>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+y]=w));s++;}return $bytesToString(q);};HD=function(p){var $ptr,p;if(p.$length===0){return"";}return p.String();};GQ.prototype.MarshalText=function(){var $ptr,p;p=this;if(p.$length===0){return[new PE($stringToBytes("")),$ifaceNil];}if(!((p.$length===4))&&!((p.$length===16))){return[PE.nil,new KE.ptr("invalid IP address",HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length)))];}return[new PE($stringToBytes(p.String())),$ifaceNil];};$ptrType(GQ).prototype.MarshalText=function(){return this.$get().MarshalText();};$ptrType(GQ).prototype.UnmarshalText=function(p){var $ptr,p,q,r,s;q=this;if(p.$length===0){q.$set(GQ.nil);return $ifaceNil;}r=$bytesToString(p);s=HJ(r);if(s===GQ.nil){return new KD.ptr("IP address",r);}q.$set(s);return $ifaceNil;};GQ.prototype.Equal=function(p){var $ptr,p,q,r,s,t,u;q=this;if(q.$length===p.$length){return HE($subslice(new PE(q.$array),q.$offset,q.$offset+q.$length),$subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}if((q.$length===4)&&(p.$length===16)){return HE((r=$subslice(p,0,12),$subslice(new PE(r.$array),r.$offset,r.$offset+r.$length)),GU)&&HE($subslice(new PE(q.$array),q.$offset,q.$offset+q.$length),(s=$subslice(p,12),$subslice(new PE(s.$array),s.$offset,s.$offset+s.$length)));}if((q.$length===16)&&(p.$length===4)){return HE((t=$subslice(q,0,12),$subslice(new PE(t.$array),t.$offset,t.$offset+t.$length)),GU)&&HE((u=$subslice(q,12),$subslice(new PE(u.$array),u.$offset,u.$offset+u.$length)),$subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}return false;};$ptrType(GQ).prototype.Equal=function(p){return this.$get().Equal(p);};HE=function(p,q){var $ptr,p,q,r,s,t,u;if(!((p.$length===q.$length))){return false;}r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(!((((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t])===u))){return false;}s++;}return true;};HF=function(p){var $ptr,p,q,r,s,t,u,v;q=0;r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(u===255){q=q+(8)>>0;s++;continue;}while(true){if(!(!((((u&128)>>>0)===0)))){break;}q=q+(1)>>0;u=(v=(1),v<32?(u<<v):0)<<24>>>24;}if(!((u===0))){return-1;}t=t+(1)>>0;while(true){if(!(t<p.$length)){break;}if(!((((t<0||t>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+t])===0))){return-1;}t=t+(1)>>0;}break;}return q;};GR.prototype.Size=function(){var $ptr,p,q,r,s,t,u,v;p=0;q=0;r=this;s=HF(r);t=$imul(r.$length,8);p=s;q=t;if(p===-1){u=0;v=0;p=u;q=v;return[p,q];}return[p,q];};$ptrType(GR).prototype.Size=function(){return this.$get().Size();};GR.prototype.String=function(){var $ptr,p;p=this;if(p.$length===0){return"<nil>";}return HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));};$ptrType(GR).prototype.String=function(){return this.$get().String();};HG=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y;q=GQ.nil;r=GR.nil;q=p.IP.To4();if(q===GQ.nil){q=p.IP;if(!((q.$length===16))){s=GQ.nil;t=GR.nil;q=s;r=t;return[q,r];}}r=p.Mask;u=r.$length;if(u===(4)){if(!((q.$length===4))){v=GQ.nil;w=GR.nil;q=v;r=w;return[q,r];}}else if(u===(16)){if(q.$length===4){r=$subslice(r,12);}}else{x=GQ.nil;y=GR.nil;q=x;r=y;return[q,r];}return[q,r];};GS.ptr.prototype.Contains=function(p){var $ptr,p,q,r,s,t,u,v,w;q=this;r=HG(q);s=r[0];t=r[1];u=p.To4();if(!(u===GQ.nil)){p=u;}v=p.$length;if(!((v===s.$length))){return false;}w=0;while(true){if(!(w<v)){break;}if(!((((((w<0||w>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+w])&((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]))>>>0)===((((w<0||w>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+w])&((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]))>>>0)))){return false;}w=w+(1)>>0;}return true;};GS.prototype.Contains=function(p){return this.$val.Contains(p);};GS.ptr.prototype.Network=function(){var $ptr,p;p=this;return"ip+net";};GS.prototype.Network=function(){return this.$val.Network();};GS.ptr.prototype.String=function(){var $ptr,p,q,r,s,t;p=this;q=HG(p);r=q[0];s=q[1];if(r===GQ.nil||s===GR.nil){return"<nil>";}t=HF(s);if(t===-1){return r.String()+"/"+s.String();}return r.String()+"/"+LI((t>>>0));};GS.prototype.String=function(){return this.$val.String();};HH=function(p){var $ptr,p,q,r,s,t,u,v;q=RD.zero();r=0;while(true){if(!(r<4)){break;}if(p.length===0){return GQ.nil;}if(r>0){if(!((p.charCodeAt(0)===46))){return GQ.nil;}p=$substring(p,1);}s=LE(p);t=s[0];u=s[1];v=s[2];if(!v||t>255){return GQ.nil;}p=$substring(p,u);((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(t<<24>>>24));r=r+(1)>>0;}if(!((p.length===0))){return GQ.nil;}return GT(q[0],q[1],q[2],q[3]);};HI=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,p,q,r,s,t,u,v,w,x,y,z;r=GQ.nil;s="";r=$makeSlice(GQ,16);t=-1;if(q){u=IE(p);p=u[0];s=u[1];}if(p.length>=2&&(p.charCodeAt(0)===58)&&(p.charCodeAt(1)===58)){t=0;p=$substring(p,2);if(p.length===0){v=r;w=s;r=v;s=w;return[r,s];}}x=0;while(true){if(!(x<16)){break;}y=LF(p);z=y[0];aa=y[1];ab=y[2];if(!ab||z>65535){ac=GQ.nil;ad=s;r=ac;s=ad;return[r,s];}if(aa<p.length&&(p.charCodeAt(aa)===46)){if(t<0&&!((x===12))){ae=GQ.nil;af=s;r=ae;s=af;return[r,s];}if((x+4>>0)>16){ag=GQ.nil;ah=s;r=ag;s=ah;return[r,s];}ai=HH(p);if(ai===GQ.nil){aj=GQ.nil;ak=s;r=aj;s=ak;return[r,s];}((x<0||x>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+x]=(12>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+12]));(al=x+1>>0,((al<0||al>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+al]=(13>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+13])));(am=x+2>>0,((am<0||am>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+am]=(14>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+14])));(an=x+3>>0,((an<0||an>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+an]=(15>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+15])));p="";x=x+(4)>>0;break;}((x<0||x>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+x]=((z>>8>>0)<<24>>>24));(ao=x+1>>0,((ao<0||ao>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ao]=(z<<24>>>24)));x=x+(2)>>0;p=$substring(p,aa);if(p.length===0){break;}if(!((p.charCodeAt(0)===58))||(p.length===1)){ap=GQ.nil;aq=s;r=ap;s=aq;return[r,s];}p=$substring(p,1);if(p.charCodeAt(0)===58){if(t>=0){ar=GQ.nil;as=s;r=ar;s=as;return[r,s];}t=x;p=$substring(p,1);if(p.length===0){break;}}}if(!((p.length===0))){at=GQ.nil;au=s;r=at;s=au;return[r,s];}if(x<16){if(t<0){av=GQ.nil;aw=s;r=av;s=aw;return[r,s];}ax=16-x>>0;ay=x-1>>0;while(true){if(!(ay>=t)){break;}(az=ay+ax>>0,((az<0||az>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+az]=((ay<0||ay>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ay])));ay=ay-(1)>>0;}ba=(t+ax>>0)-1>>0;while(true){if(!(ba>=t)){break;}((ba<0||ba>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ba]=0);ba=ba-(1)>>0;}}else if(t>=0){bb=GQ.nil;bc=s;r=bb;s=bc;return[r,s];}bd=r;be=s;r=bd;s=be;return[r,s];};HJ=function(p){var $ptr,p,q,r,s,t;q=0;while(true){if(!(q<p.length)){break;}r=p.charCodeAt(q);if(r===(46)){return HH(p);}else if(r===(58)){s=HI(p,false);t=s[0];return t;}q=q+(1)>>0;}return GQ.nil;};$pkg.ParseIP=HJ;HK=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=O(p,47);if(q<0){return[GQ.nil,PH.nil,new KD.ptr("CIDR address",p)];}r=$substring(p,0,q);s=$substring(p,(q+1>>0));t=r;u=s;v=4;w=HH(t);if(w===GQ.nil){v=16;x=HI(t,false);w=x[0];}y=LE(u);z=y[0];q=y[1];aa=y[2];if(w===GQ.nil||!aa||!((q===u.length))||z<0||z>($imul(8,v))){return[GQ.nil,PH.nil,new KD.ptr("CIDR address",p)];}ab=GW(z,$imul(8,v));return[w,new GS.ptr(w.Mask(ab),ab),$ifaceNil];};$pkg.ParseCIDR=HK;HL.ptr.prototype.Network=function(){var $ptr,p;p=this;return"ip";};HL.prototype.Network=function(){return this.$val.Network();};HL.ptr.prototype.String=function(){var $ptr,p,q;p=this;if(p===PO.nil){return"<nil>";}q=HD(p.IP);if(!(p.Zone==="")){return q+"%"+p.Zone;}return q;};HL.prototype.String=function(){return this.$val.String();};ID=function(p){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q="";r="";s=$ifaceNil;t=(function(t,u){var $ptr,aa,t,u,v,w,x,y,z;v="";w="";x=$ifaceNil;y="";z="";aa=new KE.ptr(u,t);v=y;w=z;x=aa;return[v,w,x];});u=0;v=0;w=u;x=v;y=LL(p,58);if(y<0){$s=1;continue;}$s=2;continue;case 1:aa=t(p,"missing port in address");$s=3;case 3:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;q=z[0];r=z[1];s=z[2];$s=-1;return[q,r,s];case 2:if(p.charCodeAt(0)===91){$s=4;continue;}$s=5;continue;case 4:ab=O(p,93);if(ab<0){$s=7;continue;}$s=8;continue;case 7:ad=t(p,"missing ']' in address");$s=9;case 9:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;q=ac[0];r=ac[1];s=ac[2];$s=-1;return[q,r,s];case 8:ae=ab+1>>0;if(ae===(p.length)){$s=11;continue;}if(ae===(y)){$s=12;continue;}$s=13;continue;case 11:ag=t(p,"missing port in address");$s=15;case 15:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;q=af[0];r=af[1];s=af[2];$s=-1;return[q,r,s];case 12:$s=14;continue;case 13:if(p.charCodeAt((ab+1>>0))===58){$s=16;continue;}$s=17;continue;case 16:ai=t(p,"too many colons in address");$s=18;case 18:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;q=ah[0];r=ah[1];s=ah[2];$s=-1;return[q,r,s];case 17:ak=t(p,"missing port in address");$s=19;case 19:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;q=aj[0];r=aj[1];s=aj[2];$s=-1;return[q,r,s];case 14:case 10:q=$substring(p,1,ab);al=1;am=ab+1>>0;w=al;x=am;$s=6;continue;case 5:q=$substring(p,0,y);if(O(q,58)>=0){$s=20;continue;}$s=21;continue;case 20:ao=t(p,"too many colons in address");$s=22;case 22:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;q=an[0];r=an[1];s=an[2];$s=-1;return[q,r,s];case 21:if(O(q,37)>=0){$s=23;continue;}$s=24;continue;case 23:aq=t(p,"missing brackets in address");$s=25;case 25:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;q=ap[0];r=ap[1];s=ap[2];$s=-1;return[q,r,s];case 24:case 6:if(O($substring(p,w),91)>=0){$s=26;continue;}$s=27;continue;case 26:as=t(p,"unexpected '[' in address");$s=28;case 28:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;q=ar[0];r=ar[1];s=ar[2];$s=-1;return[q,r,s];case 27:if(O($substring(p,x),93)>=0){$s=29;continue;}$s=30;continue;case 29:au=t(p,"unexpected ']' in address");$s=31;case 31:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;q=at[0];r=at[1];s=at[2];$s=-1;return[q,r,s];case 30:r=$substring(p,(y+1>>0));av=q;aw=r;ax=$ifaceNil;q=av;r=aw;s=ax;$s=-1;return[q,r,s];}return;}if($f===undefined){$f={$blk:ID};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SplitHostPort=ID;IE=function(p){var $ptr,p,q,r,s,t,u;q="";r="";s=LL(p,37);if(s>0){t=$substring(p,0,s);u=$substring(p,(s+1>>0));q=t;r=u;}else{q=p;}return[q,r];};JE.prototype.String=function(){var $ptr,p,q,r,s,t,u;p=this;if(p.$length===0){return"";}q=$makeSlice(PE,0,(($imul(p.$length,3))-1>>0));r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(t>0){q=$append(q,58);}q=$append(q,"0123456789abcdef".charCodeAt((u>>>4<<24>>>24)));q=$append(q,"0123456789abcdef".charCodeAt(((u&15)>>>0)));s++;}return $bytesToString(q);};$ptrType(JE).prototype.String=function(){return this.$get().String();};JI=function(){var $ptr,p;Q();HV=R();p=S();HW=p[0];HX=p[1];};JW.ptr.prototype.Error=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===RU.nil){$s=-1;return"<nil>";}q=p.Op;if(!(p.Net==="")){q=q+(" "+p.Net);}if(!($interfaceIsEqual(p.Source,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:r=p.Source.String();$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=q+(" "+r);case 2:if(!($interfaceIsEqual(p.Addr,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(!($interfaceIsEqual(p.Source,$ifaceNil))){q=q+("->");}else{q=q+(" ");}s=p.Addr.String();$s=6;case 6:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=q+(s);case 5:t=p.Err.Error();$s=7;case 7:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}q=q+(": "+t);$s=-1;return q;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Error};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Error=function(){return this.$val.Error();};JW.ptr.prototype.Timeout=function(){var $ptr,aa,ab,ac,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=$assertType(p.Err,QR,true);r=q[0];s=q[1];if(s){$s=1;continue;}$s=2;continue;case 1:t=$assertType(r.Err,KA,true);u=t[0];v=t[1];if(!(v)){w=false;$s=3;continue s;}x=u.Timeout();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;case 3:$s=-1;return w;case 2:y=$assertType(p.Err,KA,true);z=y[0];aa=y[1];if(!(aa)){ab=false;$s=5;continue s;}ac=z.Timeout();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;case 5:$s=-1;return ab;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Timeout};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Timeout=function(){return this.$val.Timeout();};JW.ptr.prototype.Temporary=function(){var $ptr,aa,ab,ac,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=$assertType(p.Err,QR,true);r=q[0];s=q[1];if(s){$s=1;continue;}$s=2;continue;case 1:t=$assertType(r.Err,KB,true);u=t[0];v=t[1];if(!(v)){w=false;$s=3;continue s;}x=u.Temporary();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;case 3:$s=-1;return w;case 2:y=$assertType(p.Err,KB,true);z=y[0];aa=y[1];if(!(aa)){ab=false;$s=5;continue s;}ac=z.Temporary();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;case 5:$s=-1;return ab;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Temporary};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Temporary=function(){return this.$val.Temporary();};KD.ptr.prototype.Error=function(){var $ptr,p;p=this;return"invalid "+p.Type+": "+p.Text;};KD.prototype.Error=function(){return this.$val.Error();};KE.ptr.prototype.Error=function(){var $ptr,p,q;p=this;if(p===RV.nil){return"<nil>";}q=p.Err;if(!(p.Addr==="")){q="address "+p.Addr+": "+q;}return q;};KE.prototype.Error=function(){return this.$val.Error();};KE.ptr.prototype.Timeout=function(){var $ptr,p;p=this;return false;};KE.prototype.Timeout=function(){return this.$val.Timeout();};KE.ptr.prototype.Temporary=function(){var $ptr,p;p=this;return false;};KE.prototype.Temporary=function(){return this.$val.Temporary();};KY.ptr.prototype.close=function(){var $ptr,p;p=this;p.file.Close();};KY.prototype.close=function(){return this.$val.close();};KY.ptr.prototype.getLineFromData=function(){var $ptr,p,q,r,s,t,u;p="";q=false;r=this;s=r.data;t=0;t=0;while(true){if(!(t<s.$length)){break;}if(((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t])===10){p=$bytesToString($subslice(s,0,t));q=true;t=t+(1)>>0;u=s.$length-t>>0;$copySlice($subslice(s,0),$subslice(s,t));r.data=$subslice(s,0,u);return[p,q];}t=t+(1)>>0;}if(r.atEOF&&r.data.$length>0){p=$bytesToString(s);r.data=$subslice(r.data,0,0);q=true;}return[p,q];};KY.prototype.getLineFromData=function(){return this.$val.getLineFromData();};KY.ptr.prototype.readLine=function(){var $ptr,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p="";q=false;r=this;s=r.getLineFromData();p=s[0];q=s[1];if(q){$s=-1;return[p,q];}if(r.data.$length<r.data.$capacity){$s=1;continue;}$s=2;continue;case 1:t=r.data.$length;v=L.ReadFull(r.file,$subslice(r.data,t,r.data.$capacity));$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(w>=0){r.data=$subslice(r.data,0,(t+w>>0));}if($interfaceIsEqual(x,L.EOF)||$interfaceIsEqual(x,L.ErrUnexpectedEOF)){r.atEOF=true;}case 2:y=r.getLineFromData();p=y[0];q=y[1];$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:KY.ptr.prototype.readLine};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};KY.prototype.readLine=function(){return this.$val.readLine();};KZ=function(p){var $ptr,p,q,r,s;q=F.Open(p);r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){return[QX.nil,s];}return[new KY.ptr(r,$makeSlice(PE,0,F.Getpagesize()),false),$ifaceNil];};LB=function(p,q){var $ptr,p,q,r,s;r=0;s=0;while(true){if(!(s<p.length)){break;}if(O(q,p.charCodeAt(s))>=0){r=r+(1)>>0;}s=s+(1)>>0;}return r;};LC=function(p,q){var $ptr,p,q,r,s,t,u;r=$makeSlice(OY,(1+LB(p,q)>>0));s=0;t=0;u=0;while(true){if(!(u<p.length)){break;}if(O(q,p.charCodeAt(u))>=0){if(t<u){((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]=$substring(p,t,u));s=s+(1)>>0;}t=u+1>>0;}u=u+(1)>>0;}if(t<p.length){((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]=$substring(p,t));s=s+(1)>>0;}return $subslice(r,0,s);};LE=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=0;r=0;s=false;q=0;r=0;while(true){if(!(r<p.length&&48<=p.charCodeAt(r)&&p.charCodeAt(r)<=57)){break;}q=($imul(q,10))+((p.charCodeAt(r)-48<<24>>>24)>>0)>>0;if(q>=16777215){t=16777215;u=r;v=false;q=t;r=u;s=v;return[q,r,s];}r=r+(1)>>0;}if(r===0){w=0;x=0;y=false;q=w;r=x;s=y;return[q,r,s];}z=q;aa=r;ab=true;q=z;r=aa;s=ab;return[q,r,s];};LF=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=0;r=0;s=false;q=0;r=0;while(true){if(!(r<p.length)){break;}if(48<=p.charCodeAt(r)&&p.charCodeAt(r)<=57){q=$imul(q,(16));q=q+(((p.charCodeAt(r)-48<<24>>>24)>>0))>>0;}else if(97<=p.charCodeAt(r)&&p.charCodeAt(r)<=102){q=$imul(q,(16));q=q+((((p.charCodeAt(r)-97<<24>>>24)>>0)+10>>0))>>0;}else if(65<=p.charCodeAt(r)&&p.charCodeAt(r)<=70){q=$imul(q,(16));q=q+((((p.charCodeAt(r)-65<<24>>>24)>>0)+10>>0))>>0;}else{break;}if(q>=16777215){t=0;u=r;v=false;q=t;r=u;s=v;return[q,r,s];}r=r+(1)>>0;}if(r===0){w=0;x=r;y=false;q=w;r=x;s=y;return[q,r,s];}z=q;aa=r;ab=true;q=z;r=aa;s=ab;return[q,r,s];};LG=function(p,q){var $ptr,p,q,r,s,t,u;if(p.length>2&&!((p.charCodeAt(2)===q))){return[0,false];}r=LF($substring(p,0,2));s=r[0];t=r[1];u=r[2];return[(s<<24>>>24),u&&(t===2)];};LI=function(p){var $ptr,p,q,r,s,t;if(p===0){return"0";}q=RX.zero();r=19;while(true){if(!(p>=10)){break;}t=(s=p/10,(s===s&&s!==1/0&&s!==-1/0)?s>>>0:$throwRuntimeError("integer divide by zero"));((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(((48+p>>>0)-(t*10>>>0)>>>0)<<24>>>24));r=r-(1)>>0;p=t;}((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=((48+p>>>0)<<24>>>24));return $bytesToString($subslice(new PE(q),r));};LJ=function(p,q){var $ptr,p,q,r,s,t;if(q===0){return $append(p,48);}r=7;while(true){if(!(r>=0)){break;}t=(s=(($imul(r,4))>>>0),s<32?(q>>>s):0)>>>0;if(t>0){p=$append(p,"0123456789abcdef".charCodeAt(((t&15)>>>0)));}r=r-(1)>>0;}return p;};LL=function(p,q){var $ptr,p,q,r;r=p.length;r=r-(1)>>0;while(true){if(!(r>=0)){break;}if(p.charCodeAt(r)===q){break;}r=r-(1)>>0;}return r;};AC.methods=[{prop:"Classify",name:"Classify",pkg:"",typ:$funcType([GQ],[AB],false)}];AF.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)}];PU.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];PV.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RO.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RR.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QD.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];SN.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RS.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RL.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QA.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QB.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QY.methods=[{prop:"Addrs",name:"Addrs",pkg:"",typ:$funcType([],[QZ,$error],false)},{prop:"MulticastAddrs",name:"MulticastAddrs",pkg:"",typ:$funcType([],[QZ,$error],false)}];FW.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];SS.methods=[{prop:"update",name:"update",pkg:"net",typ:$funcType([RA],[],false)}];GQ.methods=[{prop:"IsUnspecified",name:"IsUnspecified",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLoopback",name:"IsLoopback",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsMulticast",name:"IsMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsInterfaceLocalMulticast",name:"IsInterfaceLocalMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLinkLocalMulticast",name:"IsLinkLocalMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLinkLocalUnicast",name:"IsLinkLocalUnicast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsGlobalUnicast",name:"IsGlobalUnicast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"To4",name:"To4",pkg:"",typ:$funcType([],[GQ],false)},{prop:"To16",name:"To16",pkg:"",typ:$funcType([],[GQ],false)},{prop:"DefaultMask",name:"DefaultMask",pkg:"",typ:$funcType([],[GR],false)},{prop:"Mask",name:"Mask",pkg:"",typ:$funcType([GR],[GQ],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[PE,$error],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([GQ],[$Bool],false)},{prop:"matchAddrFamily",name:"matchAddrFamily",pkg:"net",typ:$funcType([GQ],[$Bool],false)}];SV.methods=[{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([PE],[$error],false)}];GR.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];PH.methods=[{prop:"Contains",name:"Contains",pkg:"",typ:$funcType([GQ],[$Bool],false)},{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];PO.methods=[{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"isWildcard",name:"isWildcard",pkg:"net",typ:$funcType([],[$Bool],false)},{prop:"opAddr",name:"opAddr",pkg:"net",typ:$funcType([],[JJ],false)},{prop:"family",name:"family",pkg:"net",typ:$funcType([],[$Int],false)},{prop:"sockaddr",name:"sockaddr",pkg:"net",typ:$funcType([$Int],[B.Sockaddr,$error],false)},{prop:"toLocal",name:"toLocal",pkg:"net",typ:$funcType([$String],[MK],false)}];JE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];RU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];SY.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];RV.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];QX.methods=[{prop:"close",name:"close",pkg:"net",typ:$funcType([],[],false)},{prop:"getLineFromData",name:"getLineFromData",pkg:"net",typ:$funcType([],[$String,$Bool],false)},{prop:"readLine",name:"readLine",pkg:"net",typ:$funcType([],[$String,$Bool],false)}];AB.init("",[{prop:"Prefix",name:"Prefix",exported:true,typ:PH,tag:""},{prop:"Precedence",name:"Precedence",exported:true,typ:$Uint8,tag:""},{prop:"Label",name:"Label",exported:true,typ:$Uint8,tag:""}]);AC.init(AB);AF.init(AB);CZ.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Rrtype",name:"Rrtype",exported:true,typ:$Uint16,tag:""},{prop:"Class",name:"Class",exported:true,typ:$Uint16,tag:""},{prop:"Ttl",name:"Ttl",exported:true,typ:$Uint32,tag:""},{prop:"Rdlength",name:"Rdlength",exported:true,typ:$Uint16,tag:""}]);DB.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Cname",name:"Cname",exported:true,typ:$String,tag:""}]);DC.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Pref",name:"Pref",exported:true,typ:$Uint16,tag:""},{prop:"Mx",name:"Mx",exported:true,typ:$String,tag:""}]);DD.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ns",name:"Ns",exported:true,typ:$String,tag:""}]);DE.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ptr",name:"Ptr",exported:true,typ:$String,tag:""}]);DF.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ns",name:"Ns",exported:true,typ:$String,tag:""},{prop:"Mbox",name:"Mbox",exported:true,typ:$String,tag:""},{prop:"Serial",name:"Serial",exported:true,typ:$Uint32,tag:""},{prop:"Refresh",name:"Refresh",exported:true,typ:$Uint32,tag:""},{prop:"Retry",name:"Retry",exported:true,typ:$Uint32,tag:""},{prop:"Expire",name:"Expire",exported:true,typ:$Uint32,tag:""},{prop:"Minttl",name:"Minttl",exported:true,typ:$Uint32,tag:""}]);DG.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Txt",name:"Txt",exported:true,typ:$String,tag:""}]);DH.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Priority",name:"Priority",exported:true,typ:$Uint16,tag:""},{prop:"Weight",name:"Weight",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Target",name:"Target",exported:true,typ:$String,tag:""}]);DI.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"A",name:"A",exported:true,typ:$Uint32,tag:""}]);DJ.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"AAAA",name:"AAAA",exported:true,typ:PD,tag:""}]);FV.init("",[{prop:"Index",name:"Index",exported:true,typ:$Int,tag:""},{prop:"MTU",name:"MTU",exported:true,typ:$Int,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"HardwareAddr",name:"HardwareAddr",exported:true,typ:JE,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:FW,tag:""}]);GD.init("net",[{prop:"RWMutex",name:"",exported:true,typ:H.RWMutex,tag:""},{prop:"lastFetched",name:"lastFetched",exported:false,typ:J.Time,tag:""},{prop:"toIndex",name:"toIndex",exported:false,typ:ST,tag:""},{prop:"toName",name:"toName",exported:false,typ:SU,tag:""}]);GQ.init($Uint8);GR.init($Uint8);GS.init("",[{prop:"IP",name:"IP",exported:true,typ:GQ,tag:""},{prop:"Mask",name:"Mask",exported:true,typ:GR,tag:""}]);HL.init("",[{prop:"IP",name:"IP",exported:true,typ:GQ,tag:""},{prop:"Zone",name:"Zone",exported:true,typ:$String,tag:""}]);JE.init($Uint8);JJ.init([{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);JW.init("",[{prop:"Op",name:"Op",exported:true,typ:$String,tag:""},{prop:"Net",name:"Net",exported:true,typ:$String,tag:""},{prop:"Source",name:"Source",exported:true,typ:JJ,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:JJ,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);KA.init([{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}]);KB.init([{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}]);KD.init("",[{prop:"Type",name:"Type",exported:true,typ:$String,tag:""},{prop:"Text",name:"Text",exported:true,typ:$String,tag:""}]);KE.init("",[{prop:"Err",name:"Err",exported:true,typ:$String,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:$String,tag:""}]);KY.init("net",[{prop:"file",name:"file",exported:false,typ:QT,tag:""},{prop:"data",name:"data",exported:false,typ:PE,tag:""},{prop:"atEOF",name:"atEOF",exported:false,typ:$Bool,tag:""}]);MK.init([{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"family",name:"family",pkg:"net",typ:$funcType([],[$Int],false)},{prop:"isWildcard",name:"isWildcard",pkg:"net",typ:$funcType([],[$Bool],false)},{prop:"sockaddr",name:"sockaddr",pkg:"net",typ:$funcType([$Int],[B.Sockaddr,$error],false)},{prop:"toLocal",name:"toLocal",pkg:"net",typ:$funcType([$String],[MK],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}HV=false;HW=false;HX=false;JG=false;DK=$makeMap($Int.keyFor,[{k:5,v:(function(){var $ptr;return new DB.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:15,v:(function(){var $ptr;return new DC.ptr(new CZ.ptr("",0,0,0,0),0,"");})},{k:2,v:(function(){var $ptr;return new DD.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:12,v:(function(){var $ptr;return new DE.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:6,v:(function(){var $ptr;return new DF.ptr(new CZ.ptr("",0,0,0,0),"","",0,0,0,0,0);})},{k:16,v:(function(){var $ptr;return new DG.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:33,v:(function(){var $ptr;return new DH.ptr(new CZ.ptr("",0,0,0,0),0,0,0,"");})},{k:1,v:(function(){var $ptr;return new DI.ptr(new CZ.ptr("",0,0,0,0),0);})},{k:28,v:(function(){var $ptr;return new DJ.ptr(new CZ.ptr("",0,0,0,0),PD.zero());})}]);FA=(function $b(g,h,i){var $ptr,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=h(g,i);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=-1;return j;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;});FQ=A.New("invalid network interface");FR=A.New("invalid network interface index");FS=A.New("invalid network interface name");FT=A.New("no such network interface");FU=A.New("no such multicast network interface");FX=new OY(["up","broadcast","loopback","pointtopoint","multicast"]);GE=new GD.ptr(new H.RWMutex.ptr(new H.Mutex.ptr(0,0),0,0,0,0),new J.Time.ptr(new $Int64(0,0),0,OV.nil),{},{});GU=new PE([0,0,0,0,0,0,0,0,0,0,255,255]);$pkg.IPv4bcast=GT(255,255,255,255);$pkg.IPv4allsys=GT(224,0,0,1);$pkg.IPv4allrouter=GT(224,0,0,2);$pkg.IPv4zero=GT(0,0,0,0);$pkg.IPv6unspecified=new GQ([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);$pkg.IPv6loopback=new GQ([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]);GY=GV(255,0,0,0);GZ=GV(255,255,0,0);HA=GV(255,255,255,0);JN=U();JQ=A.New("no suitable address found");JR=A.New("missing address");JT=A.New("operation was canceled");JU=A.New("use of closed network connection");$pkg.ErrWriteToConnected=A.New("use of WriteTo with pre-connected connection");JX=$clone(J.Unix(new $Int64(0,233431200),new $Int64(0,0)),J.Time);KI=A.New("no such host");KM=new $Chan(PF,500);g=AG("::1/128");$s=15;case 15:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=AG("::/0");$s=16;case 16:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=AG("::ffff:0:0/96");$s=17;case 17:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=AG("2002::/16");$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=AG("2001::/32");$s=19;case 19:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=AG("fc00::/7");$s=20;case 20:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=AG("::/96");$s=21;case 21:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=AG("fec0::/10");$s=22;case 22:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=AG("3ffe::/16");$s=23;case 23:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}AD=new AC([new AB.ptr(g,50,0),new AB.ptr(h,40,1),new AB.ptr(i,35,4),new AB.ptr(j,30,2),new AB.ptr(k,5,5),new AB.ptr(l,3,13),new AB.ptr(m,1,3),new AB.ptr(n,1,11),new AB.ptr(o,1,12)]);$r=AE();$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AK();JI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/satori/go.uuid"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,M,AC,AT,AU,AV,AW,AX,T,U,V,W,a,b,c,d,e,f,g,h,AG,AJ,AQ,AR;A=$packages["bytes"];B=$packages["crypto/md5"];C=$packages["crypto/rand"];D=$packages["crypto/sha1"];E=$packages["database/sql/driver"];F=$packages["encoding/binary"];G=$packages["encoding/hex"];H=$packages["fmt"];I=$packages["hash"];J=$packages["net"];K=$packages["os"];L=$packages["sync"];M=$packages["time"];AC=$pkg.UUID=$newType(16,$kindArray,"uuid.UUID",true,"github.com/satori/go.uuid",true,null);AT=$sliceType($Uint8);AU=$sliceType($Int);AV=$arrayType($Uint8,16);AW=$sliceType($emptyInterface);AX=$ptrType(AC);AG=function(i,j){var $ptr,i,j;return A.Equal(new AT(i),new AT(j));};$pkg.Equal=AG;AC.prototype.Version=function(){var $ptr,i;i=this.$val;return((i[6]>>>4<<24>>>24)>>>0);};$ptrType(AC).prototype.Version=function(){return new AC(this.$get()).Version();};AC.prototype.Variant=function(){var $ptr,i;i=this.$val;if(((((i[8]&128)>>>0))===0)){return 0;}else if(((((((i[8]&192)>>>0))|128)>>>0)===128)){return 1;}else if(((((((i[8]&224)>>>0))|192)>>>0)===192)){return 2;}return 3;};$ptrType(AC).prototype.Variant=function(){return new AC(this.$get()).Variant();};AC.prototype.Bytes=function(){var $ptr,i;i=this.$val;return new AT(i);};$ptrType(AC).prototype.Bytes=function(){return new AC(this.$get()).Bytes();};AC.prototype.String=function(){var $ptr,i,j;i=this.$val;j=$makeSlice(AT,36);G.Encode($subslice(j,0,8),$subslice(new AT(i),0,4));(8>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+8]=45);G.Encode($subslice(j,9,13),$subslice(new AT(i),4,6));(13>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+13]=45);G.Encode($subslice(j,14,18),$subslice(new AT(i),6,8));(18>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+18]=45);G.Encode($subslice(j,19,23),$subslice(new AT(i),8,10));(23>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+23]=45);G.Encode($subslice(j,24),$subslice(new AT(i),10));return $bytesToString(j);};$ptrType(AC).prototype.String=function(){return new AC(this.$get()).String();};AC.prototype.SetVersion=function(i){var $ptr,i,j;j=this.$val;j.nilCheck,j[6]=((((((j.nilCheck,j[6])&15)>>>0))|((i<<4<<24>>>24)))>>>0);};$ptrType(AC).prototype.SetVersion=function(i){return(new AC(this.$get())).SetVersion(i);};AC.prototype.SetVariant=function(){var $ptr,i;i=this.$val;i.nilCheck,i[8]=((((((i.nilCheck,i[8])&191)>>>0))|128)>>>0);};$ptrType(AC).prototype.SetVariant=function(){return(new AC(this.$get())).SetVariant();};AC.prototype.MarshalText=function(){var $ptr,i,j,k;i=AT.nil;j=$ifaceNil;k=this.$val;i=new AT($stringToBytes(new AC($clone(k,AC)).String()));return[i,j];};$ptrType(AC).prototype.MarshalText=function(){return new AC(this.$get()).MarshalText();};AC.prototype.UnmarshalText=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=$ifaceNil;k=this.$val;if(i.$length<32){$s=1;continue;}$s=2;continue;case 1:l=H.Errorf("uuid: UUID string too short: %s",new AW([i]));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;$s=-1;return j;case 2:m=i;n=false;if(A.Equal($subslice(m,0,9),V)){m=$subslice(m,9);}else if((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===123){n=true;m=$subslice(m,1);}o=new AT(k);p=W;q=0;case 4:if(!(q<p.$length)){$s=5;continue;}r=q;s=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);if(r>0){$s=6;continue;}$s=7;continue;case 6:if(!(((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===45))){$s=8;continue;}$s=9;continue;case 8:t=H.Errorf("uuid: invalid string format",new AW([]));$s=10;case 10:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}j=t;$s=-1;return j;case 9:m=$subslice(m,1);case 7:if(m.$length<s){$s=11;continue;}$s=12;continue;case 11:u=H.Errorf("uuid: UUID string too short: %s",new AW([i]));$s=13;case 13:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}j=u;$s=-1;return j;case 12:if((r===4)&&m.$length>s&&((n&&!((((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s])===125)))||$subslice(m,s).$length>1||!n)){$s=14;continue;}$s=15;continue;case 14:v=H.Errorf("uuid: UUID string too long: %s",new AW([i]));$s=16;case 16:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}j=v;$s=-1;return j;case 15:w=G.Decode($subslice(o,0,(x=s/2,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))),$subslice(m,0,s));j=w[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}m=$subslice(m,s);o=$subslice(o,(y=s/2,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero")));q++;$s=4;continue;case 5:$s=-1;return j;}return;}if($f===undefined){$f={$blk:AC.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.UnmarshalText=function(i){return(new AC(this.$get())).UnmarshalText(i);};AC.prototype.MarshalBinary=function(){var $ptr,i,j,k;i=AT.nil;j=$ifaceNil;k=this.$val;i=new AC($clone(k,AC)).Bytes();return[i,j];};$ptrType(AC).prototype.MarshalBinary=function(){return new AC(this.$get()).MarshalBinary();};AC.prototype.UnmarshalBinary=function(i){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=$ifaceNil;k=this.$val;if(!((i.$length===16))){$s=1;continue;}$s=2;continue;case 1:l=H.Errorf("uuid: UUID must be exactly 16 bytes long, got %d bytes",new AW([new $Int(i.$length)]));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;$s=-1;return j;case 2:$copySlice(new AT(k),i);$s=-1;return j;}return;}if($f===undefined){$f={$blk:AC.prototype.UnmarshalBinary};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.UnmarshalBinary=function(i){return(new AC(this.$get())).UnmarshalBinary(i);};AC.prototype.Value=function(){var $ptr,i;i=this.$val;return[new $String(new AC($clone(i,AC)).String()),$ifaceNil];};$ptrType(AC).prototype.Value=function(){return new AC(this.$get()).Value();};AC.prototype.Scan=function(i){var $ptr,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this.$val;k=i;if($assertType(k,AT,true)[1]){$s=1;continue;}if($assertType(k,$String,true)[1]){$s=2;continue;}$s=3;continue;case 1:l=k.$val;if(l.$length===16){$s=4;continue;}$s=5;continue;case 4:n=new AX(j).UnmarshalBinary(l);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;case 5:o=new AX(j).UnmarshalText(l);$s=7;case 7:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;case 2:m=k.$val;p=new AX(j).UnmarshalText(new AT($stringToBytes(m)));$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;case 3:q=H.Errorf("uuid: cannot convert %T to UUID",new AW([i]));$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return q;}return;}if($f===undefined){$f={$blk:AC.prototype.Scan};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.Scan=function(i){return(new AC(this.$get())).Scan(i);};AJ=function(i){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=AV.zero();k=$ifaceNil;l=new AX(j).UnmarshalText(new AT($stringToBytes(i)));$s=1;case 1:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;$s=-1;return[j,k];}return;}if($f===undefined){$f={$blk:AJ};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.FromString=AJ;AQ=function(i,j){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AR(D.New(),$clone(i,AC),j);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$clone(k,AC);new AX(l).SetVersion(5);new AX(l).SetVariant();$s=-1;return l;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewV5=AQ;AR=function(i,j,k){var $ptr,i,j,k,l,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=AV.zero();m=i.Write(new AT(j));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;n=i.Write(new AT($stringToBytes(k)));$s=2;case 2:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;o=i.Sum(AT.nil);$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$copySlice(new AT(l),o);$s=-1;return l;}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};AC.methods=[{prop:"Version",name:"Version",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Variant",name:"Variant",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[AT],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[AT,$error],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AT,$error],false)},{prop:"Value",name:"Value",pkg:"",typ:$funcType([],[E.Value,$error],false)}];AX.methods=[{prop:"SetVersion",name:"SetVersion",pkg:"",typ:$funcType([$Uint8],[],false)},{prop:"SetVariant",name:"SetVariant",pkg:"",typ:$funcType([],[],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([AT],[$error],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AT],[$error],false)},{prop:"Scan",name:"Scan",pkg:"",typ:$funcType([$emptyInterface],[$error],false)}];AC.init($Uint8,16);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}T=(K.Getuid()>>>0);U=(K.Getgid()>>>0);V=new AT($stringToBytes("urn:uuid:"));W=new AU([8,4,4,4,12]);$pkg.Nil=AV.zero();b=AJ("6ba7b810-9dad-11d1-80b4-00c04fd430c8");$s=14;case 14:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;$pkg.NamespaceDNS=$clone(a[0],AC);d=AJ("6ba7b811-9dad-11d1-80b4-00c04fd430c8");$s=15;case 15:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;$pkg.NamespaceURL=$clone(c[0],AC);f=AJ("6ba7b812-9dad-11d1-80b4-00c04fd430c8");$s=16;case 16:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;$pkg.NamespaceOID=$clone(e[0],AC);h=AJ("6ba7b814-9dad-11d1-80b4-00c04fd430c8");$s=17;case 17:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;$pkg.NamespaceX500=$clone(g[0],AC);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/sha256"]=(function(){var $pkg={},$init,A,B,D,L,M,N,O,P,R,S,I,K,C,E,F,J;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha256.digest",true,"crypto/sha256",false,function(h_,x_,nx_,len_,is224_){this.$val=this;if(arguments.length===0){this.h=M.zero();this.x=N.zero();this.nx=0;this.len=new $Uint64(0,0);this.is224=false;return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;this.is224=is224_;});L=$sliceType($Uint32);M=$arrayType($Uint32,8);N=$arrayType($Uint8,64);O=$sliceType($Uint8);P=$arrayType($Uint8,32);R=$arrayType($Uint32,64);S=$ptrType(D);C=function(){var $ptr;A.RegisterHash(4,F);A.RegisterHash(5,E);};D.ptr.prototype.Reset=function(){var $ptr,a;a=this;if(!a.is224){a.h[0]=1779033703;a.h[1]=3144134277;a.h[2]=1013904242;a.h[3]=2773480762;a.h[4]=1359893119;a.h[5]=2600822924;a.h[6]=528734635;a.h[7]=1541459225;}else{a.h[0]=3238371032;a.h[1]=914150663;a.h[2]=812702999;a.h[3]=4144912697;a.h[4]=4290775857;a.h[5]=1750603025;a.h[6]=1694076839;a.h[7]=3204075428;}a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(M.zero(),N.zero(),0,new $Uint64(0,0),false);a.Reset();return a;};$pkg.New=E;F=function(){var $ptr,a;a=new D.ptr(M.zero(),N.zero(),0,new $Uint64(0,0),false);a.is224=true;a.Reset();return a;};$pkg.New224=F;D.ptr.prototype.Size=function(){var $ptr,a;a=this;if(!a.is224){return 32;}return 28;};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new O(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=K(d,new O(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=K(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new O(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,P);if(c.is224){$s=-1;return $appendSlice(a,$subslice(new O(e),0,28));}$s=-1;return $appendSlice(a,new O(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=N.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new O(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new O(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((56-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new O(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=new L(a.h);if(a.is224){k=$subslice(new L(a.h),0,7);}l=P.zero();m=k;n=0;while(true){if(!(n<m.$length)){break;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);(q=$imul(o,4),((q<0||q>=l.length)?($throwRuntimeError("index out of range"),undefined):l[q]=((p>>>24>>>0)<<24>>>24)));(r=($imul(o,4))+1>>0,((r<0||r>=l.length)?($throwRuntimeError("index out of range"),undefined):l[r]=((p>>>16>>>0)<<24>>>24)));(s=($imul(o,4))+2>>0,((s<0||s>=l.length)?($throwRuntimeError("index out of range"),undefined):l[s]=((p>>>8>>>0)<<24>>>24)));(t=($imul(o,4))+3>>0,((t<0||t>=l.length)?($throwRuntimeError("index out of range"),undefined):l[t]=(p<<24>>>24)));n++;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};J=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=R.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=a.h[5];j=a.h[6];k=a.h[7];l=d;m=e;n=f;o=g;p=h;q=i;r=j;s=k;while(true){if(!(b.$length>=64)){break;}t=0;while(true){if(!(t<16)){break;}u=$imul(t,4);((t<0||t>=c.length)?($throwRuntimeError("index out of range"),undefined):c[t]=((((((((((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u])>>>0)<<24>>>0)|(((v=u+1>>0,((v<0||v>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+v]))>>>0)<<16>>>0))>>>0)|(((w=u+2>>0,((w<0||w>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+w]))>>>0)<<8>>>0))>>>0)|((x=u+3>>0,((x<0||x>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+x]))>>>0))>>>0));t=t+(1)>>0;}y=16;while(true){if(!(y<64)){break;}aa=(z=y-2>>0,((z<0||z>=c.length)?($throwRuntimeError("index out of range"),undefined):c[z]));ab=(((((((aa>>>17>>>0)|(aa<<15>>>0))>>>0))^((((aa>>>19>>>0)|(aa<<13>>>0))>>>0)))>>>0)^((aa>>>10>>>0)))>>>0;ad=(ac=y-15>>0,((ac<0||ac>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ac]));ae=(((((((ad>>>7>>>0)|(ad<<25>>>0))>>>0))^((((ad>>>18>>>0)|(ad<<14>>>0))>>>0)))>>>0)^((ad>>>3>>>0)))>>>0;((y<0||y>=c.length)?($throwRuntimeError("index out of range"),undefined):c[y]=(((ab+(af=y-7>>0,((af<0||af>=c.length)?($throwRuntimeError("index out of range"),undefined):c[af]))>>>0)+ae>>>0)+(ag=y-16>>0,((ag<0||ag>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ag]))>>>0));y=y+(1)>>0;}ah=l;ai=m;aj=n;ak=o;al=p;am=q;an=r;ao=s;ap=ah;aq=ai;ar=aj;as=ak;at=al;au=am;av=an;aw=ao;ax=0;while(true){if(!(ax<64)){break;}ay=(((aw+(((((((((at>>>6>>>0)|(at<<26>>>0))>>>0))^((((at>>>11>>>0)|(at<<21>>>0))>>>0)))>>>0)^((((at>>>25>>>0)|(at<<7>>>0))>>>0)))>>>0))>>>0)+((((((at&au)>>>0))^((((~at>>>0)&av)>>>0)))>>>0))>>>0)+((ax<0||ax>=I.$length)?($throwRuntimeError("index out of range"),undefined):I.$array[I.$offset+ax])>>>0)+((ax<0||ax>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ax])>>>0;az=(((((((((ap>>>2>>>0)|(ap<<30>>>0))>>>0))^((((ap>>>13>>>0)|(ap<<19>>>0))>>>0)))>>>0)^((((ap>>>22>>>0)|(ap<<10>>>0))>>>0)))>>>0))+((((((((ap&aq)>>>0))^(((ap&ar)>>>0)))>>>0)^(((aq&ar)>>>0)))>>>0))>>>0;aw=av;av=au;au=at;at=as+ay>>>0;as=ar;ar=aq;aq=ap;ap=ay+az>>>0;ax=ax+(1)>>0;}l=l+(ap)>>>0;m=m+(aq)>>>0;n=n+(ar)>>>0;o=o+(as)>>>0;p=p+(at)>>>0;q=q+(au)>>>0;r=r+(av)>>>0;s=s+(aw)>>>0;b=$subslice(b,64);}ba=l;bb=m;bc=n;bd=o;be=p;bf=q;bg=r;bh=s;a.h[0]=ba;a.h[1]=bb;a.h[2]=bc;a.h[3]=bd;a.h[4]=be;a.h[5]=bf;a.h[6]=bg;a.h[7]=bh;};S.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([O],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([O],[O],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha256",typ:$funcType([],[P],false)}];D.init("crypto/sha256",[{prop:"h",name:"h",exported:false,typ:M,tag:""},{prop:"x",name:"x",exported:false,typ:N,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""},{prop:"is224",name:"is224",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=new L([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);K=J;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/sha512"]=(function(){var $pkg={},$init,A,B,D,P,Q,R,S,T,X,Y,M,O,C,E,F,G,H,I,N;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha512.digest",true,"crypto/sha512",false,function(h_,x_,nx_,len_,function$4_){this.$val=this;if(arguments.length===0){this.h=Q.zero();this.x=R.zero();this.nx=0;this.len=new $Uint64(0,0);this.function$4=0;return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;this.function$4=function$4_;});P=$sliceType($Uint64);Q=$arrayType($Uint64,8);R=$arrayType($Uint8,128);S=$sliceType($Uint8);T=$arrayType($Uint8,64);X=$arrayType($Uint64,80);Y=$ptrType(D);C=function(){var $ptr;A.RegisterHash(6,H);A.RegisterHash(7,E);A.RegisterHash(14,F);A.RegisterHash(15,G);};D.ptr.prototype.Reset=function(){var $ptr,a,b;a=this;b=a.function$4;if(b===(6)){a.h[0]=new $Uint64(3418070365,3238371032);a.h[1]=new $Uint64(1654270250,914150663);a.h[2]=new $Uint64(2438529370,812702999);a.h[3]=new $Uint64(355462360,4144912697);a.h[4]=new $Uint64(1731405415,4290775857);a.h[5]=new $Uint64(2394180231,1750603025);a.h[6]=new $Uint64(3675008525,1694076839);a.h[7]=new $Uint64(1203062813,3204075428);}else if(b===(14)){a.h[0]=new $Uint64(2352822216,424955298);a.h[1]=new $Uint64(1944164710,2312950998);a.h[2]=new $Uint64(502970286,855612546);a.h[3]=new $Uint64(1738396948,1479516111);a.h[4]=new $Uint64(258812777,2077511080);a.h[5]=new $Uint64(2011393907,79989058);a.h[6]=new $Uint64(1067287976,1780299464);a.h[7]=new $Uint64(286451373,2446758561);}else if(b===(15)){a.h[0]=new $Uint64(573645204,4230739756);a.h[1]=new $Uint64(2673172387,3360449730);a.h[2]=new $Uint64(596883563,1867755857);a.h[3]=new $Uint64(2520282905,1497426621);a.h[4]=new $Uint64(2519219938,2827943907);a.h[5]=new $Uint64(3193839141,1401305490);a.h[6]=new $Uint64(721525244,746961066);a.h[7]=new $Uint64(246885852,2177182882);}else{a.h[0]=new $Uint64(1779033703,4089235720);a.h[1]=new $Uint64(3144134277,2227873595);a.h[2]=new $Uint64(1013904242,4271175723);a.h[3]=new $Uint64(2773480762,1595750129);a.h[4]=new $Uint64(1359893119,2917565137);a.h[5]=new $Uint64(2600822924,725511199);a.h[6]=new $Uint64(528734635,4215389547);a.h[7]=new $Uint64(1541459225,327033209);}a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),7);a.Reset();return a;};$pkg.New=E;F=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),14);a.Reset();return a;};$pkg.New512_224=F;G=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),15);a.Reset();return a;};$pkg.New512_256=G;H=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),6);a.Reset();return a;};$pkg.New384=H;D.ptr.prototype.Size=function(){var $ptr,a,b;a=this;b=a.function$4;if(b===(14)){return 28;}else if(b===(15)){return 32;}else if(b===(6)){return 48;}else{return 64;}};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 128;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new S(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===128){$s=3;continue;}$s=4;continue;case 3:$r=O(d,new S(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=128){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~127)>>0;$r=O(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new S(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),0);D.copy(c,b);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,T);f=c.function$4;if(f===(6)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,48));}else if(f===(14)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,28));}else if(f===(15)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,32));}else{$s=-1;return $appendSlice(a,new S(e));}$s=-1;return S.nil;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=R.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,128),true),(d.$high<0||(d.$high===0&&d.$low<112)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new S(c),0,$flatten64((e=$div64(b,new $Uint64(0,128),true),new $Uint64(0-e.$high,112-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new S(c),0,$flatten64((g=$div64(b,new $Uint64(0,128),true),new $Uint64(0-g.$high,240-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<16)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((120-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new S(c),0,16));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=new P(a.h);if(a.function$4===6){k=$subslice(new P(a.h),0,6);}l=T.zero();m=k;n=0;while(true){if(!(n<m.$length)){break;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);(q=$imul(o,8),((q<0||q>=l.length)?($throwRuntimeError("index out of range"),undefined):l[q]=($shiftRightUint64(p,56).$low<<24>>>24)));(r=($imul(o,8))+1>>0,((r<0||r>=l.length)?($throwRuntimeError("index out of range"),undefined):l[r]=($shiftRightUint64(p,48).$low<<24>>>24)));(s=($imul(o,8))+2>>0,((s<0||s>=l.length)?($throwRuntimeError("index out of range"),undefined):l[s]=($shiftRightUint64(p,40).$low<<24>>>24)));(t=($imul(o,8))+3>>0,((t<0||t>=l.length)?($throwRuntimeError("index out of range"),undefined):l[t]=($shiftRightUint64(p,32).$low<<24>>>24)));(u=($imul(o,8))+4>>0,((u<0||u>=l.length)?($throwRuntimeError("index out of range"),undefined):l[u]=($shiftRightUint64(p,24).$low<<24>>>24)));(v=($imul(o,8))+5>>0,((v<0||v>=l.length)?($throwRuntimeError("index out of range"),undefined):l[v]=($shiftRightUint64(p,16).$low<<24>>>24)));(w=($imul(o,8))+6>>0,((w<0||w>=l.length)?($throwRuntimeError("index out of range"),undefined):l[w]=($shiftRightUint64(p,8).$low<<24>>>24)));(x=($imul(o,8))+7>>0,((x<0||x>=l.length)?($throwRuntimeError("index out of range"),undefined):l[x]=(p.$low<<24>>>24)));n++;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};I=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),7);b.Reset();c=b.Write(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;d=b.checkSum();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sum512=I;N=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=X.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=a.h[5];j=a.h[6];k=a.h[7];l=d;m=e;n=f;o=g;p=h;q=i;r=j;s=k;while(true){if(!(b.$length>=128)){break;}t=0;while(true){if(!(t<16)){break;}u=$imul(t,8);((t<0||t>=c.length)?($throwRuntimeError("index out of range"),undefined):c[t]=(v=(w=(x=(y=(z=(aa=(ab=$shiftLeft64(new $Uint64(0,((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u])),56),ac=$shiftLeft64(new $Uint64(0,(ad=u+1>>0,((ad<0||ad>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ad]))),48),new $Uint64(ab.$high|ac.$high,(ab.$low|ac.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(af=u+2>>0,((af<0||af>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+af]))),40),new $Uint64(aa.$high|ae.$high,(aa.$low|ae.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(ah=u+3>>0,((ah<0||ah>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ah]))),32),new $Uint64(z.$high|ag.$high,(z.$low|ag.$low)>>>0)),ai=$shiftLeft64(new $Uint64(0,(aj=u+4>>0,((aj<0||aj>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+aj]))),24),new $Uint64(y.$high|ai.$high,(y.$low|ai.$low)>>>0)),ak=$shiftLeft64(new $Uint64(0,(al=u+5>>0,((al<0||al>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+al]))),16),new $Uint64(x.$high|ak.$high,(x.$low|ak.$low)>>>0)),am=$shiftLeft64(new $Uint64(0,(an=u+6>>0,((an<0||an>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+an]))),8),new $Uint64(w.$high|am.$high,(w.$low|am.$low)>>>0)),ao=new $Uint64(0,(ap=u+7>>0,((ap<0||ap>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ap]))),new $Uint64(v.$high|ao.$high,(v.$low|ao.$low)>>>0)));t=t+(1)>>0;}aq=16;while(true){if(!(aq<80)){break;}as=(ar=aq-2>>0,((ar<0||ar>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ar]));bb=(at=(au=(av=$shiftRightUint64(as,19),aw=$shiftLeft64(as,45),new $Uint64(av.$high|aw.$high,(av.$low|aw.$low)>>>0)),ax=(ay=$shiftRightUint64(as,61),az=$shiftLeft64(as,3),new $Uint64(ay.$high|az.$high,(ay.$low|az.$low)>>>0)),new $Uint64(au.$high^ax.$high,(au.$low^ax.$low)>>>0)),ba=$shiftRightUint64(as,6),new $Uint64(at.$high^ba.$high,(at.$low^ba.$low)>>>0));bd=(bc=aq-15>>0,((bc<0||bc>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bc]));bm=(be=(bf=(bg=$shiftRightUint64(bd,1),bh=$shiftLeft64(bd,63),new $Uint64(bg.$high|bh.$high,(bg.$low|bh.$low)>>>0)),bi=(bj=$shiftRightUint64(bd,8),bk=$shiftLeft64(bd,56),new $Uint64(bj.$high|bk.$high,(bj.$low|bk.$low)>>>0)),new $Uint64(bf.$high^bi.$high,(bf.$low^bi.$low)>>>0)),bl=$shiftRightUint64(bd,7),new $Uint64(be.$high^bl.$high,(be.$low^bl.$low)>>>0));((aq<0||aq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aq]=(bn=(bo=(bp=(bq=aq-7>>0,((bq<0||bq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bq])),new $Uint64(bb.$high+bp.$high,bb.$low+bp.$low)),new $Uint64(bo.$high+bm.$high,bo.$low+bm.$low)),br=(bs=aq-16>>0,((bs<0||bs>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bs])),new $Uint64(bn.$high+br.$high,bn.$low+br.$low)));aq=aq+(1)>>0;}bt=l;bu=m;bv=n;bw=o;bx=p;by=q;bz=r;ca=s;cb=bt;cc=bu;cd=bv;ce=bw;cf=bx;cg=by;ch=bz;ci=ca;cj=0;while(true){if(!(cj<80)){break;}de=(ck=(cl=(cm=(cn=(co=(cp=(cq=$shiftRightUint64(cf,14),cr=$shiftLeft64(cf,50),new $Uint64(cq.$high|cr.$high,(cq.$low|cr.$low)>>>0)),cs=(ct=$shiftRightUint64(cf,18),cu=$shiftLeft64(cf,46),new $Uint64(ct.$high|cu.$high,(ct.$low|cu.$low)>>>0)),new $Uint64(cp.$high^cs.$high,(cp.$low^cs.$low)>>>0)),cv=(cw=$shiftRightUint64(cf,41),cx=$shiftLeft64(cf,23),new $Uint64(cw.$high|cx.$high,(cw.$low|cx.$low)>>>0)),new $Uint64(co.$high^cv.$high,(co.$low^cv.$low)>>>0)),new $Uint64(ci.$high+cn.$high,ci.$low+cn.$low)),cy=(cz=new $Uint64(cf.$high&cg.$high,(cf.$low&cg.$low)>>>0),da=(db=new $Uint64(~cf.$high,~cf.$low>>>0),new $Uint64(db.$high&ch.$high,(db.$low&ch.$low)>>>0)),new $Uint64(cz.$high^da.$high,(cz.$low^da.$low)>>>0)),new $Uint64(cm.$high+cy.$high,cm.$low+cy.$low)),dc=((cj<0||cj>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+cj]),new $Uint64(cl.$high+dc.$high,cl.$low+dc.$low)),dd=((cj<0||cj>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cj]),new $Uint64(ck.$high+dd.$high,ck.$low+dd.$low));dw=(df=(dg=(dh=(di=$shiftRightUint64(cb,28),dj=$shiftLeft64(cb,36),new $Uint64(di.$high|dj.$high,(di.$low|dj.$low)>>>0)),dk=(dl=$shiftRightUint64(cb,34),dm=$shiftLeft64(cb,30),new $Uint64(dl.$high|dm.$high,(dl.$low|dm.$low)>>>0)),new $Uint64(dh.$high^dk.$high,(dh.$low^dk.$low)>>>0)),dn=(dp=$shiftRightUint64(cb,39),dq=$shiftLeft64(cb,25),new $Uint64(dp.$high|dq.$high,(dp.$low|dq.$low)>>>0)),new $Uint64(dg.$high^dn.$high,(dg.$low^dn.$low)>>>0)),dr=(ds=(dt=new $Uint64(cb.$high&cc.$high,(cb.$low&cc.$low)>>>0),du=new $Uint64(cb.$high&cd.$high,(cb.$low&cd.$low)>>>0),new $Uint64(dt.$high^du.$high,(dt.$low^du.$low)>>>0)),dv=new $Uint64(cc.$high&cd.$high,(cc.$low&cd.$low)>>>0),new $Uint64(ds.$high^dv.$high,(ds.$low^dv.$low)>>>0)),new $Uint64(df.$high+dr.$high,df.$low+dr.$low));ci=ch;ch=cg;cg=cf;cf=new $Uint64(ce.$high+de.$high,ce.$low+de.$low);ce=cd;cd=cc;cc=cb;cb=new $Uint64(de.$high+dw.$high,de.$low+dw.$low);cj=cj+(1)>>0;}l=(dx=cb,new $Uint64(l.$high+dx.$high,l.$low+dx.$low));m=(dy=cc,new $Uint64(m.$high+dy.$high,m.$low+dy.$low));n=(dz=cd,new $Uint64(n.$high+dz.$high,n.$low+dz.$low));o=(ea=ce,new $Uint64(o.$high+ea.$high,o.$low+ea.$low));p=(eb=cf,new $Uint64(p.$high+eb.$high,p.$low+eb.$low));q=(ec=cg,new $Uint64(q.$high+ec.$high,q.$low+ec.$low));r=(ed=ch,new $Uint64(r.$high+ed.$high,r.$low+ed.$low));s=(ee=ci,new $Uint64(s.$high+ee.$high,s.$low+ee.$low));b=$subslice(b,128);}ef=l;eg=m;eh=n;ei=o;ej=p;ek=q;el=r;em=s;a.h[0]=ef;a.h[1]=eg;a.h[2]=eh;a.h[3]=ei;a.h[4]=ej;a.h[5]=ek;a.h[6]=el;a.h[7]=em;};Y.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([S],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([S],[S],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha512",typ:$funcType([],[T],false)}];D.init("crypto/sha512",[{prop:"h",name:"h",exported:false,typ:Q,tag:""},{prop:"x",name:"x",exported:false,typ:R,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""},{prop:"function$4",name:"function",exported:false,typ:A.Hash,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}M=new P([new $Uint64(1116352408,3609767458),new $Uint64(1899447441,602891725),new $Uint64(3049323471,3964484399),new $Uint64(3921009573,2173295548),new $Uint64(961987163,4081628472),new $Uint64(1508970993,3053834265),new $Uint64(2453635748,2937671579),new $Uint64(2870763221,3664609560),new $Uint64(3624381080,2734883394),new $Uint64(310598401,1164996542),new $Uint64(607225278,1323610764),new $Uint64(1426881987,3590304994),new $Uint64(1925078388,4068182383),new $Uint64(2162078206,991336113),new $Uint64(2614888103,633803317),new $Uint64(3248222580,3479774868),new $Uint64(3835390401,2666613458),new $Uint64(4022224774,944711139),new $Uint64(264347078,2341262773),new $Uint64(604807628,2007800933),new $Uint64(770255983,1495990901),new $Uint64(1249150122,1856431235),new $Uint64(1555081692,3175218132),new $Uint64(1996064986,2198950837),new $Uint64(2554220882,3999719339),new $Uint64(2821834349,766784016),new $Uint64(2952996808,2566594879),new $Uint64(3210313671,3203337956),new $Uint64(3336571891,1034457026),new $Uint64(3584528711,2466948901),new $Uint64(113926993,3758326383),new $Uint64(338241895,168717936),new $Uint64(666307205,1188179964),new $Uint64(773529912,1546045734),new $Uint64(1294757372,1522805485),new $Uint64(1396182291,2643833823),new $Uint64(1695183700,2343527390),new $Uint64(1986661051,1014477480),new $Uint64(2177026350,1206759142),new $Uint64(2456956037,344077627),new $Uint64(2730485921,1290863460),new $Uint64(2820302411,3158454273),new $Uint64(3259730800,3505952657),new $Uint64(3345764771,106217008),new $Uint64(3516065817,3606008344),new $Uint64(3600352804,1432725776),new $Uint64(4094571909,1467031594),new $Uint64(275423344,851169720),new $Uint64(430227734,3100823752),new $Uint64(506948616,1363258195),new $Uint64(659060556,3750685593),new $Uint64(883997877,3785050280),new $Uint64(958139571,3318307427),new $Uint64(1322822218,3812723403),new $Uint64(1537002063,2003034995),new $Uint64(1747873779,3602036899),new $Uint64(1955562222,1575990012),new $Uint64(2024104815,1125592928),new $Uint64(2227730452,2716904306),new $Uint64(2361852424,442776044),new $Uint64(2428436474,593698344),new $Uint64(2756734187,3733110249),new $Uint64(3204031479,2999351573),new $Uint64(3329325298,3815920427),new $Uint64(3391569614,3928383900),new $Uint64(3515267271,566280711),new $Uint64(3940187606,3454069534),new $Uint64(4118630271,4000239992),new $Uint64(116418474,1914138554),new $Uint64(174292421,2731055270),new $Uint64(289380356,3203993006),new $Uint64(460393269,320620315),new $Uint64(685471733,587496836),new $Uint64(852142971,1086792851),new $Uint64(1017036298,365543100),new $Uint64(1126000580,2618297676),new $Uint64(1288033470,3409855158),new $Uint64(1501505948,4234509866),new $Uint64(1607167915,987167468),new $Uint64(1816402316,1246189591)]);O=N;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/cipher/sha3"]=(function(){var $pkg={},$init,D,F,B,C,A,E,AG,AM,AO,AS,AT,AW,G,T,Z,H,I,J,K,L,M,N,O,U,V,AA,AH,AI,AJ,AK,AL;D=$packages["crypto"];F=$packages["encoding/binary"];B=$packages["gopkg.in/dedis/crypto.v0/abstract"];C=$packages["gopkg.in/dedis/crypto.v0/cipher"];A=$packages["hash"];E=$packages["io"];AG=$pkg.sponge=$newType(0,$kindStruct,"sha3.sponge",true,"gopkg.in/dedis/crypto.v0/cipher/sha3",false,function(a_,rate_){this.$val=this;if(arguments.length===0){this.a=AT.zero();this.rate=0;return;}this.a=a_;this.rate=rate_;});AM=$sliceType($emptyInterface);AO=$sliceType($Uint8);AS=$sliceType($Uint64);AT=$arrayType($Uint64,25);AW=$ptrType(AG);H=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=C.FromSponge(AI(),a,$appendSlice(G,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewCipher224=H;I=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=C.FromSponge(AJ(),a,$appendSlice(G,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewCipher256=I;J=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=C.FromSponge(AK(),a,$appendSlice(G,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewCipher384=J;K=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=C.FromSponge(AL(),a,$appendSlice(G,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:K};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewCipher512=K;L=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=C.NewHash(H,28);$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New224=L;M=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=C.NewHash(I,32);$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a;}return;}if($f===undefined){$f={$blk:M};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New256=M;N=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=C.NewHash(J,48);$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a;}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New384=N;O=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=C.NewHash(K,64);$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=-1;return a;}return;}if($f===undefined){$f={$blk:O};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New512=O;U=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,ey,ez,f,fa,fb,fc,fd,fe,ff,fg,fh,fi,fj,fk,fl,fm,fn,fo,fp,fq,fr,fs,ft,fu,fv,fw,fx,fy,fz,g,ga,gb,gc,gd,ge,gf,gg,gh,gi,gj,gk,gl,gm,gn,go,gp,gq,gr,gs,gt,gu,gv,gw,gx,gy,gz,h,ha,hb,hc,hd,he,hf,hg,hh,hi,hj,hk,hl,hm,hn,ho,hp,hq,hr,hs,ht,hu,hv,hw,hx,hy,hz,i,ia,ib,ic,id,ie,ig,ih,ii,ij,ik,il,im,io,ip,iq,ir,is,it,iu,iv,iw,ix,iy,iz,j,ja,jb,jc,jd,je,jf,jg,jh,ji,jj,jk,jl,jm,jn,jo,jp,jq,jr,js,jt,ju,jv,jw,jx,jy,jz,k,ka,kb,kc,kd,ke,kf,kg,kh,ki,kj,kk,kl,km,kn,ko,kp,kq,kr,ks,kt,ku,kv,kw,kx,ky,kz,l,la,lb,lc,ld,le,lf,lg,lh,li,lj,lk,ll,lm,ln,lo,lp,lq,lr,ls,lt,lu,lv,lw,lx,ly,lz,m,ma,mb,mc,md,me,mf,mg,mh,mi,mj,mk,ml,mm,mn,mo,mp,mq,mr,ms,mt,mu,mv,mw,mx,my,mz,n,na,nb,nc,nd,ne,nf,ng,nh,ni,nj,nk,nl,nm,nn,no,np,nq,nr,ns,nt,nu,nv,nw,nx,ny,nz,o,oa,ob,oc,od,oe,of,og,oh,oi,oj,ok,ol,om,on,oo,op,oq,or,os,ot,ou,ov,ow,ox,oy,oz,p,pa,pb,pc,pd,pe,pf,pg,ph,pi,pj,pk,pl,pm,pn,po,pp,pq,pr,ps,pt,pu,pv,pw,px,py,pz,q,qa,qb,qc,qd,qe,qf,qg,qh,qi,qj,qk,ql,qm,qn,qo,qp,qq,qr,qs,qt,qu,qv,qw,qx,qy,qz,r,ra,rb,rc,rd,re,rf,rg,rh,ri,rj,rk,rl,rm,rn,ro,rp,rq,rr,rs,rt,ru,rv,rw,rx,ry,rz,s,sa,sb,sc,sd,se,sf,sg,sh,si,sj,sk,sl,sm,sn,so,sp,sq,sr,ss,st,su,sv,sw,sx,sy,sz,t,ta,tb,tc,td,te,tf,tg,th,ti,tj,tk,tl,tm,tn,to,tp,tq,tr,ts,tt,tu,tv,tw,tx,ty,tz,u,ua,ub,uc,ud,ue,uf,ug,uh,ui,uj,uk,ul,um,un,uo,up,uq,ur,us,ut,uu,uv,uw,ux,uy,uz,v,va,vb,vc,vd,ve,vf,vg,vh,vi,vj,vk,vl,vm,vn,vo,vp,vq,vr,vs,vt,vu,vv,vw,vx,vy,vz,w,wa,wb,wc,wd,we,wf,wg,wh,wi,wj,wk,wl,wm,wn,wo,wp,wq,wr,ws,wt,wu,wv,ww,wx,wy,wz,x,xa,xb,xc,xd,xe,xf,xg,xh,xi,xj,xk,xl,xm,xn,xo,xp,xq,xr,xs,xt,xu,xv,xw,xx,xy,xz,y,z;b=new $Uint64(0,0);c=new $Uint64(0,0);d=new $Uint64(0,0);e=new $Uint64(0,0);f=new $Uint64(0,0);g=new $Uint64(0,0);h=new $Uint64(0,0);i=new $Uint64(0,0);j=new $Uint64(0,0);k=new $Uint64(0,0);l=new $Uint64(0,0);m=b;n=c;o=d;p=e;q=f;r=g;s=h;t=i;u=j;v=k;w=l;x=0;while(true){if(!(x<24)){break;}n=(y=(z=(aa=(ab=(a.nilCheck,a[0]),ac=(a.nilCheck,a[5]),new $Uint64(ab.$high^ac.$high,(ab.$low^ac.$low)>>>0)),ad=(a.nilCheck,a[10]),new $Uint64(aa.$high^ad.$high,(aa.$low^ad.$low)>>>0)),ae=(a.nilCheck,a[15]),new $Uint64(z.$high^ae.$high,(z.$low^ae.$low)>>>0)),af=(a.nilCheck,a[20]),new $Uint64(y.$high^af.$high,(y.$low^af.$low)>>>0));o=(ag=(ah=(ai=(aj=(a.nilCheck,a[1]),ak=(a.nilCheck,a[6]),new $Uint64(aj.$high^ak.$high,(aj.$low^ak.$low)>>>0)),al=(a.nilCheck,a[11]),new $Uint64(ai.$high^al.$high,(ai.$low^al.$low)>>>0)),am=(a.nilCheck,a[16]),new $Uint64(ah.$high^am.$high,(ah.$low^am.$low)>>>0)),an=(a.nilCheck,a[21]),new $Uint64(ag.$high^an.$high,(ag.$low^an.$low)>>>0));p=(ao=(ap=(aq=(ar=(a.nilCheck,a[2]),as=(a.nilCheck,a[7]),new $Uint64(ar.$high^as.$high,(ar.$low^as.$low)>>>0)),at=(a.nilCheck,a[12]),new $Uint64(aq.$high^at.$high,(aq.$low^at.$low)>>>0)),au=(a.nilCheck,a[17]),new $Uint64(ap.$high^au.$high,(ap.$low^au.$low)>>>0)),av=(a.nilCheck,a[22]),new $Uint64(ao.$high^av.$high,(ao.$low^av.$low)>>>0));q=(aw=(ax=(ay=(az=(a.nilCheck,a[3]),ba=(a.nilCheck,a[8]),new $Uint64(az.$high^ba.$high,(az.$low^ba.$low)>>>0)),bb=(a.nilCheck,a[13]),new $Uint64(ay.$high^bb.$high,(ay.$low^bb.$low)>>>0)),bc=(a.nilCheck,a[18]),new $Uint64(ax.$high^bc.$high,(ax.$low^bc.$low)>>>0)),bd=(a.nilCheck,a[23]),new $Uint64(aw.$high^bd.$high,(aw.$low^bd.$low)>>>0));r=(be=(bf=(bg=(bh=(a.nilCheck,a[4]),bi=(a.nilCheck,a[9]),new $Uint64(bh.$high^bi.$high,(bh.$low^bi.$low)>>>0)),bj=(a.nilCheck,a[14]),new $Uint64(bg.$high^bj.$high,(bg.$low^bj.$low)>>>0)),bk=(a.nilCheck,a[19]),new $Uint64(bf.$high^bk.$high,(bf.$low^bk.$low)>>>0)),bl=(a.nilCheck,a[24]),new $Uint64(be.$high^bl.$high,(be.$low^bl.$low)>>>0));s=(bm=(bn=$shiftLeft64(o,1),bo=$shiftRightUint64(o,63),new $Uint64(bn.$high|bo.$high,(bn.$low|bo.$low)>>>0)),new $Uint64(r.$high^bm.$high,(r.$low^bm.$low)>>>0));t=(bp=(bq=$shiftLeft64(p,1),br=$shiftRightUint64(p,63),new $Uint64(bq.$high|br.$high,(bq.$low|br.$low)>>>0)),new $Uint64(n.$high^bp.$high,(n.$low^bp.$low)>>>0));u=(bs=(bt=$shiftLeft64(q,1),bu=$shiftRightUint64(q,63),new $Uint64(bt.$high|bu.$high,(bt.$low|bu.$low)>>>0)),new $Uint64(o.$high^bs.$high,(o.$low^bs.$low)>>>0));v=(bv=(bw=$shiftLeft64(r,1),bx=$shiftRightUint64(r,63),new $Uint64(bw.$high|bx.$high,(bw.$low|bx.$low)>>>0)),new $Uint64(p.$high^bv.$high,(p.$low^bv.$low)>>>0));w=(by=(bz=$shiftLeft64(n,1),ca=$shiftRightUint64(n,63),new $Uint64(bz.$high|ca.$high,(bz.$low|ca.$low)>>>0)),new $Uint64(q.$high^by.$high,(q.$low^by.$low)>>>0));n=(cb=(a.nilCheck,a[0]),new $Uint64(cb.$high^s.$high,(cb.$low^s.$low)>>>0));m=(cc=(a.nilCheck,a[6]),new $Uint64(cc.$high^t.$high,(cc.$low^t.$low)>>>0));o=(cd=$shiftLeft64(m,44),ce=$shiftRightUint64(m,20),new $Uint64(cd.$high|ce.$high,(cd.$low|ce.$low)>>>0));m=(cf=(a.nilCheck,a[12]),new $Uint64(cf.$high^u.$high,(cf.$low^u.$low)>>>0));p=(cg=$shiftLeft64(m,43),ch=$shiftRightUint64(m,21),new $Uint64(cg.$high|ch.$high,(cg.$low|ch.$low)>>>0));m=(ci=(a.nilCheck,a[18]),new $Uint64(ci.$high^v.$high,(ci.$low^v.$low)>>>0));q=(cj=$shiftLeft64(m,21),ck=$shiftRightUint64(m,43),new $Uint64(cj.$high|ck.$high,(cj.$low|ck.$low)>>>0));m=(cl=(a.nilCheck,a[24]),new $Uint64(cl.$high^w.$high,(cl.$low^w.$low)>>>0));r=(cm=$shiftLeft64(m,14),cn=$shiftRightUint64(m,50),new $Uint64(cm.$high|cn.$high,(cm.$low|cn.$low)>>>0));a.nilCheck,a[0]=(co=(cp=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^cp.$high,(n.$low^cp.$low)>>>0)),cq=((x<0||x>=T.length)?($throwRuntimeError("index out of range"),undefined):T[x]),new $Uint64(co.$high^cq.$high,(co.$low^cq.$low)>>>0));a.nilCheck,a[6]=(cr=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^cr.$high,(o.$low^cr.$low)>>>0));a.nilCheck,a[12]=(cs=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^cs.$high,(p.$low^cs.$low)>>>0));a.nilCheck,a[18]=(ct=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ct.$high,(q.$low^ct.$low)>>>0));a.nilCheck,a[24]=(cu=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^cu.$high,(r.$low^cu.$low)>>>0));m=(cv=(a.nilCheck,a[10]),new $Uint64(cv.$high^s.$high,(cv.$low^s.$low)>>>0));p=(cw=$shiftLeft64(m,3),cx=$shiftRightUint64(m,61),new $Uint64(cw.$high|cx.$high,(cw.$low|cx.$low)>>>0));m=(cy=(a.nilCheck,a[16]),new $Uint64(cy.$high^t.$high,(cy.$low^t.$low)>>>0));q=(cz=$shiftLeft64(m,45),da=$shiftRightUint64(m,19),new $Uint64(cz.$high|da.$high,(cz.$low|da.$low)>>>0));m=(db=(a.nilCheck,a[22]),new $Uint64(db.$high^u.$high,(db.$low^u.$low)>>>0));r=(dc=$shiftLeft64(m,61),dd=$shiftRightUint64(m,3),new $Uint64(dc.$high|dd.$high,(dc.$low|dd.$low)>>>0));m=(de=(a.nilCheck,a[3]),new $Uint64(de.$high^v.$high,(de.$low^v.$low)>>>0));n=(df=$shiftLeft64(m,28),dg=$shiftRightUint64(m,36),new $Uint64(df.$high|dg.$high,(df.$low|dg.$low)>>>0));m=(dh=(a.nilCheck,a[9]),new $Uint64(dh.$high^w.$high,(dh.$low^w.$low)>>>0));o=(di=$shiftLeft64(m,20),dj=$shiftRightUint64(m,44),new $Uint64(di.$high|dj.$high,(di.$low|dj.$low)>>>0));a.nilCheck,a[10]=(dk=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^dk.$high,(n.$low^dk.$low)>>>0));a.nilCheck,a[16]=(dl=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^dl.$high,(o.$low^dl.$low)>>>0));a.nilCheck,a[22]=(dm=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^dm.$high,(p.$low^dm.$low)>>>0));a.nilCheck,a[3]=(dn=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^dn.$high,(q.$low^dn.$low)>>>0));a.nilCheck,a[9]=(dp=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^dp.$high,(r.$low^dp.$low)>>>0));m=(dq=(a.nilCheck,a[20]),new $Uint64(dq.$high^s.$high,(dq.$low^s.$low)>>>0));r=(dr=$shiftLeft64(m,18),ds=$shiftRightUint64(m,46),new $Uint64(dr.$high|ds.$high,(dr.$low|ds.$low)>>>0));m=(dt=(a.nilCheck,a[1]),new $Uint64(dt.$high^t.$high,(dt.$low^t.$low)>>>0));n=(du=$shiftLeft64(m,1),dv=$shiftRightUint64(m,63),new $Uint64(du.$high|dv.$high,(du.$low|dv.$low)>>>0));m=(dw=(a.nilCheck,a[7]),new $Uint64(dw.$high^u.$high,(dw.$low^u.$low)>>>0));o=(dx=$shiftLeft64(m,6),dy=$shiftRightUint64(m,58),new $Uint64(dx.$high|dy.$high,(dx.$low|dy.$low)>>>0));m=(dz=(a.nilCheck,a[13]),new $Uint64(dz.$high^v.$high,(dz.$low^v.$low)>>>0));p=(ea=$shiftLeft64(m,25),eb=$shiftRightUint64(m,39),new $Uint64(ea.$high|eb.$high,(ea.$low|eb.$low)>>>0));m=(ec=(a.nilCheck,a[19]),new $Uint64(ec.$high^w.$high,(ec.$low^w.$low)>>>0));q=(ed=$shiftLeft64(m,8),ee=$shiftRightUint64(m,56),new $Uint64(ed.$high|ee.$high,(ed.$low|ee.$low)>>>0));a.nilCheck,a[20]=(ef=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ef.$high,(n.$low^ef.$low)>>>0));a.nilCheck,a[1]=(eg=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^eg.$high,(o.$low^eg.$low)>>>0));a.nilCheck,a[7]=(eh=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^eh.$high,(p.$low^eh.$low)>>>0));a.nilCheck,a[13]=(ei=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ei.$high,(q.$low^ei.$low)>>>0));a.nilCheck,a[19]=(ej=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ej.$high,(r.$low^ej.$low)>>>0));m=(ek=(a.nilCheck,a[5]),new $Uint64(ek.$high^s.$high,(ek.$low^s.$low)>>>0));o=(el=$shiftLeft64(m,36),em=$shiftRightUint64(m,28),new $Uint64(el.$high|em.$high,(el.$low|em.$low)>>>0));m=(en=(a.nilCheck,a[11]),new $Uint64(en.$high^t.$high,(en.$low^t.$low)>>>0));p=(eo=$shiftLeft64(m,10),ep=$shiftRightUint64(m,54),new $Uint64(eo.$high|ep.$high,(eo.$low|ep.$low)>>>0));m=(eq=(a.nilCheck,a[17]),new $Uint64(eq.$high^u.$high,(eq.$low^u.$low)>>>0));q=(er=$shiftLeft64(m,15),es=$shiftRightUint64(m,49),new $Uint64(er.$high|es.$high,(er.$low|es.$low)>>>0));m=(et=(a.nilCheck,a[23]),new $Uint64(et.$high^v.$high,(et.$low^v.$low)>>>0));r=(eu=$shiftLeft64(m,56),ev=$shiftRightUint64(m,8),new $Uint64(eu.$high|ev.$high,(eu.$low|ev.$low)>>>0));m=(ew=(a.nilCheck,a[4]),new $Uint64(ew.$high^w.$high,(ew.$low^w.$low)>>>0));n=(ex=$shiftLeft64(m,27),ey=$shiftRightUint64(m,37),new $Uint64(ex.$high|ey.$high,(ex.$low|ey.$low)>>>0));a.nilCheck,a[5]=(ez=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ez.$high,(n.$low^ez.$low)>>>0));a.nilCheck,a[11]=(fa=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^fa.$high,(o.$low^fa.$low)>>>0));a.nilCheck,a[17]=(fb=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^fb.$high,(p.$low^fb.$low)>>>0));a.nilCheck,a[23]=(fc=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^fc.$high,(q.$low^fc.$low)>>>0));a.nilCheck,a[4]=(fd=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^fd.$high,(r.$low^fd.$low)>>>0));m=(fe=(a.nilCheck,a[15]),new $Uint64(fe.$high^s.$high,(fe.$low^s.$low)>>>0));q=(ff=$shiftLeft64(m,41),fg=$shiftRightUint64(m,23),new $Uint64(ff.$high|fg.$high,(ff.$low|fg.$low)>>>0));m=(fh=(a.nilCheck,a[21]),new $Uint64(fh.$high^t.$high,(fh.$low^t.$low)>>>0));r=(fi=$shiftLeft64(m,2),fj=$shiftRightUint64(m,62),new $Uint64(fi.$high|fj.$high,(fi.$low|fj.$low)>>>0));m=(fk=(a.nilCheck,a[2]),new $Uint64(fk.$high^u.$high,(fk.$low^u.$low)>>>0));n=(fl=$shiftLeft64(m,62),fm=$shiftRightUint64(m,2),new $Uint64(fl.$high|fm.$high,(fl.$low|fm.$low)>>>0));m=(fn=(a.nilCheck,a[8]),new $Uint64(fn.$high^v.$high,(fn.$low^v.$low)>>>0));o=(fo=$shiftLeft64(m,55),fp=$shiftRightUint64(m,9),new $Uint64(fo.$high|fp.$high,(fo.$low|fp.$low)>>>0));m=(fq=(a.nilCheck,a[14]),new $Uint64(fq.$high^w.$high,(fq.$low^w.$low)>>>0));p=(fr=$shiftLeft64(m,39),fs=$shiftRightUint64(m,25),new $Uint64(fr.$high|fs.$high,(fr.$low|fs.$low)>>>0));a.nilCheck,a[15]=(ft=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ft.$high,(n.$low^ft.$low)>>>0));a.nilCheck,a[21]=(fu=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^fu.$high,(o.$low^fu.$low)>>>0));a.nilCheck,a[2]=(fv=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^fv.$high,(p.$low^fv.$low)>>>0));a.nilCheck,a[8]=(fw=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^fw.$high,(q.$low^fw.$low)>>>0));a.nilCheck,a[14]=(fx=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^fx.$high,(r.$low^fx.$low)>>>0));n=(fy=(fz=(ga=(gb=(a.nilCheck,a[0]),gc=(a.nilCheck,a[5]),new $Uint64(gb.$high^gc.$high,(gb.$low^gc.$low)>>>0)),gd=(a.nilCheck,a[10]),new $Uint64(ga.$high^gd.$high,(ga.$low^gd.$low)>>>0)),ge=(a.nilCheck,a[15]),new $Uint64(fz.$high^ge.$high,(fz.$low^ge.$low)>>>0)),gf=(a.nilCheck,a[20]),new $Uint64(fy.$high^gf.$high,(fy.$low^gf.$low)>>>0));o=(gg=(gh=(gi=(gj=(a.nilCheck,a[1]),gk=(a.nilCheck,a[6]),new $Uint64(gj.$high^gk.$high,(gj.$low^gk.$low)>>>0)),gl=(a.nilCheck,a[11]),new $Uint64(gi.$high^gl.$high,(gi.$low^gl.$low)>>>0)),gm=(a.nilCheck,a[16]),new $Uint64(gh.$high^gm.$high,(gh.$low^gm.$low)>>>0)),gn=(a.nilCheck,a[21]),new $Uint64(gg.$high^gn.$high,(gg.$low^gn.$low)>>>0));p=(go=(gp=(gq=(gr=(a.nilCheck,a[2]),gs=(a.nilCheck,a[7]),new $Uint64(gr.$high^gs.$high,(gr.$low^gs.$low)>>>0)),gt=(a.nilCheck,a[12]),new $Uint64(gq.$high^gt.$high,(gq.$low^gt.$low)>>>0)),gu=(a.nilCheck,a[17]),new $Uint64(gp.$high^gu.$high,(gp.$low^gu.$low)>>>0)),gv=(a.nilCheck,a[22]),new $Uint64(go.$high^gv.$high,(go.$low^gv.$low)>>>0));q=(gw=(gx=(gy=(gz=(a.nilCheck,a[3]),ha=(a.nilCheck,a[8]),new $Uint64(gz.$high^ha.$high,(gz.$low^ha.$low)>>>0)),hb=(a.nilCheck,a[13]),new $Uint64(gy.$high^hb.$high,(gy.$low^hb.$low)>>>0)),hc=(a.nilCheck,a[18]),new $Uint64(gx.$high^hc.$high,(gx.$low^hc.$low)>>>0)),hd=(a.nilCheck,a[23]),new $Uint64(gw.$high^hd.$high,(gw.$low^hd.$low)>>>0));r=(he=(hf=(hg=(hh=(a.nilCheck,a[4]),hi=(a.nilCheck,a[9]),new $Uint64(hh.$high^hi.$high,(hh.$low^hi.$low)>>>0)),hj=(a.nilCheck,a[14]),new $Uint64(hg.$high^hj.$high,(hg.$low^hj.$low)>>>0)),hk=(a.nilCheck,a[19]),new $Uint64(hf.$high^hk.$high,(hf.$low^hk.$low)>>>0)),hl=(a.nilCheck,a[24]),new $Uint64(he.$high^hl.$high,(he.$low^hl.$low)>>>0));s=(hm=(hn=$shiftLeft64(o,1),ho=$shiftRightUint64(o,63),new $Uint64(hn.$high|ho.$high,(hn.$low|ho.$low)>>>0)),new $Uint64(r.$high^hm.$high,(r.$low^hm.$low)>>>0));t=(hp=(hq=$shiftLeft64(p,1),hr=$shiftRightUint64(p,63),new $Uint64(hq.$high|hr.$high,(hq.$low|hr.$low)>>>0)),new $Uint64(n.$high^hp.$high,(n.$low^hp.$low)>>>0));u=(hs=(ht=$shiftLeft64(q,1),hu=$shiftRightUint64(q,63),new $Uint64(ht.$high|hu.$high,(ht.$low|hu.$low)>>>0)),new $Uint64(o.$high^hs.$high,(o.$low^hs.$low)>>>0));v=(hv=(hw=$shiftLeft64(r,1),hx=$shiftRightUint64(r,63),new $Uint64(hw.$high|hx.$high,(hw.$low|hx.$low)>>>0)),new $Uint64(p.$high^hv.$high,(p.$low^hv.$low)>>>0));w=(hy=(hz=$shiftLeft64(n,1),ia=$shiftRightUint64(n,63),new $Uint64(hz.$high|ia.$high,(hz.$low|ia.$low)>>>0)),new $Uint64(q.$high^hy.$high,(q.$low^hy.$low)>>>0));n=(ib=(a.nilCheck,a[0]),new $Uint64(ib.$high^s.$high,(ib.$low^s.$low)>>>0));m=(ic=(a.nilCheck,a[16]),new $Uint64(ic.$high^t.$high,(ic.$low^t.$low)>>>0));o=(id=$shiftLeft64(m,44),ie=$shiftRightUint64(m,20),new $Uint64(id.$high|ie.$high,(id.$low|ie.$low)>>>0));m=(ig=(a.nilCheck,a[7]),new $Uint64(ig.$high^u.$high,(ig.$low^u.$low)>>>0));p=(ih=$shiftLeft64(m,43),ii=$shiftRightUint64(m,21),new $Uint64(ih.$high|ii.$high,(ih.$low|ii.$low)>>>0));m=(ij=(a.nilCheck,a[23]),new $Uint64(ij.$high^v.$high,(ij.$low^v.$low)>>>0));q=(ik=$shiftLeft64(m,21),il=$shiftRightUint64(m,43),new $Uint64(ik.$high|il.$high,(ik.$low|il.$low)>>>0));m=(im=(a.nilCheck,a[14]),new $Uint64(im.$high^w.$high,(im.$low^w.$low)>>>0));r=(io=$shiftLeft64(m,14),ip=$shiftRightUint64(m,50),new $Uint64(io.$high|ip.$high,(io.$low|ip.$low)>>>0));a.nilCheck,a[0]=(iq=(ir=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ir.$high,(n.$low^ir.$low)>>>0)),is=(it=x+1>>0,((it<0||it>=T.length)?($throwRuntimeError("index out of range"),undefined):T[it])),new $Uint64(iq.$high^is.$high,(iq.$low^is.$low)>>>0));a.nilCheck,a[16]=(iu=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^iu.$high,(o.$low^iu.$low)>>>0));a.nilCheck,a[7]=(iv=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^iv.$high,(p.$low^iv.$low)>>>0));a.nilCheck,a[23]=(iw=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^iw.$high,(q.$low^iw.$low)>>>0));a.nilCheck,a[14]=(ix=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ix.$high,(r.$low^ix.$low)>>>0));m=(iy=(a.nilCheck,a[20]),new $Uint64(iy.$high^s.$high,(iy.$low^s.$low)>>>0));p=(iz=$shiftLeft64(m,3),ja=$shiftRightUint64(m,61),new $Uint64(iz.$high|ja.$high,(iz.$low|ja.$low)>>>0));m=(jb=(a.nilCheck,a[11]),new $Uint64(jb.$high^t.$high,(jb.$low^t.$low)>>>0));q=(jc=$shiftLeft64(m,45),jd=$shiftRightUint64(m,19),new $Uint64(jc.$high|jd.$high,(jc.$low|jd.$low)>>>0));m=(je=(a.nilCheck,a[2]),new $Uint64(je.$high^u.$high,(je.$low^u.$low)>>>0));r=(jf=$shiftLeft64(m,61),jg=$shiftRightUint64(m,3),new $Uint64(jf.$high|jg.$high,(jf.$low|jg.$low)>>>0));m=(jh=(a.nilCheck,a[18]),new $Uint64(jh.$high^v.$high,(jh.$low^v.$low)>>>0));n=(ji=$shiftLeft64(m,28),jj=$shiftRightUint64(m,36),new $Uint64(ji.$high|jj.$high,(ji.$low|jj.$low)>>>0));m=(jk=(a.nilCheck,a[9]),new $Uint64(jk.$high^w.$high,(jk.$low^w.$low)>>>0));o=(jl=$shiftLeft64(m,20),jm=$shiftRightUint64(m,44),new $Uint64(jl.$high|jm.$high,(jl.$low|jm.$low)>>>0));a.nilCheck,a[20]=(jn=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^jn.$high,(n.$low^jn.$low)>>>0));a.nilCheck,a[11]=(jo=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^jo.$high,(o.$low^jo.$low)>>>0));a.nilCheck,a[2]=(jp=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^jp.$high,(p.$low^jp.$low)>>>0));a.nilCheck,a[18]=(jq=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^jq.$high,(q.$low^jq.$low)>>>0));a.nilCheck,a[9]=(jr=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^jr.$high,(r.$low^jr.$low)>>>0));m=(js=(a.nilCheck,a[15]),new $Uint64(js.$high^s.$high,(js.$low^s.$low)>>>0));r=(jt=$shiftLeft64(m,18),ju=$shiftRightUint64(m,46),new $Uint64(jt.$high|ju.$high,(jt.$low|ju.$low)>>>0));m=(jv=(a.nilCheck,a[6]),new $Uint64(jv.$high^t.$high,(jv.$low^t.$low)>>>0));n=(jw=$shiftLeft64(m,1),jx=$shiftRightUint64(m,63),new $Uint64(jw.$high|jx.$high,(jw.$low|jx.$low)>>>0));m=(jy=(a.nilCheck,a[22]),new $Uint64(jy.$high^u.$high,(jy.$low^u.$low)>>>0));o=(jz=$shiftLeft64(m,6),ka=$shiftRightUint64(m,58),new $Uint64(jz.$high|ka.$high,(jz.$low|ka.$low)>>>0));m=(kb=(a.nilCheck,a[13]),new $Uint64(kb.$high^v.$high,(kb.$low^v.$low)>>>0));p=(kc=$shiftLeft64(m,25),kd=$shiftRightUint64(m,39),new $Uint64(kc.$high|kd.$high,(kc.$low|kd.$low)>>>0));m=(ke=(a.nilCheck,a[4]),new $Uint64(ke.$high^w.$high,(ke.$low^w.$low)>>>0));q=(kf=$shiftLeft64(m,8),kg=$shiftRightUint64(m,56),new $Uint64(kf.$high|kg.$high,(kf.$low|kg.$low)>>>0));a.nilCheck,a[15]=(kh=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^kh.$high,(n.$low^kh.$low)>>>0));a.nilCheck,a[6]=(ki=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^ki.$high,(o.$low^ki.$low)>>>0));a.nilCheck,a[22]=(kj=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^kj.$high,(p.$low^kj.$low)>>>0));a.nilCheck,a[13]=(kk=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^kk.$high,(q.$low^kk.$low)>>>0));a.nilCheck,a[4]=(kl=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^kl.$high,(r.$low^kl.$low)>>>0));m=(km=(a.nilCheck,a[10]),new $Uint64(km.$high^s.$high,(km.$low^s.$low)>>>0));o=(kn=$shiftLeft64(m,36),ko=$shiftRightUint64(m,28),new $Uint64(kn.$high|ko.$high,(kn.$low|ko.$low)>>>0));m=(kp=(a.nilCheck,a[1]),new $Uint64(kp.$high^t.$high,(kp.$low^t.$low)>>>0));p=(kq=$shiftLeft64(m,10),kr=$shiftRightUint64(m,54),new $Uint64(kq.$high|kr.$high,(kq.$low|kr.$low)>>>0));m=(ks=(a.nilCheck,a[17]),new $Uint64(ks.$high^u.$high,(ks.$low^u.$low)>>>0));q=(kt=$shiftLeft64(m,15),ku=$shiftRightUint64(m,49),new $Uint64(kt.$high|ku.$high,(kt.$low|ku.$low)>>>0));m=(kv=(a.nilCheck,a[8]),new $Uint64(kv.$high^v.$high,(kv.$low^v.$low)>>>0));r=(kw=$shiftLeft64(m,56),kx=$shiftRightUint64(m,8),new $Uint64(kw.$high|kx.$high,(kw.$low|kx.$low)>>>0));m=(ky=(a.nilCheck,a[24]),new $Uint64(ky.$high^w.$high,(ky.$low^w.$low)>>>0));n=(kz=$shiftLeft64(m,27),la=$shiftRightUint64(m,37),new $Uint64(kz.$high|la.$high,(kz.$low|la.$low)>>>0));a.nilCheck,a[10]=(lb=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^lb.$high,(n.$low^lb.$low)>>>0));a.nilCheck,a[1]=(lc=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^lc.$high,(o.$low^lc.$low)>>>0));a.nilCheck,a[17]=(ld=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^ld.$high,(p.$low^ld.$low)>>>0));a.nilCheck,a[8]=(le=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^le.$high,(q.$low^le.$low)>>>0));a.nilCheck,a[24]=(lf=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^lf.$high,(r.$low^lf.$low)>>>0));m=(lg=(a.nilCheck,a[5]),new $Uint64(lg.$high^s.$high,(lg.$low^s.$low)>>>0));q=(lh=$shiftLeft64(m,41),li=$shiftRightUint64(m,23),new $Uint64(lh.$high|li.$high,(lh.$low|li.$low)>>>0));m=(lj=(a.nilCheck,a[21]),new $Uint64(lj.$high^t.$high,(lj.$low^t.$low)>>>0));r=(lk=$shiftLeft64(m,2),ll=$shiftRightUint64(m,62),new $Uint64(lk.$high|ll.$high,(lk.$low|ll.$low)>>>0));m=(lm=(a.nilCheck,a[12]),new $Uint64(lm.$high^u.$high,(lm.$low^u.$low)>>>0));n=(ln=$shiftLeft64(m,62),lo=$shiftRightUint64(m,2),new $Uint64(ln.$high|lo.$high,(ln.$low|lo.$low)>>>0));m=(lp=(a.nilCheck,a[3]),new $Uint64(lp.$high^v.$high,(lp.$low^v.$low)>>>0));o=(lq=$shiftLeft64(m,55),lr=$shiftRightUint64(m,9),new $Uint64(lq.$high|lr.$high,(lq.$low|lr.$low)>>>0));m=(ls=(a.nilCheck,a[19]),new $Uint64(ls.$high^w.$high,(ls.$low^w.$low)>>>0));p=(lt=$shiftLeft64(m,39),lu=$shiftRightUint64(m,25),new $Uint64(lt.$high|lu.$high,(lt.$low|lu.$low)>>>0));a.nilCheck,a[5]=(lv=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^lv.$high,(n.$low^lv.$low)>>>0));a.nilCheck,a[21]=(lw=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^lw.$high,(o.$low^lw.$low)>>>0));a.nilCheck,a[12]=(lx=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^lx.$high,(p.$low^lx.$low)>>>0));a.nilCheck,a[3]=(ly=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ly.$high,(q.$low^ly.$low)>>>0));a.nilCheck,a[19]=(lz=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^lz.$high,(r.$low^lz.$low)>>>0));n=(ma=(mb=(mc=(md=(a.nilCheck,a[0]),me=(a.nilCheck,a[5]),new $Uint64(md.$high^me.$high,(md.$low^me.$low)>>>0)),mf=(a.nilCheck,a[10]),new $Uint64(mc.$high^mf.$high,(mc.$low^mf.$low)>>>0)),mg=(a.nilCheck,a[15]),new $Uint64(mb.$high^mg.$high,(mb.$low^mg.$low)>>>0)),mh=(a.nilCheck,a[20]),new $Uint64(ma.$high^mh.$high,(ma.$low^mh.$low)>>>0));o=(mi=(mj=(mk=(ml=(a.nilCheck,a[1]),mm=(a.nilCheck,a[6]),new $Uint64(ml.$high^mm.$high,(ml.$low^mm.$low)>>>0)),mn=(a.nilCheck,a[11]),new $Uint64(mk.$high^mn.$high,(mk.$low^mn.$low)>>>0)),mo=(a.nilCheck,a[16]),new $Uint64(mj.$high^mo.$high,(mj.$low^mo.$low)>>>0)),mp=(a.nilCheck,a[21]),new $Uint64(mi.$high^mp.$high,(mi.$low^mp.$low)>>>0));p=(mq=(mr=(ms=(mt=(a.nilCheck,a[2]),mu=(a.nilCheck,a[7]),new $Uint64(mt.$high^mu.$high,(mt.$low^mu.$low)>>>0)),mv=(a.nilCheck,a[12]),new $Uint64(ms.$high^mv.$high,(ms.$low^mv.$low)>>>0)),mw=(a.nilCheck,a[17]),new $Uint64(mr.$high^mw.$high,(mr.$low^mw.$low)>>>0)),mx=(a.nilCheck,a[22]),new $Uint64(mq.$high^mx.$high,(mq.$low^mx.$low)>>>0));q=(my=(mz=(na=(nb=(a.nilCheck,a[3]),nc=(a.nilCheck,a[8]),new $Uint64(nb.$high^nc.$high,(nb.$low^nc.$low)>>>0)),nd=(a.nilCheck,a[13]),new $Uint64(na.$high^nd.$high,(na.$low^nd.$low)>>>0)),ne=(a.nilCheck,a[18]),new $Uint64(mz.$high^ne.$high,(mz.$low^ne.$low)>>>0)),nf=(a.nilCheck,a[23]),new $Uint64(my.$high^nf.$high,(my.$low^nf.$low)>>>0));r=(ng=(nh=(ni=(nj=(a.nilCheck,a[4]),nk=(a.nilCheck,a[9]),new $Uint64(nj.$high^nk.$high,(nj.$low^nk.$low)>>>0)),nl=(a.nilCheck,a[14]),new $Uint64(ni.$high^nl.$high,(ni.$low^nl.$low)>>>0)),nm=(a.nilCheck,a[19]),new $Uint64(nh.$high^nm.$high,(nh.$low^nm.$low)>>>0)),nn=(a.nilCheck,a[24]),new $Uint64(ng.$high^nn.$high,(ng.$low^nn.$low)>>>0));s=(no=(np=$shiftLeft64(o,1),nq=$shiftRightUint64(o,63),new $Uint64(np.$high|nq.$high,(np.$low|nq.$low)>>>0)),new $Uint64(r.$high^no.$high,(r.$low^no.$low)>>>0));t=(nr=(ns=$shiftLeft64(p,1),nt=$shiftRightUint64(p,63),new $Uint64(ns.$high|nt.$high,(ns.$low|nt.$low)>>>0)),new $Uint64(n.$high^nr.$high,(n.$low^nr.$low)>>>0));u=(nu=(nv=$shiftLeft64(q,1),nw=$shiftRightUint64(q,63),new $Uint64(nv.$high|nw.$high,(nv.$low|nw.$low)>>>0)),new $Uint64(o.$high^nu.$high,(o.$low^nu.$low)>>>0));v=(nx=(ny=$shiftLeft64(r,1),nz=$shiftRightUint64(r,63),new $Uint64(ny.$high|nz.$high,(ny.$low|nz.$low)>>>0)),new $Uint64(p.$high^nx.$high,(p.$low^nx.$low)>>>0));w=(oa=(ob=$shiftLeft64(n,1),oc=$shiftRightUint64(n,63),new $Uint64(ob.$high|oc.$high,(ob.$low|oc.$low)>>>0)),new $Uint64(q.$high^oa.$high,(q.$low^oa.$low)>>>0));n=(od=(a.nilCheck,a[0]),new $Uint64(od.$high^s.$high,(od.$low^s.$low)>>>0));m=(oe=(a.nilCheck,a[11]),new $Uint64(oe.$high^t.$high,(oe.$low^t.$low)>>>0));o=(of=$shiftLeft64(m,44),og=$shiftRightUint64(m,20),new $Uint64(of.$high|og.$high,(of.$low|og.$low)>>>0));m=(oh=(a.nilCheck,a[22]),new $Uint64(oh.$high^u.$high,(oh.$low^u.$low)>>>0));p=(oi=$shiftLeft64(m,43),oj=$shiftRightUint64(m,21),new $Uint64(oi.$high|oj.$high,(oi.$low|oj.$low)>>>0));m=(ok=(a.nilCheck,a[8]),new $Uint64(ok.$high^v.$high,(ok.$low^v.$low)>>>0));q=(ol=$shiftLeft64(m,21),om=$shiftRightUint64(m,43),new $Uint64(ol.$high|om.$high,(ol.$low|om.$low)>>>0));m=(on=(a.nilCheck,a[19]),new $Uint64(on.$high^w.$high,(on.$low^w.$low)>>>0));r=(oo=$shiftLeft64(m,14),op=$shiftRightUint64(m,50),new $Uint64(oo.$high|op.$high,(oo.$low|op.$low)>>>0));a.nilCheck,a[0]=(oq=(or=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^or.$high,(n.$low^or.$low)>>>0)),os=(ot=x+2>>0,((ot<0||ot>=T.length)?($throwRuntimeError("index out of range"),undefined):T[ot])),new $Uint64(oq.$high^os.$high,(oq.$low^os.$low)>>>0));a.nilCheck,a[11]=(ou=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^ou.$high,(o.$low^ou.$low)>>>0));a.nilCheck,a[22]=(ov=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^ov.$high,(p.$low^ov.$low)>>>0));a.nilCheck,a[8]=(ow=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ow.$high,(q.$low^ow.$low)>>>0));a.nilCheck,a[19]=(ox=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ox.$high,(r.$low^ox.$low)>>>0));m=(oy=(a.nilCheck,a[15]),new $Uint64(oy.$high^s.$high,(oy.$low^s.$low)>>>0));p=(oz=$shiftLeft64(m,3),pa=$shiftRightUint64(m,61),new $Uint64(oz.$high|pa.$high,(oz.$low|pa.$low)>>>0));m=(pb=(a.nilCheck,a[1]),new $Uint64(pb.$high^t.$high,(pb.$low^t.$low)>>>0));q=(pc=$shiftLeft64(m,45),pd=$shiftRightUint64(m,19),new $Uint64(pc.$high|pd.$high,(pc.$low|pd.$low)>>>0));m=(pe=(a.nilCheck,a[12]),new $Uint64(pe.$high^u.$high,(pe.$low^u.$low)>>>0));r=(pf=$shiftLeft64(m,61),pg=$shiftRightUint64(m,3),new $Uint64(pf.$high|pg.$high,(pf.$low|pg.$low)>>>0));m=(ph=(a.nilCheck,a[23]),new $Uint64(ph.$high^v.$high,(ph.$low^v.$low)>>>0));n=(pi=$shiftLeft64(m,28),pj=$shiftRightUint64(m,36),new $Uint64(pi.$high|pj.$high,(pi.$low|pj.$low)>>>0));m=(pk=(a.nilCheck,a[9]),new $Uint64(pk.$high^w.$high,(pk.$low^w.$low)>>>0));o=(pl=$shiftLeft64(m,20),pm=$shiftRightUint64(m,44),new $Uint64(pl.$high|pm.$high,(pl.$low|pm.$low)>>>0));a.nilCheck,a[15]=(pn=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^pn.$high,(n.$low^pn.$low)>>>0));a.nilCheck,a[1]=(po=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^po.$high,(o.$low^po.$low)>>>0));a.nilCheck,a[12]=(pp=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^pp.$high,(p.$low^pp.$low)>>>0));a.nilCheck,a[23]=(pq=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^pq.$high,(q.$low^pq.$low)>>>0));a.nilCheck,a[9]=(pr=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^pr.$high,(r.$low^pr.$low)>>>0));m=(ps=(a.nilCheck,a[5]),new $Uint64(ps.$high^s.$high,(ps.$low^s.$low)>>>0));r=(pt=$shiftLeft64(m,18),pu=$shiftRightUint64(m,46),new $Uint64(pt.$high|pu.$high,(pt.$low|pu.$low)>>>0));m=(pv=(a.nilCheck,a[16]),new $Uint64(pv.$high^t.$high,(pv.$low^t.$low)>>>0));n=(pw=$shiftLeft64(m,1),px=$shiftRightUint64(m,63),new $Uint64(pw.$high|px.$high,(pw.$low|px.$low)>>>0));m=(py=(a.nilCheck,a[2]),new $Uint64(py.$high^u.$high,(py.$low^u.$low)>>>0));o=(pz=$shiftLeft64(m,6),qa=$shiftRightUint64(m,58),new $Uint64(pz.$high|qa.$high,(pz.$low|qa.$low)>>>0));m=(qb=(a.nilCheck,a[13]),new $Uint64(qb.$high^v.$high,(qb.$low^v.$low)>>>0));p=(qc=$shiftLeft64(m,25),qd=$shiftRightUint64(m,39),new $Uint64(qc.$high|qd.$high,(qc.$low|qd.$low)>>>0));m=(qe=(a.nilCheck,a[24]),new $Uint64(qe.$high^w.$high,(qe.$low^w.$low)>>>0));q=(qf=$shiftLeft64(m,8),qg=$shiftRightUint64(m,56),new $Uint64(qf.$high|qg.$high,(qf.$low|qg.$low)>>>0));a.nilCheck,a[5]=(qh=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^qh.$high,(n.$low^qh.$low)>>>0));a.nilCheck,a[16]=(qi=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^qi.$high,(o.$low^qi.$low)>>>0));a.nilCheck,a[2]=(qj=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^qj.$high,(p.$low^qj.$low)>>>0));a.nilCheck,a[13]=(qk=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^qk.$high,(q.$low^qk.$low)>>>0));a.nilCheck,a[24]=(ql=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ql.$high,(r.$low^ql.$low)>>>0));m=(qm=(a.nilCheck,a[20]),new $Uint64(qm.$high^s.$high,(qm.$low^s.$low)>>>0));o=(qn=$shiftLeft64(m,36),qo=$shiftRightUint64(m,28),new $Uint64(qn.$high|qo.$high,(qn.$low|qo.$low)>>>0));m=(qp=(a.nilCheck,a[6]),new $Uint64(qp.$high^t.$high,(qp.$low^t.$low)>>>0));p=(qq=$shiftLeft64(m,10),qr=$shiftRightUint64(m,54),new $Uint64(qq.$high|qr.$high,(qq.$low|qr.$low)>>>0));m=(qs=(a.nilCheck,a[17]),new $Uint64(qs.$high^u.$high,(qs.$low^u.$low)>>>0));q=(qt=$shiftLeft64(m,15),qu=$shiftRightUint64(m,49),new $Uint64(qt.$high|qu.$high,(qt.$low|qu.$low)>>>0));m=(qv=(a.nilCheck,a[3]),new $Uint64(qv.$high^v.$high,(qv.$low^v.$low)>>>0));r=(qw=$shiftLeft64(m,56),qx=$shiftRightUint64(m,8),new $Uint64(qw.$high|qx.$high,(qw.$low|qx.$low)>>>0));m=(qy=(a.nilCheck,a[14]),new $Uint64(qy.$high^w.$high,(qy.$low^w.$low)>>>0));n=(qz=$shiftLeft64(m,27),ra=$shiftRightUint64(m,37),new $Uint64(qz.$high|ra.$high,(qz.$low|ra.$low)>>>0));a.nilCheck,a[20]=(rb=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^rb.$high,(n.$low^rb.$low)>>>0));a.nilCheck,a[6]=(rc=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^rc.$high,(o.$low^rc.$low)>>>0));a.nilCheck,a[17]=(rd=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^rd.$high,(p.$low^rd.$low)>>>0));a.nilCheck,a[3]=(re=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^re.$high,(q.$low^re.$low)>>>0));a.nilCheck,a[14]=(rf=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^rf.$high,(r.$low^rf.$low)>>>0));m=(rg=(a.nilCheck,a[10]),new $Uint64(rg.$high^s.$high,(rg.$low^s.$low)>>>0));q=(rh=$shiftLeft64(m,41),ri=$shiftRightUint64(m,23),new $Uint64(rh.$high|ri.$high,(rh.$low|ri.$low)>>>0));m=(rj=(a.nilCheck,a[21]),new $Uint64(rj.$high^t.$high,(rj.$low^t.$low)>>>0));r=(rk=$shiftLeft64(m,2),rl=$shiftRightUint64(m,62),new $Uint64(rk.$high|rl.$high,(rk.$low|rl.$low)>>>0));m=(rm=(a.nilCheck,a[7]),new $Uint64(rm.$high^u.$high,(rm.$low^u.$low)>>>0));n=(rn=$shiftLeft64(m,62),ro=$shiftRightUint64(m,2),new $Uint64(rn.$high|ro.$high,(rn.$low|ro.$low)>>>0));m=(rp=(a.nilCheck,a[18]),new $Uint64(rp.$high^v.$high,(rp.$low^v.$low)>>>0));o=(rq=$shiftLeft64(m,55),rr=$shiftRightUint64(m,9),new $Uint64(rq.$high|rr.$high,(rq.$low|rr.$low)>>>0));m=(rs=(a.nilCheck,a[4]),new $Uint64(rs.$high^w.$high,(rs.$low^w.$low)>>>0));p=(rt=$shiftLeft64(m,39),ru=$shiftRightUint64(m,25),new $Uint64(rt.$high|ru.$high,(rt.$low|ru.$low)>>>0));a.nilCheck,a[10]=(rv=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^rv.$high,(n.$low^rv.$low)>>>0));a.nilCheck,a[21]=(rw=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^rw.$high,(o.$low^rw.$low)>>>0));a.nilCheck,a[7]=(rx=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^rx.$high,(p.$low^rx.$low)>>>0));a.nilCheck,a[18]=(ry=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^ry.$high,(q.$low^ry.$low)>>>0));a.nilCheck,a[4]=(rz=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^rz.$high,(r.$low^rz.$low)>>>0));n=(sa=(sb=(sc=(sd=(a.nilCheck,a[0]),se=(a.nilCheck,a[5]),new $Uint64(sd.$high^se.$high,(sd.$low^se.$low)>>>0)),sf=(a.nilCheck,a[10]),new $Uint64(sc.$high^sf.$high,(sc.$low^sf.$low)>>>0)),sg=(a.nilCheck,a[15]),new $Uint64(sb.$high^sg.$high,(sb.$low^sg.$low)>>>0)),sh=(a.nilCheck,a[20]),new $Uint64(sa.$high^sh.$high,(sa.$low^sh.$low)>>>0));o=(si=(sj=(sk=(sl=(a.nilCheck,a[1]),sm=(a.nilCheck,a[6]),new $Uint64(sl.$high^sm.$high,(sl.$low^sm.$low)>>>0)),sn=(a.nilCheck,a[11]),new $Uint64(sk.$high^sn.$high,(sk.$low^sn.$low)>>>0)),so=(a.nilCheck,a[16]),new $Uint64(sj.$high^so.$high,(sj.$low^so.$low)>>>0)),sp=(a.nilCheck,a[21]),new $Uint64(si.$high^sp.$high,(si.$low^sp.$low)>>>0));p=(sq=(sr=(ss=(st=(a.nilCheck,a[2]),su=(a.nilCheck,a[7]),new $Uint64(st.$high^su.$high,(st.$low^su.$low)>>>0)),sv=(a.nilCheck,a[12]),new $Uint64(ss.$high^sv.$high,(ss.$low^sv.$low)>>>0)),sw=(a.nilCheck,a[17]),new $Uint64(sr.$high^sw.$high,(sr.$low^sw.$low)>>>0)),sx=(a.nilCheck,a[22]),new $Uint64(sq.$high^sx.$high,(sq.$low^sx.$low)>>>0));q=(sy=(sz=(ta=(tb=(a.nilCheck,a[3]),tc=(a.nilCheck,a[8]),new $Uint64(tb.$high^tc.$high,(tb.$low^tc.$low)>>>0)),td=(a.nilCheck,a[13]),new $Uint64(ta.$high^td.$high,(ta.$low^td.$low)>>>0)),te=(a.nilCheck,a[18]),new $Uint64(sz.$high^te.$high,(sz.$low^te.$low)>>>0)),tf=(a.nilCheck,a[23]),new $Uint64(sy.$high^tf.$high,(sy.$low^tf.$low)>>>0));r=(tg=(th=(ti=(tj=(a.nilCheck,a[4]),tk=(a.nilCheck,a[9]),new $Uint64(tj.$high^tk.$high,(tj.$low^tk.$low)>>>0)),tl=(a.nilCheck,a[14]),new $Uint64(ti.$high^tl.$high,(ti.$low^tl.$low)>>>0)),tm=(a.nilCheck,a[19]),new $Uint64(th.$high^tm.$high,(th.$low^tm.$low)>>>0)),tn=(a.nilCheck,a[24]),new $Uint64(tg.$high^tn.$high,(tg.$low^tn.$low)>>>0));s=(to=(tp=$shiftLeft64(o,1),tq=$shiftRightUint64(o,63),new $Uint64(tp.$high|tq.$high,(tp.$low|tq.$low)>>>0)),new $Uint64(r.$high^to.$high,(r.$low^to.$low)>>>0));t=(tr=(ts=$shiftLeft64(p,1),tt=$shiftRightUint64(p,63),new $Uint64(ts.$high|tt.$high,(ts.$low|tt.$low)>>>0)),new $Uint64(n.$high^tr.$high,(n.$low^tr.$low)>>>0));u=(tu=(tv=$shiftLeft64(q,1),tw=$shiftRightUint64(q,63),new $Uint64(tv.$high|tw.$high,(tv.$low|tw.$low)>>>0)),new $Uint64(o.$high^tu.$high,(o.$low^tu.$low)>>>0));v=(tx=(ty=$shiftLeft64(r,1),tz=$shiftRightUint64(r,63),new $Uint64(ty.$high|tz.$high,(ty.$low|tz.$low)>>>0)),new $Uint64(p.$high^tx.$high,(p.$low^tx.$low)>>>0));w=(ua=(ub=$shiftLeft64(n,1),uc=$shiftRightUint64(n,63),new $Uint64(ub.$high|uc.$high,(ub.$low|uc.$low)>>>0)),new $Uint64(q.$high^ua.$high,(q.$low^ua.$low)>>>0));n=(ud=(a.nilCheck,a[0]),new $Uint64(ud.$high^s.$high,(ud.$low^s.$low)>>>0));m=(ue=(a.nilCheck,a[1]),new $Uint64(ue.$high^t.$high,(ue.$low^t.$low)>>>0));o=(uf=$shiftLeft64(m,44),ug=$shiftRightUint64(m,20),new $Uint64(uf.$high|ug.$high,(uf.$low|ug.$low)>>>0));m=(uh=(a.nilCheck,a[2]),new $Uint64(uh.$high^u.$high,(uh.$low^u.$low)>>>0));p=(ui=$shiftLeft64(m,43),uj=$shiftRightUint64(m,21),new $Uint64(ui.$high|uj.$high,(ui.$low|uj.$low)>>>0));m=(uk=(a.nilCheck,a[3]),new $Uint64(uk.$high^v.$high,(uk.$low^v.$low)>>>0));q=(ul=$shiftLeft64(m,21),um=$shiftRightUint64(m,43),new $Uint64(ul.$high|um.$high,(ul.$low|um.$low)>>>0));m=(un=(a.nilCheck,a[4]),new $Uint64(un.$high^w.$high,(un.$low^w.$low)>>>0));r=(uo=$shiftLeft64(m,14),up=$shiftRightUint64(m,50),new $Uint64(uo.$high|up.$high,(uo.$low|up.$low)>>>0));a.nilCheck,a[0]=(uq=(ur=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^ur.$high,(n.$low^ur.$low)>>>0)),us=(ut=x+3>>0,((ut<0||ut>=T.length)?($throwRuntimeError("index out of range"),undefined):T[ut])),new $Uint64(uq.$high^us.$high,(uq.$low^us.$low)>>>0));a.nilCheck,a[1]=(uu=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^uu.$high,(o.$low^uu.$low)>>>0));a.nilCheck,a[2]=(uv=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^uv.$high,(p.$low^uv.$low)>>>0));a.nilCheck,a[3]=(uw=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^uw.$high,(q.$low^uw.$low)>>>0));a.nilCheck,a[4]=(ux=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^ux.$high,(r.$low^ux.$low)>>>0));m=(uy=(a.nilCheck,a[5]),new $Uint64(uy.$high^s.$high,(uy.$low^s.$low)>>>0));p=(uz=$shiftLeft64(m,3),va=$shiftRightUint64(m,61),new $Uint64(uz.$high|va.$high,(uz.$low|va.$low)>>>0));m=(vb=(a.nilCheck,a[6]),new $Uint64(vb.$high^t.$high,(vb.$low^t.$low)>>>0));q=(vc=$shiftLeft64(m,45),vd=$shiftRightUint64(m,19),new $Uint64(vc.$high|vd.$high,(vc.$low|vd.$low)>>>0));m=(ve=(a.nilCheck,a[7]),new $Uint64(ve.$high^u.$high,(ve.$low^u.$low)>>>0));r=(vf=$shiftLeft64(m,61),vg=$shiftRightUint64(m,3),new $Uint64(vf.$high|vg.$high,(vf.$low|vg.$low)>>>0));m=(vh=(a.nilCheck,a[8]),new $Uint64(vh.$high^v.$high,(vh.$low^v.$low)>>>0));n=(vi=$shiftLeft64(m,28),vj=$shiftRightUint64(m,36),new $Uint64(vi.$high|vj.$high,(vi.$low|vj.$low)>>>0));m=(vk=(a.nilCheck,a[9]),new $Uint64(vk.$high^w.$high,(vk.$low^w.$low)>>>0));o=(vl=$shiftLeft64(m,20),vm=$shiftRightUint64(m,44),new $Uint64(vl.$high|vm.$high,(vl.$low|vm.$low)>>>0));a.nilCheck,a[5]=(vn=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^vn.$high,(n.$low^vn.$low)>>>0));a.nilCheck,a[6]=(vo=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^vo.$high,(o.$low^vo.$low)>>>0));a.nilCheck,a[7]=(vp=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^vp.$high,(p.$low^vp.$low)>>>0));a.nilCheck,a[8]=(vq=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^vq.$high,(q.$low^vq.$low)>>>0));a.nilCheck,a[9]=(vr=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^vr.$high,(r.$low^vr.$low)>>>0));m=(vs=(a.nilCheck,a[10]),new $Uint64(vs.$high^s.$high,(vs.$low^s.$low)>>>0));r=(vt=$shiftLeft64(m,18),vu=$shiftRightUint64(m,46),new $Uint64(vt.$high|vu.$high,(vt.$low|vu.$low)>>>0));m=(vv=(a.nilCheck,a[11]),new $Uint64(vv.$high^t.$high,(vv.$low^t.$low)>>>0));n=(vw=$shiftLeft64(m,1),vx=$shiftRightUint64(m,63),new $Uint64(vw.$high|vx.$high,(vw.$low|vx.$low)>>>0));m=(vy=(a.nilCheck,a[12]),new $Uint64(vy.$high^u.$high,(vy.$low^u.$low)>>>0));o=(vz=$shiftLeft64(m,6),wa=$shiftRightUint64(m,58),new $Uint64(vz.$high|wa.$high,(vz.$low|wa.$low)>>>0));m=(wb=(a.nilCheck,a[13]),new $Uint64(wb.$high^v.$high,(wb.$low^v.$low)>>>0));p=(wc=$shiftLeft64(m,25),wd=$shiftRightUint64(m,39),new $Uint64(wc.$high|wd.$high,(wc.$low|wd.$low)>>>0));m=(we=(a.nilCheck,a[14]),new $Uint64(we.$high^w.$high,(we.$low^w.$low)>>>0));q=(wf=$shiftLeft64(m,8),wg=$shiftRightUint64(m,56),new $Uint64(wf.$high|wg.$high,(wf.$low|wg.$low)>>>0));a.nilCheck,a[10]=(wh=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^wh.$high,(n.$low^wh.$low)>>>0));a.nilCheck,a[11]=(wi=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^wi.$high,(o.$low^wi.$low)>>>0));a.nilCheck,a[12]=(wj=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^wj.$high,(p.$low^wj.$low)>>>0));a.nilCheck,a[13]=(wk=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^wk.$high,(q.$low^wk.$low)>>>0));a.nilCheck,a[14]=(wl=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^wl.$high,(r.$low^wl.$low)>>>0));m=(wm=(a.nilCheck,a[15]),new $Uint64(wm.$high^s.$high,(wm.$low^s.$low)>>>0));o=(wn=$shiftLeft64(m,36),wo=$shiftRightUint64(m,28),new $Uint64(wn.$high|wo.$high,(wn.$low|wo.$low)>>>0));m=(wp=(a.nilCheck,a[16]),new $Uint64(wp.$high^t.$high,(wp.$low^t.$low)>>>0));p=(wq=$shiftLeft64(m,10),wr=$shiftRightUint64(m,54),new $Uint64(wq.$high|wr.$high,(wq.$low|wr.$low)>>>0));m=(ws=(a.nilCheck,a[17]),new $Uint64(ws.$high^u.$high,(ws.$low^u.$low)>>>0));q=(wt=$shiftLeft64(m,15),wu=$shiftRightUint64(m,49),new $Uint64(wt.$high|wu.$high,(wt.$low|wu.$low)>>>0));m=(wv=(a.nilCheck,a[18]),new $Uint64(wv.$high^v.$high,(wv.$low^v.$low)>>>0));r=(ww=$shiftLeft64(m,56),wx=$shiftRightUint64(m,8),new $Uint64(ww.$high|wx.$high,(ww.$low|wx.$low)>>>0));m=(wy=(a.nilCheck,a[19]),new $Uint64(wy.$high^w.$high,(wy.$low^w.$low)>>>0));n=(wz=$shiftLeft64(m,27),xa=$shiftRightUint64(m,37),new $Uint64(wz.$high|xa.$high,(wz.$low|xa.$low)>>>0));a.nilCheck,a[15]=(xb=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^xb.$high,(n.$low^xb.$low)>>>0));a.nilCheck,a[16]=(xc=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^xc.$high,(o.$low^xc.$low)>>>0));a.nilCheck,a[17]=(xd=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^xd.$high,(p.$low^xd.$low)>>>0));a.nilCheck,a[18]=(xe=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^xe.$high,(q.$low^xe.$low)>>>0));a.nilCheck,a[19]=(xf=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^xf.$high,(r.$low^xf.$low)>>>0));m=(xg=(a.nilCheck,a[20]),new $Uint64(xg.$high^s.$high,(xg.$low^s.$low)>>>0));q=(xh=$shiftLeft64(m,41),xi=$shiftRightUint64(m,23),new $Uint64(xh.$high|xi.$high,(xh.$low|xi.$low)>>>0));m=(xj=(a.nilCheck,a[21]),new $Uint64(xj.$high^t.$high,(xj.$low^t.$low)>>>0));r=(xk=$shiftLeft64(m,2),xl=$shiftRightUint64(m,62),new $Uint64(xk.$high|xl.$high,(xk.$low|xl.$low)>>>0));m=(xm=(a.nilCheck,a[22]),new $Uint64(xm.$high^u.$high,(xm.$low^u.$low)>>>0));n=(xn=$shiftLeft64(m,62),xo=$shiftRightUint64(m,2),new $Uint64(xn.$high|xo.$high,(xn.$low|xo.$low)>>>0));m=(xp=(a.nilCheck,a[23]),new $Uint64(xp.$high^v.$high,(xp.$low^v.$low)>>>0));o=(xq=$shiftLeft64(m,55),xr=$shiftRightUint64(m,9),new $Uint64(xq.$high|xr.$high,(xq.$low|xr.$low)>>>0));m=(xs=(a.nilCheck,a[24]),new $Uint64(xs.$high^w.$high,(xs.$low^w.$low)>>>0));p=(xt=$shiftLeft64(m,39),xu=$shiftRightUint64(m,25),new $Uint64(xt.$high|xu.$high,(xt.$low|xu.$low)>>>0));a.nilCheck,a[20]=(xv=new $Uint64(p.$high&~o.$high,(p.$low&~o.$low)>>>0),new $Uint64(n.$high^xv.$high,(n.$low^xv.$low)>>>0));a.nilCheck,a[21]=(xw=new $Uint64(q.$high&~p.$high,(q.$low&~p.$low)>>>0),new $Uint64(o.$high^xw.$high,(o.$low^xw.$low)>>>0));a.nilCheck,a[22]=(xx=new $Uint64(r.$high&~q.$high,(r.$low&~q.$low)>>>0),new $Uint64(p.$high^xx.$high,(p.$low^xx.$low)>>>0));a.nilCheck,a[23]=(xy=new $Uint64(n.$high&~r.$high,(n.$low&~r.$low)>>>0),new $Uint64(q.$high^xy.$high,(q.$low^xy.$low)>>>0));a.nilCheck,a[24]=(xz=new $Uint64(o.$high&~n.$high,(o.$low&~n.$low)>>>0),new $Uint64(r.$high^xz.$high,(r.$low^xz.$low)>>>0));x=x+(4)>>0;}};V=function(){var $ptr;D.RegisterHash(10,L);D.RegisterHash(11,M);D.RegisterHash(12,N);D.RegisterHash(13,O);};AA=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=C.FromSponge(AH(),a,$appendSlice(Z,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewShakeCipher128=AA;AG.ptr.prototype.Rate=function(){var $ptr,a;a=this;return a.rate;};AG.prototype.Rate=function(){return this.$val.Rate();};AG.ptr.prototype.Capacity=function(){var $ptr,a;a=this;return 200-a.rate>>0;};AG.prototype.Capacity=function(){return this.$val.Capacity();};AG.ptr.prototype.Clone=function(){var $ptr,a,b;a=this;b=$clone(a,AG);return b;};AG.prototype.Clone=function(){return this.$val.Clone();};AG.ptr.prototype.Transform=function(a,b){var $ptr,a,b,c,d,e,f;c=this;d=new AS(c.a);while(true){if(!(b.$length>0)){break;}(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]=(e=(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]),f=$clone(F.LittleEndian,F.littleEndian).Uint64(b),new $Uint64(e.$high^f.$high,(e.$low^f.$low)>>>0)));b=$subslice(b,8);d=$subslice(d,1);}U(c.a);d=new AS(c.a);while(true){if(!(a.$length>0)){break;}$clone(F.LittleEndian,F.littleEndian).PutUint64(a,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]));d=$subslice(d,1);a=$subslice(a,8);}};AG.prototype.Transform=function(a,b){return this.$val.Transform(a,b);};AH=function(){var $ptr;return new AG.ptr(AT.zero(),168);};AI=function(){var $ptr;return new AG.ptr(AT.zero(),144);};AJ=function(){var $ptr;return new AG.ptr(AT.zero(),136);};AK=function(){var $ptr;return new AG.ptr(AT.zero(),104);};AL=function(){var $ptr;return new AG.ptr(AT.zero(),72);};AW.methods=[{prop:"Rate",name:"Rate",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Capacity",name:"Capacity",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[C.Sponge],false)},{prop:"Transform",name:"Transform",pkg:"",typ:$funcType([AO,AO],[],false)}];AG.init("gopkg.in/dedis/crypto.v0/cipher/sha3",[{prop:"a",name:"a",exported:false,typ:AT,tag:""},{prop:"rate",name:"rate",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=D.$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=A.$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=new AM([new C.Padding(6)]);T=$toNativeArray($kindUint64,[new $Uint64(0,1),new $Uint64(0,32898),new $Uint64(2147483648,32906),new $Uint64(2147483648,2147516416),new $Uint64(0,32907),new $Uint64(0,2147483649),new $Uint64(2147483648,2147516545),new $Uint64(2147483648,32777),new $Uint64(0,138),new $Uint64(0,136),new $Uint64(0,2147516425),new $Uint64(0,2147483658),new $Uint64(0,2147516555),new $Uint64(2147483648,139),new $Uint64(2147483648,32905),new $Uint64(2147483648,32771),new $Uint64(2147483648,32770),new $Uint64(2147483648,128),new $Uint64(0,32778),new $Uint64(2147483648,2147483658),new $Uint64(2147483648,2147516545),new $Uint64(2147483648,32896),new $Uint64(0,2147483649),new $Uint64(2147483648,2147516424)]);Z=new AM([new C.Padding(31)]);V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/group"]=(function(){var $pkg={},$init,A,C,B,H,D,E,F,G;A=$packages["crypto/cipher"];C=$packages["gopkg.in/dedis/crypto.v0/abstract"];B=$packages["io"];H=$sliceType($Uint8);D=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=a.MarshalBinary();$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))){$s=-1;return[0,f];}g=b.Write(e);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:D};}$f.$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.PointMarshalTo=D;E=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:c=$assertType(b,A.Stream,true);d=c[0];e=c[1];if(e){$s=1;continue;}$s=2;continue;case 1:f=a.Pick(H.nil,d);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return[-1,$ifaceNil];case 2:g=a.MarshalSize();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$makeSlice(H,g);j=B.ReadFull(b,h);$s=5;case 5: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))){$s=-1;return[k,l];}m=a.UnmarshalBinary(h);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=-1;return[k,m];}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};$pkg.PointUnmarshalFrom=E;F=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=a.MarshalBinary();$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))){$s=-1;return[0,f];}g=b.Write(e);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:F};}$f.$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.ScalarMarshalTo=F;G=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:c=$assertType(b,A.Stream,true);d=c[0];e=c[1];if(e){$s=1;continue;}$s=2;continue;case 1:f=a.Pick(d);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return[-1,$ifaceNil];case 2:g=a.MarshalSize();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$makeSlice(H,g);j=B.ReadFull(b,h);$s=5;case 5: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))){$s=-1;return[k,l];}m=a.UnmarshalBinary(h);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=-1;return[k,m];}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.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.ScalarUnmarshalFrom=G;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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=B.$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["crypto/dsa"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["io"];C=$packages["math/big"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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.ErrInvalidPublicKey=A.New("crypto/dsa: invalid public key");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["crypto/elliptic"]=(function(){var $pkg={},$init,A,B,C;A=$packages["io"];B=$packages["math/big"];C=$packages["sync"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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["gopkg.in/dedis/crypto.v0/math"]=(function(){var $pkg={},$init,A,C,D,E,B,F;A=$packages["math/big"];B=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=new A.Int.ptr(false,A.nat.nil);g=new A.Int.ptr(false,A.nat.nil);h=new A.Int.ptr(false,A.nat.nil);c[0]=$clone(f,A.Int);d[0]=$clone(g,A.Int);e[0]=$clone(h,A.Int);c[0].Set(a);d[0].Set(b);i=1;case 1:if(c[0].Cmp(C)===0){$s=-1;return 0;}if(d[0].Cmp(D)===0){$s=-1;return i;}j=c[0].Mod(c[0],d[0]);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;k=0;while(true){if(!(c[0].Bit(k)===0)){break;}k=k+(1)>>0;}if(!(((k&1)===0))){m=((l=d[0].Bits(),(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]))&7)>>>0;if((m===3)||(m===5)){i=-i;}}e[0].Rsh(c[0],(k>>>0));if(((((n=d[0].Bits(),(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))&3)>>>0)===3)&&((((o=e[0].Bits(),(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))&3)>>>0)===3)){i=-i;}c[0].Set(d[0]);d[0].Set(e[0]);$s=1;continue;case 2:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:B};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.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.Jacobi=B;F=function(a,b,c){var $ptr,a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=[d];e=[e];f=[f];g=[g];h=[h];i=[i];if(b.Sign()===0){a.SetInt64(new $Int64(0,0));$s=-1;return true;}j=B(b,c);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(!((j===1))){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:g[0]=new A.Int.ptr(false,A.nat.nil);k=0;g[0].Sub(c,D);case 4:if(!(g[0].Bit(0)===0)){$s=5;continue;}l=g[0].Div(g[0],E);$s=6;case 6:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;k=k+(1)>>0;$s=4;continue;case 5:f[0]=new A.Int.ptr(false,A.nat.nil);f[0].SetInt64(new $Int64(0,2));case 7:m=B(f[0],c);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!(!((m===-1)))){$s=8;continue;}f[0].Add(f[0],D);$s=7;continue;case 8:n=new A.Int.ptr(false,A.nat.nil);o=new A.Int.ptr(false,A.nat.nil);p=new A.Int.ptr(false,A.nat.nil);q=new A.Int.ptr(false,A.nat.nil);i[0]=$clone(n,A.Int);d[0]=$clone(o,A.Int);e[0]=$clone(p,A.Int);h[0]=$clone(q,A.Int);r=i[0].Add(g[0],D).Div(i[0],E);$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r.Exp(b,i[0],c);$s=11;case 11:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;t=d[0].Exp(b,g[0],c);$s=12;case 12:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;u=e[0].Exp(f[0],g[0],c);$s=13;case 13:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;v=k;case 14:w=0;h[0].Set(d[0]);case 16:if(!(!((h[0].Cmp(D)===0)))){$s=17;continue;}x=h[0].Exp(h[0],E,c);$s=18;case 18:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;w=w+(1)>>0;$s=16;continue;case 17:if(w===0){a.Set(i[0]);$s=-1;return true;}y=h[0].SetInt64(new $Int64(0,0)).SetBit(h[0],(v-w>>0)-1>>0,1).Exp(e[0],h[0],c);$s=19;case 19:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;z=e[0].Mul(h[0],h[0]).Mod(e[0],c);$s=20;case 20:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;aa=i[0].Mul(i[0],h[0]).Mod(i[0],c);$s=21;case 21:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;ab=d[0].Mul(d[0],e[0]).Mod(d[0],c);$s=22;case 22:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;v=w;$s=14;continue;case 15:$s=-1;return false;}return;}if($f===undefined){$f={$blk:F};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sqrt=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;}C=A.NewInt(new $Int64(0,0));D=A.NewInt(new $Int64(0,1));E=A.NewInt(new $Int64(0,2));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/nist"]=(function(){var $pkg={},$init,D,P,E,L,I,A,Q,F,O,G,J,H,K,M,B,C,N,W,X,AN,AO,AP,AR,U,V,Z;D=$packages["crypto/cipher"];P=$packages["crypto/dsa"];E=$packages["crypto/elliptic"];L=$packages["crypto/sha256"];I=$packages["encoding/hex"];A=$packages["errors"];Q=$packages["fmt"];F=$packages["gopkg.in/dedis/crypto.v0/abstract"];O=$packages["gopkg.in/dedis/crypto.v0/cipher/sha3"];G=$packages["gopkg.in/dedis/crypto.v0/group"];J=$packages["gopkg.in/dedis/crypto.v0/math"];H=$packages["gopkg.in/dedis/crypto.v0/random"];K=$packages["gopkg.in/dedis/crypto.v0/util"];M=$packages["hash"];B=$packages["io"];C=$packages["math/big"];N=$packages["reflect"];W=$pkg.ByteOrder=$newType(1,$kindBool,"nist.ByteOrder",true,"gopkg.in/dedis/crypto.v0/nist",true,null);X=$pkg.Int=$newType(0,$kindStruct,"nist.Int",true,"gopkg.in/dedis/crypto.v0/nist",true,function(V_,M_,BO_){this.$val=this;if(arguments.length===0){this.V=new C.Int.ptr(false,C.nat.nil);this.M=AP.nil;this.BO=false;return;}this.V=V_;this.M=M_;this.BO=BO_;});AN=$sliceType($Uint8);AO=$ptrType(X);AP=$ptrType(C.Int);AR=$arrayType($Uint8,1);Z=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=new X.ptr(new C.Int.ptr(false,C.nat.nil),AP.nil,false).Init64(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:Z};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewInt64=Z;X.ptr.prototype.Init=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.M=b;c.BO=false;d=c.V.Set(a).Mod(c.V,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Init};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Init=function(a,b){return this.$val.Init(a,b);};X.ptr.prototype.Init64=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.M=b;c.BO=false;d=c.V.SetInt64(a).Mod(c.V,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Init64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Init64=function(a,b){return this.$val.Init64(a,b);};X.ptr.prototype.InitBytes=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.M=b;c.BO=false;d=c.V.SetBytes(a).Mod(c.V,c.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.InitBytes};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.InitBytes=function(a,b){return this.$val.InitBytes(a,b);};X.ptr.prototype.InitString=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:e=this;e.M=d;e.BO=false;g=e.SetString(a,b,c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];if(!h){$panic(new $String("InitString: invalid fraction representation"));}$s=-1;return e;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.InitString};}$f.$ptr=$ptr;$f.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;};X.prototype.InitString=function(a,b,c,d){return this.$val.InitString(a,b,c,d);};X.ptr.prototype.String=function(){var $ptr,a;a=this;return I.EncodeToString(a.V.Bytes());};X.prototype.String=function(){return this.$val.String();};X.ptr.prototype.SetString=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=[d];e=this;g=e.V.SetString(a,c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];if(!h){$s=-1;return[AO.nil,false];}if(!(b==="")){$s=2;continue;}$s=3;continue;case 2:d[0]=new X.ptr(new C.Int.ptr(false,C.nat.nil),AP.nil,false);d[0].M=e.M;j=d[0].SetString(b,"",c);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];if(!k){$s=-1;return[AO.nil,false];}l=e.Div(e,d[0]);$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;case 3:$s=-1;return[e,true];}return;}if($f===undefined){$f={$blk:X.ptr.prototype.SetString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.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;};X.prototype.SetString=function(a,b,c){return this.$val.SetString(a,b,c);};X.ptr.prototype.Cmp=function(a){var $ptr,a,b;b=this;return b.V.Cmp($assertType(a,AO).V);};X.prototype.Cmp=function(a){return this.$val.Cmp(a);};X.ptr.prototype.Equal=function(a){var $ptr,a,b;b=this;return b.V.Cmp($assertType(a,AO).V)===0;};X.prototype.Equal=function(a){return this.$val.Equal(a);};X.ptr.prototype.Nonzero=function(){var $ptr,a;a=this;return!((a.V.Sign()===0));};X.prototype.Nonzero=function(){return this.$val.Nonzero();};X.ptr.prototype.Set=function(a){var $ptr,a,b,c;b=this;c=$assertType(a,AO);b.V.Set(c.V);b.M=c.M;return b;};X.prototype.Set=function(a){return this.$val.Set(a);};X.ptr.prototype.Clone=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=new X.ptr(new C.Int.ptr(false,C.nat.nil),AP.nil,false).Init(a.V,a.M);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;c.BO=a.BO;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Clone};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Clone=function(){return this.$val.Clone();};X.ptr.prototype.Zero=function(){var $ptr,a;a=this;a.V.SetInt64(new $Int64(0,0));return a;};X.prototype.Zero=function(){return this.$val.Zero();};X.ptr.prototype.One=function(){var $ptr,a;a=this;a.V.SetInt64(new $Int64(0,1));return a;};X.prototype.One=function(){return this.$val.One();};X.ptr.prototype.SetInt64=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.V.SetInt64(a).Mod(b.V,b.M);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.SetInt64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.SetInt64=function(a){return this.$val.SetInt64(a);};X.ptr.prototype.Int64=function(){var $ptr,a;a=this;return a.V.Int64();};X.prototype.Int64=function(){return this.$val.Int64();};X.ptr.prototype.SetUint64=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.V.SetUint64(a).Mod(b.V,b.M);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.SetUint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.SetUint64=function(a){return this.$val.SetUint64(a);};X.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return a.V.Uint64();};X.prototype.Uint64=function(){return this.$val.Uint64();};X.ptr.prototype.Add=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=$assertType(a,AO);e=$assertType(b,AO);c.M=d.M;f=c.V.Add(d.V,e.V).Mod(c.V,c.M);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Add};}$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;};X.prototype.Add=function(a,b){return this.$val.Add(a,b);};X.ptr.prototype.Sub=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=$assertType(a,AO);e=$assertType(b,AO);c.M=d.M;f=c.V.Sub(d.V,e.V).Mod(c.V,c.M);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Sub};}$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;};X.prototype.Sub=function(a,b){return this.$val.Sub(a,b);};X.ptr.prototype.Neg=function(a){var $ptr,a,b,c;b=this;c=$assertType(a,AO);b.M=c.M;if(c.V.Sign()>0){b.V.Sub(b.M,c.V);}else{b.V.SetUint64(new $Uint64(0,0));}return b;};X.prototype.Neg=function(a){return this.$val.Neg(a);};X.ptr.prototype.Mul=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=$assertType(a,AO);e=$assertType(b,AO);c.M=d.M;f=c.V.Mul(d.V,e.V).Mod(c.V,c.M);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Mul};}$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;};X.prototype.Mul=function(a,b){return this.$val.Mul(a,b);};X.ptr.prototype.Div=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=$assertType(a,AO);e=$assertType(b,AO);f=new C.Int.ptr(false,C.nat.nil);c.M=d.M;g=d.V;h=f.ModInverse(e.V,c.M);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=c.V.Mul(g,i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;k=c.V.Mod(c.V,c.M);$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Div};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.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;};X.prototype.Div=function(a,b){return this.$val.Div(a,b);};X.ptr.prototype.Inv=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$assertType(a,AO);b.M=c.M;d=b.V.ModInverse($assertType(a,AO).V,b.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Inv};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Inv=function(a){return this.$val.Inv(a);};X.ptr.prototype.Exp=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=$assertType(a,AO);c.M=d.M;e=c.V.Exp(d.V,b,c.M);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Exp};}$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;};X.prototype.Exp=function(a,b){return this.$val.Exp(a,b);};X.ptr.prototype.Jacobi=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=$assertType(a,AO);b.M=c.M;d=J.Jacobi(c.V,b.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=b.V.SetInt64(new $Int64(0,d));$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Jacobi};}$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;};X.prototype.Jacobi=function(a){return this.$val.Jacobi(a);};X.ptr.prototype.Sqrt=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$assertType(a,AO);b.M=c.M;d=J.Sqrt(b.V,c.V,c.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Sqrt};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Sqrt=function(a){return this.$val.Sqrt(a);};X.ptr.prototype.Pick=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=H.Int(b.M,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.V.Set(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Pick};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.Pick=function(a){return this.$val.Pick(a);};X.ptr.prototype.MarshalSize=function(){var $ptr,a,b;a=this;return(b=((a.M.BitLen()+7>>0))/8,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};X.prototype.MarshalSize=function(){return this.$val.MarshalSize();};X.ptr.prototype.MarshalBinary=function(){var $ptr,a,b,c,d,e;a=this;b=a.MarshalSize();c=a.V.Bytes();d=b-c.$length>>0;if(a.BO){return[a.LittleEndian(b,b),$ifaceNil];}if(!((d===0))){e=$makeSlice(AN,b);$copySlice($subslice(e,d),c);c=e;}return[c,$ifaceNil];};X.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};X.ptr.prototype.UnmarshalBinary=function(a){var $ptr,a,b;b=this;if(!((a.$length===b.MarshalSize()))){return A.New("Int.Decode: wrong size buffer");}if(b.BO){a=K.Reverse(AN.nil,a);}b.V.SetBytes(a);if(b.V.Cmp(b.M)>=0){return A.New("Int.Decode: value out of range");}return $ifaceNil;};X.prototype.UnmarshalBinary=function(a){return this.$val.UnmarshalBinary(a);};X.ptr.prototype.MarshalTo=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=G.ScalarMarshalTo(b,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.MarshalTo};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.MarshalTo=function(a){return this.$val.MarshalTo(a);};X.ptr.prototype.UnmarshalFrom=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=G.ScalarUnmarshalFrom(b,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.UnmarshalFrom};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.UnmarshalFrom=function(a){return this.$val.UnmarshalFrom(a);};X.ptr.prototype.BigEndian=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=this;d=c.MarshalSize();e=d;f=0;g=e;h=f;if(g<a){i=a;j=a-d>>0;g=i;h=j;}if(!((b===0))&&g>b){$panic(new $String("Int not representable in max bytes"));}k=$makeSlice(AN,g);$copySlice($subslice(k,h),c.V.Bytes());return k;};X.prototype.BigEndian=function(a,b){return this.$val.BigEndian(a,b);};X.ptr.prototype.SetBytes=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=a;if(b.BO){c=K.Reverse(AN.nil,a);}d=b.V.SetBytes(c).Mod(b.V,b.M);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return b;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.SetBytes=function(a){return this.$val.SetBytes(a);};X.ptr.prototype.Bytes=function(){var $ptr,a,b;a=this;b=a.V.Bytes();if(a.BO){b=K.Reverse(b,b);}return b;};X.prototype.Bytes=function(){return this.$val.Bytes();};X.ptr.prototype.LittleEndian=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;d=c.MarshalSize();e=c.V.Bytes();f=e.$length;if(f<d){d=f;}g=d;if(g<a){g=a;}if(!((b===0))&&g>b){$panic(new $String("Int not representable in max bytes"));}h=$makeSlice(AN,g);K.Reverse($subslice(h,0,d),e);return h;};X.prototype.LittleEndian=function(a,b){return this.$val.LittleEndian(a,b);};X.ptr.prototype.HideLen=function(){var $ptr,a;a=this;return a.MarshalSize();};X.prototype.HideLen=function(){return this.$val.HideLen();};X.ptr.prototype.HideEncode=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=[b];c=this;d=c.HideLen();e=((((c.M.BitLen()-1>>0))&7)>>>0);b[0]=new C.Int.ptr(false,C.nat.nil);case 1:f=AR.zero();$r=a.XORKeyStream(new AN(f),new AN(f));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=new $Int64(0,((g=e,g<32?(f[0]>>>g):0)<<24>>>24));b[0].SetInt64(h).Mul(c.V,b[0]);if(b[0].BitLen()<=($imul(d,8))){$s=2;continue;}$s=1;continue;case 2:i=b[0].Bytes();j=d-i.$length>>0;if(!((j===0))){i=$appendSlice($makeSlice(AN,j),i);}$s=-1;return i;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.HideEncode};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.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;};X.prototype.HideEncode=function(a){return this.$val.HideEncode(a);};X.ptr.prototype.HideDecode=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.$length===b.HideLen()))){$panic(new $String("Int.HideDecode: wrong size buffer"));}b.V.SetBytes(a);c=b.V.Mod(b.V,b.M);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return;}return;}if($f===undefined){$f={$blk:X.ptr.prototype.HideDecode};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X.prototype.HideDecode=function(a){return this.$val.HideDecode(a);};AO.methods=[{prop:"Init",name:"Init",pkg:"",typ:$funcType([AP,AP],[AO],false)},{prop:"Init64",name:"Init64",pkg:"",typ:$funcType([$Int64,AP],[AO],false)},{prop:"InitBytes",name:"InitBytes",pkg:"",typ:$funcType([AN,AP],[AO],false)},{prop:"InitString",name:"InitString",pkg:"",typ:$funcType([$String,$String,$Int,AP],[AO],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String,$String,$Int],[AO,$Bool],false)},{prop:"Cmp",name:"Cmp",pkg:"",typ:$funcType([F.Scalar],[$Int],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([F.Scalar],[$Bool],false)},{prop:"Nonzero",name:"Nonzero",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([F.Scalar],[F.Scalar],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[F.Scalar],false)},{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[F.Scalar],false)},{prop:"One",name:"One",pkg:"",typ:$funcType([],[F.Scalar],false)},{prop:"SetInt64",name:"SetInt64",pkg:"",typ:$funcType([$Int64],[F.Scalar],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"SetUint64",name:"SetUint64",pkg:"",typ:$funcType([$Uint64],[F.Scalar],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([F.Scalar,F.Scalar],[F.Scalar],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([F.Scalar,F.Scalar],[F.Scalar],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([F.Scalar],[F.Scalar],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([F.Scalar,F.Scalar],[F.Scalar],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([F.Scalar,F.Scalar],[F.Scalar],false)},{prop:"Inv",name:"Inv",pkg:"",typ:$funcType([F.Scalar],[F.Scalar],false)},{prop:"Exp",name:"Exp",pkg:"",typ:$funcType([F.Scalar,AP],[F.Scalar],false)},{prop:"legendre",name:"legendre",pkg:"gopkg.in/dedis/crypto.v0/nist",typ:$funcType([],[$Int],false)},{prop:"Jacobi",name:"Jacobi",pkg:"",typ:$funcType([F.Scalar],[F.Scalar],false)},{prop:"Sqrt",name:"Sqrt",pkg:"",typ:$funcType([F.Scalar],[$Bool],false)},{prop:"Pick",name:"Pick",pkg:"",typ:$funcType([D.Stream],[F.Scalar],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AN,$error],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AN],[$error],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([B.Writer],[$Int,$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([B.Reader],[$Int,$error],false)},{prop:"BigEndian",name:"BigEndian",pkg:"",typ:$funcType([$Int,$Int],[AN],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([AN],[F.Scalar],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[AN],false)},{prop:"LittleEndian",name:"LittleEndian",pkg:"",typ:$funcType([$Int,$Int],[AN],false)},{prop:"HideLen",name:"HideLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"HideEncode",name:"HideEncode",pkg:"",typ:$funcType([D.Stream],[AN],false)},{prop:"HideDecode",name:"HideDecode",pkg:"",typ:$funcType([AN],[],false)}];X.init("",[{prop:"V",name:"V",exported:true,typ:C.Int,tag:""},{prop:"M",name:"M",exported:true,typ:AP,tag:""},{prop:"BO",name:"BO",exported:true,typ:W,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=P.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$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;}$r=Q.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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;}$r=J.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.NewInt(new $Int64(0,1));V=C.NewInt(new $Int64(0,2));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/crypto.v0/ed25519"]=(function(){var $pkg={},$init,E,K,C,F,G,D,I,N,J,B,O,L,H,A,M,AM,BF,BG,BH,BI,BJ,BT,BU,BX,CG,CH,CI,CJ,CK,CL,CM,CN,CP,CQ,CR,CS,CV,CW,CX,CY,CZ,DA,DB,DC,DD,P,Q,R,S,T,U,BZ,V,CA,W,CB,Y,AA,a,b,c,d,e,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BM,BN,BO,BP,BQ,BR,BY;E=$packages["crypto/cipher"];K=$packages["crypto/sha256"];C=$packages["crypto/sha512"];F=$packages["encoding/hex"];G=$packages["errors"];D=$packages["fmt"];I=$packages["gopkg.in/dedis/crypto.v0/abstract"];N=$packages["gopkg.in/dedis/crypto.v0/cipher/sha3"];J=$packages["gopkg.in/dedis/crypto.v0/group"];B=$packages["gopkg.in/dedis/crypto.v0/nist"];O=$packages["gopkg.in/dedis/crypto.v0/random"];L=$packages["hash"];H=$packages["io"];A=$packages["math/big"];M=$packages["reflect"];AM=$pkg.fieldElement=$newType(40,$kindArray,"ed25519.fieldElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,null);BF=$pkg.projectiveGroupElement=$newType(0,$kindStruct,"ed25519.projectiveGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(X_,Y_,Z_){this.$val=this;if(arguments.length===0){this.X=CH.zero();this.Y=CH.zero();this.Z=CH.zero();return;}this.X=X_;this.Y=Y_;this.Z=Z_;});BG=$pkg.extendedGroupElement=$newType(0,$kindStruct,"ed25519.extendedGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(X_,Y_,Z_,T_){this.$val=this;if(arguments.length===0){this.X=CH.zero();this.Y=CH.zero();this.Z=CH.zero();this.T=CH.zero();return;}this.X=X_;this.Y=Y_;this.Z=Z_;this.T=T_;});BH=$pkg.completedGroupElement=$newType(0,$kindStruct,"ed25519.completedGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(X_,Y_,Z_,T_){this.$val=this;if(arguments.length===0){this.X=CH.zero();this.Y=CH.zero();this.Z=CH.zero();this.T=CH.zero();return;}this.X=X_;this.Y=Y_;this.Z=Z_;this.T=T_;});BI=$pkg.preComputedGroupElement=$newType(0,$kindStruct,"ed25519.preComputedGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(yPlusX_,yMinusX_,xy2d_){this.$val=this;if(arguments.length===0){this.yPlusX=CH.zero();this.yMinusX=CH.zero();this.xy2d=CH.zero();return;}this.yPlusX=yPlusX_;this.yMinusX=yMinusX_;this.xy2d=xy2d_;});BJ=$pkg.cachedGroupElement=$newType(0,$kindStruct,"ed25519.cachedGroupElement",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(yPlusX_,yMinusX_,Z_,T2d_){this.$val=this;if(arguments.length===0){this.yPlusX=CH.zero();this.yMinusX=CH.zero();this.Z=CH.zero();this.T2d=CH.zero();return;}this.yPlusX=yPlusX_;this.yMinusX=yMinusX_;this.Z=Z_;this.T2d=T2d_;});BT=$pkg.point=$newType(0,$kindStruct,"ed25519.point",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(ge_){this.$val=this;if(arguments.length===0){this.ge=new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());return;}this.ge=ge_;});BU=$pkg.Curve=$newType(0,$kindStruct,"ed25519.Curve",true,"gopkg.in/dedis/crypto.v0/ed25519",true,function(){this.$val=this;if(arguments.length===0){return;}});BX=$pkg.suiteEd25519=$newType(0,$kindStruct,"ed25519.suiteEd25519",true,"gopkg.in/dedis/crypto.v0/ed25519",false,function(Curve_){this.$val=this;if(arguments.length===0){this.Curve=new BU.ptr();return;}this.Curve=Curve_;});CG=$ptrType(A.Int);CH=$arrayType($Int32,10);CI=$arrayType(BI,8);CJ=$sliceType($Uint8);CK=$arrayType($Uint8,32);CL=$arrayType($Int64,10);CM=$sliceType($emptyInterface);CN=$ptrType(AM);CP=$arrayType(BJ,8);CQ=$arrayType($Int8,64);CR=$ptrType(BT);CS=$ptrType(B.Int);CV=$arrayType($Uint8,64);CW=$ptrType(BH);CX=$ptrType(CK);CY=$ptrType(BF);CZ=$ptrType(BG);DA=$ptrType(BJ);DB=$ptrType(BI);DC=$ptrType(BU);DD=$ptrType(BX);AN=function(f){var $ptr,f,g,h,i;g=f;h=0;while(true){if(!(h<10)){break;}i=h;f.nilCheck,((i<0||i>=f.length)?($throwRuntimeError("index out of range"),undefined):f[i]=0);h++;}};AO=function(f){var $ptr,f;AN(f);f.nilCheck,f[0]=1;};AP=function(f,g,h){var $ptr,f,g,h,i,j,k;i=f;j=0;while(true){if(!(j<10)){break;}k=j;f.nilCheck,((k<0||k>=f.length)?($throwRuntimeError("index out of range"),undefined):f[k]=((g.nilCheck,((k<0||k>=g.length)?($throwRuntimeError("index out of range"),undefined):g[k]))+(h.nilCheck,((k<0||k>=h.length)?($throwRuntimeError("index out of range"),undefined):h[k]))>>0));j++;}};AQ=function(f,g,h){var $ptr,f,g,h,i,j,k;i=f;j=0;while(true){if(!(j<10)){break;}k=j;f.nilCheck,((k<0||k>=f.length)?($throwRuntimeError("index out of range"),undefined):f[k]=((g.nilCheck,((k<0||k>=g.length)?($throwRuntimeError("index out of range"),undefined):g[k]))-(h.nilCheck,((k<0||k>=h.length)?($throwRuntimeError("index out of range"),undefined):h[k]))>>0));j++;}};AR=function(f,g){var $ptr,f,g,h,i,j;h=f;i=0;while(true){if(!(i<10)){break;}j=i;f.nilCheck,((j<0||j>=f.length)?($throwRuntimeError("index out of range"),undefined):f[j]=(g.nilCheck,((j<0||j>=g.length)?($throwRuntimeError("index out of range"),undefined):g[j])));i++;}};AS=function(f,g,h){var $ptr,f,g,h,i,j,k,l,m,n,o;i=CH.zero();h=-h;j=i;k=0;while(true){if(!(k<10)){break;}l=k;((l<0||l>=i.length)?($throwRuntimeError("index out of range"),undefined):i[l]=(h&((((f.nilCheck,((l<0||l>=f.length)?($throwRuntimeError("index out of range"),undefined):f[l]))^(g.nilCheck,((l<0||l>=g.length)?($throwRuntimeError("index out of range"),undefined):g[l])))>>0))));k++;}m=f;n=0;while(true){if(!(n<10)){break;}o=n;f.nilCheck,((o<0||o>=f.length)?($throwRuntimeError("index out of range"),undefined):f[o]=(((f.nilCheck,((o<0||o>=f.length)?($throwRuntimeError("index out of range"),undefined):f[o]))^(((o<0||o>=i.length)?($throwRuntimeError("index out of range"),undefined):i[o])))>>0));n++;}};AT=function(f){var $ptr,f,g,h,i;g=new $Int64(0,0);g=new $Int64(0,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]));g=(h=$shiftLeft64(new $Int64(0,(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])),8),new $Int64(g.$high|h.$high,(g.$low|h.$low)>>>0));g=(i=$shiftLeft64(new $Int64(0,(2>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+2])),16),new $Int64(g.$high|i.$high,(g.$low|i.$low)>>>0));return g;};AU=function(f){var $ptr,f,g,h,i,j;g=new $Int64(0,0);g=new $Int64(0,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]));g=(h=$shiftLeft64(new $Int64(0,(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])),8),new $Int64(g.$high|h.$high,(g.$low|h.$low)>>>0));g=(i=$shiftLeft64(new $Int64(0,(2>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+2])),16),new $Int64(g.$high|i.$high,(g.$low|i.$low)>>>0));g=(j=$shiftLeft64(new $Int64(0,(3>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+3])),24),new $Int64(g.$high|j.$high,(g.$low|j.$low)>>>0));return g;};AV=function(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;h=AU(g);i=$shiftLeft64(AT($subslice(g,4)),6);j=$shiftLeft64(AT($subslice(g,7)),5);k=$shiftLeft64(AT($subslice(g,10)),3);l=$shiftLeft64(AT($subslice(g,13)),2);m=AU($subslice(g,16));n=$shiftLeft64(AT($subslice(g,20)),7);o=$shiftLeft64(AT($subslice(g,23)),5);p=$shiftLeft64(AT($subslice(g,26)),4);r=$shiftLeft64(((q=AT($subslice(g,29)),new $Int64(q.$high&0,(q.$low&8388607)>>>0))),2);s=CL.zero();s[9]=$shiftRightInt64((new $Int64(r.$high+0,r.$low+16777216)),25);h=(t=$mul64(s[9],new $Int64(0,19)),new $Int64(h.$high+t.$high,h.$low+t.$low));r=(u=$shiftLeft64(s[9],25),new $Int64(r.$high-u.$high,r.$low-u.$low));s[1]=$shiftRightInt64((new $Int64(i.$high+0,i.$low+16777216)),25);j=(v=s[1],new $Int64(j.$high+v.$high,j.$low+v.$low));i=(w=$shiftLeft64(s[1],25),new $Int64(i.$high-w.$high,i.$low-w.$low));s[3]=$shiftRightInt64((new $Int64(k.$high+0,k.$low+16777216)),25);l=(x=s[3],new $Int64(l.$high+x.$high,l.$low+x.$low));k=(y=$shiftLeft64(s[3],25),new $Int64(k.$high-y.$high,k.$low-y.$low));s[5]=$shiftRightInt64((new $Int64(m.$high+0,m.$low+16777216)),25);n=(z=s[5],new $Int64(n.$high+z.$high,n.$low+z.$low));m=(aa=$shiftLeft64(s[5],25),new $Int64(m.$high-aa.$high,m.$low-aa.$low));s[7]=$shiftRightInt64((new $Int64(o.$high+0,o.$low+16777216)),25);p=(ab=s[7],new $Int64(p.$high+ab.$high,p.$low+ab.$low));o=(ac=$shiftLeft64(s[7],25),new $Int64(o.$high-ac.$high,o.$low-ac.$low));s[0]=$shiftRightInt64((new $Int64(h.$high+0,h.$low+33554432)),26);i=(ad=s[0],new $Int64(i.$high+ad.$high,i.$low+ad.$low));h=(ae=$shiftLeft64(s[0],26),new $Int64(h.$high-ae.$high,h.$low-ae.$low));s[2]=$shiftRightInt64((new $Int64(j.$high+0,j.$low+33554432)),26);k=(af=s[2],new $Int64(k.$high+af.$high,k.$low+af.$low));j=(ag=$shiftLeft64(s[2],26),new $Int64(j.$high-ag.$high,j.$low-ag.$low));s[4]=$shiftRightInt64((new $Int64(l.$high+0,l.$low+33554432)),26);m=(ah=s[4],new $Int64(m.$high+ah.$high,m.$low+ah.$low));l=(ai=$shiftLeft64(s[4],26),new $Int64(l.$high-ai.$high,l.$low-ai.$low));s[6]=$shiftRightInt64((new $Int64(n.$high+0,n.$low+33554432)),26);o=(aj=s[6],new $Int64(o.$high+aj.$high,o.$low+aj.$low));n=(ak=$shiftLeft64(s[6],26),new $Int64(n.$high-ak.$high,n.$low-ak.$low));s[8]=$shiftRightInt64((new $Int64(p.$high+0,p.$low+33554432)),26);r=(al=s[8],new $Int64(r.$high+al.$high,r.$low+al.$low));p=(am=$shiftLeft64(s[8],26),new $Int64(p.$high-am.$high,p.$low-am.$low));f.nilCheck,f[0]=((h.$low+((h.$high>>31)*4294967296))>>0);f.nilCheck,f[1]=((i.$low+((i.$high>>31)*4294967296))>>0);f.nilCheck,f[2]=((j.$low+((j.$high>>31)*4294967296))>>0);f.nilCheck,f[3]=((k.$low+((k.$high>>31)*4294967296))>>0);f.nilCheck,f[4]=((l.$low+((l.$high>>31)*4294967296))>>0);f.nilCheck,f[5]=((m.$low+((m.$high>>31)*4294967296))>>0);f.nilCheck,f[6]=((n.$low+((n.$high>>31)*4294967296))>>0);f.nilCheck,f[7]=((o.$low+((o.$high>>31)*4294967296))>>0);f.nilCheck,f[8]=((p.$low+((p.$high>>31)*4294967296))>>0);f.nilCheck,f[9]=((r.$low+((r.$high>>31)*4294967296))>>0);};AW=function(f,g){var $ptr,f,g,h,i;h=CH.zero();i=((($imul(19,(g.nilCheck,g[9])))+16777216>>0))>>25>>0;i=(((g.nilCheck,g[0])+i>>0))>>26>>0;i=(((g.nilCheck,g[1])+i>>0))>>25>>0;i=(((g.nilCheck,g[2])+i>>0))>>26>>0;i=(((g.nilCheck,g[3])+i>>0))>>25>>0;i=(((g.nilCheck,g[4])+i>>0))>>26>>0;i=(((g.nilCheck,g[5])+i>>0))>>25>>0;i=(((g.nilCheck,g[6])+i>>0))>>26>>0;i=(((g.nilCheck,g[7])+i>>0))>>25>>0;i=(((g.nilCheck,g[8])+i>>0))>>26>>0;i=(((g.nilCheck,g[9])+i>>0))>>25>>0;g.nilCheck,g[0]=((g.nilCheck,g[0])+(($imul(19,i)))>>0);h[0]=((g.nilCheck,g[0])>>26>>0);g.nilCheck,g[1]=((g.nilCheck,g[1])+(h[0])>>0);g.nilCheck,g[0]=((g.nilCheck,g[0])-((h[0]<<26>>0))>>0);h[1]=((g.nilCheck,g[1])>>25>>0);g.nilCheck,g[2]=((g.nilCheck,g[2])+(h[1])>>0);g.nilCheck,g[1]=((g.nilCheck,g[1])-((h[1]<<25>>0))>>0);h[2]=((g.nilCheck,g[2])>>26>>0);g.nilCheck,g[3]=((g.nilCheck,g[3])+(h[2])>>0);g.nilCheck,g[2]=((g.nilCheck,g[2])-((h[2]<<26>>0))>>0);h[3]=((g.nilCheck,g[3])>>25>>0);g.nilCheck,g[4]=((g.nilCheck,g[4])+(h[3])>>0);g.nilCheck,g[3]=((g.nilCheck,g[3])-((h[3]<<25>>0))>>0);h[4]=((g.nilCheck,g[4])>>26>>0);g.nilCheck,g[5]=((g.nilCheck,g[5])+(h[4])>>0);g.nilCheck,g[4]=((g.nilCheck,g[4])-((h[4]<<26>>0))>>0);h[5]=((g.nilCheck,g[5])>>25>>0);g.nilCheck,g[6]=((g.nilCheck,g[6])+(h[5])>>0);g.nilCheck,g[5]=((g.nilCheck,g[5])-((h[5]<<25>>0))>>0);h[6]=((g.nilCheck,g[6])>>26>>0);g.nilCheck,g[7]=((g.nilCheck,g[7])+(h[6])>>0);g.nilCheck,g[6]=((g.nilCheck,g[6])-((h[6]<<26>>0))>>0);h[7]=((g.nilCheck,g[7])>>25>>0);g.nilCheck,g[8]=((g.nilCheck,g[8])+(h[7])>>0);g.nilCheck,g[7]=((g.nilCheck,g[7])-((h[7]<<25>>0))>>0);h[8]=((g.nilCheck,g[8])>>26>>0);g.nilCheck,g[9]=((g.nilCheck,g[9])+(h[8])>>0);g.nilCheck,g[8]=((g.nilCheck,g[8])-((h[8]<<26>>0))>>0);h[9]=((g.nilCheck,g[9])>>25>>0);g.nilCheck,g[9]=((g.nilCheck,g[9])-((h[9]<<25>>0))>>0);f.nilCheck,f[0]=(((g.nilCheck,g[0])>>0>>0)<<24>>>24);f.nilCheck,f[1]=(((g.nilCheck,g[0])>>8>>0)<<24>>>24);f.nilCheck,f[2]=(((g.nilCheck,g[0])>>16>>0)<<24>>>24);f.nilCheck,f[3]=(((((g.nilCheck,g[0])>>24>>0))|(((g.nilCheck,g[1])<<2>>0)))<<24>>>24);f.nilCheck,f[4]=(((g.nilCheck,g[1])>>6>>0)<<24>>>24);f.nilCheck,f[5]=(((g.nilCheck,g[1])>>14>>0)<<24>>>24);f.nilCheck,f[6]=(((((g.nilCheck,g[1])>>22>>0))|(((g.nilCheck,g[2])<<3>>0)))<<24>>>24);f.nilCheck,f[7]=(((g.nilCheck,g[2])>>5>>0)<<24>>>24);f.nilCheck,f[8]=(((g.nilCheck,g[2])>>13>>0)<<24>>>24);f.nilCheck,f[9]=(((((g.nilCheck,g[2])>>21>>0))|(((g.nilCheck,g[3])<<5>>0)))<<24>>>24);f.nilCheck,f[10]=(((g.nilCheck,g[3])>>3>>0)<<24>>>24);f.nilCheck,f[11]=(((g.nilCheck,g[3])>>11>>0)<<24>>>24);f.nilCheck,f[12]=(((((g.nilCheck,g[3])>>19>>0))|(((g.nilCheck,g[4])<<6>>0)))<<24>>>24);f.nilCheck,f[13]=(((g.nilCheck,g[4])>>2>>0)<<24>>>24);f.nilCheck,f[14]=(((g.nilCheck,g[4])>>10>>0)<<24>>>24);f.nilCheck,f[15]=(((g.nilCheck,g[4])>>18>>0)<<24>>>24);f.nilCheck,f[16]=(((g.nilCheck,g[5])>>0>>0)<<24>>>24);f.nilCheck,f[17]=(((g.nilCheck,g[5])>>8>>0)<<24>>>24);f.nilCheck,f[18]=(((g.nilCheck,g[5])>>16>>0)<<24>>>24);f.nilCheck,f[19]=(((((g.nilCheck,g[5])>>24>>0))|(((g.nilCheck,g[6])<<1>>0)))<<24>>>24);f.nilCheck,f[20]=(((g.nilCheck,g[6])>>7>>0)<<24>>>24);f.nilCheck,f[21]=(((g.nilCheck,g[6])>>15>>0)<<24>>>24);f.nilCheck,f[22]=(((((g.nilCheck,g[6])>>23>>0))|(((g.nilCheck,g[7])<<3>>0)))<<24>>>24);f.nilCheck,f[23]=(((g.nilCheck,g[7])>>5>>0)<<24>>>24);f.nilCheck,f[24]=(((g.nilCheck,g[7])>>13>>0)<<24>>>24);f.nilCheck,f[25]=(((((g.nilCheck,g[7])>>21>>0))|(((g.nilCheck,g[8])<<4>>0)))<<24>>>24);f.nilCheck,f[26]=(((g.nilCheck,g[8])>>4>>0)<<24>>>24);f.nilCheck,f[27]=(((g.nilCheck,g[8])>>12>>0)<<24>>>24);f.nilCheck,f[28]=(((((g.nilCheck,g[8])>>20>>0))|(((g.nilCheck,g[9])<<6>>0)))<<24>>>24);f.nilCheck,f[29]=(((g.nilCheck,g[9])>>2>>0)<<24>>>24);f.nilCheck,f[30]=(((g.nilCheck,g[9])>>10>>0)<<24>>>24);f.nilCheck,f[31]=(((g.nilCheck,g[9])>>18>>0)<<24>>>24);};AX=function(f){var $ptr,f,g;g=CK.zero();AW(g,f);return(g[0]&1)>>>0;};AY=function(f){var $ptr,f,g,h,i,j,k;g=CK.zero();AW(g,f);h=0;i=g;j=0;while(true){if(!(j<32)){break;}k=((j<0||j>=i.length)?($throwRuntimeError("index out of range"),undefined):i[j]);h=(h|(k))>>>0;j++;}h=(h|((h>>>4<<24>>>24)))>>>0;h=(h|((h>>>2<<24>>>24)))>>>0;h=(h|((h>>>1<<24>>>24)))>>>0;return(((h&1)>>>0)>>0);};AZ=function(f,g){var $ptr,f,g,h,i,j;h=f;i=0;while(true){if(!(i<10)){break;}j=i;f.nilCheck,((j<0||j>=f.length)?($throwRuntimeError("index out of range"),undefined):f[j]=-(g.nilCheck,((j<0||j>=g.length)?($throwRuntimeError("index out of range"),undefined):g[j])));i++;}};BA=function(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,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ey,ez,f,fa,fb,fc,fd,fe,ff,fg,fh,fi,fj,fk,fl,fm,fn,fo,fp,fq,fr,fs,ft,fu,fv,fw,fx,fy,fz,g,ga,gb,gc,gd,ge,gf,gg,gh,gi,gj,gk,gl,gm,gn,go,gp,gq,gr,gs,gt,gu,gv,gw,gx,gy,gz,h,ha,hb,hc,hd,he,hf,hg,hh,hi,hj,hk,hl,hm,hn,ho,hp,hq,hr,hs,ht,hu,hv,hw,hx,hy,hz,i,ia,ib,ic,id,ie,ig,ih,ii,ij,ik,il,im,io,ip,iq,ir,is,it,iu,iv,iw,ix,iy,iz,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;i=(g.nilCheck,g[0]);j=(g.nilCheck,g[1]);k=(g.nilCheck,g[2]);l=(g.nilCheck,g[3]);m=(g.nilCheck,g[4]);n=(g.nilCheck,g[5]);o=(g.nilCheck,g[6]);p=(g.nilCheck,g[7]);q=(g.nilCheck,g[8]);r=(g.nilCheck,g[9]);s=(h.nilCheck,h[0]);t=(h.nilCheck,h[1]);u=(h.nilCheck,h[2]);v=(h.nilCheck,h[3]);w=(h.nilCheck,h[4]);x=(h.nilCheck,h[5]);y=(h.nilCheck,h[6]);z=(h.nilCheck,h[7]);aa=(h.nilCheck,h[8]);ab=(h.nilCheck,h[9]);ac=$imul(19,t);ad=$imul(19,u);ae=$imul(19,v);af=$imul(19,w);ag=$imul(19,x);ah=$imul(19,y);ai=$imul(19,z);aj=$imul(19,aa);ak=$imul(19,ab);al=$imul(2,j);am=$imul(2,l);an=$imul(2,n);ao=$imul(2,p);ap=$imul(2,r);aq=$mul64(new $Int64(0,i),new $Int64(0,s));ar=$mul64(new $Int64(0,i),new $Int64(0,t));as=$mul64(new $Int64(0,i),new $Int64(0,u));at=$mul64(new $Int64(0,i),new $Int64(0,v));au=$mul64(new $Int64(0,i),new $Int64(0,w));av=$mul64(new $Int64(0,i),new $Int64(0,x));aw=$mul64(new $Int64(0,i),new $Int64(0,y));ax=$mul64(new $Int64(0,i),new $Int64(0,z));ay=$mul64(new $Int64(0,i),new $Int64(0,aa));az=$mul64(new $Int64(0,i),new $Int64(0,ab));ba=$mul64(new $Int64(0,j),new $Int64(0,s));bb=$mul64(new $Int64(0,al),new $Int64(0,t));bc=$mul64(new $Int64(0,j),new $Int64(0,u));bd=$mul64(new $Int64(0,al),new $Int64(0,v));be=$mul64(new $Int64(0,j),new $Int64(0,w));bf=$mul64(new $Int64(0,al),new $Int64(0,x));bg=$mul64(new $Int64(0,j),new $Int64(0,y));bh=$mul64(new $Int64(0,al),new $Int64(0,z));bi=$mul64(new $Int64(0,j),new $Int64(0,aa));bj=$mul64(new $Int64(0,al),new $Int64(0,ak));bk=$mul64(new $Int64(0,k),new $Int64(0,s));bl=$mul64(new $Int64(0,k),new $Int64(0,t));bm=$mul64(new $Int64(0,k),new $Int64(0,u));bn=$mul64(new $Int64(0,k),new $Int64(0,v));bo=$mul64(new $Int64(0,k),new $Int64(0,w));bp=$mul64(new $Int64(0,k),new $Int64(0,x));bq=$mul64(new $Int64(0,k),new $Int64(0,y));br=$mul64(new $Int64(0,k),new $Int64(0,z));bs=$mul64(new $Int64(0,k),new $Int64(0,aj));bt=$mul64(new $Int64(0,k),new $Int64(0,ak));bu=$mul64(new $Int64(0,l),new $Int64(0,s));bv=$mul64(new $Int64(0,am),new $Int64(0,t));bw=$mul64(new $Int64(0,l),new $Int64(0,u));bx=$mul64(new $Int64(0,am),new $Int64(0,v));by=$mul64(new $Int64(0,l),new $Int64(0,w));bz=$mul64(new $Int64(0,am),new $Int64(0,x));ca=$mul64(new $Int64(0,l),new $Int64(0,y));cb=$mul64(new $Int64(0,am),new $Int64(0,ai));cc=$mul64(new $Int64(0,l),new $Int64(0,aj));cd=$mul64(new $Int64(0,am),new $Int64(0,ak));ce=$mul64(new $Int64(0,m),new $Int64(0,s));cf=$mul64(new $Int64(0,m),new $Int64(0,t));cg=$mul64(new $Int64(0,m),new $Int64(0,u));ch=$mul64(new $Int64(0,m),new $Int64(0,v));ci=$mul64(new $Int64(0,m),new $Int64(0,w));cj=$mul64(new $Int64(0,m),new $Int64(0,x));ck=$mul64(new $Int64(0,m),new $Int64(0,ah));cl=$mul64(new $Int64(0,m),new $Int64(0,ai));cm=$mul64(new $Int64(0,m),new $Int64(0,aj));cn=$mul64(new $Int64(0,m),new $Int64(0,ak));co=$mul64(new $Int64(0,n),new $Int64(0,s));cp=$mul64(new $Int64(0,an),new $Int64(0,t));cq=$mul64(new $Int64(0,n),new $Int64(0,u));cr=$mul64(new $Int64(0,an),new $Int64(0,v));cs=$mul64(new $Int64(0,n),new $Int64(0,w));ct=$mul64(new $Int64(0,an),new $Int64(0,ag));cu=$mul64(new $Int64(0,n),new $Int64(0,ah));cv=$mul64(new $Int64(0,an),new $Int64(0,ai));cw=$mul64(new $Int64(0,n),new $Int64(0,aj));cx=$mul64(new $Int64(0,an),new $Int64(0,ak));cy=$mul64(new $Int64(0,o),new $Int64(0,s));cz=$mul64(new $Int64(0,o),new $Int64(0,t));da=$mul64(new $Int64(0,o),new $Int64(0,u));db=$mul64(new $Int64(0,o),new $Int64(0,v));dc=$mul64(new $Int64(0,o),new $Int64(0,af));dd=$mul64(new $Int64(0,o),new $Int64(0,ag));de=$mul64(new $Int64(0,o),new $Int64(0,ah));df=$mul64(new $Int64(0,o),new $Int64(0,ai));dg=$mul64(new $Int64(0,o),new $Int64(0,aj));dh=$mul64(new $Int64(0,o),new $Int64(0,ak));di=$mul64(new $Int64(0,p),new $Int64(0,s));dj=$mul64(new $Int64(0,ao),new $Int64(0,t));dk=$mul64(new $Int64(0,p),new $Int64(0,u));dl=$mul64(new $Int64(0,ao),new $Int64(0,ae));dm=$mul64(new $Int64(0,p),new $Int64(0,af));dn=$mul64(new $Int64(0,ao),new $Int64(0,ag));dp=$mul64(new $Int64(0,p),new $Int64(0,ah));dq=$mul64(new $Int64(0,ao),new $Int64(0,ai));dr=$mul64(new $Int64(0,p),new $Int64(0,aj));ds=$mul64(new $Int64(0,ao),new $Int64(0,ak));dt=$mul64(new $Int64(0,q),new $Int64(0,s));du=$mul64(new $Int64(0,q),new $Int64(0,t));dv=$mul64(new $Int64(0,q),new $Int64(0,ad));dw=$mul64(new $Int64(0,q),new $Int64(0,ae));dx=$mul64(new $Int64(0,q),new $Int64(0,af));dy=$mul64(new $Int64(0,q),new $Int64(0,ag));dz=$mul64(new $Int64(0,q),new $Int64(0,ah));ea=$mul64(new $Int64(0,q),new $Int64(0,ai));eb=$mul64(new $Int64(0,q),new $Int64(0,aj));ec=$mul64(new $Int64(0,q),new $Int64(0,ak));ed=$mul64(new $Int64(0,r),new $Int64(0,s));ee=$mul64(new $Int64(0,ap),new $Int64(0,ac));ef=$mul64(new $Int64(0,r),new $Int64(0,ad));eg=$mul64(new $Int64(0,ap),new $Int64(0,ae));eh=$mul64(new $Int64(0,r),new $Int64(0,af));ei=$mul64(new $Int64(0,ap),new $Int64(0,ag));ej=$mul64(new $Int64(0,r),new $Int64(0,ah));ek=$mul64(new $Int64(0,ap),new $Int64(0,ai));el=$mul64(new $Int64(0,r),new $Int64(0,aj));em=$mul64(new $Int64(0,ap),new $Int64(0,ak));ev=(en=(eo=(ep=(eq=(er=(es=(et=(eu=new $Int64(aq.$high+bj.$high,aq.$low+bj.$low),new $Int64(eu.$high+bs.$high,eu.$low+bs.$low)),new $Int64(et.$high+cb.$high,et.$low+cb.$low)),new $Int64(es.$high+ck.$high,es.$low+ck.$low)),new $Int64(er.$high+ct.$high,er.$low+ct.$low)),new $Int64(eq.$high+dc.$high,eq.$low+dc.$low)),new $Int64(ep.$high+dl.$high,ep.$low+dl.$low)),new $Int64(eo.$high+dv.$high,eo.$low+dv.$low)),new $Int64(en.$high+ee.$high,en.$low+ee.$low));fe=(ew=(ex=(ey=(ez=(fa=(fb=(fc=(fd=new $Int64(ar.$high+ba.$high,ar.$low+ba.$low),new $Int64(fd.$high+bt.$high,fd.$low+bt.$low)),new $Int64(fc.$high+cc.$high,fc.$low+cc.$low)),new $Int64(fb.$high+cl.$high,fb.$low+cl.$low)),new $Int64(fa.$high+cu.$high,fa.$low+cu.$low)),new $Int64(ez.$high+dd.$high,ez.$low+dd.$low)),new $Int64(ey.$high+dm.$high,ey.$low+dm.$low)),new $Int64(ex.$high+dw.$high,ex.$low+dw.$low)),new $Int64(ew.$high+ef.$high,ew.$low+ef.$low));fn=(ff=(fg=(fh=(fi=(fj=(fk=(fl=(fm=new $Int64(as.$high+bb.$high,as.$low+bb.$low),new $Int64(fm.$high+bk.$high,fm.$low+bk.$low)),new $Int64(fl.$high+cd.$high,fl.$low+cd.$low)),new $Int64(fk.$high+cm.$high,fk.$low+cm.$low)),new $Int64(fj.$high+cv.$high,fj.$low+cv.$low)),new $Int64(fi.$high+de.$high,fi.$low+de.$low)),new $Int64(fh.$high+dn.$high,fh.$low+dn.$low)),new $Int64(fg.$high+dx.$high,fg.$low+dx.$low)),new $Int64(ff.$high+eg.$high,ff.$low+eg.$low));fw=(fo=(fp=(fq=(fr=(fs=(ft=(fu=(fv=new $Int64(at.$high+bc.$high,at.$low+bc.$low),new $Int64(fv.$high+bl.$high,fv.$low+bl.$low)),new $Int64(fu.$high+bu.$high,fu.$low+bu.$low)),new $Int64(ft.$high+cn.$high,ft.$low+cn.$low)),new $Int64(fs.$high+cw.$high,fs.$low+cw.$low)),new $Int64(fr.$high+df.$high,fr.$low+df.$low)),new $Int64(fq.$high+dp.$high,fq.$low+dp.$low)),new $Int64(fp.$high+dy.$high,fp.$low+dy.$low)),new $Int64(fo.$high+eh.$high,fo.$low+eh.$low));gf=(fx=(fy=(fz=(ga=(gb=(gc=(gd=(ge=new $Int64(au.$high+bd.$high,au.$low+bd.$low),new $Int64(ge.$high+bm.$high,ge.$low+bm.$low)),new $Int64(gd.$high+bv.$high,gd.$low+bv.$low)),new $Int64(gc.$high+ce.$high,gc.$low+ce.$low)),new $Int64(gb.$high+cx.$high,gb.$low+cx.$low)),new $Int64(ga.$high+dg.$high,ga.$low+dg.$low)),new $Int64(fz.$high+dq.$high,fz.$low+dq.$low)),new $Int64(fy.$high+dz.$high,fy.$low+dz.$low)),new $Int64(fx.$high+ei.$high,fx.$low+ei.$low));go=(gg=(gh=(gi=(gj=(gk=(gl=(gm=(gn=new $Int64(av.$high+be.$high,av.$low+be.$low),new $Int64(gn.$high+bn.$high,gn.$low+bn.$low)),new $Int64(gm.$high+bw.$high,gm.$low+bw.$low)),new $Int64(gl.$high+cf.$high,gl.$low+cf.$low)),new $Int64(gk.$high+co.$high,gk.$low+co.$low)),new $Int64(gj.$high+dh.$high,gj.$low+dh.$low)),new $Int64(gi.$high+dr.$high,gi.$low+dr.$low)),new $Int64(gh.$high+ea.$high,gh.$low+ea.$low)),new $Int64(gg.$high+ej.$high,gg.$low+ej.$low));gx=(gp=(gq=(gr=(gs=(gt=(gu=(gv=(gw=new $Int64(aw.$high+bf.$high,aw.$low+bf.$low),new $Int64(gw.$high+bo.$high,gw.$low+bo.$low)),new $Int64(gv.$high+bx.$high,gv.$low+bx.$low)),new $Int64(gu.$high+cg.$high,gu.$low+cg.$low)),new $Int64(gt.$high+cp.$high,gt.$low+cp.$low)),new $Int64(gs.$high+cy.$high,gs.$low+cy.$low)),new $Int64(gr.$high+ds.$high,gr.$low+ds.$low)),new $Int64(gq.$high+eb.$high,gq.$low+eb.$low)),new $Int64(gp.$high+ek.$high,gp.$low+ek.$low));hg=(gy=(gz=(ha=(hb=(hc=(hd=(he=(hf=new $Int64(ax.$high+bg.$high,ax.$low+bg.$low),new $Int64(hf.$high+bp.$high,hf.$low+bp.$low)),new $Int64(he.$high+by.$high,he.$low+by.$low)),new $Int64(hd.$high+ch.$high,hd.$low+ch.$low)),new $Int64(hc.$high+cq.$high,hc.$low+cq.$low)),new $Int64(hb.$high+cz.$high,hb.$low+cz.$low)),new $Int64(ha.$high+di.$high,ha.$low+di.$low)),new $Int64(gz.$high+ec.$high,gz.$low+ec.$low)),new $Int64(gy.$high+el.$high,gy.$low+el.$low));hp=(hh=(hi=(hj=(hk=(hl=(hm=(hn=(ho=new $Int64(ay.$high+bh.$high,ay.$low+bh.$low),new $Int64(ho.$high+bq.$high,ho.$low+bq.$low)),new $Int64(hn.$high+bz.$high,hn.$low+bz.$low)),new $Int64(hm.$high+ci.$high,hm.$low+ci.$low)),new $Int64(hl.$high+cr.$high,hl.$low+cr.$low)),new $Int64(hk.$high+da.$high,hk.$low+da.$low)),new $Int64(hj.$high+dj.$high,hj.$low+dj.$low)),new $Int64(hi.$high+dt.$high,hi.$low+dt.$low)),new $Int64(hh.$high+em.$high,hh.$low+em.$low));hy=(hq=(hr=(hs=(ht=(hu=(hv=(hw=(hx=new $Int64(az.$high+bi.$high,az.$low+bi.$low),new $Int64(hx.$high+br.$high,hx.$low+br.$low)),new $Int64(hw.$high+ca.$high,hw.$low+ca.$low)),new $Int64(hv.$high+cj.$high,hv.$low+cj.$low)),new $Int64(hu.$high+cs.$high,hu.$low+cs.$low)),new $Int64(ht.$high+db.$high,ht.$low+db.$low)),new $Int64(hs.$high+dk.$high,hs.$low+dk.$low)),new $Int64(hr.$high+du.$high,hr.$low+du.$low)),new $Int64(hq.$high+ed.$high,hq.$low+ed.$low));hz=CL.zero();hz[0]=$shiftRightInt64((new $Int64(ev.$high+0,ev.$low+33554432)),26);fe=(ia=hz[0],new $Int64(fe.$high+ia.$high,fe.$low+ia.$low));ev=(ib=$shiftLeft64(hz[0],26),new $Int64(ev.$high-ib.$high,ev.$low-ib.$low));hz[4]=$shiftRightInt64((new $Int64(gf.$high+0,gf.$low+33554432)),26);go=(ic=hz[4],new $Int64(go.$high+ic.$high,go.$low+ic.$low));gf=(id=$shiftLeft64(hz[4],26),new $Int64(gf.$high-id.$high,gf.$low-id.$low));hz[1]=$shiftRightInt64((new $Int64(fe.$high+0,fe.$low+16777216)),25);fn=(ie=hz[1],new $Int64(fn.$high+ie.$high,fn.$low+ie.$low));fe=(ig=$shiftLeft64(hz[1],25),new $Int64(fe.$high-ig.$high,fe.$low-ig.$low));hz[5]=$shiftRightInt64((new $Int64(go.$high+0,go.$low+16777216)),25);gx=(ih=hz[5],new $Int64(gx.$high+ih.$high,gx.$low+ih.$low));go=(ii=$shiftLeft64(hz[5],25),new $Int64(go.$high-ii.$high,go.$low-ii.$low));hz[2]=$shiftRightInt64((new $Int64(fn.$high+0,fn.$low+33554432)),26);fw=(ij=hz[2],new $Int64(fw.$high+ij.$high,fw.$low+ij.$low));fn=(ik=$shiftLeft64(hz[2],26),new $Int64(fn.$high-ik.$high,fn.$low-ik.$low));hz[6]=$shiftRightInt64((new $Int64(gx.$high+0,gx.$low+33554432)),26);hg=(il=hz[6],new $Int64(hg.$high+il.$high,hg.$low+il.$low));gx=(im=$shiftLeft64(hz[6],26),new $Int64(gx.$high-im.$high,gx.$low-im.$low));hz[3]=$shiftRightInt64((new $Int64(fw.$high+0,fw.$low+16777216)),25);gf=(io=hz[3],new $Int64(gf.$high+io.$high,gf.$low+io.$low));fw=(ip=$shiftLeft64(hz[3],25),new $Int64(fw.$high-ip.$high,fw.$low-ip.$low));hz[7]=$shiftRightInt64((new $Int64(hg.$high+0,hg.$low+16777216)),25);hp=(iq=hz[7],new $Int64(hp.$high+iq.$high,hp.$low+iq.$low));hg=(ir=$shiftLeft64(hz[7],25),new $Int64(hg.$high-ir.$high,hg.$low-ir.$low));hz[4]=$shiftRightInt64((new $Int64(gf.$high+0,gf.$low+33554432)),26);go=(is=hz[4],new $Int64(go.$high+is.$high,go.$low+is.$low));gf=(it=$shiftLeft64(hz[4],26),new $Int64(gf.$high-it.$high,gf.$low-it.$low));hz[8]=$shiftRightInt64((new $Int64(hp.$high+0,hp.$low+33554432)),26);hy=(iu=hz[8],new $Int64(hy.$high+iu.$high,hy.$low+iu.$low));hp=(iv=$shiftLeft64(hz[8],26),new $Int64(hp.$high-iv.$high,hp.$low-iv.$low));hz[9]=$shiftRightInt64((new $Int64(hy.$high+0,hy.$low+16777216)),25);ev=(iw=$mul64(hz[9],new $Int64(0,19)),new $Int64(ev.$high+iw.$high,ev.$low+iw.$low));hy=(ix=$shiftLeft64(hz[9],25),new $Int64(hy.$high-ix.$high,hy.$low-ix.$low));hz[0]=$shiftRightInt64((new $Int64(ev.$high+0,ev.$low+33554432)),26);fe=(iy=hz[0],new $Int64(fe.$high+iy.$high,fe.$low+iy.$low));ev=(iz=$shiftLeft64(hz[0],26),new $Int64(ev.$high-iz.$high,ev.$low-iz.$low));f.nilCheck,f[0]=((ev.$low+((ev.$high>>31)*4294967296))>>0);f.nilCheck,f[1]=((fe.$low+((fe.$high>>31)*4294967296))>>0);f.nilCheck,f[2]=((fn.$low+((fn.$high>>31)*4294967296))>>0);f.nilCheck,f[3]=((fw.$low+((fw.$high>>31)*4294967296))>>0);f.nilCheck,f[4]=((gf.$low+((gf.$high>>31)*4294967296))>>0);f.nilCheck,f[5]=((go.$low+((go.$high>>31)*4294967296))>>0);f.nilCheck,f[6]=((gx.$low+((gx.$high>>31)*4294967296))>>0);f.nilCheck,f[7]=((hg.$low+((hg.$high>>31)*4294967296))>>0);f.nilCheck,f[8]=((hp.$low+((hp.$high>>31)*4294967296))>>0);f.nilCheck,f[9]=((hy.$low+((hy.$high>>31)*4294967296))>>0);};BB=function(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ey,ez,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;h=(g.nilCheck,g[0]);i=(g.nilCheck,g[1]);j=(g.nilCheck,g[2]);k=(g.nilCheck,g[3]);l=(g.nilCheck,g[4]);m=(g.nilCheck,g[5]);n=(g.nilCheck,g[6]);o=(g.nilCheck,g[7]);p=(g.nilCheck,g[8]);q=(g.nilCheck,g[9]);r=$imul(2,h);s=$imul(2,i);t=$imul(2,j);u=$imul(2,k);v=$imul(2,l);w=$imul(2,m);x=$imul(2,n);y=$imul(2,o);z=$imul(38,m);aa=$imul(19,n);ab=$imul(38,o);ac=$imul(19,p);ad=$imul(38,q);ae=$mul64(new $Int64(0,h),new $Int64(0,h));af=$mul64(new $Int64(0,r),new $Int64(0,i));ag=$mul64(new $Int64(0,r),new $Int64(0,j));ah=$mul64(new $Int64(0,r),new $Int64(0,k));ai=$mul64(new $Int64(0,r),new $Int64(0,l));aj=$mul64(new $Int64(0,r),new $Int64(0,m));ak=$mul64(new $Int64(0,r),new $Int64(0,n));al=$mul64(new $Int64(0,r),new $Int64(0,o));am=$mul64(new $Int64(0,r),new $Int64(0,p));an=$mul64(new $Int64(0,r),new $Int64(0,q));ao=$mul64(new $Int64(0,s),new $Int64(0,i));ap=$mul64(new $Int64(0,s),new $Int64(0,j));aq=$mul64(new $Int64(0,s),new $Int64(0,u));ar=$mul64(new $Int64(0,s),new $Int64(0,l));as=$mul64(new $Int64(0,s),new $Int64(0,w));at=$mul64(new $Int64(0,s),new $Int64(0,n));au=$mul64(new $Int64(0,s),new $Int64(0,y));av=$mul64(new $Int64(0,s),new $Int64(0,p));aw=$mul64(new $Int64(0,s),new $Int64(0,ad));ax=$mul64(new $Int64(0,j),new $Int64(0,j));ay=$mul64(new $Int64(0,t),new $Int64(0,k));az=$mul64(new $Int64(0,t),new $Int64(0,l));ba=$mul64(new $Int64(0,t),new $Int64(0,m));bb=$mul64(new $Int64(0,t),new $Int64(0,n));bc=$mul64(new $Int64(0,t),new $Int64(0,o));bd=$mul64(new $Int64(0,t),new $Int64(0,ac));be=$mul64(new $Int64(0,j),new $Int64(0,ad));bf=$mul64(new $Int64(0,u),new $Int64(0,k));bg=$mul64(new $Int64(0,u),new $Int64(0,l));bh=$mul64(new $Int64(0,u),new $Int64(0,w));bi=$mul64(new $Int64(0,u),new $Int64(0,n));bj=$mul64(new $Int64(0,u),new $Int64(0,ab));bk=$mul64(new $Int64(0,u),new $Int64(0,ac));bl=$mul64(new $Int64(0,u),new $Int64(0,ad));bm=$mul64(new $Int64(0,l),new $Int64(0,l));bn=$mul64(new $Int64(0,v),new $Int64(0,m));bo=$mul64(new $Int64(0,v),new $Int64(0,aa));bp=$mul64(new $Int64(0,l),new $Int64(0,ab));bq=$mul64(new $Int64(0,v),new $Int64(0,ac));br=$mul64(new $Int64(0,l),new $Int64(0,ad));bs=$mul64(new $Int64(0,m),new $Int64(0,z));bt=$mul64(new $Int64(0,w),new $Int64(0,aa));bu=$mul64(new $Int64(0,w),new $Int64(0,ab));bv=$mul64(new $Int64(0,w),new $Int64(0,ac));bw=$mul64(new $Int64(0,w),new $Int64(0,ad));bx=$mul64(new $Int64(0,n),new $Int64(0,aa));by=$mul64(new $Int64(0,n),new $Int64(0,ab));bz=$mul64(new $Int64(0,x),new $Int64(0,ac));ca=$mul64(new $Int64(0,n),new $Int64(0,ad));cb=$mul64(new $Int64(0,o),new $Int64(0,ab));cc=$mul64(new $Int64(0,y),new $Int64(0,ac));cd=$mul64(new $Int64(0,y),new $Int64(0,ad));ce=$mul64(new $Int64(0,p),new $Int64(0,ac));cf=$mul64(new $Int64(0,p),new $Int64(0,ad));cg=$mul64(new $Int64(0,q),new $Int64(0,ad));cl=(ch=(ci=(cj=(ck=new $Int64(ae.$high+aw.$high,ae.$low+aw.$low),new $Int64(ck.$high+bd.$high,ck.$low+bd.$low)),new $Int64(cj.$high+bj.$high,cj.$low+bj.$low)),new $Int64(ci.$high+bo.$high,ci.$low+bo.$low)),new $Int64(ch.$high+bs.$high,ch.$low+bs.$low));cp=(cm=(cn=(co=new $Int64(af.$high+be.$high,af.$low+be.$low),new $Int64(co.$high+bk.$high,co.$low+bk.$low)),new $Int64(cn.$high+bp.$high,cn.$low+bp.$low)),new $Int64(cm.$high+bt.$high,cm.$low+bt.$low));cu=(cq=(cr=(cs=(ct=new $Int64(ag.$high+ao.$high,ag.$low+ao.$low),new $Int64(ct.$high+bl.$high,ct.$low+bl.$low)),new $Int64(cs.$high+bq.$high,cs.$low+bq.$low)),new $Int64(cr.$high+bu.$high,cr.$low+bu.$low)),new $Int64(cq.$high+bx.$high,cq.$low+bx.$low));cy=(cv=(cw=(cx=new $Int64(ah.$high+ap.$high,ah.$low+ap.$low),new $Int64(cx.$high+br.$high,cx.$low+br.$low)),new $Int64(cw.$high+bv.$high,cw.$low+bv.$low)),new $Int64(cv.$high+by.$high,cv.$low+by.$low));dd=(cz=(da=(db=(dc=new $Int64(ai.$high+aq.$high,ai.$low+aq.$low),new $Int64(dc.$high+ax.$high,dc.$low+ax.$low)),new $Int64(db.$high+bw.$high,db.$low+bw.$low)),new $Int64(da.$high+bz.$high,da.$low+bz.$low)),new $Int64(cz.$high+cb.$high,cz.$low+cb.$low));dh=(de=(df=(dg=new $Int64(aj.$high+ar.$high,aj.$low+ar.$low),new $Int64(dg.$high+ay.$high,dg.$low+ay.$low)),new $Int64(df.$high+ca.$high,df.$low+ca.$low)),new $Int64(de.$high+cc.$high,de.$low+cc.$low));dm=(di=(dj=(dk=(dl=new $Int64(ak.$high+as.$high,ak.$low+as.$low),new $Int64(dl.$high+az.$high,dl.$low+az.$low)),new $Int64(dk.$high+bf.$high,dk.$low+bf.$low)),new $Int64(dj.$high+cd.$high,dj.$low+cd.$low)),new $Int64(di.$high+ce.$high,di.$low+ce.$low));dr=(dn=(dp=(dq=new $Int64(al.$high+at.$high,al.$low+at.$low),new $Int64(dq.$high+ba.$high,dq.$low+ba.$low)),new $Int64(dp.$high+bg.$high,dp.$low+bg.$low)),new $Int64(dn.$high+cf.$high,dn.$low+cf.$low));dw=(ds=(dt=(du=(dv=new $Int64(am.$high+au.$high,am.$low+au.$low),new $Int64(dv.$high+bb.$high,dv.$low+bb.$low)),new $Int64(du.$high+bh.$high,du.$low+bh.$low)),new $Int64(dt.$high+bm.$high,dt.$low+bm.$low)),new $Int64(ds.$high+cg.$high,ds.$low+cg.$low));ea=(dx=(dy=(dz=new $Int64(an.$high+av.$high,an.$low+av.$low),new $Int64(dz.$high+bc.$high,dz.$low+bc.$low)),new $Int64(dy.$high+bi.$high,dy.$low+bi.$low)),new $Int64(dx.$high+bn.$high,dx.$low+bn.$low));eb=CL.zero();eb[0]=$shiftRightInt64((new $Int64(cl.$high+0,cl.$low+33554432)),26);cp=(ec=eb[0],new $Int64(cp.$high+ec.$high,cp.$low+ec.$low));cl=(ed=$shiftLeft64(eb[0],26),new $Int64(cl.$high-ed.$high,cl.$low-ed.$low));eb[4]=$shiftRightInt64((new $Int64(dd.$high+0,dd.$low+33554432)),26);dh=(ee=eb[4],new $Int64(dh.$high+ee.$high,dh.$low+ee.$low));dd=(ef=$shiftLeft64(eb[4],26),new $Int64(dd.$high-ef.$high,dd.$low-ef.$low));eb[1]=$shiftRightInt64((new $Int64(cp.$high+0,cp.$low+16777216)),25);cu=(eg=eb[1],new $Int64(cu.$high+eg.$high,cu.$low+eg.$low));cp=(eh=$shiftLeft64(eb[1],25),new $Int64(cp.$high-eh.$high,cp.$low-eh.$low));eb[5]=$shiftRightInt64((new $Int64(dh.$high+0,dh.$low+16777216)),25);dm=(ei=eb[5],new $Int64(dm.$high+ei.$high,dm.$low+ei.$low));dh=(ej=$shiftLeft64(eb[5],25),new $Int64(dh.$high-ej.$high,dh.$low-ej.$low));eb[2]=$shiftRightInt64((new $Int64(cu.$high+0,cu.$low+33554432)),26);cy=(ek=eb[2],new $Int64(cy.$high+ek.$high,cy.$low+ek.$low));cu=(el=$shiftLeft64(eb[2],26),new $Int64(cu.$high-el.$high,cu.$low-el.$low));eb[6]=$shiftRightInt64((new $Int64(dm.$high+0,dm.$low+33554432)),26);dr=(em=eb[6],new $Int64(dr.$high+em.$high,dr.$low+em.$low));dm=(en=$shiftLeft64(eb[6],26),new $Int64(dm.$high-en.$high,dm.$low-en.$low));eb[3]=$shiftRightInt64((new $Int64(cy.$high+0,cy.$low+16777216)),25);dd=(eo=eb[3],new $Int64(dd.$high+eo.$high,dd.$low+eo.$low));cy=(ep=$shiftLeft64(eb[3],25),new $Int64(cy.$high-ep.$high,cy.$low-ep.$low));eb[7]=$shiftRightInt64((new $Int64(dr.$high+0,dr.$low+16777216)),25);dw=(eq=eb[7],new $Int64(dw.$high+eq.$high,dw.$low+eq.$low));dr=(er=$shiftLeft64(eb[7],25),new $Int64(dr.$high-er.$high,dr.$low-er.$low));eb[4]=$shiftRightInt64((new $Int64(dd.$high+0,dd.$low+33554432)),26);dh=(es=eb[4],new $Int64(dh.$high+es.$high,dh.$low+es.$low));dd=(et=$shiftLeft64(eb[4],26),new $Int64(dd.$high-et.$high,dd.$low-et.$low));eb[8]=$shiftRightInt64((new $Int64(dw.$high+0,dw.$low+33554432)),26);ea=(eu=eb[8],new $Int64(ea.$high+eu.$high,ea.$low+eu.$low));dw=(ev=$shiftLeft64(eb[8],26),new $Int64(dw.$high-ev.$high,dw.$low-ev.$low));eb[9]=$shiftRightInt64((new $Int64(ea.$high+0,ea.$low+16777216)),25);cl=(ew=$mul64(eb[9],new $Int64(0,19)),new $Int64(cl.$high+ew.$high,cl.$low+ew.$low));ea=(ex=$shiftLeft64(eb[9],25),new $Int64(ea.$high-ex.$high,ea.$low-ex.$low));eb[0]=$shiftRightInt64((new $Int64(cl.$high+0,cl.$low+33554432)),26);cp=(ey=eb[0],new $Int64(cp.$high+ey.$high,cp.$low+ey.$low));cl=(ez=$shiftLeft64(eb[0],26),new $Int64(cl.$high-ez.$high,cl.$low-ez.$low));f.nilCheck,f[0]=((cl.$low+((cl.$high>>31)*4294967296))>>0);f.nilCheck,f[1]=((cp.$low+((cp.$high>>31)*4294967296))>>0);f.nilCheck,f[2]=((cu.$low+((cu.$high>>31)*4294967296))>>0);f.nilCheck,f[3]=((cy.$low+((cy.$high>>31)*4294967296))>>0);f.nilCheck,f[4]=((dd.$low+((dd.$high>>31)*4294967296))>>0);f.nilCheck,f[5]=((dh.$low+((dh.$high>>31)*4294967296))>>0);f.nilCheck,f[6]=((dm.$low+((dm.$high>>31)*4294967296))>>0);f.nilCheck,f[7]=((dr.$low+((dr.$high>>31)*4294967296))>>0);f.nilCheck,f[8]=((dw.$low+((dw.$high>>31)*4294967296))>>0);f.nilCheck,f[9]=((ea.$low+((ea.$high>>31)*4294967296))>>0);};BC=function(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ey,ez,f,fa,fb,fc,fd,fe,ff,fg,fh,fi,fj,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;h=(g.nilCheck,g[0]);i=(g.nilCheck,g[1]);j=(g.nilCheck,g[2]);k=(g.nilCheck,g[3]);l=(g.nilCheck,g[4]);m=(g.nilCheck,g[5]);n=(g.nilCheck,g[6]);o=(g.nilCheck,g[7]);p=(g.nilCheck,g[8]);q=(g.nilCheck,g[9]);r=$imul(2,h);s=$imul(2,i);t=$imul(2,j);u=$imul(2,k);v=$imul(2,l);w=$imul(2,m);x=$imul(2,n);y=$imul(2,o);z=$imul(38,m);aa=$imul(19,n);ab=$imul(38,o);ac=$imul(19,p);ad=$imul(38,q);ae=$mul64(new $Int64(0,h),new $Int64(0,h));af=$mul64(new $Int64(0,r),new $Int64(0,i));ag=$mul64(new $Int64(0,r),new $Int64(0,j));ah=$mul64(new $Int64(0,r),new $Int64(0,k));ai=$mul64(new $Int64(0,r),new $Int64(0,l));aj=$mul64(new $Int64(0,r),new $Int64(0,m));ak=$mul64(new $Int64(0,r),new $Int64(0,n));al=$mul64(new $Int64(0,r),new $Int64(0,o));am=$mul64(new $Int64(0,r),new $Int64(0,p));an=$mul64(new $Int64(0,r),new $Int64(0,q));ao=$mul64(new $Int64(0,s),new $Int64(0,i));ap=$mul64(new $Int64(0,s),new $Int64(0,j));aq=$mul64(new $Int64(0,s),new $Int64(0,u));ar=$mul64(new $Int64(0,s),new $Int64(0,l));as=$mul64(new $Int64(0,s),new $Int64(0,w));at=$mul64(new $Int64(0,s),new $Int64(0,n));au=$mul64(new $Int64(0,s),new $Int64(0,y));av=$mul64(new $Int64(0,s),new $Int64(0,p));aw=$mul64(new $Int64(0,s),new $Int64(0,ad));ax=$mul64(new $Int64(0,j),new $Int64(0,j));ay=$mul64(new $Int64(0,t),new $Int64(0,k));az=$mul64(new $Int64(0,t),new $Int64(0,l));ba=$mul64(new $Int64(0,t),new $Int64(0,m));bb=$mul64(new $Int64(0,t),new $Int64(0,n));bc=$mul64(new $Int64(0,t),new $Int64(0,o));bd=$mul64(new $Int64(0,t),new $Int64(0,ac));be=$mul64(new $Int64(0,j),new $Int64(0,ad));bf=$mul64(new $Int64(0,u),new $Int64(0,k));bg=$mul64(new $Int64(0,u),new $Int64(0,l));bh=$mul64(new $Int64(0,u),new $Int64(0,w));bi=$mul64(new $Int64(0,u),new $Int64(0,n));bj=$mul64(new $Int64(0,u),new $Int64(0,ab));bk=$mul64(new $Int64(0,u),new $Int64(0,ac));bl=$mul64(new $Int64(0,u),new $Int64(0,ad));bm=$mul64(new $Int64(0,l),new $Int64(0,l));bn=$mul64(new $Int64(0,v),new $Int64(0,m));bo=$mul64(new $Int64(0,v),new $Int64(0,aa));bp=$mul64(new $Int64(0,l),new $Int64(0,ab));bq=$mul64(new $Int64(0,v),new $Int64(0,ac));br=$mul64(new $Int64(0,l),new $Int64(0,ad));bs=$mul64(new $Int64(0,m),new $Int64(0,z));bt=$mul64(new $Int64(0,w),new $Int64(0,aa));bu=$mul64(new $Int64(0,w),new $Int64(0,ab));bv=$mul64(new $Int64(0,w),new $Int64(0,ac));bw=$mul64(new $Int64(0,w),new $Int64(0,ad));bx=$mul64(new $Int64(0,n),new $Int64(0,aa));by=$mul64(new $Int64(0,n),new $Int64(0,ab));bz=$mul64(new $Int64(0,x),new $Int64(0,ac));ca=$mul64(new $Int64(0,n),new $Int64(0,ad));cb=$mul64(new $Int64(0,o),new $Int64(0,ab));cc=$mul64(new $Int64(0,y),new $Int64(0,ac));cd=$mul64(new $Int64(0,y),new $Int64(0,ad));ce=$mul64(new $Int64(0,p),new $Int64(0,ac));cf=$mul64(new $Int64(0,p),new $Int64(0,ad));cg=$mul64(new $Int64(0,q),new $Int64(0,ad));cl=(ch=(ci=(cj=(ck=new $Int64(ae.$high+aw.$high,ae.$low+aw.$low),new $Int64(ck.$high+bd.$high,ck.$low+bd.$low)),new $Int64(cj.$high+bj.$high,cj.$low+bj.$low)),new $Int64(ci.$high+bo.$high,ci.$low+bo.$low)),new $Int64(ch.$high+bs.$high,ch.$low+bs.$low));cp=(cm=(cn=(co=new $Int64(af.$high+be.$high,af.$low+be.$low),new $Int64(co.$high+bk.$high,co.$low+bk.$low)),new $Int64(cn.$high+bp.$high,cn.$low+bp.$low)),new $Int64(cm.$high+bt.$high,cm.$low+bt.$low));cu=(cq=(cr=(cs=(ct=new $Int64(ag.$high+ao.$high,ag.$low+ao.$low),new $Int64(ct.$high+bl.$high,ct.$low+bl.$low)),new $Int64(cs.$high+bq.$high,cs.$low+bq.$low)),new $Int64(cr.$high+bu.$high,cr.$low+bu.$low)),new $Int64(cq.$high+bx.$high,cq.$low+bx.$low));cy=(cv=(cw=(cx=new $Int64(ah.$high+ap.$high,ah.$low+ap.$low),new $Int64(cx.$high+br.$high,cx.$low+br.$low)),new $Int64(cw.$high+bv.$high,cw.$low+bv.$low)),new $Int64(cv.$high+by.$high,cv.$low+by.$low));dd=(cz=(da=(db=(dc=new $Int64(ai.$high+aq.$high,ai.$low+aq.$low),new $Int64(dc.$high+ax.$high,dc.$low+ax.$low)),new $Int64(db.$high+bw.$high,db.$low+bw.$low)),new $Int64(da.$high+bz.$high,da.$low+bz.$low)),new $Int64(cz.$high+cb.$high,cz.$low+cb.$low));dh=(de=(df=(dg=new $Int64(aj.$high+ar.$high,aj.$low+ar.$low),new $Int64(dg.$high+ay.$high,dg.$low+ay.$low)),new $Int64(df.$high+ca.$high,df.$low+ca.$low)),new $Int64(de.$high+cc.$high,de.$low+cc.$low));dm=(di=(dj=(dk=(dl=new $Int64(ak.$high+as.$high,ak.$low+as.$low),new $Int64(dl.$high+az.$high,dl.$low+az.$low)),new $Int64(dk.$high+bf.$high,dk.$low+bf.$low)),new $Int64(dj.$high+cd.$high,dj.$low+cd.$low)),new $Int64(di.$high+ce.$high,di.$low+ce.$low));dr=(dn=(dp=(dq=new $Int64(al.$high+at.$high,al.$low+at.$low),new $Int64(dq.$high+ba.$high,dq.$low+ba.$low)),new $Int64(dp.$high+bg.$high,dp.$low+bg.$low)),new $Int64(dn.$high+cf.$high,dn.$low+cf.$low));dw=(ds=(dt=(du=(dv=new $Int64(am.$high+au.$high,am.$low+au.$low),new $Int64(dv.$high+bb.$high,dv.$low+bb.$low)),new $Int64(du.$high+bh.$high,du.$low+bh.$low)),new $Int64(dt.$high+bm.$high,dt.$low+bm.$low)),new $Int64(ds.$high+cg.$high,ds.$low+cg.$low));ea=(dx=(dy=(dz=new $Int64(an.$high+av.$high,an.$low+av.$low),new $Int64(dz.$high+bc.$high,dz.$low+bc.$low)),new $Int64(dy.$high+bi.$high,dy.$low+bi.$low)),new $Int64(dx.$high+bn.$high,dx.$low+bn.$low));eb=CL.zero();cl=(ec=cl,new $Int64(cl.$high+ec.$high,cl.$low+ec.$low));cp=(ed=cp,new $Int64(cp.$high+ed.$high,cp.$low+ed.$low));cu=(ee=cu,new $Int64(cu.$high+ee.$high,cu.$low+ee.$low));cy=(ef=cy,new $Int64(cy.$high+ef.$high,cy.$low+ef.$low));dd=(eg=dd,new $Int64(dd.$high+eg.$high,dd.$low+eg.$low));dh=(eh=dh,new $Int64(dh.$high+eh.$high,dh.$low+eh.$low));dm=(ei=dm,new $Int64(dm.$high+ei.$high,dm.$low+ei.$low));dr=(ej=dr,new $Int64(dr.$high+ej.$high,dr.$low+ej.$low));dw=(ek=dw,new $Int64(dw.$high+ek.$high,dw.$low+ek.$low));ea=(el=ea,new $Int64(ea.$high+el.$high,ea.$low+el.$low));eb[0]=$shiftRightInt64((new $Int64(cl.$high+0,cl.$low+33554432)),26);cp=(em=eb[0],new $Int64(cp.$high+em.$high,cp.$low+em.$low));cl=(en=$shiftLeft64(eb[0],26),new $Int64(cl.$high-en.$high,cl.$low-en.$low));eb[4]=$shiftRightInt64((new $Int64(dd.$high+0,dd.$low+33554432)),26);dh=(eo=eb[4],new $Int64(dh.$high+eo.$high,dh.$low+eo.$low));dd=(ep=$shiftLeft64(eb[4],26),new $Int64(dd.$high-ep.$high,dd.$low-ep.$low));eb[1]=$shiftRightInt64((new $Int64(cp.$high+0,cp.$low+16777216)),25);cu=(eq=eb[1],new $Int64(cu.$high+eq.$high,cu.$low+eq.$low));cp=(er=$shiftLeft64(eb[1],25),new $Int64(cp.$high-er.$high,cp.$low-er.$low));eb[5]=$shiftRightInt64((new $Int64(dh.$high+0,dh.$low+16777216)),25);dm=(es=eb[5],new $Int64(dm.$high+es.$high,dm.$low+es.$low));dh=(et=$shiftLeft64(eb[5],25),new $Int64(dh.$high-et.$high,dh.$low-et.$low));eb[2]=$shiftRightInt64((new $Int64(cu.$high+0,cu.$low+33554432)),26);cy=(eu=eb[2],new $Int64(cy.$high+eu.$high,cy.$low+eu.$low));cu=(ev=$shiftLeft64(eb[2],26),new $Int64(cu.$high-ev.$high,cu.$low-ev.$low));eb[6]=$shiftRightInt64((new $Int64(dm.$high+0,dm.$low+33554432)),26);dr=(ew=eb[6],new $Int64(dr.$high+ew.$high,dr.$low+ew.$low));dm=(ex=$shiftLeft64(eb[6],26),new $Int64(dm.$high-ex.$high,dm.$low-ex.$low));eb[3]=$shiftRightInt64((new $Int64(cy.$high+0,cy.$low+16777216)),25);dd=(ey=eb[3],new $Int64(dd.$high+ey.$high,dd.$low+ey.$low));cy=(ez=$shiftLeft64(eb[3],25),new $Int64(cy.$high-ez.$high,cy.$low-ez.$low));eb[7]=$shiftRightInt64((new $Int64(dr.$high+0,dr.$low+16777216)),25);dw=(fa=eb[7],new $Int64(dw.$high+fa.$high,dw.$low+fa.$low));dr=(fb=$shiftLeft64(eb[7],25),new $Int64(dr.$high-fb.$high,dr.$low-fb.$low));eb[4]=$shiftRightInt64((new $Int64(dd.$high+0,dd.$low+33554432)),26);dh=(fc=eb[4],new $Int64(dh.$high+fc.$high,dh.$low+fc.$low));dd=(fd=$shiftLeft64(eb[4],26),new $Int64(dd.$high-fd.$high,dd.$low-fd.$low));eb[8]=$shiftRightInt64((new $Int64(dw.$high+0,dw.$low+33554432)),26);ea=(fe=eb[8],new $Int64(ea.$high+fe.$high,ea.$low+fe.$low));dw=(ff=$shiftLeft64(eb[8],26),new $Int64(dw.$high-ff.$high,dw.$low-ff.$low));eb[9]=$shiftRightInt64((new $Int64(ea.$high+0,ea.$low+16777216)),25);cl=(fg=$mul64(eb[9],new $Int64(0,19)),new $Int64(cl.$high+fg.$high,cl.$low+fg.$low));ea=(fh=$shiftLeft64(eb[9],25),new $Int64(ea.$high-fh.$high,ea.$low-fh.$low));eb[0]=$shiftRightInt64((new $Int64(cl.$high+0,cl.$low+33554432)),26);cp=(fi=eb[0],new $Int64(cp.$high+fi.$high,cp.$low+fi.$low));cl=(fj=$shiftLeft64(eb[0],26),new $Int64(cl.$high-fj.$high,cl.$low-fj.$low));f.nilCheck,f[0]=((cl.$low+((cl.$high>>31)*4294967296))>>0);f.nilCheck,f[1]=((cp.$low+((cp.$high>>31)*4294967296))>>0);f.nilCheck,f[2]=((cu.$low+((cu.$high>>31)*4294967296))>>0);f.nilCheck,f[3]=((cy.$low+((cy.$high>>31)*4294967296))>>0);f.nilCheck,f[4]=((dd.$low+((dd.$high>>31)*4294967296))>>0);f.nilCheck,f[5]=((dh.$low+((dh.$high>>31)*4294967296))>>0);f.nilCheck,f[6]=((dm.$low+((dm.$high>>31)*4294967296))>>0);f.nilCheck,f[7]=((dr.$low+((dr.$high>>31)*4294967296))>>0);f.nilCheck,f[8]=((dw.$low+((dw.$high>>31)*4294967296))>>0);f.nilCheck,f[9]=((ea.$low+((ea.$high>>31)*4294967296))>>0);};BD=function(f,g){var $ptr,f,g,h,i,j,k,l,m,n,o,p;h=CH.zero();i=CH.zero();j=CH.zero();k=CH.zero();l=$clone(h,AM);m=$clone(i,AM);n=$clone(j,AM);o=$clone(k,AM);p=0;BB(l,g);BB(m,l);p=1;while(true){if(!(p<2)){break;}BB(m,m);p=p+(1)>>0;}BA(m,g,m);BA(l,l,m);BB(n,l);BA(m,m,n);BB(n,m);p=1;while(true){if(!(p<5)){break;}BB(n,n);p=p+(1)>>0;}BA(m,n,m);BB(n,m);p=1;while(true){if(!(p<10)){break;}BB(n,n);p=p+(1)>>0;}BA(n,n,m);BB(o,n);p=1;while(true){if(!(p<20)){break;}BB(o,o);p=p+(1)>>0;}BA(n,o,n);BB(n,n);p=1;while(true){if(!(p<10)){break;}BB(n,n);p=p+(1)>>0;}BA(m,n,m);BB(n,m);p=1;while(true){if(!(p<50)){break;}BB(n,n);p=p+(1)>>0;}BA(n,n,m);BB(o,n);p=1;while(true){if(!(p<100)){break;}BB(o,o);p=p+(1)>>0;}BA(n,o,n);BB(n,n);p=1;while(true){if(!(p<50)){break;}BB(n,n);p=p+(1)>>0;}BA(m,n,m);BB(m,m);p=1;while(true){if(!(p<5)){break;}BB(m,m);p=p+(1)>>0;}BA(f,m,l);};BE=function(f,g){var $ptr,f,g,h,i,j,k,l,m,n;h=CH.zero();i=CH.zero();j=CH.zero();k=$clone(h,AM);l=$clone(i,AM);m=$clone(j,AM);n=0;BB(k,g);n=1;while(true){if(!(n<1)){break;}BB(k,k);n=n+(1)>>0;}BB(l,k);n=1;while(true){if(!(n<2)){break;}BB(l,l);n=n+(1)>>0;}BA(l,g,l);BA(k,k,l);BB(k,k);n=1;while(true){if(!(n<1)){break;}BB(k,k);n=n+(1)>>0;}BA(k,l,k);BB(l,k);n=1;while(true){if(!(n<5)){break;}BB(l,l);n=n+(1)>>0;}BA(k,l,k);BB(l,k);n=1;while(true){if(!(n<10)){break;}BB(l,l);n=n+(1)>>0;}BA(l,l,k);BB(m,l);n=1;while(true){if(!(n<20)){break;}BB(m,m);n=n+(1)>>0;}BA(l,m,l);BB(l,l);n=1;while(true){if(!(n<10)){break;}BB(l,l);n=n+(1)>>0;}BA(k,l,k);BB(l,k);n=1;while(true){if(!(n<50)){break;}BB(l,l);n=n+(1)>>0;}BA(l,l,k);BB(m,l);n=1;while(true){if(!(n<100)){break;}BB(m,m);n=n+(1)>>0;}BA(l,m,l);BB(l,l);n=1;while(true){if(!(n<50)){break;}BB(l,l);n=n+(1)>>0;}BA(k,l,k);BB(k,k);n=1;while(true){if(!(n<2)){break;}BB(k,k);n=n+(1)>>0;}BA(f,k,g);};AM.prototype.String=function(){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:f=this.$val;g="fieldElement{";h=f;i=0;case 1:if(!(i<10)){$s=2;continue;}j=i;if(j>0){g=g+(", ");}k=D.Sprintf("%d",new CM([new $Int32((f.nilCheck,((j<0||j>=f.length)?($throwRuntimeError("index out of range"),undefined):f[j])))]));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g=g+(k);i++;$s=1;continue;case 2:g=g+("}");$s=-1;return g;}return;}if($f===undefined){$f={$blk:AM.prototype.String};}$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;};$ptrType(AM).prototype.String=function(){return(new AM(this.$get())).String();};BF.ptr.prototype.Zero=function(){var $ptr,f;f=this;AN(f.X);AO(f.Y);AO(f.Z);};BF.prototype.Zero=function(){return this.$val.Zero();};BF.ptr.prototype.Double=function(f){var $ptr,f,g,h;g=this;h=CH.zero();BB(f.X,g.X);BB(f.Z,g.Y);BC(f.T,g.Z);AP(f.Y,g.X,g.Y);BB(h,f.Y);AP(f.Y,f.Z,f.X);AQ(f.Z,f.Z,f.X);AQ(f.X,h,f.Y);AQ(f.T,f.T,f.Z);};BF.prototype.Double=function(f){return this.$val.Double(f);};BF.ptr.prototype.ToBytes=function(f){var $ptr,f,g,h,i,j,k,l,m;g=this;h=CH.zero();i=CH.zero();j=CH.zero();k=$clone(h,AM);l=$clone(i,AM);m=$clone(j,AM);BD(k,g.Z);BA(l,g.X,k);BA(m,g.Y,k);AW(f,m);f.nilCheck,f[31]=(((f.nilCheck,f[31])^((AX(l)<<7<<24>>>24)))<<24>>>24);};BF.prototype.ToBytes=function(f){return this.$val.ToBytes(f);};BG.ptr.prototype.Zero=function(){var $ptr,f;f=this;AN(f.X);AO(f.Y);AO(f.Z);AN(f.T);};BG.prototype.Zero=function(){return this.$val.Zero();};BG.ptr.prototype.Neg=function(f){var $ptr,f,g;g=this;AZ(g.X,f.X);AR(g.Y,f.Y);AR(g.Z,f.Z);AZ(g.T,f.T);};BG.prototype.Neg=function(f){return this.$val.Neg(f);};BG.ptr.prototype.Double=function(f){var $ptr,f,g,h;g=this;h=new BF.ptr(CH.zero(),CH.zero(),CH.zero());g.ToProjective(h);h.Double(f);};BG.prototype.Double=function(f){return this.$val.Double(f);};BG.ptr.prototype.ToCached=function(f){var $ptr,f,g;g=this;AP(f.yPlusX,g.Y,g.X);AQ(f.yMinusX,g.Y,g.X);AR(f.Z,g.Z);BA(f.T2d,g.T,V);};BG.prototype.ToCached=function(f){return this.$val.ToCached(f);};BG.ptr.prototype.ToProjective=function(f){var $ptr,f,g;g=this;AR(f.X,g.X);AR(f.Y,g.Y);AR(f.Z,g.Z);};BG.prototype.ToProjective=function(f){return this.$val.ToProjective(f);};BG.ptr.prototype.ToBytes=function(f){var $ptr,f,g,h,i,j,k,l,m;g=this;h=CH.zero();i=CH.zero();j=CH.zero();k=$clone(h,AM);l=$clone(i,AM);m=$clone(j,AM);BD(k,g.Z);BA(l,g.X,k);BA(m,g.Y,k);AW(f,m);f.nilCheck,f[31]=(((f.nilCheck,f[31])^((AX(l)<<7<<24>>>24)))<<24>>>24);};BG.prototype.ToBytes=function(f){return this.$val.ToBytes(f);};BG.ptr.prototype.FromBytes=function(f){var $ptr,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;g=this;h=CH.zero();i=CH.zero();j=CH.zero();k=CH.zero();l=CH.zero();m=$clone(h,AM);n=$clone(i,AM);o=$clone(j,AM);p=$clone(k,AM);q=$clone(l,AM);if(!((f.$length===32))){return false;}AV(g.Y,f);AO(g.Z);BB(m,g.Y);BA(n,m,U);AQ(m,m,g.Z);AP(n,n,g.Z);BB(o,n);BA(o,o,n);BB(g.X,o);BA(g.X,g.X,n);BA(g.X,g.X,m);BE(g.X,g.X);BA(g.X,g.X,o);BA(g.X,g.X,m);r=CK.zero();s=CK.zero();t=$clone(r,CK);u=$clone(s,CK);BB(p,g.X);BA(p,p,n);AQ(q,p,m);if(AY(q)===1){AP(q,p,m);if(AY(q)===1){return false;}BA(g.X,g.X,W);AW(t,g.X);v=t;w=0;while(true){if(!(w<32)){break;}x=w;y=((w<0||w>=v.length)?($throwRuntimeError("index out of range"),undefined):v[w]);(z=31-x>>0,((z<0||z>=u.length)?($throwRuntimeError("index out of range"),undefined):u[z]=y));w++;}}if(!((AX(g.X)===(((31>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+31])>>>7<<24>>>24))))){AZ(g.X,g.X);}BA(g.T,g.X,g.Y);return true;};BG.prototype.FromBytes=function(f){return this.$val.FromBytes(f);};BG.ptr.prototype.String=function(){var $ptr,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;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=this;g=new CN(f.X).String();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=new CN(f.Y).String();$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=new CN(f.Z).String();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=new CN(f.T).String();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=-1;return"extendedGroupElement{\n\t"+g+",\n\t"+h+",\n\t"+i+",\n\t"+j+",\n}";}return;}if($f===undefined){$f={$blk:BG.ptr.prototype.String};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BG.prototype.String=function(){return this.$val.String();};BH.ptr.prototype.ToProjective=function(f){var $ptr,f,g;g=this;BA(f.X,g.X,g.T);BA(f.Y,g.Y,g.Z);BA(f.Z,g.Z,g.T);};BH.prototype.ToProjective=function(f){return this.$val.ToProjective(f);};BH.ptr.prototype.ToExtended=function(f){var $ptr,f,g;g=this;BA(f.X,g.X,g.T);BA(f.Y,g.Y,g.Z);BA(f.Z,g.Z,g.T);BA(f.T,g.X,g.Y);};BH.prototype.ToExtended=function(f){return this.$val.ToExtended(f);};BI.ptr.prototype.Zero=function(){var $ptr,f;f=this;AO(f.yPlusX);AO(f.yMinusX);AN(f.xy2d);};BI.prototype.Zero=function(){return this.$val.Zero();};BH.ptr.prototype.Add=function(f,g){var $ptr,f,g,h,i;h=this;i=CH.zero();AP(h.X,f.Y,f.X);AQ(h.Y,f.Y,f.X);BA(h.Z,h.X,g.yPlusX);BA(h.Y,h.Y,g.yMinusX);BA(h.T,g.T2d,f.T);BA(h.X,f.Z,g.Z);AP(i,h.X,h.X);AQ(h.X,h.Z,h.Y);AP(h.Y,h.Z,h.Y);AP(h.Z,i,h.T);AQ(h.T,i,h.T);};BH.prototype.Add=function(f,g){return this.$val.Add(f,g);};BH.ptr.prototype.Sub=function(f,g){var $ptr,f,g,h,i;h=this;i=CH.zero();AP(h.X,f.Y,f.X);AQ(h.Y,f.Y,f.X);BA(h.Z,h.X,g.yMinusX);BA(h.Y,h.Y,g.yPlusX);BA(h.T,g.T2d,f.T);BA(h.X,f.Z,g.Z);AP(i,h.X,h.X);AQ(h.X,h.Z,h.Y);AP(h.Y,h.Z,h.Y);AQ(h.Z,i,h.T);AP(h.T,i,h.T);};BH.prototype.Sub=function(f,g){return this.$val.Sub(f,g);};BH.ptr.prototype.MixedAdd=function(f,g){var $ptr,f,g,h,i;h=this;i=CH.zero();AP(h.X,f.Y,f.X);AQ(h.Y,f.Y,f.X);BA(h.Z,h.X,g.yPlusX);BA(h.Y,h.Y,g.yMinusX);BA(h.T,g.xy2d,f.T);AP(i,f.Z,f.Z);AQ(h.X,h.Z,h.Y);AP(h.Y,h.Z,h.Y);AP(h.Z,i,h.T);AQ(h.T,i,h.T);};BH.prototype.MixedAdd=function(f,g){return this.$val.MixedAdd(f,g);};BH.ptr.prototype.MixedSub=function(f,g){var $ptr,f,g,h,i;h=this;i=CH.zero();AP(h.X,f.Y,f.X);AQ(h.Y,f.Y,f.X);BA(h.Z,h.X,g.yMinusX);BA(h.Y,h.Y,g.yPlusX);BA(h.T,g.xy2d,f.T);AP(i,f.Z,f.Z);AQ(h.X,h.Z,h.Y);AP(h.Y,h.Z,h.Y);AQ(h.Z,i,h.T);AP(h.T,i,h.T);};BH.prototype.MixedSub=function(f,g){return this.$val.MixedSub(f,g);};BI.ptr.prototype.CMove=function(f,g){var $ptr,f,g,h;h=this;AS(h.yPlusX,f.yPlusX,g);AS(h.yMinusX,f.yMinusX,g);AS(h.xy2d,f.xy2d,g);};BI.prototype.CMove=function(f,g){return this.$val.CMove(f,g);};BI.ptr.prototype.Neg=function(f){var $ptr,f,g;g=this;AR(g.yPlusX,f.yMinusX);AR(g.yMinusX,f.yPlusX);AZ(g.xy2d,f.xy2d);};BI.prototype.Neg=function(f){return this.$val.Neg(f);};BJ.ptr.prototype.Zero=function(){var $ptr,f;f=this;AO(f.yPlusX);AO(f.yMinusX);AO(f.Z);AN(f.T2d);};BJ.prototype.Zero=function(){return this.$val.Zero();};BJ.ptr.prototype.CMove=function(f,g){var $ptr,f,g,h;h=this;AS(h.yPlusX,f.yPlusX,g);AS(h.yMinusX,f.yMinusX,g);AS(h.Z,f.Z,g);AS(h.T2d,f.T2d,g);};BJ.prototype.CMove=function(f,g){return this.$val.CMove(f,g);};BJ.ptr.prototype.Neg=function(f){var $ptr,f,g;g=this;AR(g.yPlusX,f.yMinusX);AR(g.yMinusX,f.yPlusX);AR(g.Z,f.Z);AZ(g.T2d,f.T2d);};BJ.prototype.Neg=function(f){return this.$val.Neg(f);};BM=function(f,g){var $ptr,f,g,h;h=(((f^g)>>0)>>>0);h=h-(1)>>>0;return((h>>>31>>>0)>>0);};BN=function(f){var $ptr,f;return((f>>31>>0))&1;};BO=function(f,g,h){var $ptr,f,g,h,i,j,k,l,m;i=new BI.ptr(CH.zero(),CH.zero(),CH.zero());j=BN(h);k=h-(((((-j)&h))<<1>>0))>>0;f.Zero();l=0;while(true){if(!(l<8)){break;}f.CMove((m=((g<0||g>=AA.length)?($throwRuntimeError("index out of range"),undefined):AA[g]),((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l])),BM(k,l+1>>0));l=l+(1)>>0;}i.Neg(f);f.CMove(i,j);};BP=function(f,g){var $ptr,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;h=CQ.zero();i=g;j=0;while(true){if(!(j<32)){break;}k=j;l=(i.nilCheck,((j<0||j>=i.length)?($throwRuntimeError("index out of range"),undefined):i[j]));(m=$imul(2,k),((m<0||m>=h.length)?($throwRuntimeError("index out of range"),undefined):h[m]=(((l&15)>>>0)<<24>>24)));(n=($imul(2,k))+1>>0,((n<0||n>=h.length)?($throwRuntimeError("index out of range"),undefined):h[n]=(((((l>>>4<<24>>>24))&15)>>>0)<<24>>24)));j++;}o=0;p=0;while(true){if(!(p<63)){break;}((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p]=(((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p])+(o)<<24>>24));o=((((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p])+8<<24>>24))>>4<<24>>24;((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p]=(((p<0||p>=h.length)?($throwRuntimeError("index out of range"),undefined):h[p])-((o<<4<<24>>24))<<24>>24));p=p+(1)>>0;}h[63]=(h[63]+(o)<<24>>24);f.Zero();q=new BI.ptr(CH.zero(),CH.zero(),CH.zero());r=new BH.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());s=1;while(true){if(!(s<64)){break;}BO(q,(t=s/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero")),(((s<0||s>=h.length)?($throwRuntimeError("index out of range"),undefined):h[s])>>0));r.MixedAdd(f,q);r.ToExtended(f);s=s+(2)>>0;}u=new BF.ptr(CH.zero(),CH.zero(),CH.zero());f.Double(r);r.ToProjective(u);u.Double(r);r.ToProjective(u);u.Double(r);r.ToProjective(u);u.Double(r);r.ToExtended(f);v=0;while(true){if(!(v<64)){break;}BO(q,(w=v/2,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero")),(((v<0||v>=h.length)?($throwRuntimeError("index out of range"),undefined):h[v])>>0));r.MixedAdd(f,q);r.ToExtended(f);v=v+(2)>>0;}};BQ=function(f,g,h){var $ptr,f,g,h,i,j,k,l;i=BN(h);j=h-(((((-i)&h))<<1>>0))>>0;f.Zero();k=0;while(true){if(!(k<8)){break;}f.CMove((g.nilCheck,((k<0||k>=g.length)?($throwRuntimeError("index out of range"),undefined):g[k])),BM(j,k+1>>0));k=k+(1)>>0;}l=new BJ.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());l.Neg(f);f.CMove(l,i);};BR=function(f,g,h){var $ptr,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;i=new BH.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());j=new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());k=new BF.ptr(CH.zero(),CH.zero(),CH.zero());l=new BJ.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());m=0;n=CQ.zero();o=g;p=0;while(true){if(!(p<32)){break;}q=p;r=(o.nilCheck,((p<0||p>=o.length)?($throwRuntimeError("index out of range"),undefined):o[p]));(s=$imul(2,q),((s<0||s>=n.length)?($throwRuntimeError("index out of range"),undefined):n[s]=(((r&15)>>>0)<<24>>24)));(t=($imul(2,q))+1>>0,((t<0||t>=n.length)?($throwRuntimeError("index out of range"),undefined):n[t]=(((((r>>>4<<24>>>24))&15)>>>0)<<24>>24)));p++;}u=0;v=0;while(true){if(!(v<63)){break;}((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v]=(((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v])+(u)<<24>>24));u=((((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v])+8<<24>>24))>>4<<24>>24;((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v]=(((v<0||v>=n.length)?($throwRuntimeError("index out of range"),undefined):n[v])-((u<<4<<24>>24))<<24>>24));v=v+(1)>>0;}n[63]=(n[63]+(u)<<24>>24);w=CP.zero();h.ToCached(w[0]);x=0;while(true){if(!(x<7)){break;}i.Add(h,((x<0||x>=w.length)?($throwRuntimeError("index out of range"),undefined):w[x]));i.ToExtended(j);j.ToCached((y=x+1>>0,((y<0||y>=w.length)?($throwRuntimeError("index out of range"),undefined):w[y])));x=x+(1)>>0;}j.Zero();BQ(l,w,(n[63]>>0));i.Add(j,l);m=62;while(true){if(!(m>=0)){break;}i.ToProjective(k);k.Double(i);i.ToProjective(k);k.Double(i);i.ToProjective(k);k.Double(i);i.ToProjective(k);k.Double(i);i.ToExtended(j);BQ(l,w,(((m<0||m>=n.length)?($throwRuntimeError("index out of range"),undefined):n[m])>>0));i.Add(j,l);m=m-(1)>>0;}i.ToExtended(f);};BT.ptr.prototype.String=function(){var $ptr,f,g;f=this;g=CK.zero();f.ge.ToBytes(g);return F.EncodeToString(new CJ(g));};BT.prototype.String=function(){return this.$val.String();};BT.ptr.prototype.MarshalSize=function(){var $ptr,f;f=this;return 32;};BT.prototype.MarshalSize=function(){return this.$val.MarshalSize();};BT.ptr.prototype.MarshalBinary=function(){var $ptr,f,g;f=this;g=CK.zero();f.ge.ToBytes(g);return[new CJ(g),$ifaceNil];};BT.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BT.ptr.prototype.UnmarshalBinary=function(f){var $ptr,f,g;g=this;if(!g.ge.FromBytes(f)){return G.New("invalid Ed25519 curve point");}return $ifaceNil;};BT.prototype.UnmarshalBinary=function(f){return this.$val.UnmarshalBinary(f);};BT.ptr.prototype.MarshalTo=function(f){var $ptr,f,g,h,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=J.PointMarshalTo(g,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.MarshalTo};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.MarshalTo=function(f){return this.$val.MarshalTo(f);};BT.ptr.prototype.UnmarshalFrom=function(f){var $ptr,f,g,h,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=J.PointUnmarshalFrom(g,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnmarshalFrom};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnmarshalFrom=function(f){return this.$val.UnmarshalFrom(f);};BT.ptr.prototype.Equal=function(f){var $ptr,f,g,h,i,j,k,l,m,n;g=this;h=CK.zero();i=CK.zero();j=$clone(h,CK);k=$clone(i,CK);g.ge.ToBytes(j);$assertType(f,CR).ge.ToBytes(k);l=j;m=0;while(true){if(!(m<32)){break;}n=m;if(!((((n<0||n>=j.length)?($throwRuntimeError("index out of range"),undefined):j[n])===((n<0||n>=k.length)?($throwRuntimeError("index out of range"),undefined):k[n])))){return false;}m++;}return true;};BT.prototype.Equal=function(f){return this.$val.Equal(f);};BT.ptr.prototype.Set=function(f){var $ptr,f,g;g=this;BG.copy(g.ge,$assertType(f,CR).ge);return g;};BT.prototype.Set=function(f){return this.$val.Set(f);};BT.ptr.prototype.Clone=function(){var $ptr,f;f=this;return new BT.ptr($clone(f.ge,BG));};BT.prototype.Clone=function(){return this.$val.Clone();};BT.ptr.prototype.Null=function(){var $ptr,f;f=this;f.ge.Zero();return f;};BT.prototype.Null=function(){return this.$val.Null();};BT.ptr.prototype.Base=function(){var $ptr,f;f=this;BG.copy(f.ge,Y);return f;};BT.prototype.Base=function(){return this.$val.Base();};BT.ptr.prototype.PickLen=function(){var $ptr,f;f=this;return 29;};BT.prototype.PickLen=function(){return this.$val.PickLen();};BT.ptr.prototype.Pick=function(f,g){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:h=this;i=h.PickLen();if(i>f.$length){i=f.$length;}case 1:j=CK.zero();$r=g.XORKeyStream(new CJ(j),new CJ(j));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(f===CJ.nil)){j[0]=(i<<24>>>24);$copySlice($subslice(new CJ(j),1,(1+i>>0)),f);}if(!h.ge.FromBytes(new CJ(j))){$s=1;continue;}if(f===CJ.nil){h.Mul(h,R);if(h.Equal(T)){$s=1;continue;}$s=-1;return[h,$subslice(f,i)];}k=new BT.ptr(new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero()));k.Mul(h,Q);if(k.Equal(T)){$s=-1;return[h,$subslice(f,i)];}$s=1;continue;case 2:$s=-1;return[$ifaceNil,CJ.nil];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.Pick};}$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;};BT.prototype.Pick=function(f,g){return this.$val.Pick(f,g);};BT.ptr.prototype.Data=function(){var $ptr,f,g,h;f=this;g=CK.zero();f.ge.ToBytes(g);h=(g[0]>>0);if(h>f.PickLen()){return[CJ.nil,G.New("invalid embedded data length")];}return[$subslice(new CJ(g),1,(1+h>>0)),$ifaceNil];};BT.prototype.Data=function(){return this.$val.Data();};BT.ptr.prototype.Add=function(f,g){var $ptr,f,g,h,i,j,k,l;h=this;i=$assertType(f,CR);j=$assertType(g,CR);k=new BJ.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());l=new BH.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());j.ge.ToCached(k);l.Add(i.ge,k);l.ToExtended(h.ge);return h;};BT.prototype.Add=function(f,g){return this.$val.Add(f,g);};BT.ptr.prototype.Sub=function(f,g){var $ptr,f,g,h,i,j,k,l;h=this;i=$assertType(f,CR);j=$assertType(g,CR);k=new BJ.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());l=new BH.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero());j.ge.ToCached(k);l.Sub(i.ge,k);l.ToExtended(h.ge);return h;};BT.prototype.Sub=function(f,g){return this.$val.Sub(f,g);};BT.ptr.prototype.Neg=function(f){var $ptr,f,g;g=this;g.ge.Neg($assertType(f,CR).ge);return g;};BT.prototype.Neg=function(f){return this.$val.Neg(f);};BT.ptr.prototype.Mul=function(f,g){var $ptr,f,g,h,i,j,k,l,m,n,o;h=this;i=$assertType(g,CS).V.Bytes();j=i.$length-1>>0;k=CK.zero();l=i;m=0;while(true){if(!(m<l.$length)){break;}n=m;(o=j-n>>0,((o<0||o>=k.length)?($throwRuntimeError("index out of range"),undefined):k[o]=((n<0||n>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+n])));m++;}if($interfaceIsEqual(f,$ifaceNil)){BP(h.ge,k);}else{BR(h.ge,k,$assertType(f,CR).ge);}return h;};BT.prototype.Mul=function(f,g){return this.$val.Mul(f,g);};BU.ptr.prototype.PrimeOrder=function(){var $ptr,f;f=this;return true;};BU.prototype.PrimeOrder=function(){return this.$val.PrimeOrder();};BU.ptr.prototype.String=function(){var $ptr,f;f=this;return"Ed25519";};BU.prototype.String=function(){return this.$val.String();};BU.ptr.prototype.ScalarLen=function(){var $ptr,f;f=this;return 32;};BU.prototype.ScalarLen=function(){return this.$val.ScalarLen();};BU.ptr.prototype.Scalar=function(){var $ptr,f,g,h,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;g=B.NewInt64(new $Int64(0,0),Q.V);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;h.BO=true;$s=-1;return h;}return;}if($f===undefined){$f={$blk:BU.ptr.prototype.Scalar};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};BU.prototype.Scalar=function(){return this.$val.Scalar();};BU.ptr.prototype.PointLen=function(){var $ptr,f;f=this;return 32;};BU.prototype.PointLen=function(){return this.$val.PointLen();};BU.ptr.prototype.Point=function(){var $ptr,f,g;f=this;g=new BT.ptr(new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero()));return g;};BU.prototype.Point=function(){return this.$val.Point();};BX.ptr.prototype.Hash=function(){var $ptr,f;f=this;return K.New();};BX.prototype.Hash=function(){return this.$val.Hash();};BX.ptr.prototype.Cipher=function(f,g){var $ptr,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;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=this;i=N.NewShakeCipher128(f,g);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.Cipher};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BX.prototype.Cipher=function(f,g){return this.$val.Cipher(f,g);};BX.ptr.prototype.Read=function(f,g){var $ptr,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;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=this;i=I.SuiteRead(h,f,new CM([g]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.Read};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BX.prototype.Read=function(f,g){return this.$val.Read(f,g);};BX.ptr.prototype.Write=function(f,g){var $ptr,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;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=this;i=I.SuiteWrite(h,f,new CM([g]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.Write};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BX.prototype.Write=function(f,g){return this.$val.Write(f,g);};BX.ptr.prototype.New=function(f){var $ptr,f,g,h,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=I.SuiteNew(g,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.New};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};BX.prototype.New=function(f){return this.$val.New(f);};BX.ptr.prototype.NewKey=function(f){var $ptr,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;f=$f.f;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:g=this;if($interfaceIsEqual(f,$ifaceNil)){f=O.Stream;}h=O.NonZeroBytes(32,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=C.Sum512(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone(j,CV);k[0]=((k[0]&(248))>>>0);k[31]=((k[31]&(63))>>>0);k[31]=((k[31]|(64))>>>0);l=g.Curve.Scalar();$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l.SetBytes($subslice(new CJ(k),0,32));$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$s=-1;return n;}return;}if($f===undefined){$f={$blk:BX.ptr.prototype.NewKey};}$f.$ptr=$ptr;$f.f=f;$f.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;};BX.prototype.NewKey=function(f){return this.$val.NewKey(f);};BY=function(f){var $ptr,f,g;g=new BX.ptr(new BU.ptr());return g;};$pkg.NewAES128SHA256Ed25519=BY;CN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CY.methods=[{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[],false)},{prop:"Double",name:"Double",pkg:"",typ:$funcType([CW],[],false)},{prop:"ToBytes",name:"ToBytes",pkg:"",typ:$funcType([CX],[],false)}];CZ.methods=[{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([CZ],[],false)},{prop:"Double",name:"Double",pkg:"",typ:$funcType([CW],[],false)},{prop:"ToCached",name:"ToCached",pkg:"",typ:$funcType([DA],[],false)},{prop:"ToProjective",name:"ToProjective",pkg:"",typ:$funcType([CY],[],false)},{prop:"ToBytes",name:"ToBytes",pkg:"",typ:$funcType([CX],[],false)},{prop:"FromBytes",name:"FromBytes",pkg:"",typ:$funcType([CJ],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CW.methods=[{prop:"ToProjective",name:"ToProjective",pkg:"",typ:$funcType([CY],[],false)},{prop:"ToExtended",name:"ToExtended",pkg:"",typ:$funcType([CZ],[],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([CZ,DA],[],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([CZ,DA],[],false)},{prop:"MixedAdd",name:"MixedAdd",pkg:"",typ:$funcType([CZ,DB],[],false)},{prop:"MixedSub",name:"MixedSub",pkg:"",typ:$funcType([CZ,DB],[],false)}];DB.methods=[{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[],false)},{prop:"CMove",name:"CMove",pkg:"",typ:$funcType([DB,$Int32],[],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([DB],[],false)}];DA.methods=[{prop:"Zero",name:"Zero",pkg:"",typ:$funcType([],[],false)},{prop:"CMove",name:"CMove",pkg:"",typ:$funcType([DA,$Int32],[],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([DA],[],false)}];CR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalSize",name:"MarshalSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[CJ,$error],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([CJ],[$error],false)},{prop:"MarshalTo",name:"MarshalTo",pkg:"",typ:$funcType([H.Writer],[$Int,$error],false)},{prop:"UnmarshalFrom",name:"UnmarshalFrom",pkg:"",typ:$funcType([H.Reader],[$Int,$error],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([I.Point],[$Bool],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([I.Point],[I.Point],false)},{prop:"Clone",name:"Clone",pkg:"",typ:$funcType([],[I.Point],false)},{prop:"Null",name:"Null",pkg:"",typ:$funcType([],[I.Point],false)},{prop:"Base",name:"Base",pkg:"",typ:$funcType([],[I.Point],false)},{prop:"PickLen",name:"PickLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Pick",name:"Pick",pkg:"",typ:$funcType([CJ,E.Stream],[I.Point,CJ],false)},{prop:"Data",name:"Data",pkg:"",typ:$funcType([],[CJ,$error],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([I.Point,I.Point],[I.Point],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([I.Point,I.Point],[I.Point],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([I.Point],[I.Point],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([I.Point,I.Scalar],[I.Point],false)}];DC.methods=[{prop:"PrimeOrder",name:"PrimeOrder",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"ScalarLen",name:"ScalarLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Scalar",name:"Scalar",pkg:"",typ:$funcType([],[I.Scalar],false)},{prop:"PointLen",name:"PointLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Point",name:"Point",pkg:"",typ:$funcType([],[I.Point],false)}];DD.methods=[{prop:"Hash",name:"Hash",pkg:"",typ:$funcType([],[L.Hash],false)},{prop:"Cipher",name:"Cipher",pkg:"",typ:$funcType([CJ,CM],[I.Cipher],true)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([H.Reader,CM],[$error],true)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([H.Writer,CM],[$error],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([M.Type],[$emptyInterface],false)},{prop:"NewKey",name:"NewKey",pkg:"",typ:$funcType([E.Stream],[I.Scalar],false)}];AM.init($Int32,10);BF.init("",[{prop:"X",name:"X",exported:true,typ:AM,tag:""},{prop:"Y",name:"Y",exported:true,typ:AM,tag:""},{prop:"Z",name:"Z",exported:true,typ:AM,tag:""}]);BG.init("",[{prop:"X",name:"X",exported:true,typ:AM,tag:""},{prop:"Y",name:"Y",exported:true,typ:AM,tag:""},{prop:"Z",name:"Z",exported:true,typ:AM,tag:""},{prop:"T",name:"T",exported:true,typ:AM,tag:""}]);BH.init("",[{prop:"X",name:"X",exported:true,typ:AM,tag:""},{prop:"Y",name:"Y",exported:true,typ:AM,tag:""},{prop:"Z",name:"Z",exported:true,typ:AM,tag:""},{prop:"T",name:"T",exported:true,typ:AM,tag:""}]);BI.init("gopkg.in/dedis/crypto.v0/ed25519",[{prop:"yPlusX",name:"yPlusX",exported:false,typ:AM,tag:""},{prop:"yMinusX",name:"yMinusX",exported:false,typ:AM,tag:""},{prop:"xy2d",name:"xy2d",exported:false,typ:AM,tag:""}]);BJ.init("gopkg.in/dedis/crypto.v0/ed25519",[{prop:"yPlusX",name:"yPlusX",exported:false,typ:AM,tag:""},{prop:"yMinusX",name:"yMinusX",exported:false,typ:AM,tag:""},{prop:"Z",name:"Z",exported:true,typ:AM,tag:""},{prop:"T2d",name:"T2d",exported:true,typ:AM,tag:""}]);BT.init("gopkg.in/dedis/crypto.v0/ed25519",[{prop:"ge",name:"ge",exported:false,typ:BG,tag:""}]);BU.init("",[]);BX.init("",[{prop:"Curve",name:"",exported:true,typ:BU,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=K.$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=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$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=B.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=new A.Int.ptr(false,A.nat.nil).SetString("57896044618658097711785492504343953926634992332820282019728792003956564819949",10);$s=16;case 16:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;P=a[0];d=new B.Int.ptr(new A.Int.ptr(false,A.nat.nil),CG.nil,false).SetString("7237005577332262213973186563042994240857116359379907606001950938285454250989","",10);$s=17;case 17:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;Q=c[0];e=B.NewInt64(new $Int64(0,8),Q.V);$s=18;case 18:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}R=e;S=new A.Int.ptr(false,A.nat.nil).Mul(Q.V,R.V);T=new BT.ptr(new BG.ptr(CH.zero(),CH.zero(),CH.zero(),CH.zero())).Null();U=$toNativeArray($kindInt32,[-10913610,13857413,-15372611,6949391,114729,-8787816,-6275908,-3247719,-18696448,-12055116]);V=$toNativeArray($kindInt32,[-21827239,-5839606,-30745221,13898782,229458,15978800,-12551817,-6495438,29715968,9444199]);W=$toNativeArray($kindInt32,[-32595792,-7943725,9377950,3500415,12389472,-272473,-25146209,-2005654,326686,11406482]);Y=new BG.ptr($toNativeArray($kindInt32,[25485296,5318399,8791791,-8299916,-14349720,6939349,-3324311,-7717049,7287234,-6577708]),$toNativeArray($kindInt32,[-758052,-1832720,13046421,-4857925,6576754,14371947,-13139572,6845540,-2198883,-4003719]),$toNativeArray($kindInt32,[-947565,6097708,-469190,10704810,-8556274,-15589498,-16424464,-16608899,14028613,-5004649]),$toNativeArray($kindInt32,[6966464,-2456167,7033433,6781840,28785542,12262365,-2659449,13959020,-21013759,-5262166]));AA=$toNativeArray($kindArray,[$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[25967493,-14356035,29566456,3660896,-12694345,4014787,27544626,-11754271,-6079156,2047605]),$toNativeArray($kindInt32,[-12545711,934262,-2722910,3049990,-727428,9406986,12720692,5043384,19500929,-15469378]),$toNativeArray($kindInt32,[-8738181,4489570,9688441,-14785194,10184609,-12363380,29287919,11864899,-24514362,-4438546])),new BI.ptr($toNativeArray($kindInt32,[-12815894,-12976347,-21581243,11784320,-25355658,-2750717,-11717903,-3814571,-358445,-10211303]),$toNativeArray($kindInt32,[-21703237,6903825,27185491,6451973,-29577724,-9554005,-15616551,11189268,-26829678,-5319081]),$toNativeArray($kindInt32,[26966642,11152617,32442495,15396054,14353839,-12752335,-3128826,-9541118,-15472047,-4166697])),new BI.ptr($toNativeArray($kindInt32,[15636291,-9688557,24204773,-7912398,616977,-16685262,27787600,-14772189,28944400,-1550024]),$toNativeArray($kindInt32,[16568933,4717097,-11556148,-1102322,15682896,-11807043,16354577,-11775962,7689662,11199574]),$toNativeArray($kindInt32,[30464156,-5976125,-11779434,-15670865,23220365,15915852,7512774,10017326,-17749093,-9920357])),new BI.ptr($toNativeArray($kindInt32,[-17036878,13921892,10945806,-6033431,27105052,-16084379,-28926210,15006023,3284568,-6276540]),$toNativeArray($kindInt32,[23599295,-8306047,-11193664,-7687416,13236774,10506355,7464579,9656445,13059162,10374397]),$toNativeArray($kindInt32,[7798556,16710257,3033922,2874086,28997861,2835604,32406664,-3839045,-641708,-101325])),new BI.ptr($toNativeArray($kindInt32,[10861363,11473154,27284546,1981175,-30064349,12577861,32867885,14515107,-15438304,10819380]),$toNativeArray($kindInt32,[4708026,6336745,20377586,9066809,-11272109,6594696,-25653668,12483688,-12668491,5581306]),$toNativeArray($kindInt32,[19563160,16186464,-29386857,4097519,10237984,-4348115,28542350,13850243,-23678021,-15815942])),new BI.ptr($toNativeArray($kindInt32,[-15371964,-12862754,32573250,4720197,-26436522,5875511,-19188627,-15224819,-9818940,-12085777]),$toNativeArray($kindInt32,[-8549212,109983,15149363,2178705,22900618,4543417,3044240,-15689887,1762328,14866737]),$toNativeArray($kindInt32,[-18199695,-15951423,-10473290,1707278,-17185920,3916101,-28236412,3959421,27914454,4383652])),new BI.ptr($toNativeArray($kindInt32,[5153746,9909285,1723747,-2777874,30523605,5516873,19480852,5230134,-23952439,-15175766]),$toNativeArray($kindInt32,[-30269007,-3463509,7665486,10083793,28475525,1649722,20654025,16520125,30598449,7715701]),$toNativeArray($kindInt32,[28881845,14381568,9657904,3680757,-20181635,7843316,-31400660,1370708,29794553,-1409300])),new BI.ptr($toNativeArray($kindInt32,[14499471,-2729599,-33191113,-4254652,28494862,14271267,30290735,10876454,-33154098,2381726]),$toNativeArray($kindInt32,[-7195431,-2655363,-14730155,462251,-27724326,3941372,-6236617,3696005,-32300832,15351955]),$toNativeArray($kindInt32,[27431194,8222322,16448760,-3907995,-18707002,11938355,-32961401,-2970515,29551813,10109425]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-13657040,-13155431,-31283750,11777098,21447386,6519384,-2378284,-1627556,10092783,-4764171]),$toNativeArray($kindInt32,[27939166,14210322,4677035,16277044,-22964462,-12398139,-32508754,12005538,-17810127,12803510]),$toNativeArray($kindInt32,[17228999,-15661624,-1233527,300140,-1224870,-11714777,30364213,-9038194,18016357,4397660])),new BI.ptr($toNativeArray($kindInt32,[-10958843,-7690207,4776341,-14954238,27850028,-15602212,-26619106,14544525,-17477504,982639]),$toNativeArray($kindInt32,[29253598,15796703,-2863982,-9908884,10057023,3163536,7332899,-4120128,-21047696,9934963]),$toNativeArray($kindInt32,[5793303,16271923,-24131614,-10116404,29188560,1206517,-14747930,4559895,-30123922,-10897950])),new BI.ptr($toNativeArray($kindInt32,[-27643952,-11493006,16282657,-11036493,28414021,-15012264,24191034,4541697,-13338309,5500568]),$toNativeArray($kindInt32,[12650548,-1497113,9052871,11355358,-17680037,-8400164,-17430592,12264343,10874051,13524335]),$toNativeArray($kindInt32,[25556948,-3045990,714651,2510400,23394682,-10415330,33119038,5080568,-22528059,5376628])),new BI.ptr($toNativeArray($kindInt32,[-26088264,-4011052,-17013699,-3537628,-6726793,1920897,-22321305,-9447443,4535768,1569007]),$toNativeArray($kindInt32,[-2255422,14606630,-21692440,-8039818,28430649,8775819,-30494562,3044290,31848280,12543772]),$toNativeArray($kindInt32,[-22028579,2943893,-31857513,6777306,13784462,-4292203,-27377195,-2062731,7718482,14474653])),new BI.ptr($toNativeArray($kindInt32,[2385315,2454213,-22631320,46603,-4437935,-15680415,656965,-7236665,24316168,-5253567]),$toNativeArray($kindInt32,[13741529,10911568,-33233417,-8603737,-20177830,-1033297,33040651,-13424532,-20729456,8321686]),$toNativeArray($kindInt32,[21060490,-2212744,15712757,-4336099,1639040,10656336,23845965,-11874838,-9984458,608372])),new BI.ptr($toNativeArray($kindInt32,[-13672732,-15087586,-10889693,-7557059,-6036909,11305547,1123968,-6780577,27229399,23887]),$toNativeArray($kindInt32,[-23244140,-294205,-11744728,14712571,-29465699,-2029617,12797024,-6440308,-1633405,16678954]),$toNativeArray($kindInt32,[-29500620,4770662,-16054387,14001338,7830047,9564805,-1508144,-4795045,-17169265,4904953])),new BI.ptr($toNativeArray($kindInt32,[24059557,14617003,19037157,-15039908,19766093,-14906429,5169211,16191880,2128236,-4326833]),$toNativeArray($kindInt32,[-16981152,4124966,-8540610,-10653797,30336522,-14105247,-29806336,916033,-6882542,-2986532]),$toNativeArray($kindInt32,[-22630907,12419372,-7134229,-7473371,-16478904,16739175,285431,2763829,15736322,4143876])),new BI.ptr($toNativeArray($kindInt32,[2379352,11839345,-4110402,-5988665,11274298,794957,212801,-14594663,23527084,-16458268]),$toNativeArray($kindInt32,[33431127,-11130478,-17838966,-15626900,8909499,8376530,-32625340,4087881,-15188911,-14416214]),$toNativeArray($kindInt32,[1767683,7197987,-13205226,-2022635,-13091350,448826,5799055,4357868,-4774191,-16323038]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[6721966,13833823,-23523388,-1551314,26354293,-11863321,23365147,-3949732,7390890,2759800]),$toNativeArray($kindInt32,[4409041,2052381,23373853,10530217,7676779,-12885954,21302353,-4264057,1244380,-12919645]),$toNativeArray($kindInt32,[-4421239,7169619,4982368,-2957590,30256825,-2777540,14086413,9208236,15886429,16489664])),new BI.ptr($toNativeArray($kindInt32,[1996075,10375649,14346367,13311202,-6874135,-16438411,-13693198,398369,-30606455,-712933]),$toNativeArray($kindInt32,[-25307465,9795880,-2777414,14878809,-33531835,14780363,13348553,12076947,-30836462,5113182]),$toNativeArray($kindInt32,[-17770784,11797796,31950843,13929123,-25888302,12288344,-30341101,-7336386,13847711,5387222])),new BI.ptr($toNativeArray($kindInt32,[-18582163,-3416217,17824843,-2340966,22744343,-10442611,8763061,3617786,-19600662,10370991]),$toNativeArray($kindInt32,[20246567,-14369378,22358229,-543712,18507283,-10413996,14554437,-8746092,32232924,16763880]),$toNativeArray($kindInt32,[9648505,10094563,26416693,14745928,-30374318,-6472621,11094161,15689506,3140038,-16510092])),new BI.ptr($toNativeArray($kindInt32,[-16160072,5472695,31895588,4744994,8823515,10365685,-27224800,9448613,-28774454,366295]),$toNativeArray($kindInt32,[19153450,11523972,-11096490,-6503142,-24647631,5420647,28344573,8041113,719605,11671788]),$toNativeArray($kindInt32,[8678025,2694440,-6808014,2517372,4964326,11152271,-15432916,-15266516,27000813,-10195553])),new BI.ptr($toNativeArray($kindInt32,[-15157904,7134312,8639287,-2814877,-7235688,10421742,564065,5336097,6750977,-14521026]),$toNativeArray($kindInt32,[11836410,-3979488,26297894,16080799,23455045,15735944,1695823,-8819122,8169720,16220347]),$toNativeArray($kindInt32,[-18115838,8653647,17578566,-6092619,-8025777,-16012763,-11144307,-2627664,-5990708,-14166033])),new BI.ptr($toNativeArray($kindInt32,[-23308498,-10968312,15213228,-10081214,-30853605,-11050004,27884329,2847284,2655861,1738395]),$toNativeArray($kindInt32,[-27537433,-14253021,-25336301,-8002780,-9370762,8129821,21651608,-3239336,-19087449,-11005278]),$toNativeArray($kindInt32,[1533110,3437855,23735889,459276,29970501,11335377,26030092,5821408,10478196,8544890])),new BI.ptr($toNativeArray($kindInt32,[32173121,-16129311,24896207,3921497,22579056,-3410854,19270449,12217473,17789017,-3395995]),$toNativeArray($kindInt32,[-30552961,-2228401,-15578829,-10147201,13243889,517024,15479401,-3853233,30460520,1052596]),$toNativeArray($kindInt32,[-11614875,13323618,32618793,8175907,-15230173,12596687,27491595,-4612359,3179268,-9478891])),new BI.ptr($toNativeArray($kindInt32,[31947069,-14366651,-4640583,-15339921,-15125977,-6039709,-14756777,-16411740,19072640,-9511060]),$toNativeArray($kindInt32,[11685058,11822410,3158003,-13952594,33402194,-4165066,5977896,-5215017,473099,5040608]),$toNativeArray($kindInt32,[-20290863,8198642,-27410132,11602123,1290375,-2799760,28326862,1721092,-19558642,-3131606]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[7881532,10687937,7578723,7738378,-18951012,-2553952,21820786,8076149,-27868496,11538389]),$toNativeArray($kindInt32,[-19935666,3899861,18283497,-6801568,-15728660,-11249211,8754525,7446702,-5676054,5797016]),$toNativeArray($kindInt32,[-11295600,-3793569,-15782110,-7964573,12708869,-8456199,2014099,-9050574,-2369172,-5877341])),new BI.ptr($toNativeArray($kindInt32,[-22472376,-11568741,-27682020,1146375,18956691,16640559,1192730,-3714199,15123619,10811505]),$toNativeArray($kindInt32,[14352098,-3419715,-18942044,10822655,32750596,4699007,-70363,15776356,-28886779,-11974553]),$toNativeArray($kindInt32,[-28241164,-8072475,-4978962,-5315317,29416931,1847569,-20654173,-16484855,4714547,-9600655])),new BI.ptr($toNativeArray($kindInt32,[15200332,8368572,19679101,15970074,-31872674,1959451,24611599,-4543832,-11745876,12340220]),$toNativeArray($kindInt32,[12876937,-10480056,33134381,6590940,-6307776,14872440,9613953,8241152,15370987,9608631]),$toNativeArray($kindInt32,[-4143277,-12014408,8446281,-391603,4407738,13629032,-7724868,15866074,-28210621,-8814099])),new BI.ptr($toNativeArray($kindInt32,[26660628,-15677655,8393734,358047,-7401291,992988,-23904233,858697,20571223,8420556]),$toNativeArray($kindInt32,[14620715,13067227,-15447274,8264467,14106269,15080814,33531827,12516406,-21574435,-12476749]),$toNativeArray($kindInt32,[236881,10476226,57258,-14677024,6472998,2466984,17258519,7256740,8791136,15069930])),new BI.ptr($toNativeArray($kindInt32,[1276410,-9371918,22949635,-16322807,-23493039,-5702186,14711875,4874229,-30663140,-2331391]),$toNativeArray($kindInt32,[5855666,4990204,-13711848,7294284,-7804282,1924647,-1423175,-7912378,-33069337,9234253]),$toNativeArray($kindInt32,[20590503,-9018988,31529744,-7352666,-2706834,10650548,31559055,-11609587,18979186,13396066])),new BI.ptr($toNativeArray($kindInt32,[24474287,4968103,22267082,4407354,24063882,-8325180,-18816887,13594782,33514650,7021958]),$toNativeArray($kindInt32,[-11566906,-6565505,-21365085,15928892,-26158305,4315421,-25948728,-3916677,-21480480,12868082]),$toNativeArray($kindInt32,[-28635013,13504661,19988037,-2132761,21078225,6443208,-21446107,2244500,-12455797,-8089383])),new BI.ptr($toNativeArray($kindInt32,[-30595528,13793479,-5852820,319136,-25723172,-6263899,33086546,8957937,-15233648,5540521]),$toNativeArray($kindInt32,[-11630176,-11503902,-8119500,-7643073,2620056,1022908,-23710744,-1568984,-16128528,-14962807]),$toNativeArray($kindInt32,[23152971,775386,27395463,14006635,-9701118,4649512,1689819,892185,-11513277,-15205948])),new BI.ptr($toNativeArray($kindInt32,[9770129,9586738,26496094,4324120,1556511,-3550024,27453819,4763127,-19179614,5867134]),$toNativeArray($kindInt32,[-32765025,1927590,31726409,-4753295,23962434,-16019500,27846559,5931263,-29749703,-16108455]),$toNativeArray($kindInt32,[27461885,-2977536,22380810,1815854,-23033753,-3031938,7283490,-15148073,-19526700,7734629]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-8010264,-9590817,-11120403,6196038,29344158,-13430885,7585295,-3176626,18549497,15302069]),$toNativeArray($kindInt32,[-32658337,-6171222,-7672793,-11051681,6258878,13504381,10458790,-6418461,-8872242,8424746]),$toNativeArray($kindInt32,[24687205,8613276,-30667046,-3233545,1863892,-1830544,19206234,7134917,-11284482,-828919])),new BI.ptr($toNativeArray($kindInt32,[11334899,-9218022,8025293,12707519,17523892,-10476071,10243738,-14685461,-5066034,16498837]),$toNativeArray($kindInt32,[8911542,6887158,-9584260,-6958590,11145641,-9543680,17303925,-14124238,6536641,10543906]),$toNativeArray($kindInt32,[-28946384,15479763,-17466835,568876,-1497683,11223454,-2669190,-16625574,-27235709,8876771])),new BI.ptr($toNativeArray($kindInt32,[-25742899,-12566864,-15649966,-846607,-33026686,-796288,-33481822,15824474,-604426,-9039817]),$toNativeArray($kindInt32,[10330056,70051,7957388,-9002667,9764902,15609756,27698697,-4890037,1657394,3084098]),$toNativeArray($kindInt32,[10477963,-7470260,12119566,-13250805,29016247,-5365589,31280319,14396151,-30233575,15272409])),new BI.ptr($toNativeArray($kindInt32,[-12288309,3169463,28813183,16658753,25116432,-5630466,-25173957,-12636138,-25014757,1950504]),$toNativeArray($kindInt32,[-26180358,9489187,11053416,-14746161,-31053720,5825630,-8384306,-8767532,15341279,8373727]),$toNativeArray($kindInt32,[28685821,7759505,-14378516,-12002860,-31971820,4079242,298136,-10232602,-2878207,15190420])),new BI.ptr($toNativeArray($kindInt32,[-32932876,13806336,-14337485,-15794431,-24004620,10940928,8669718,2742393,-26033313,-6875003]),$toNativeArray($kindInt32,[-1580388,-11729417,-25979658,-11445023,-17411874,-10912854,9291594,-16247779,-12154742,6048605]),$toNativeArray($kindInt32,[-30305315,14843444,1539301,11864366,20201677,1900163,13934231,5128323,11213262,9168384])),new BI.ptr($toNativeArray($kindInt32,[-26280513,11007847,19408960,-940758,-18592965,-4328580,-5088060,-11105150,20470157,-16398701]),$toNativeArray($kindInt32,[-23136053,9282192,14855179,-15390078,-7362815,-14408560,-22783952,14461608,14042978,5230683]),$toNativeArray($kindInt32,[29969567,-2741594,-16711867,-8552442,9175486,-2468974,21556951,3506042,-5933891,-12449708])),new BI.ptr($toNativeArray($kindInt32,[-3144746,8744661,19704003,4581278,-20430686,6830683,-21284170,8971513,-28539189,15326563]),$toNativeArray($kindInt32,[-19464629,10110288,-17262528,-3503892,-23500387,1355669,-15523050,15300988,-20514118,9168260]),$toNativeArray($kindInt32,[-5353335,4488613,-23803248,16314347,7780487,-15638939,-28948358,9601605,33087103,-9011387])),new BI.ptr($toNativeArray($kindInt32,[-19443170,-15512900,-20797467,-12445323,-29824447,10229461,-27444329,-15000531,-5996870,15664672]),$toNativeArray($kindInt32,[23294591,-16632613,-22650781,-8470978,27844204,11461195,13099750,-2460356,18151676,13417686]),$toNativeArray($kindInt32,[-24722913,-4176517,-31150679,5988919,-26858785,6685065,1661597,-12551441,15271676,-15452665]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[11433042,-13228665,8239631,-5279517,-1985436,-725718,-18698764,2167544,-6921301,-13440182]),$toNativeArray($kindInt32,[-31436171,15575146,30436815,12192228,-22463353,9395379,-9917708,-8638997,12215110,12028277]),$toNativeArray($kindInt32,[14098400,6555944,23007258,5757252,-15427832,-12950502,30123440,4617780,-16900089,-655628])),new BI.ptr($toNativeArray($kindInt32,[-4026201,-15240835,11893168,13718664,-14809462,1847385,-15819999,10154009,23973261,-12684474]),$toNativeArray($kindInt32,[-26531820,-3695990,-1908898,2534301,-31870557,-16550355,18341390,-11419951,32013174,-10103539]),$toNativeArray($kindInt32,[-25479301,10876443,-11771086,-14625140,-12369567,1838104,21911214,6354752,4425632,-837822])),new BI.ptr($toNativeArray($kindInt32,[-10433389,-14612966,22229858,-3091047,-13191166,776729,-17415375,-12020462,4725005,14044970]),$toNativeArray($kindInt32,[19268650,-7304421,1555349,8692754,-21474059,-9910664,6347390,-1411784,-19522291,-16109756]),$toNativeArray($kindInt32,[-24864089,12986008,-10898878,-5558584,-11312371,-148526,19541418,8180106,9282262,10282508])),new BI.ptr($toNativeArray($kindInt32,[-26205082,4428547,-8661196,-13194263,4098402,-14165257,15522535,8372215,5542595,-10702683]),$toNativeArray($kindInt32,[-10562541,14895633,26814552,-16673850,-17480754,-2489360,-2781891,6993761,-18093885,10114655]),$toNativeArray($kindInt32,[-20107055,-929418,31422704,10427861,-7110749,6150669,-29091755,-11529146,25953725,-106158])),new BI.ptr($toNativeArray($kindInt32,[-4234397,-8039292,-9119125,3046000,2101609,-12607294,19390020,6094296,-3315279,12831125]),$toNativeArray($kindInt32,[-15998678,7578152,5310217,14408357,-33548620,-224739,31575954,6326196,7381791,-2421839]),$toNativeArray($kindInt32,[-20902779,3296811,24736065,-16328389,18374254,7318640,6295303,8082724,-15362489,12339664])),new BI.ptr($toNativeArray($kindInt32,[27724736,2291157,6088201,-14184798,1792727,5857634,13848414,15768922,25091167,14856294]),$toNativeArray($kindInt32,[-18866652,8331043,24373479,8541013,-701998,-9269457,12927300,-12695493,-22182473,-9012899]),$toNativeArray($kindInt32,[-11423429,-5421590,11632845,3405020,30536730,-11674039,-27260765,13866390,30146206,9142070])),new BI.ptr($toNativeArray($kindInt32,[3924129,-15307516,-13817122,-10054960,12291820,-668366,-27702774,9326384,-8237858,4171294]),$toNativeArray($kindInt32,[-15921940,16037937,6713787,16606682,-21612135,2790944,26396185,3731949,345228,-5462949]),$toNativeArray($kindInt32,[-21327538,13448259,25284571,1143661,20614966,-8849387,2031539,-12391231,-16253183,-13582083])),new BI.ptr($toNativeArray($kindInt32,[31016211,-16722429,26371392,-14451233,-5027349,14854137,17477601,3842657,28012650,-16405420]),$toNativeArray($kindInt32,[-5075835,9368966,-8562079,-4600902,-15249953,6970560,-9189873,16292057,-8867157,3507940]),$toNativeArray($kindInt32,[29439664,3537914,23333589,6997794,-17555561,-11018068,-15209202,-15051267,-9164929,6580396]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-12185861,-7679788,16438269,10826160,-8696817,-6235611,17860444,-9273846,-2095802,9304567]),$toNativeArray($kindInt32,[20714564,-4336911,29088195,7406487,11426967,-5095705,14792667,-14608617,5289421,-477127]),$toNativeArray($kindInt32,[-16665533,-10650790,-6160345,-13305760,9192020,-1802462,17271490,12349094,26939669,-3752294])),new BI.ptr($toNativeArray($kindInt32,[-12889898,9373458,31595848,16374215,21471720,13221525,-27283495,-12348559,-3698806,117887]),$toNativeArray($kindInt32,[22263325,-6560050,3984570,-11174646,-15114008,-566785,28311253,5358056,-23319780,541964]),$toNativeArray($kindInt32,[16259219,3261970,2309254,-15534474,-16885711,-4581916,24134070,-16705829,-13337066,-13552195])),new BI.ptr($toNativeArray($kindInt32,[9378160,-13140186,-22845982,-12745264,28198281,-7244098,-2399684,-717351,690426,14876244]),$toNativeArray($kindInt32,[24977353,-314384,-8223969,-13465086,28432343,-1176353,-13068804,-12297348,-22380984,6618999]),$toNativeArray($kindInt32,[-1538174,11685646,12944378,13682314,-24389511,-14413193,8044829,-13817328,32239829,-5652762])),new BI.ptr($toNativeArray($kindInt32,[-18603066,4762990,-926250,8885304,-28412480,-3187315,9781647,-10350059,32779359,5095274]),$toNativeArray($kindInt32,[-33008130,-5214506,-32264887,-3685216,9460461,-9327423,-24601656,14506724,21639561,-2630236]),$toNativeArray($kindInt32,[-16400943,-13112215,25239338,15531969,3987758,-4499318,-1289502,-6863535,17874574,558605])),new BI.ptr($toNativeArray($kindInt32,[-13600129,10240081,9171883,16131053,-20869254,9599700,33499487,5080151,2085892,5119761]),$toNativeArray($kindInt32,[-22205145,-2519528,-16381601,414691,-25019550,2170430,30634760,-8363614,-31999993,-5759884]),$toNativeArray($kindInt32,[-6845704,15791202,8550074,-1312654,29928809,-12092256,27534430,-7192145,-22351378,12961482])),new BI.ptr($toNativeArray($kindInt32,[-24492060,-9570771,10368194,11582341,-23397293,-2245287,16533930,8206996,-30194652,-5159638]),$toNativeArray($kindInt32,[-11121496,-3382234,2307366,6362031,-135455,8868177,-16835630,7031275,7589640,8945490]),$toNativeArray($kindInt32,[-32152748,8917967,6661220,-11677616,-1192060,-15793393,7251489,-11182180,24099109,-14456170])),new BI.ptr($toNativeArray($kindInt32,[5019558,-7907470,4244127,-14714356,-26933272,6453165,-19118182,-13289025,-6231896,-10280736]),$toNativeArray($kindInt32,[10853594,10721687,26480089,5861829,-22995819,1972175,-1866647,-10557898,-3363451,-6441124]),$toNativeArray($kindInt32,[-17002408,5906790,221599,-6563147,7828208,-13248918,24362661,-2008168,-13866408,7421392])),new BI.ptr($toNativeArray($kindInt32,[8139927,-6546497,32257646,-5890546,30375719,1886181,-21175108,15441252,28826358,-4123029]),$toNativeArray($kindInt32,[6267086,9695052,7709135,-16603597,-32869068,-1886135,14795160,-7840124,13746021,-1742048]),$toNativeArray($kindInt32,[28584902,7787108,-6732942,-15050729,22846041,-7571236,-3181936,-363524,4771362,-8419958]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[24949256,6376279,-27466481,-8174608,-18646154,-9930606,33543569,-12141695,3569627,11342593]),$toNativeArray($kindInt32,[26514989,4740088,27912651,3697550,19331575,-11472339,6809886,4608608,7325975,-14801071]),$toNativeArray($kindInt32,[-11618399,-14554430,-24321212,7655128,-1369274,5214312,-27400540,10258390,-17646694,-8186692])),new BI.ptr($toNativeArray($kindInt32,[11431204,15823007,26570245,14329124,18029990,4796082,-31446179,15580664,9280358,-3973687]),$toNativeArray($kindInt32,[-160783,-10326257,-22855316,-4304997,-20861367,-13621002,-32810901,-11181622,-15545091,4387441]),$toNativeArray($kindInt32,[-20799378,12194512,3937617,-5805892,-27154820,9340370,-24513992,8548137,20617071,-7482001])),new BI.ptr($toNativeArray($kindInt32,[-938825,-3930586,-8714311,16124718,24603125,-6225393,-13775352,-11875822,24345683,10325460]),$toNativeArray($kindInt32,[-19855277,-1568885,-22202708,8714034,14007766,6928528,16318175,-1010689,4766743,3552007]),$toNativeArray($kindInt32,[-21751364,-16730916,1351763,-803421,-4009670,3950935,3217514,14481909,10988822,-3994762])),new BI.ptr($toNativeArray($kindInt32,[15564307,-14311570,3101243,5684148,30446780,-8051356,12677127,-6505343,-8295852,13296005]),$toNativeArray($kindInt32,[-9442290,6624296,-30298964,-11913677,-4670981,-2057379,31521204,9614054,-30000824,12074674]),$toNativeArray($kindInt32,[4771191,-135239,14290749,-13089852,27992298,14998318,-1413936,-1556716,29832613,-16391035])),new BI.ptr($toNativeArray($kindInt32,[7064884,-7541174,-19161962,-5067537,-18891269,-2912736,25825242,5293297,-27122660,13101590]),$toNativeArray($kindInt32,[-2298563,2439670,-7466610,1719965,-27267541,-16328445,32512469,-5317593,-30356070,-4190957]),$toNativeArray($kindInt32,[-30006540,10162316,-33180176,3981723,-16482138,-13070044,14413974,9515896,19568978,9628812])),new BI.ptr($toNativeArray($kindInt32,[33053803,199357,15894591,1583059,27380243,-4580435,-17838894,-6106839,-6291786,3437740]),$toNativeArray($kindInt32,[-18978877,3884493,19469877,12726490,15913552,13614290,-22961733,70104,7463304,4176122]),$toNativeArray($kindInt32,[-27124001,10659917,11482427,-16070381,12771467,-6635117,-32719404,-5322751,24216882,5944158])),new BI.ptr($toNativeArray($kindInt32,[8894125,7450974,-2664149,-9765752,-28080517,-12389115,19345746,14680796,11632993,5847885]),$toNativeArray($kindInt32,[26942781,-2315317,9129564,-4906607,26024105,11769399,-11518837,6367194,-9727230,4782140]),$toNativeArray($kindInt32,[19916461,-4828410,-22910704,-11414391,25606324,-5972441,33253853,8220911,6358847,-1873857])),new BI.ptr($toNativeArray($kindInt32,[801428,-2081702,16569428,11065167,29875704,96627,7908388,-4480480,-13538503,1387155]),$toNativeArray($kindInt32,[19646058,5720633,-11416706,12814209,11607948,12749789,14147075,15156355,-21866831,11835260]),$toNativeArray($kindInt32,[19299512,1155910,28703737,14890794,2925026,7269399,26121523,15467869,-26560550,5052483]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-3017432,10058206,1980837,3964243,22160966,12322533,-6431123,-12618185,12228557,-7003677]),$toNativeArray($kindInt32,[32944382,14922211,-22844894,5188528,21913450,-8719943,4001465,13238564,-6114803,8653815]),$toNativeArray($kindInt32,[22865569,-4652735,27603668,-12545395,14348958,8234005,24808405,5719875,28483275,2841751])),new BI.ptr($toNativeArray($kindInt32,[-16420968,-1113305,-327719,-12107856,21886282,-15552774,-1887966,-315658,19932058,-12739203]),$toNativeArray($kindInt32,[-11656086,10087521,-8864888,-5536143,-19278573,-3055912,3999228,13239134,-4777469,-13910208]),$toNativeArray($kindInt32,[1382174,-11694719,17266790,9194690,-13324356,9720081,20403944,11284705,-14013818,3093230])),new BI.ptr($toNativeArray($kindInt32,[16650921,-11037932,-1064178,1570629,-8329746,7352753,-302424,16271225,-24049421,-6691850]),$toNativeArray($kindInt32,[-21911077,-5927941,-4611316,-5560156,-31744103,-10785293,24123614,15193618,-21652117,-16739389]),$toNativeArray($kindInt32,[-9935934,-4289447,-25279823,4372842,2087473,10399484,31870908,14690798,17361620,11864968])),new BI.ptr($toNativeArray($kindInt32,[-11307610,6210372,13206574,5806320,-29017692,-13967200,-12331205,-7486601,-25578460,-16240689]),$toNativeArray($kindInt32,[14668462,-12270235,26039039,15305210,25515617,4542480,10453892,6577524,9145645,-6443880]),$toNativeArray($kindInt32,[5974874,3053895,-9433049,-10385191,-31865124,3225009,-7972642,3936128,-5652273,-3050304])),new BI.ptr($toNativeArray($kindInt32,[30625386,-4729400,-25555961,-12792866,-20484575,7695099,17097188,-16303496,-27999779,1803632]),$toNativeArray($kindInt32,[-3553091,9865099,-5228566,4272701,-5673832,-16689700,14911344,12196514,-21405489,7047412]),$toNativeArray($kindInt32,[20093277,9920966,-11138194,-5343857,13161587,12044805,-32856851,4124601,-32343828,-10257566])),new BI.ptr($toNativeArray($kindInt32,[-20788824,14084654,-13531713,7842147,19119038,-13822605,4752377,-8714640,-21679658,2288038]),$toNativeArray($kindInt32,[-26819236,-3283715,29965059,3039786,-14473765,2540457,29457502,14625692,-24819617,12570232]),$toNativeArray($kindInt32,[-1063558,-11551823,16920318,12494842,1278292,-5869109,-21159943,-3498680,-11974704,4724943])),new BI.ptr($toNativeArray($kindInt32,[17960970,-11775534,-4140968,-9702530,-8876562,-1410617,-12907383,-8659932,-29576300,1903856]),$toNativeArray($kindInt32,[23134274,-14279132,-10681997,-1611936,20684485,15770816,-12989750,3190296,26955097,14109738]),$toNativeArray($kindInt32,[15308788,5320727,-30113809,-14318877,22902008,7767164,29425325,-11277562,31960942,11934971])),new BI.ptr($toNativeArray($kindInt32,[-27395711,8435796,4109644,12222639,-24627868,14818669,20638173,4875028,10491392,1379718]),$toNativeArray($kindInt32,[-13159415,9197841,3875503,-8936108,-1383712,-5879801,33518459,16176658,21432314,12180697]),$toNativeArray($kindInt32,[-11787308,11500838,13787581,-13832590,-22430679,10140205,1465425,12689540,-10301319,-13872883]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[5414091,-15386041,-21007664,9643570,12834970,1186149,-2622916,-1342231,26128231,6032912]),$toNativeArray($kindInt32,[-26337395,-13766162,32496025,-13653919,17847801,-12669156,3604025,8316894,-25875034,-10437358]),$toNativeArray($kindInt32,[3296484,6223048,24680646,-12246460,-23052020,5903205,-8862297,-4639164,12376617,3188849])),new BI.ptr($toNativeArray($kindInt32,[29190488,-14659046,27549113,-1183516,3520066,-10697301,32049515,-7309113,-16109234,-9852307]),$toNativeArray($kindInt32,[-14744486,-9309156,735818,-598978,-20407687,-5057904,25246078,-15795669,18640741,-960977]),$toNativeArray($kindInt32,[-6928835,-16430795,10361374,5642961,4910474,12345252,-31638386,-494430,10530747,1053335])),new BI.ptr($toNativeArray($kindInt32,[-29265967,-14186805,-13538216,-12117373,-19457059,-10655384,-31462369,-2948985,24018831,15026644]),$toNativeArray($kindInt32,[-22592535,-3145277,-2289276,5953843,-13440189,9425631,25310643,13003497,-2314791,-15145616]),$toNativeArray($kindInt32,[-27419985,-603321,-8043984,-1669117,-26092265,13987819,-27297622,187899,-23166419,-2531735])),new BI.ptr($toNativeArray($kindInt32,[-21744398,-13810475,1844840,5021428,-10434399,-15911473,9716667,16266922,-5070217,726099]),$toNativeArray($kindInt32,[29370922,-6053998,7334071,-15342259,9385287,2247707,-13661962,-4839461,30007388,-15823341]),$toNativeArray($kindInt32,[-936379,16086691,23751945,-543318,-1167538,-5189036,9137109,730663,9835848,4555336])),new BI.ptr($toNativeArray($kindInt32,[-23376435,1410446,-22253753,-12899614,30867635,15826977,17693930,544696,-11985298,12422646]),$toNativeArray($kindInt32,[31117226,-12215734,-13502838,6561947,-9876867,-12757670,-5118685,-4096706,29120153,13924425]),$toNativeArray($kindInt32,[-17400879,-14233209,19675799,-2734756,-11006962,-5858820,-9383939,-11317700,7240931,-237388])),new BI.ptr($toNativeArray($kindInt32,[-31361739,-11346780,-15007447,-5856218,-22453340,-12152771,1222336,4389483,3293637,-15551743]),$toNativeArray($kindInt32,[-16684801,-14444245,11038544,11054958,-13801175,-3338533,-24319580,7733547,12796905,-6335822]),$toNativeArray($kindInt32,[-8759414,-10817836,-25418864,10783769,-30615557,-9746811,-28253339,3647836,3222231,-11160462])),new BI.ptr($toNativeArray($kindInt32,[18606113,1693100,-25448386,-15170272,4112353,10045021,23603893,-2048234,-7550776,2484985]),$toNativeArray($kindInt32,[9255317,-3131197,-12156162,-1004256,13098013,-9214866,16377220,-2102812,-19802075,-3034702]),$toNativeArray($kindInt32,[-22729289,7496160,-5742199,11329249,19991973,-3347502,-31718148,9936966,-30097688,-10618797])),new BI.ptr($toNativeArray($kindInt32,[21878590,-5001297,4338336,13643897,-3036865,13160960,19708896,5415497,-7360503,-4109293]),$toNativeArray($kindInt32,[27736861,10103576,12500508,8502413,-3413016,-9633558,10436918,-1550276,-23659143,-8132100]),$toNativeArray($kindInt32,[19492550,-12104365,-29681976,-852630,-3208171,12403437,30066266,8367329,13243957,8709688]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[12015105,2801261,28198131,10151021,24818120,-4743133,-11194191,-5645734,5150968,7274186]),$toNativeArray($kindInt32,[2831366,-12492146,1478975,6122054,23825128,-12733586,31097299,6083058,31021603,-9793610]),$toNativeArray($kindInt32,[-2529932,-2229646,445613,10720828,-13849527,-11505937,-23507731,16354465,15067285,-14147707])),new BI.ptr($toNativeArray($kindInt32,[7840942,14037873,-33364863,15934016,-728213,-3642706,21403988,1057586,-19379462,-12403220]),$toNativeArray($kindInt32,[915865,-16469274,15608285,-8789130,-24357026,6060030,-17371319,8410997,-7220461,16527025]),$toNativeArray($kindInt32,[32922597,-556987,20336074,-16184568,10903705,-5384487,16957574,52992,23834301,6588044])),new BI.ptr($toNativeArray($kindInt32,[32752030,11232950,3381995,-8714866,22652988,-10744103,17159699,16689107,-20314580,-1305992]),$toNativeArray($kindInt32,[-4689649,9166776,-25710296,-10847306,11576752,12733943,7924251,-2752281,1976123,-7249027]),$toNativeArray($kindInt32,[21251222,16309901,-2983015,-6783122,30810597,12967303,156041,-3371252,12331345,-8237197])),new BI.ptr($toNativeArray($kindInt32,[8651614,-4477032,-16085636,-4996994,13002507,2950805,29054427,-5106970,10008136,-4667901]),$toNativeArray($kindInt32,[31486080,15114593,-14261250,12951354,14369431,-7387845,16347321,-13662089,8684155,-10532952]),$toNativeArray($kindInt32,[19443825,11385320,24468943,-9659068,-23919258,2187569,-26263207,-6086921,31316348,14219878])),new BI.ptr($toNativeArray($kindInt32,[-28594490,1193785,32245219,11392485,31092169,15722801,27146014,6992409,29126555,9207390]),$toNativeArray($kindInt32,[32382935,1110093,18477781,11028262,-27411763,-7548111,-4980517,10843782,-7957600,-14435730]),$toNativeArray($kindInt32,[2814918,7836403,27519878,-7868156,-20894015,-11553689,-21494559,8550130,28346258,1994730])),new BI.ptr($toNativeArray($kindInt32,[-19578299,8085545,-14000519,-3948622,2785838,-16231307,-19516951,7174894,22628102,8115180]),$toNativeArray($kindInt32,[-30405132,955511,-11133838,-15078069,-32447087,-13278079,-25651578,3317160,-9943017,930272]),$toNativeArray($kindInt32,[-15303681,-6833769,28856490,1357446,23421993,1057177,24091212,-1388970,-22765376,-10650715])),new BI.ptr($toNativeArray($kindInt32,[-22751231,-5303997,-12907607,-12768866,-15811511,-7797053,-14839018,-16554220,-1867018,8398970]),$toNativeArray($kindInt32,[-31969310,2106403,-4736360,1362501,12813763,16200670,22981545,-6291273,18009408,-15772772]),$toNativeArray($kindInt32,[-17220923,-9545221,-27784654,14166835,29815394,7444469,29551787,-3727419,19288549,1325865])),new BI.ptr($toNativeArray($kindInt32,[15100157,-15835752,-23923978,-1005098,-26450192,15509408,12376730,-3479146,33166107,-8042750]),$toNativeArray($kindInt32,[20909231,13023121,-9209752,16251778,-5778415,-8094914,12412151,10018715,2213263,-13878373]),$toNativeArray($kindInt32,[32529814,-11074689,30361439,-16689753,-9135940,1513226,22922121,6382134,-5766928,8371348]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[9923462,11271500,12616794,3544722,-29998368,-1721626,12891687,-8193132,-26442943,10486144]),$toNativeArray($kindInt32,[-22597207,-7012665,8587003,-8257861,4084309,-12970062,361726,2610596,-23921530,-11455195]),$toNativeArray($kindInt32,[5408411,-1136691,-4969122,10561668,24145918,14240566,31319731,-4235541,19985175,-3436086])),new BI.ptr($toNativeArray($kindInt32,[-13994457,16616821,14549246,3341099,32155958,13648976,-17577068,8849297,65030,8370684]),$toNativeArray($kindInt32,[-8320926,-12049626,31204563,5839400,-20627288,-1057277,-19442942,6922164,12743482,-9800518]),$toNativeArray($kindInt32,[-2361371,12678785,28815050,4759974,-23893047,4884717,23783145,11038569,18800704,255233])),new BI.ptr($toNativeArray($kindInt32,[-5269658,-1773886,13957886,7990715,23132995,728773,13393847,9066957,19258688,-14753793]),$toNativeArray($kindInt32,[-2936654,-10827535,-10432089,14516793,-3640786,4372541,-31934921,2209390,-1524053,2055794]),$toNativeArray($kindInt32,[580882,16705327,5468415,-2683018,-30926419,-14696000,-7203346,-8994389,-30021019,7394435])),new BI.ptr($toNativeArray($kindInt32,[23838809,1822728,-15738443,15242727,8318092,-3733104,-21672180,-3492205,-4821741,14799921]),$toNativeArray($kindInt32,[13345610,9759151,3371034,-16137791,16353039,8577942,31129804,13496856,-9056018,7402518]),$toNativeArray($kindInt32,[2286874,-4435931,-20042458,-2008336,-13696227,5038122,11006906,-15760352,8205061,1607563])),new BI.ptr($toNativeArray($kindInt32,[14414086,-8002132,3331830,-3208217,22249151,-5594188,18364661,-2906958,30019587,-9029278]),$toNativeArray($kindInt32,[-27688051,1585953,-10775053,931069,-29120221,-11002319,-14410829,12029093,9944378,8024]),$toNativeArray($kindInt32,[4368715,-3709630,29874200,-15022983,-20230386,-11410704,-16114594,-999085,-8142388,5640030])),new BI.ptr($toNativeArray($kindInt32,[10299610,13746483,11661824,16234854,7630238,5998374,9809887,-16694564,15219798,-14327783]),$toNativeArray($kindInt32,[27425505,-5719081,3055006,10660664,23458024,595578,-15398605,-1173195,-18342183,9742717]),$toNativeArray($kindInt32,[6744077,2427284,26042789,2720740,-847906,1118974,32324614,7406442,12420155,1994844])),new BI.ptr($toNativeArray($kindInt32,[14012521,-5024720,-18384453,-9578469,-26485342,-3936439,-13033478,-10909803,24319929,-6446333]),$toNativeArray($kindInt32,[16412690,-4507367,10772641,15929391,-17068788,-4658621,10555945,-10484049,-30102368,-4739048]),$toNativeArray($kindInt32,[22397382,-7767684,-9293161,-12792868,17166287,-9755136,-27333065,6199366,21880021,-12250760])),new BI.ptr($toNativeArray($kindInt32,[-4283307,5368523,-31117018,8163389,-30323063,3209128,16557151,8890729,8840445,4957760]),$toNativeArray($kindInt32,[-15447727,709327,-6919446,-10870178,-29777922,6522332,-21720181,12130072,-14796503,5005757]),$toNativeArray($kindInt32,[-2114751,-14308128,23019042,15765735,-25269683,6002752,10183197,-13239326,-16395286,-2176112]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-19025756,1632005,13466291,-7995100,-23640451,16573537,-32013908,-3057104,22208662,2000468]),$toNativeArray($kindInt32,[3065073,-1412761,-25598674,-361432,-17683065,-5703415,-8164212,11248527,-3691214,-7414184]),$toNativeArray($kindInt32,[10379208,-6045554,8877319,1473647,-29291284,-12507580,16690915,2553332,-3132688,16400289])),new BI.ptr($toNativeArray($kindInt32,[15716668,1254266,-18472690,7446274,-8448918,6344164,-22097271,-7285580,26894937,9132066]),$toNativeArray($kindInt32,[24158887,12938817,11085297,-8177598,-28063478,-4457083,-30576463,64452,-6817084,-2692882]),$toNativeArray($kindInt32,[13488534,7794716,22236231,5989356,25426474,-12578208,2350710,-3418511,-4688006,2364226])),new BI.ptr($toNativeArray($kindInt32,[16335052,9132434,25640582,6678888,1725628,8517937,-11807024,-11697457,15445875,-7798101]),$toNativeArray($kindInt32,[29004207,-7867081,28661402,-640412,-12794003,-7943086,31863255,-4135540,-278050,-15759279]),$toNativeArray($kindInt32,[-6122061,-14866665,-28614905,14569919,-10857999,-3591829,10343412,-6976290,-29828287,-10815811])),new BI.ptr($toNativeArray($kindInt32,[27081650,3463984,14099042,-4517604,1616303,-6205604,29542636,15372179,17293797,960709]),$toNativeArray($kindInt32,[20263915,11434237,-5765435,11236810,13505955,-10857102,-16111345,6493122,-19384511,7639714]),$toNativeArray($kindInt32,[-2830798,-14839232,25403038,-8215196,-8317012,-16173699,18006287,-16043750,29994677,-15808121])),new BI.ptr($toNativeArray($kindInt32,[9769828,5202651,-24157398,-13631392,-28051003,-11561624,-24613141,-13860782,-31184575,709464]),$toNativeArray($kindInt32,[12286395,13076066,-21775189,-1176622,-25003198,4057652,-32018128,-8890874,16102007,13205847]),$toNativeArray($kindInt32,[13733362,5599946,10557076,3195751,-5557991,8536970,-25540170,8525972,10151379,10394400])),new BI.ptr($toNativeArray($kindInt32,[4024660,-16137551,22436262,12276534,-9099015,-2686099,19698229,11743039,-33302334,8934414]),$toNativeArray($kindInt32,[-15879800,-4525240,-8580747,-2934061,14634845,-698278,-9449077,3137094,-11536886,11721158]),$toNativeArray($kindInt32,[17555939,-5013938,8268606,2331751,-22738815,9761013,9319229,8835153,-9205489,-1280045])),new BI.ptr($toNativeArray($kindInt32,[-461409,-7830014,20614118,16688288,-7514766,-4807119,22300304,505429,6108462,-6183415]),$toNativeArray($kindInt32,[-5070281,12367917,-30663534,3234473,32617080,-8422642,29880583,-13483331,-26898490,-7867459]),$toNativeArray($kindInt32,[-31975283,5726539,26934134,10237677,-3173717,-605053,24199304,3795095,7592688,-14992079])),new BI.ptr($toNativeArray($kindInt32,[21594432,-14964228,17466408,-4077222,32537084,2739898,6407723,12018833,-28256052,4298412]),$toNativeArray($kindInt32,[-20650503,-11961496,-27236275,570498,3767144,-1717540,13891942,-1569194,13717174,10805743]),$toNativeArray($kindInt32,[-14676630,-15644296,15287174,11927123,24177847,-8175568,-796431,14860609,-26938930,-5863836]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[12962541,5311799,-10060768,11658280,18855286,-7954201,13286263,-12808704,-4381056,9882022]),$toNativeArray($kindInt32,[18512079,11319350,-20123124,15090309,18818594,5271736,-22727904,3666879,-23967430,-3299429]),$toNativeArray($kindInt32,[-6789020,-3146043,16192429,13241070,15898607,-14206114,-10084880,-6661110,-2403099,5276065])),new BI.ptr($toNativeArray($kindInt32,[30169808,-5317648,26306206,-11750859,27814964,7069267,7152851,3684982,1449224,13082861]),$toNativeArray($kindInt32,[10342826,3098505,2119311,193222,25702612,12233820,23697382,15056736,-21016438,-8202000]),$toNativeArray($kindInt32,[-33150110,3261608,22745853,7948688,19370557,-15177665,-26171976,6482814,-10300080,-11060101])),new BI.ptr($toNativeArray($kindInt32,[32869458,-5408545,25609743,15678670,-10687769,-15471071,26112421,2521008,-22664288,6904815]),$toNativeArray($kindInt32,[29506923,4457497,3377935,-9796444,-30510046,12935080,1561737,3841096,-29003639,-6657642]),$toNativeArray($kindInt32,[10340844,-6630377,-18656632,-2278430,12621151,-13339055,30878497,-11824370,-25584551,5181966])),new BI.ptr($toNativeArray($kindInt32,[25940115,-12658025,17324188,-10307374,-8671468,15029094,24396252,-16450922,-2322852,-12388574]),$toNativeArray($kindInt32,[-21765684,9916823,-1300409,4079498,-1028346,11909559,1782390,12641087,20603771,-6561742]),$toNativeArray($kindInt32,[-18882287,-11673380,24849422,11501709,13161720,-4768874,1925523,11914390,4662781,7820689])),new BI.ptr($toNativeArray($kindInt32,[12241050,-425982,8132691,9393934,32846760,-1599620,29749456,12172924,16136752,15264020]),$toNativeArray($kindInt32,[-10349955,-14680563,-8211979,2330220,-17662549,-14545780,10658213,6671822,19012087,3772772]),$toNativeArray($kindInt32,[3753511,-3421066,10617074,2028709,14841030,-6721664,28718732,-15762884,20527771,12988982])),new BI.ptr($toNativeArray($kindInt32,[-14822485,-5797269,-3707987,12689773,-898983,-10914866,-24183046,-10564943,3299665,-12424953]),$toNativeArray($kindInt32,[-16777703,-15253301,-9642417,4978983,3308785,8755439,6943197,6461331,-25583147,8991218]),$toNativeArray($kindInt32,[-17226263,1816362,-1673288,-6086439,31783888,-8175991,-32948145,7417950,-30242287,1507265])),new BI.ptr($toNativeArray($kindInt32,[29692663,6829891,-10498800,4334896,20945975,-11906496,-28887608,8209391,14606362,-10647073]),$toNativeArray($kindInt32,[-3481570,8707081,32188102,5672294,22096700,1711240,-33020695,9761487,4170404,-2085325]),$toNativeArray($kindInt32,[-11587470,14855945,-4127778,-1531857,-26649089,15084046,22186522,16002000,-14276837,-8400798])),new BI.ptr($toNativeArray($kindInt32,[-4811456,13761029,-31703877,-2483919,-3312471,7869047,-7113572,-9620092,13240845,10965870]),$toNativeArray($kindInt32,[-7742563,-8256762,-14768334,-13656260,-23232383,12387166,4498947,14147411,29514390,4302863]),$toNativeArray($kindInt32,[-13413405,-12407859,20757302,-13801832,14785143,8976368,-5061276,-2144373,17846988,-13971927]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-2244452,-754728,-4597030,-1066309,-6247172,1455299,-21647728,-9214789,-5222701,12650267]),$toNativeArray($kindInt32,[-9906797,-16070310,21134160,12198166,-27064575,708126,387813,13770293,-19134326,10958663]),$toNativeArray($kindInt32,[22470984,12369526,23446014,-5441109,-21520802,-9698723,-11772496,-11574455,-25083830,4271862])),new BI.ptr($toNativeArray($kindInt32,[-25169565,-10053642,-19909332,15361595,-5984358,2159192,75375,-4278529,-32526221,8469673]),$toNativeArray($kindInt32,[15854970,4148314,-8893890,7259002,11666551,13824734,-30531198,2697372,24154791,-9460943]),$toNativeArray($kindInt32,[15446137,-15806644,29759747,14019369,30811221,-9610191,-31582008,12840104,24913809,9815020])),new BI.ptr($toNativeArray($kindInt32,[-4709286,-5614269,-31841498,-12288893,-14443537,10799414,-9103676,13438769,18735128,9466238]),$toNativeArray($kindInt32,[11933045,9281483,5081055,-5183824,-2628162,-4905629,-7727821,-10896103,-22728655,16199064]),$toNativeArray($kindInt32,[14576810,379472,-26786533,-8317236,-29426508,-10812974,-102766,1876699,30801119,2164795])),new BI.ptr($toNativeArray($kindInt32,[15995086,3199873,13672555,13712240,-19378835,-4647646,-13081610,-15496269,-13492807,1268052]),$toNativeArray($kindInt32,[-10290614,-3659039,-3286592,10948818,23037027,3794475,-3470338,-12600221,-17055369,3565904]),$toNativeArray($kindInt32,[29210088,-9419337,-5919792,-4952785,10834811,-13327726,-16512102,-10820713,-27162222,-14030531])),new BI.ptr($toNativeArray($kindInt32,[-13161890,15508588,16663704,-8156150,-28349942,9019123,-29183421,-3769423,2244111,-14001979]),$toNativeArray($kindInt32,[-5152875,-3800936,-9306475,-6071583,16243069,14684434,-25673088,-16180800,13491506,4641841]),$toNativeArray($kindInt32,[10813417,643330,-19188515,-728916,30292062,-16600078,27548447,-7721242,14476989,-12767431])),new BI.ptr($toNativeArray($kindInt32,[10292079,9984945,6481436,8279905,-7251514,7032743,27282937,-1644259,-27912810,12651324]),$toNativeArray($kindInt32,[-31185513,-813383,22271204,11835308,10201545,15351028,17099662,3988035,21721536,-3148940]),$toNativeArray($kindInt32,[10202177,-6545839,-31373232,-9574638,-32150642,-8119683,-12906320,3852694,13216206,14842320])),new BI.ptr($toNativeArray($kindInt32,[-15815640,-10601066,-6538952,-7258995,-6984659,-6581778,-31500847,13765824,-27434397,9900184]),$toNativeArray($kindInt32,[14465505,-13833331,-32133984,-14738873,-27443187,12990492,33046193,15796406,-7051866,-8040114]),$toNativeArray($kindInt32,[30924417,-8279620,6359016,-12816335,16508377,9071735,-25488601,15413635,9524356,-7018878])),new BI.ptr($toNativeArray($kindInt32,[12274201,-13175547,32627641,-1785326,6736625,13267305,5237659,-5109483,15663516,4035784]),$toNativeArray($kindInt32,[-2951309,8903985,17349946,601635,-16432815,-4612556,-13732739,-15889334,-22258478,4659091]),$toNativeArray($kindInt32,[-16916263,-4952973,-30393711,-15158821,20774812,15897498,5736189,15026997,-2178256,-13455585]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-8858980,-2219056,28571666,-10155518,-474467,-10105698,-3801496,278095,23440562,-290208]),$toNativeArray($kindInt32,[10226241,-5928702,15139956,120818,-14867693,5218603,32937275,11551483,-16571960,-7442864]),$toNativeArray($kindInt32,[17932739,-12437276,-24039557,10749060,11316803,7535897,22503767,5561594,-3646624,3898661])),new BI.ptr($toNativeArray($kindInt32,[7749907,-969567,-16339731,-16464,-25018111,15122143,-1573531,7152530,21831162,1245233]),$toNativeArray($kindInt32,[26958459,-14658026,4314586,8346991,-5677764,11960072,-32589295,-620035,-30402091,-16716212]),$toNativeArray($kindInt32,[-12165896,9166947,33491384,13673479,29787085,13096535,6280834,14587357,-22338025,13987525])),new BI.ptr($toNativeArray($kindInt32,[-24349909,7778775,21116000,15572597,-4833266,-5357778,-4300898,-5124639,-7469781,-2858068]),$toNativeArray($kindInt32,[9681908,-6737123,-31951644,13591838,-6883821,386950,31622781,6439245,-14581012,4091397]),$toNativeArray($kindInt32,[-8426427,1470727,-28109679,-1596990,3978627,-5123623,-19622683,12092163,29077877,-14741988])),new BI.ptr($toNativeArray($kindInt32,[5269168,-6859726,-13230211,-8020715,25932563,1763552,-5606110,-5505881,-20017847,2357889]),$toNativeArray($kindInt32,[32264008,-15407652,-5387735,-1160093,-2091322,-3946900,23104804,-12869908,5727338,189038]),$toNativeArray($kindInt32,[14609123,-8954470,-6000566,-16622781,-14577387,-7743898,-26745169,10942115,-25888931,-14884697])),new BI.ptr($toNativeArray($kindInt32,[20513500,5557931,-15604613,7829531,26413943,-2019404,-21378968,7471781,13913677,-5137875]),$toNativeArray($kindInt32,[-25574376,11967826,29233242,12948236,-6754465,4713227,-8940970,14059180,12878652,8511905]),$toNativeArray($kindInt32,[-25656801,3393631,-2955415,-7075526,-2250709,9366908,-30223418,6812974,5568676,-3127656])),new BI.ptr($toNativeArray($kindInt32,[11630004,12144454,2116339,13606037,27378885,15676917,-17408753,-13504373,-14395196,8070818]),$toNativeArray($kindInt32,[27117696,-10007378,-31282771,-5570088,1127282,12772488,-29845906,10483306,-11552749,-1028714]),$toNativeArray($kindInt32,[10637467,-5688064,5674781,1072708,-26343588,-6982302,-1683975,9177853,-27493162,15431203])),new BI.ptr($toNativeArray($kindInt32,[20525145,10892566,-12742472,12779443,-29493034,16150075,-28240519,14943142,-15056790,-7935931]),$toNativeArray($kindInt32,[-30024462,5626926,-551567,-9981087,753598,11981191,25244767,-3239766,-3356550,9594024]),$toNativeArray($kindInt32,[-23752644,2636870,-5163910,-10103818,585134,7877383,11345683,-6492290,13352335,-10977084])),new BI.ptr($toNativeArray($kindInt32,[-1931799,-5407458,3304649,-12884869,17015806,-4877091,-29783850,-7752482,-13215537,-319204]),$toNativeArray($kindInt32,[20239939,6607058,6203985,3483793,-18386976,-779229,-20723742,15077870,-22750759,14523817]),$toNativeArray($kindInt32,[27406042,-6041657,27423596,-4497394,4996214,10002360,-28842031,-4545494,-30172742,-4805667]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[11374242,12660715,17861383,-12540833,10935568,1099227,-13886076,-9091740,-27727044,11358504]),$toNativeArray($kindInt32,[-12730809,10311867,1510375,10778093,-2119455,-9145702,32676003,11149336,-26123651,4985768]),$toNativeArray($kindInt32,[-19096303,341147,-6197485,-239033,15756973,-8796662,-983043,13794114,-19414307,-15621255])),new BI.ptr($toNativeArray($kindInt32,[6490081,11940286,25495923,-7726360,8668373,-8751316,3367603,6970005,-1691065,-9004790]),$toNativeArray($kindInt32,[1656497,13457317,15370807,6364910,13605745,8362338,-19174622,-5475723,-16796596,-5031438]),$toNativeArray($kindInt32,[-22273315,-13524424,-64685,-4334223,-18605636,-10921968,-20571065,-7007978,-99853,-10237333])),new BI.ptr($toNativeArray($kindInt32,[17747465,10039260,19368299,-4050591,-20630635,-16041286,31992683,-15857976,-29260363,-5511971]),$toNativeArray($kindInt32,[31932027,-4986141,-19612382,16366580,22023614,88450,11371999,-3744247,4882242,-10626905]),$toNativeArray($kindInt32,[29796507,37186,19818052,10115756,-11829032,3352736,18551198,3272828,-5190932,-4162409])),new BI.ptr($toNativeArray($kindInt32,[12501286,4044383,-8612957,-13392385,-32430052,5136599,-19230378,-3529697,330070,-3659409]),$toNativeArray($kindInt32,[6384877,2899513,17807477,7663917,-2358888,12363165,25366522,-8573892,-271295,12071499]),$toNativeArray($kindInt32,[-8365515,-4042521,25133448,-4517355,-6211027,2265927,-32769618,1936675,-5159697,3829363])),new BI.ptr($toNativeArray($kindInt32,[28425966,-5835433,-577090,-4697198,-14217555,6870930,7921550,-6567787,26333140,14267664]),$toNativeArray($kindInt32,[-11067219,11871231,27385719,-10559544,-4585914,-11189312,10004786,-8709488,-21761224,8930324]),$toNativeArray($kindInt32,[-21197785,-16396035,25654216,-1725397,12282012,11008919,1541940,4757911,-26491501,-16408940])),new BI.ptr($toNativeArray($kindInt32,[13537262,-7759490,-20604840,10961927,-5922820,-13218065,-13156584,6217254,-15943699,13814990]),$toNativeArray($kindInt32,[-17422573,15157790,18705543,29619,24409717,-260476,27361681,9257833,-1956526,-1776914]),$toNativeArray($kindInt32,[-25045300,-10191966,15366585,15166509,-13105086,8423556,-29171540,12361135,-18685978,4578290])),new BI.ptr($toNativeArray($kindInt32,[24579768,3711570,1342322,-11180126,-27005135,14124956,-22544529,14074919,21964432,8235257]),$toNativeArray($kindInt32,[-6528613,-2411497,9442966,-5925588,12025640,-1487420,-2981514,-1669206,13006806,2355433]),$toNativeArray($kindInt32,[-16304899,-13605259,-6632427,-5142349,16974359,-10911083,27202044,1719366,1141648,-12796236])),new BI.ptr($toNativeArray($kindInt32,[-12863944,-13219986,-8318266,-11018091,-6810145,-4843894,13475066,-3133972,32674895,13715045]),$toNativeArray($kindInt32,[11423335,-5468059,32344216,8962751,24989809,9241752,-13265253,16086212,-28740881,-15642093]),$toNativeArray($kindInt32,[-1409668,12530728,-6368726,10847387,19531186,-14132160,-11709148,7791794,-27245943,4383347]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-28970898,5271447,-1266009,-9736989,-12455236,16732599,-4862407,-4906449,27193557,6245191]),$toNativeArray($kindInt32,[-15193956,5362278,-1783893,2695834,4960227,12840725,23061898,3260492,22510453,8577507]),$toNativeArray($kindInt32,[-12632451,11257346,-32692994,13548177,-721004,10879011,31168030,13952092,-29571492,-3635906])),new BI.ptr($toNativeArray($kindInt32,[3877321,-9572739,32416692,5405324,-11004407,-13656635,3759769,11935320,5611860,8164018]),$toNativeArray($kindInt32,[-16275802,14667797,15906460,12155291,-22111149,-9039718,32003002,-8832289,5773085,-8422109]),$toNativeArray($kindInt32,[-23788118,-8254300,1950875,8937633,18686727,16459170,-905725,12376320,31632953,190926])),new BI.ptr($toNativeArray($kindInt32,[-24593607,-16138885,-8423991,13378746,14162407,6901328,-8288749,4508564,-25341555,-3627528]),$toNativeArray($kindInt32,[8884438,-5884009,6023974,10104341,-6881569,-4941533,18722941,-14786005,-1672488,827625]),$toNativeArray($kindInt32,[-32720583,-16289296,-32503547,7101210,13354605,2659080,-1800575,-14108036,-24878478,1541286])),new BI.ptr($toNativeArray($kindInt32,[2901347,-1117687,3880376,-10059388,-17620940,-3612781,-21802117,-3567481,20456845,-1885033]),$toNativeArray($kindInt32,[27019610,12299467,-13658288,-1603234,-12861660,-4861471,-19540150,-5016058,29439641,15138866]),$toNativeArray($kindInt32,[21536104,-6626420,-32447818,-10690208,-22408077,5175814,-5420040,-16361163,7779328,109896])),new BI.ptr($toNativeArray($kindInt32,[30279744,14648750,-8044871,6425558,13639621,-743509,28698390,12180118,23177719,-554075]),$toNativeArray($kindInt32,[26572847,3405927,-31701700,12890905,-19265668,5335866,-6493768,2378492,4439158,-13279347]),$toNativeArray($kindInt32,[-22716706,3489070,-9225266,-332753,18875722,-1140095,14819434,-12731527,-17717757,-5461437])),new BI.ptr($toNativeArray($kindInt32,[-5056483,16566551,15953661,3767752,-10436499,15627060,-820954,2177225,8550082,-15114165]),$toNativeArray($kindInt32,[-18473302,16596775,-381660,15663611,22860960,15585581,-27844109,-3582739,-23260460,-8428588]),$toNativeArray($kindInt32,[-32480551,15707275,-8205912,-5652081,29464558,2713815,-22725137,15860482,-21902570,1494193])),new BI.ptr($toNativeArray($kindInt32,[-19562091,-14087393,-25583872,-9299552,13127842,759709,21923482,16529112,8742704,12967017]),$toNativeArray($kindInt32,[-28464899,1553205,32536856,-10473729,-24691605,-406174,-8914625,-2933896,-29903758,15553883]),$toNativeArray($kindInt32,[21877909,3230008,9881174,10539357,-4797115,2841332,11543572,14513274,19375923,-12647961])),new BI.ptr($toNativeArray($kindInt32,[8832269,-14495485,13253511,5137575,5037871,4078777,24880818,-6222716,2862653,9455043]),$toNativeArray($kindInt32,[29306751,5123106,20245049,-14149889,9592566,8447059,-2077124,-2990080,15511449,4789663]),$toNativeArray($kindInt32,[-20679756,7004547,8824831,-9434977,-4045704,-3750736,-5754762,108893,23513200,16652362]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-33256173,4144782,-4476029,-6579123,10770039,-7155542,-6650416,-12936300,-18319198,10212860]),$toNativeArray($kindInt32,[2756081,8598110,7383731,-6859892,22312759,-1105012,21179801,2600940,-9988298,-12506466]),$toNativeArray($kindInt32,[-24645692,13317462,-30449259,-15653928,21365574,-10869657,11344424,864440,-2499677,-16710063])),new BI.ptr($toNativeArray($kindInt32,[-26432803,6148329,-17184412,-14474154,18782929,-275997,-22561534,211300,2719757,4940997]),$toNativeArray($kindInt32,[-1323882,3911313,-6948744,14759765,-30027150,7851207,21690126,8518463,26699843,5276295]),$toNativeArray($kindInt32,[-13149873,-6429067,9396249,365013,24703301,-10488939,1321586,149635,-15452774,7159369])),new BI.ptr($toNativeArray($kindInt32,[9987780,-3404759,17507962,9505530,9731535,-2165514,22356009,8312176,22477218,-8403385]),$toNativeArray($kindInt32,[18155857,-16504990,19744716,9006923,15154154,-10538976,24256460,-4864995,-22548173,9334109]),$toNativeArray($kindInt32,[2986088,-4911893,10776628,-3473844,10620590,-7083203,-21413845,14253545,-22587149,536906])),new BI.ptr($toNativeArray($kindInt32,[4377756,8115836,24567078,15495314,11625074,13064599,7390551,10589625,10838060,-15420424]),$toNativeArray($kindInt32,[-19342404,867880,9277171,-3218459,-14431572,-1986443,19295826,-15796950,6378260,699185]),$toNativeArray($kindInt32,[7895026,4057113,-7081772,-13077756,-17886831,-323126,-716039,15693155,-5045064,-13373962])),new BI.ptr($toNativeArray($kindInt32,[-7737563,-5869402,-14566319,-7406919,11385654,13201616,31730678,-10962840,-3918636,-9669325]),$toNativeArray($kindInt32,[10188286,-15770834,-7336361,13427543,22223443,14896287,30743455,7116568,-21786507,5427593]),$toNativeArray($kindInt32,[696102,13206899,27047647,-10632082,15285305,-9853179,10798490,-4578720,19236243,12477404])),new BI.ptr($toNativeArray($kindInt32,[-11229439,11243796,-17054270,-8040865,-788228,-8167967,-3897669,11180504,-23169516,7733644]),$toNativeArray($kindInt32,[17800790,-14036179,-27000429,-11766671,23887827,3149671,23466177,-10538171,10322027,15313801]),$toNativeArray($kindInt32,[26246234,11968874,32263343,-5468728,6830755,-13323031,-15794704,-101982,-24449242,10890804])),new BI.ptr($toNativeArray($kindInt32,[-31365647,10271363,-12660625,-6267268,16690207,-13062544,-14982212,16484931,25180797,-5334884]),$toNativeArray($kindInt32,[-586574,10376444,-32586414,-11286356,19801893,10997610,2276632,9482883,316878,13820577]),$toNativeArray($kindInt32,[-9882808,-4510367,-2115506,16457136,-11100081,11674996,30756178,-7515054,30696930,-3712849])),new BI.ptr($toNativeArray($kindInt32,[32988917,-9603412,12499366,7910787,-10617257,-11931514,-7342816,-9985397,-32349517,7392473]),$toNativeArray($kindInt32,[-8855661,15927861,9866406,-3649411,-2396914,-16655781,-30409476,-9134995,25112947,-2926644]),$toNativeArray($kindInt32,[-2504044,-436966,25621774,-5678772,15085042,-5479877,-24884878,-13526194,5537438,-13914319]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-11225584,2320285,-9584280,10149187,-33444663,5808648,-14876251,-1729667,31234590,6090599]),$toNativeArray($kindInt32,[-9633316,116426,26083934,2897444,-6364437,-2688086,609721,15878753,-6970405,-9034768]),$toNativeArray($kindInt32,[-27757857,247744,-15194774,-9002551,23288161,-10011936,-23869595,6503646,20650474,1804084])),new BI.ptr($toNativeArray($kindInt32,[-27589786,15456424,8972517,8469608,15640622,4439847,3121995,-10329713,27842616,-202328]),$toNativeArray($kindInt32,[-15306973,2839644,22530074,10026331,4602058,5048462,28248656,5031932,-11375082,12714369]),$toNativeArray($kindInt32,[20807691,-7270825,29286141,11421711,-27876523,-13868230,-21227475,1035546,-19733229,12796920])),new BI.ptr($toNativeArray($kindInt32,[12076899,-14301286,-8785001,-11848922,-25012791,16400684,-17591495,-12899438,3480665,-15182815]),$toNativeArray($kindInt32,[-32361549,5457597,28548107,7833186,7303070,-11953545,-24363064,-15921875,-33374054,2771025]),$toNativeArray($kindInt32,[-21389266,421932,26597266,6860826,22486084,-6737172,-17137485,-4210226,-24552282,15673397])),new BI.ptr($toNativeArray($kindInt32,[-20184622,2338216,19788685,-9620956,-4001265,-8740893,-20271184,4733254,3727144,-12934448]),$toNativeArray($kindInt32,[6120119,814863,-11794402,-622716,6812205,-15747771,2019594,7975683,31123697,-10958981]),$toNativeArray($kindInt32,[30069250,-11435332,30434654,2958439,18399564,-976289,12296869,9204260,-16432438,9648165])),new BI.ptr($toNativeArray($kindInt32,[32705432,-1550977,30705658,7451065,-11805606,9631813,3305266,5248604,-26008332,-11377501]),$toNativeArray($kindInt32,[17219865,2375039,-31570947,-5575615,-19459679,9219903,294711,15298639,2662509,-16297073]),$toNativeArray($kindInt32,[-1172927,-7558695,-4366770,-4287744,-21346413,-8434326,32087529,-1222777,32247248,-14389861])),new BI.ptr($toNativeArray($kindInt32,[14312628,1221556,17395390,-8700143,-4945741,-8684635,-28197744,-9637817,-16027623,-13378845]),$toNativeArray($kindInt32,[-1428825,-9678990,-9235681,6549687,-7383069,-468664,23046502,9803137,17597934,2346211]),$toNativeArray($kindInt32,[18510800,15337574,26171504,981392,-22241552,7827556,-23491134,-11323352,3059833,-11782870])),new BI.ptr($toNativeArray($kindInt32,[10141598,6082907,17829293,-1947643,9830092,13613136,-25556636,-5544586,-33502212,3592096]),$toNativeArray($kindInt32,[33114168,-15889352,-26525686,-13343397,33076705,8716171,1151462,1521897,-982665,-6837803]),$toNativeArray($kindInt32,[-32939165,-4255815,23947181,-324178,-33072974,-12305637,-16637686,3891704,26353178,693168])),new BI.ptr($toNativeArray($kindInt32,[30374239,1595580,-16884039,13186931,4600344,406904,9585294,-400668,31375464,14369965]),$toNativeArray($kindInt32,[-14370654,-7772529,1510301,6434173,-18784789,-6262728,32732230,-13108839,17901441,16011505]),$toNativeArray($kindInt32,[18171223,-11934626,-12500402,15197122,-11038147,-15230035,-19172240,-16046376,8764035,12309598]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[5975908,-5243188,-19459362,-9681747,-11541277,14015782,-23665757,1228319,17544096,-10593782]),$toNativeArray($kindInt32,[5811932,-1715293,3442887,-2269310,-18367348,-8359541,-18044043,-15410127,-5565381,12348900]),$toNativeArray($kindInt32,[-31399660,11407555,25755363,6891399,-3256938,14872274,-24849353,8141295,-10632534,-585479])),new BI.ptr($toNativeArray($kindInt32,[-12675304,694026,-5076145,13300344,14015258,-14451394,-9698672,-11329050,30944593,1130208]),$toNativeArray($kindInt32,[8247766,-6710942,-26562381,-7709309,-14401939,-14648910,4652152,2488540,23550156,-271232]),$toNativeArray($kindInt32,[17294316,-3788438,7026748,15626851,22990044,113481,2267737,-5908146,-408818,-137719])),new BI.ptr($toNativeArray($kindInt32,[16091085,-16253926,18599252,7340678,2137637,-1221657,-3364161,14550936,3260525,-7166271]),$toNativeArray($kindInt32,[-4910104,-13332887,18550887,10864893,-16459325,-7291596,-23028869,-13204905,-12748722,2701326]),$toNativeArray($kindInt32,[-8574695,16099415,4629974,-16340524,-20786213,-6005432,-10018363,9276971,11329923,1862132])),new BI.ptr($toNativeArray($kindInt32,[14763076,-15903608,-30918270,3689867,3511892,10313526,-21951088,12219231,-9037963,-940300]),$toNativeArray($kindInt32,[8894987,-3446094,6150753,3013931,301220,15693451,-31981216,-2909717,-15438168,11595570]),$toNativeArray($kindInt32,[15214962,3537601,-26238722,-14058872,4418657,-15230761,13947276,10730794,-13489462,-4363670])),new BI.ptr($toNativeArray($kindInt32,[-2538306,7682793,32759013,263109,-29984731,-7955452,-22332124,-10188635,977108,699994]),$toNativeArray($kindInt32,[-12466472,4195084,-9211532,550904,-15565337,12917920,19118110,-439841,-30534533,-14337913]),$toNativeArray($kindInt32,[31788461,-14507657,4799989,7372237,8808585,-14747943,9408237,-10051775,12493932,-5409317])),new BI.ptr($toNativeArray($kindInt32,[-25680606,5260744,-19235809,-6284470,-3695942,16566087,27218280,2607121,29375955,6024730]),$toNativeArray($kindInt32,[842132,-2794693,-4763381,-8722815,26332018,-12405641,11831880,6985184,-9940361,2854096]),$toNativeArray($kindInt32,[-4847262,-7969331,2516242,-5847713,9695691,-7221186,16512645,960770,12121869,16648078])),new BI.ptr($toNativeArray($kindInt32,[-15218652,14667096,-13336229,2013717,30598287,-464137,-31504922,-7882064,20237806,2838411]),$toNativeArray($kindInt32,[-19288047,4453152,15298546,-16178388,22115043,-15972604,12544294,-13470457,1068881,-12499905]),$toNativeArray($kindInt32,[-9558883,-16518835,33238498,13506958,30505848,-1114596,-8486907,-2630053,12521378,4845654])),new BI.ptr($toNativeArray($kindInt32,[-28198521,10744108,-2958380,10199664,7759311,-13088600,3409348,-873400,-6482306,-12885870]),$toNativeArray($kindInt32,[-23561822,6230156,-20382013,10655314,-24040585,-11621172,10477734,-1240216,-3113227,13974498]),$toNativeArray($kindInt32,[12966261,15550616,-32038948,-1615346,21025980,-629444,5642325,7188737,18895762,12629579]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[14741879,-14946887,22177208,-11721237,1279741,8058600,11758140,789443,32195181,3895677]),$toNativeArray($kindInt32,[10758205,15755439,-4509950,9243698,-4879422,6879879,-2204575,-3566119,-8982069,4429647]),$toNativeArray($kindInt32,[-2453894,15725973,-20436342,-10410672,-5803908,-11040220,-7135870,-11642895,18047436,-15281743])),new BI.ptr($toNativeArray($kindInt32,[-25173001,-11307165,29759956,11776784,-22262383,-15820455,10993114,-12850837,-17620701,-9408468]),$toNativeArray($kindInt32,[21987233,700364,-24505048,14972008,-7774265,-5718395,32155026,2581431,-29958985,8773375]),$toNativeArray($kindInt32,[-25568350,454463,-13211935,16126715,25240068,8594567,20656846,12017935,-7874389,-13920155])),new BI.ptr($toNativeArray($kindInt32,[6028182,6263078,-31011806,-11301710,-818919,2461772,-31841174,-5468042,-1721788,-2776725]),$toNativeArray($kindInt32,[-12278994,16624277,987579,-5922598,32908203,1248608,7719845,-4166698,28408820,6816612]),$toNativeArray($kindInt32,[-10358094,-8237829,19549651,-12169222,22082623,16147817,20613181,13982702,-10339570,5067943])),new BI.ptr($toNativeArray($kindInt32,[-30505967,-3821767,12074681,13582412,-19877972,2443951,-19719286,12746132,5331210,-10105944]),$toNativeArray($kindInt32,[30528811,3601899,-1957090,4619785,-27361822,-15436388,24180793,-12570394,27679908,-1648928]),$toNativeArray($kindInt32,[9402404,-13957065,32834043,10838634,-26580150,-13237195,26653274,-8685565,22611444,-12715406])),new BI.ptr($toNativeArray($kindInt32,[22190590,1118029,22736441,15130463,-30460692,-5991321,19189625,-4648942,4854859,6622139]),$toNativeArray($kindInt32,[-8310738,-2953450,-8262579,-3388049,-10401731,-271929,13424426,-3567227,26404409,13001963]),$toNativeArray($kindInt32,[-31241838,-15415700,-2994250,8939346,11562230,-12840670,-26064365,-11621720,-15405155,11020693])),new BI.ptr($toNativeArray($kindInt32,[1866042,-7949489,-7898649,-10301010,12483315,13477547,3175636,-12424163,28761762,1406734]),$toNativeArray($kindInt32,[-448555,-1777666,13018551,3194501,-9580420,-11161737,24760585,-4347088,25577411,-13378680]),$toNativeArray($kindInt32,[-24290378,4759345,-690653,-1852816,2066747,10693769,-29595790,9884936,-9368926,4745410])),new BI.ptr($toNativeArray($kindInt32,[-9141284,6049714,-19531061,-4341411,-31260798,9944276,-15462008,-11311852,10931924,-11931931]),$toNativeArray($kindInt32,[-16561513,14112680,-8012645,4817318,-8040464,-11414606,-22853429,10856641,-20470770,13434654]),$toNativeArray($kindInt32,[22759489,-10073434,-16766264,-1871422,13637442,-10168091,1765144,-12654326,28445307,-5364710])),new BI.ptr($toNativeArray($kindInt32,[29875063,12493613,2795536,-3786330,1710620,15181182,-10195717,-8788675,9074234,1167180]),$toNativeArray($kindInt32,[-26205683,11014233,-9842651,-2635485,-26908120,7532294,-18716888,-9535498,3843903,9367684]),$toNativeArray($kindInt32,[-10969595,-6403711,9591134,9582310,11349256,108879,16235123,8601684,-139197,4242895]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[22092954,-13191123,-2042793,-11968512,32186753,-11517388,-6574341,2470660,-27417366,16625501]),$toNativeArray($kindInt32,[-11057722,3042016,13770083,-9257922,584236,-544855,-7770857,2602725,-27351616,14247413]),$toNativeArray($kindInt32,[6314175,-10264892,-32772502,15957557,-10157730,168750,-8618807,14290061,27108877,-1180880])),new BI.ptr($toNativeArray($kindInt32,[-8586597,-7170966,13241782,10960156,-32991015,-13794596,33547976,-11058889,-27148451,981874]),$toNativeArray($kindInt32,[22833440,9293594,-32649448,-13618667,-9136966,14756819,-22928859,-13970780,-10479804,-16197962]),$toNativeArray($kindInt32,[-7768587,3326786,-28111797,10783824,19178761,14905060,22680049,13906969,-15933690,3797899])),new BI.ptr($toNativeArray($kindInt32,[21721356,-4212746,-12206123,9310182,-3882239,-13653110,23740224,-2709232,20491983,-8042152]),$toNativeArray($kindInt32,[9209270,-15135055,-13256557,-6167798,-731016,15289673,25947805,15286587,30997318,-6703063]),$toNativeArray($kindInt32,[7392032,16618386,23946583,-8039892,-13265164,-1533858,-14197445,-2321576,17649998,-250080])),new BI.ptr($toNativeArray($kindInt32,[-9301088,-14193827,30609526,-3049543,-25175069,-1283752,-15241566,-9525724,-2233253,7662146]),$toNativeArray($kindInt32,[-17558673,1763594,-33114336,15908610,-30040870,-12174295,7335080,-8472199,-3174674,3440183]),$toNativeArray($kindInt32,[-19889700,-5977008,-24111293,-9688870,10799743,-16571957,40450,-4431835,4862400,1133])),new BI.ptr($toNativeArray($kindInt32,[-32856209,-7873957,-5422389,14860950,-16319031,7956142,7258061,311861,-30594991,-7379421]),$toNativeArray($kindInt32,[-3773428,-1565936,28985340,7499440,24445838,9325937,29727763,16527196,18278453,15405622]),$toNativeArray($kindInt32,[-4381906,8508652,-19898366,-3674424,-5984453,15149970,-13313598,843523,-21875062,13626197])),new BI.ptr($toNativeArray($kindInt32,[2281448,-13487055,-10915418,-2609910,1879358,16164207,-10783882,3953792,13340839,15928663]),$toNativeArray($kindInt32,[31727126,-7179855,-18437503,-8283652,2875793,-16390330,-25269894,-7014826,-23452306,5964753]),$toNativeArray($kindInt32,[4100420,-5959452,-17179337,6017714,-18705837,12227141,-26684835,11344144,2538215,-7570755])),new BI.ptr($toNativeArray($kindInt32,[-9433605,6123113,11159803,-2156608,30016280,14966241,-20474983,1485421,-629256,-15958862]),$toNativeArray($kindInt32,[-26804558,4260919,11851389,9658551,-32017107,16367492,-20205425,-13191288,11659922,-11115118]),$toNativeArray($kindInt32,[26180396,10015009,-30844224,-8581293,5418197,9480663,2231568,-10170080,33100372,-1306171])),new BI.ptr($toNativeArray($kindInt32,[15121113,-5201871,-10389905,15427821,-27509937,-15992507,21670947,4486675,-5931810,-14466380]),$toNativeArray($kindInt32,[16166486,-9483733,-11104130,6023908,-31926798,-1364923,2340060,-16254968,-10735770,-10039824]),$toNativeArray($kindInt32,[28042865,-3557089,-12126526,12259706,-3717498,-6945899,6766453,-8689599,18036436,5803270]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-817581,6763912,11803561,1585585,10958447,-2671165,23855391,4598332,-6159431,-14117438]),$toNativeArray($kindInt32,[-31031306,-14256194,17332029,-2383520,31312682,-5967183,696309,50292,-20095739,11763584]),$toNativeArray($kindInt32,[-594563,-2514283,-32234153,12643980,12650761,14811489,665117,-12613632,-19773211,-10713562])),new BI.ptr($toNativeArray($kindInt32,[30464590,-11262872,-4127476,-12734478,19835327,-7105613,-24396175,2075773,-17020157,992471]),$toNativeArray($kindInt32,[18357185,-6994433,7766382,16342475,-29324918,411174,14578841,8080033,-11574335,-10601610]),$toNativeArray($kindInt32,[19598397,10334610,12555054,2555664,18821899,-10339780,21873263,16014234,26224780,16452269])),new BI.ptr($toNativeArray($kindInt32,[-30223925,5145196,5944548,16385966,3976735,2009897,-11377804,-7618186,-20533829,3698650]),$toNativeArray($kindInt32,[14187449,3448569,-10636236,-10810935,-22663880,-3433596,7268410,-10890444,27394301,12015369]),$toNativeArray($kindInt32,[19695761,16087646,28032085,12999827,6817792,11427614,20244189,-1312777,-13259127,-3402461])),new BI.ptr($toNativeArray($kindInt32,[30860103,12735208,-1888245,-4699734,-16974906,2256940,-8166013,12298312,-8550524,-10393462]),$toNativeArray($kindInt32,[-5719826,-11245325,-1910649,15569035,26642876,-7587760,-5789354,-15118654,-4976164,12651793]),$toNativeArray($kindInt32,[-2848395,9953421,11531313,-5282879,26895123,-12697089,-13118820,-16517902,9768698,-2533218])),new BI.ptr($toNativeArray($kindInt32,[-24719459,1894651,-287698,-4704085,15348719,-8156530,32767513,12765450,4940095,10678226]),$toNativeArray($kindInt32,[18860224,15980149,-18987240,-1562570,-26233012,-11071856,-7843882,13944024,-24372348,16582019]),$toNativeArray($kindInt32,[-15504260,4970268,-29893044,4175593,-20993212,-2199756,-11704054,15444560,-11003761,7989037])),new BI.ptr($toNativeArray($kindInt32,[31490452,5568061,-2412803,2182383,-32336847,4531686,-32078269,6200206,-19686113,-14800171]),$toNativeArray($kindInt32,[-17308668,-15879940,-31522777,-2831,-32887382,16375549,8680158,-16371713,28550068,-6857132]),$toNativeArray($kindInt32,[-28126887,-5688091,16837845,-1820458,-6850681,12700016,-30039981,4364038,1155602,5988841])),new BI.ptr($toNativeArray($kindInt32,[21890435,-13272907,-12624011,12154349,-7831873,15300496,23148983,-4470481,24618407,8283181]),$toNativeArray($kindInt32,[-33136107,-10512751,9975416,6841041,-31559793,16356536,3070187,-7025928,1466169,10740210]),$toNativeArray($kindInt32,[-1509399,-15488185,-13503385,-10655916,32799044,909394,-13938903,-5779719,-32164649,-15327040])),new BI.ptr($toNativeArray($kindInt32,[3960823,-14267803,-28026090,-15918051,-19404858,13146868,15567327,951507,-3260321,-573935]),$toNativeArray($kindInt32,[24740841,5052253,-30094131,8961361,25877428,6165135,-24368180,14397372,-7380369,-6144105]),$toNativeArray($kindInt32,[-28888365,3510803,-28103278,-1158478,-11238128,-10631454,-15441463,-14453128,-1625486,-6494814]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[793299,-9230478,8836302,-6235707,-27360908,-2369593,33152843,-4885251,-9906200,-621852]),$toNativeArray($kindInt32,[5666233,525582,20782575,-8038419,-24538499,14657740,16099374,1468826,-6171428,-15186581]),$toNativeArray($kindInt32,[-4859255,-3779343,-2917758,-6748019,7778750,11688288,-30404353,-9871238,-1558923,-9863646])),new BI.ptr($toNativeArray($kindInt32,[10896332,-7719704,824275,472601,-19460308,3009587,25248958,14783338,-30581476,-15757844]),$toNativeArray($kindInt32,[10566929,12612572,-31944212,11118703,-12633376,12362879,21752402,8822496,24003793,14264025]),$toNativeArray($kindInt32,[27713862,-7355973,-11008240,9227530,27050101,2504721,23886875,-13117525,13958495,-5732453])),new BI.ptr($toNativeArray($kindInt32,[-23481610,4867226,-27247128,3900521,29838369,-8212291,-31889399,-10041781,7340521,-15410068]),$toNativeArray($kindInt32,[4646514,-8011124,-22766023,-11532654,23184553,8566613,31366726,-1381061,-15066784,-10375192]),$toNativeArray($kindInt32,[-17270517,12723032,-16993061,14878794,21619651,-6197576,27584817,3093888,-8843694,3849921])),new BI.ptr($toNativeArray($kindInt32,[-9064912,2103172,25561640,-15125738,-5239824,9582958,32477045,-9017955,5002294,-15550259]),$toNativeArray($kindInt32,[-12057553,-11177906,21115585,-13365155,8808712,-12030708,16489530,13378448,-25845716,12741426]),$toNativeArray($kindInt32,[-5946367,10645103,-30911586,15390284,-3286982,-7118677,24306472,15852464,28834118,-7646072])),new BI.ptr($toNativeArray($kindInt32,[-17335748,-9107057,-24531279,9434953,-8472084,-583362,-13090771,455841,20461858,5491305]),$toNativeArray($kindInt32,[13669248,-16095482,-12481974,-10203039,-14569770,-11893198,-24995986,11293807,-28588204,-9421832]),$toNativeArray($kindInt32,[28497928,6272777,-33022994,14470570,8906179,-1225630,18504674,-14165166,29867745,-8795943])),new BI.ptr($toNativeArray($kindInt32,[-16207023,13517196,-27799630,-13697798,24009064,-6373891,-6367600,-13175392,22853429,-4012011]),$toNativeArray($kindInt32,[24191378,16712145,-13931797,15217831,14542237,1646131,18603514,-11037887,12876623,-2112447]),$toNativeArray($kindInt32,[17902668,4518229,-411702,-2829247,26878217,5258055,-12860753,608397,16031844,3723494])),new BI.ptr($toNativeArray($kindInt32,[-28632773,12763728,-20446446,7577504,33001348,-13017745,17558842,-7872890,23896954,-4314245]),$toNativeArray($kindInt32,[-20005381,-12011952,31520464,605201,2543521,5991821,-2945064,7229064,-9919646,-8826859]),$toNativeArray($kindInt32,[28816045,298879,-28165016,-15920938,19000928,-1665890,-12680833,-2949325,-18051778,-2082915])),new BI.ptr($toNativeArray($kindInt32,[16000882,-344896,3493092,-11447198,-29504595,-13159789,12577740,16041268,-19715240,7847707]),$toNativeArray($kindInt32,[10151868,10572098,27312476,7922682,14825339,4723128,-32855931,-6519018,-10020567,3852848]),$toNativeArray($kindInt32,[-11430470,15697596,-21121557,-4420647,5386314,15063598,16514493,-15932110,29330899,-15076224]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-25499735,-4378794,-15222908,-6901211,16615731,2051784,3303702,15490,-27548796,12314391]),$toNativeArray($kindInt32,[15683520,-6003043,18109120,-9980648,15337968,-5997823,-16717435,15921866,16103996,-3731215]),$toNativeArray($kindInt32,[-23169824,-10781249,13588192,-1628807,-3798557,-1074929,-19273607,5402699,-29815713,-9841101])),new BI.ptr($toNativeArray($kindInt32,[23190676,2384583,-32714340,3462154,-29903655,-1529132,-11266856,8911517,-25205859,2739713]),$toNativeArray($kindInt32,[21374101,-3554250,-33524649,9874411,15377179,11831242,-33529904,6134907,4931255,11987849]),$toNativeArray($kindInt32,[-7732,-2978858,-16223486,7277597,105524,-322051,-31480539,13861388,-30076310,10117930])),new BI.ptr($toNativeArray($kindInt32,[-29501170,-10744872,-26163768,13051539,-25625564,5089643,-6325503,6704079,12890019,15728940]),$toNativeArray($kindInt32,[-21972360,-11771379,-951059,-4418840,14704840,2695116,903376,-10428139,12885167,8311031]),$toNativeArray($kindInt32,[-17516482,5352194,10384213,-13811658,7506451,13453191,26423267,4384730,1888765,-5435404])),new BI.ptr($toNativeArray($kindInt32,[-25817338,-3107312,-13494599,-3182506,30896459,-13921729,-32251644,-12707869,-19464434,-3340243]),$toNativeArray($kindInt32,[-23607977,-2665774,-526091,4651136,5765089,4618330,6092245,14845197,17151279,-9854116]),$toNativeArray($kindInt32,[-24830458,-12733720,-15165978,10367250,-29530908,-265356,22825805,-7087279,-16866484,16176525])),new BI.ptr($toNativeArray($kindInt32,[-23583256,6564961,20063689,3798228,-4740178,7359225,2006182,-10363426,-28746253,-10197509]),$toNativeArray($kindInt32,[-10626600,-4486402,-13320562,-5125317,3432136,-6393229,23632037,-1940610,32808310,1099883]),$toNativeArray($kindInt32,[15030977,5768825,-27451236,-2887299,-6427378,-15361371,-15277896,-6809350,2051441,-15225865])),new BI.ptr($toNativeArray($kindInt32,[-3362323,-7239372,7517890,9824992,23555850,295369,5148398,-14154188,-22686354,16633660]),$toNativeArray($kindInt32,[4577086,-16752288,13249841,-15304328,19958763,-14537274,18559670,-10759549,8402478,-9864273]),$toNativeArray($kindInt32,[-28406330,-1051581,-26790155,-907698,-17212414,-11030789,9453451,-14980072,17983010,9967138])),new BI.ptr($toNativeArray($kindInt32,[-25762494,6524722,26585488,9969270,24709298,1220360,-1677990,7806337,17507396,3651560]),$toNativeArray($kindInt32,[-10420457,-4118111,14584639,15971087,-15768321,8861010,26556809,-5574557,-18553322,-11357135]),$toNativeArray($kindInt32,[2839101,14284142,4029895,3472686,14402957,12689363,-26642121,8459447,-5605463,-7621941])),new BI.ptr($toNativeArray($kindInt32,[-4839289,-3535444,9744961,2871048,25113978,3187018,-25110813,-849066,17258084,-7977739]),$toNativeArray($kindInt32,[18164541,-10595176,-17154882,-1542417,19237078,-9745295,23357533,-15217008,26908270,12150756]),$toNativeArray($kindInt32,[-30264870,-7647865,5112249,-7036672,-1499807,-6974257,43168,-5537701,-32302074,16215819]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-6898905,9824394,-12304779,-4401089,-31397141,-6276835,32574489,12532905,-7503072,-8675347]),$toNativeArray($kindInt32,[-27343522,-16515468,-27151524,-10722951,946346,16291093,254968,7168080,21676107,-1943028]),$toNativeArray($kindInt32,[21260961,-8424752,-16831886,-11920822,-23677961,3968121,-3651949,-6215466,-3556191,-7913075])),new BI.ptr($toNativeArray($kindInt32,[16544754,13250366,-16804428,15546242,-4583003,12757258,-2462308,-8680336,-18907032,-9662799]),$toNativeArray($kindInt32,[-2415239,-15577728,18312303,4964443,-15272530,-12653564,26820651,16690659,25459437,-4564609]),$toNativeArray($kindInt32,[-25144690,11425020,28423002,-11020557,-6144921,-15826224,9142795,-2391602,-6432418,-1644817])),new BI.ptr($toNativeArray($kindInt32,[-23104652,6253476,16964147,-3768872,-25113972,-12296437,-27457225,-16344658,6335692,7249989]),$toNativeArray($kindInt32,[-30333227,13979675,7503222,-12368314,-11956721,-4621693,-30272269,2682242,25993170,-12478523]),$toNativeArray($kindInt32,[4364628,5930691,32304656,-10044554,-8054781,15091131,22857016,-10598955,31820368,15075278])),new BI.ptr($toNativeArray($kindInt32,[31879134,-8918693,17258761,90626,-8041836,-4917709,24162788,-9650886,-17970238,12833045]),$toNativeArray($kindInt32,[19073683,14851414,-24403169,-11860168,7625278,11091125,-19619190,2074449,-9413939,14905377]),$toNativeArray($kindInt32,[24483667,-11935567,-2518866,-11547418,-1553130,15355506,-25282080,9253129,27628530,-7555480])),new BI.ptr($toNativeArray($kindInt32,[17597607,8340603,19355617,552187,26198470,-3176583,4593324,-9157582,-14110875,15297016]),$toNativeArray($kindInt32,[510886,14337390,-31785257,16638632,6328095,2713355,-20217417,-11864220,8683221,2921426]),$toNativeArray($kindInt32,[18606791,11874196,27155355,-5281482,-24031742,6265446,-25178240,-1278924,4674690,13890525])),new BI.ptr($toNativeArray($kindInt32,[13609624,13069022,-27372361,-13055908,24360586,9592974,14977157,9835105,4389687,288396]),$toNativeArray($kindInt32,[9922506,-519394,13613107,5883594,-18758345,-434263,-12304062,8317628,23388070,16052080]),$toNativeArray($kindInt32,[12720016,11937594,-31970060,-5028689,26900120,8561328,-20155687,-11632979,-14754271,-10812892])),new BI.ptr($toNativeArray($kindInt32,[15961858,14150409,26716931,-665832,-22794328,13603569,11829573,7467844,-28822128,929275]),$toNativeArray($kindInt32,[11038231,-11582396,-27310482,-7316562,-10498527,-16307831,-23479533,-9371869,-21393143,2465074]),$toNativeArray($kindInt32,[20017163,-4323226,27915242,1529148,12396362,15675764,13817261,-9658066,2463391,-4622140])),new BI.ptr($toNativeArray($kindInt32,[-16358878,-12663911,-12065183,4996454,-1256422,1073572,9583558,12851107,4003896,12673717]),$toNativeArray($kindInt32,[-1731589,-15155870,-3262930,16143082,19294135,13385325,14741514,-9103726,7903886,2348101]),$toNativeArray($kindInt32,[24536016,-16515207,12715592,-3862155,1511293,10047386,-3842346,-7129159,-28377538,10048127]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-12622226,-6204820,30718825,2591312,-10617028,12192840,18873298,-7297090,-32297756,15221632]),$toNativeArray($kindInt32,[-26478122,-11103864,11546244,-1852483,9180880,7656409,-21343950,2095755,29769758,6593415]),$toNativeArray($kindInt32,[-31994208,-2907461,4176912,3264766,12538965,-868111,26312345,-6118678,30958054,8292160])),new BI.ptr($toNativeArray($kindInt32,[31429822,-13959116,29173532,15632448,12174511,-2760094,32808831,3977186,26143136,-3148876]),$toNativeArray($kindInt32,[22648901,1402143,-22799984,13746059,7936347,365344,-8668633,-1674433,-3758243,-2304625]),$toNativeArray($kindInt32,[-15491917,8012313,-2514730,-12702462,-23965846,-10254029,-1612713,-1535569,-16664475,8194478])),new BI.ptr($toNativeArray($kindInt32,[27338066,-7507420,-7414224,10140405,-19026427,-6589889,27277191,8855376,28572286,3005164]),$toNativeArray($kindInt32,[26287124,4821776,25476601,-4145903,-3764513,-15788984,-18008582,1182479,-26094821,-13079595]),$toNativeArray($kindInt32,[-7171154,3178080,23970071,6201893,-17195577,-4489192,-21876275,-13982627,32208683,-1198248])),new BI.ptr($toNativeArray($kindInt32,[-16657702,2817643,-10286362,14811298,6024667,13349505,-27315504,-10497842,-27672585,-11539858]),$toNativeArray($kindInt32,[15941029,-9405932,-21367050,8062055,31876073,-238629,-15278393,-1444429,15397331,-4130193]),$toNativeArray($kindInt32,[8934485,-13485467,-23286397,-13423241,-32446090,14047986,31170398,-1441021,-27505566,15087184])),new BI.ptr($toNativeArray($kindInt32,[-18357243,-2156491,24524913,-16677868,15520427,-6360776,-15502406,11461896,16788528,-5868942]),$toNativeArray($kindInt32,[-1947386,16013773,21750665,3714552,-17401782,-16055433,-3770287,-10323320,31322514,-11615635]),$toNativeArray($kindInt32,[21426655,-5650218,-13648287,-5347537,-28812189,-4920970,-18275391,-14621414,13040862,-12112948])),new BI.ptr($toNativeArray($kindInt32,[11293895,12478086,-27136401,15083750,-29307421,14748872,14555558,-13417103,1613711,4896935]),$toNativeArray($kindInt32,[-25894883,15323294,-8489791,-8057900,25967126,-13425460,2825960,-4897045,-23971776,-11267415]),$toNativeArray($kindInt32,[-15924766,-5229880,-17443532,6410664,3622847,10243618,20615400,12405433,-23753030,-8436416])),new BI.ptr($toNativeArray($kindInt32,[-7091295,12556208,-20191352,9025187,-17072479,4333801,4378436,2432030,23097949,-566018]),$toNativeArray($kindInt32,[4565804,-16025654,20084412,-7842817,1724999,189254,24767264,10103221,-18512313,2424778]),$toNativeArray($kindInt32,[366633,-11976806,8173090,-6890119,30788634,5745705,-7168678,1344109,-3642553,12412659])),new BI.ptr($toNativeArray($kindInt32,[-24001791,7690286,14929416,-168257,-32210835,-13412986,24162697,-15326504,-3141501,11179385]),$toNativeArray($kindInt32,[18289522,-14724954,8056945,16430056,-21729724,7842514,-6001441,-1486897,-18684645,-11443503]),$toNativeArray($kindInt32,[476239,6601091,-6152790,-9723375,17503545,-4863900,27672959,13403813,11052904,5219329]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[20678546,-8375738,-32671898,8849123,-5009758,14574752,31186971,-3973730,9014762,-8579056]),$toNativeArray($kindInt32,[-13644050,-10350239,-15962508,5075808,-1514661,-11534600,-33102500,9160280,8473550,-3256838]),$toNativeArray($kindInt32,[24900749,14435722,17209120,-15292541,-22592275,9878983,-7689309,-16335821,-24568481,11788948])),new BI.ptr($toNativeArray($kindInt32,[-3118155,-11395194,-13802089,14797441,9652448,-6845904,-20037437,10410733,-24568470,-1458691]),$toNativeArray($kindInt32,[-15659161,16736706,-22467150,10215878,-9097177,7563911,11871841,-12505194,-18513325,8464118]),$toNativeArray($kindInt32,[-23400612,8348507,-14585951,-861714,-3950205,-6373419,14325289,8628612,33313881,-8370517])),new BI.ptr($toNativeArray($kindInt32,[-20186973,-4967935,22367356,5271547,-1097117,-4788838,-24805667,-10236854,-8940735,-5818269]),$toNativeArray($kindInt32,[-6948785,-1795212,-32625683,-16021179,32635414,-7374245,15989197,-12838188,28358192,-4253904]),$toNativeArray($kindInt32,[-23561781,-2799059,-32351682,-1661963,-9147719,10429267,-16637684,4072016,-5351664,5596589])),new BI.ptr($toNativeArray($kindInt32,[-28236598,-3390048,12312896,6213178,3117142,16078565,29266239,2557221,1768301,15373193]),$toNativeArray($kindInt32,[-7243358,-3246960,-4593467,-7553353,-127927,-912245,-1090902,-4504991,-24660491,3442910]),$toNativeArray($kindInt32,[-30210571,5124043,14181784,8197961,18964734,-11939093,22597931,7176455,-18585478,13365930])),new BI.ptr($toNativeArray($kindInt32,[-7877390,-1499958,8324673,4690079,6261860,890446,24538107,-8570186,-9689599,-3031667]),$toNativeArray($kindInt32,[25008904,-10771599,-4305031,-9638010,16265036,15721635,683793,-11823784,15723479,-15163481]),$toNativeArray($kindInt32,[-9660625,12374379,-27006999,-7026148,-7724114,-12314514,11879682,5400171,519526,-1235876])),new BI.ptr($toNativeArray($kindInt32,[22258397,-16332233,-7869817,14613016,-22520255,-2950923,-20353881,7315967,16648397,7605640]),$toNativeArray($kindInt32,[-8081308,-8464597,-8223311,9719710,19259459,-15348212,23994942,-5281555,-9468848,4763278]),$toNativeArray($kindInt32,[-21699244,9220969,-15730624,1084137,-25476107,-2852390,31088447,-7764523,-11356529,728112])),new BI.ptr($toNativeArray($kindInt32,[26047220,-11751471,-6900323,-16521798,24092068,9158119,-4273545,-12555558,-29365436,-5498272]),$toNativeArray($kindInt32,[17510331,-322857,5854289,8403524,17133918,-3112612,-28111007,12327945,10750447,10014012]),$toNativeArray($kindInt32,[-10312768,3936952,9156313,-8897683,16498692,-994647,-27481051,-666732,3424691,7540221])),new BI.ptr($toNativeArray($kindInt32,[30322361,-6964110,11361005,-4143317,7433304,4989748,-7071422,-16317219,-9244265,15258046]),$toNativeArray($kindInt32,[13054562,-2779497,19155474,469045,-12482797,4566042,5631406,2711395,1062915,-5136345]),$toNativeArray($kindInt32,[-19240248,-11254599,-29509029,-7499965,-5835763,13005411,-6066489,12194497,32960380,1459310]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[19852034,7027924,23669353,10020366,8586503,-6657907,394197,-6101885,18638003,-11174937]),$toNativeArray($kindInt32,[31395534,15098109,26581030,8030562,-16527914,-5007134,9012486,-7584354,-6643087,-5442636]),$toNativeArray($kindInt32,[-9192165,-2347377,-1997099,4529534,25766844,607986,-13222,9677543,-32294889,-6456008])),new BI.ptr($toNativeArray($kindInt32,[-2444496,-149937,29348902,8186665,1873760,12489863,-30934579,-7839692,-7852844,-8138429]),$toNativeArray($kindInt32,[-15236356,-15433509,7766470,746860,26346930,-10221762,-27333451,10754588,-9431476,5203576]),$toNativeArray($kindInt32,[31834314,14135496,-770007,5159118,20917671,-16768096,-7467973,-7337524,31809243,7347066])),new BI.ptr($toNativeArray($kindInt32,[-9606723,-11874240,20414459,13033986,13716524,-11691881,19797970,-12211255,15192876,-2087490]),$toNativeArray($kindInt32,[-12663563,-2181719,1168162,-3804809,26747877,-14138091,10609330,12694420,33473243,-13382104]),$toNativeArray($kindInt32,[33184999,11180355,15832085,-11385430,-1633671,225884,15089336,-11023903,-6135662,14480053])),new BI.ptr($toNativeArray($kindInt32,[31308717,-5619998,31030840,-1897099,15674547,-6582883,5496208,13685227,27595050,8737275]),$toNativeArray($kindInt32,[-20318852,-15150239,10933843,-16178022,8335352,-7546022,-31008351,-12610604,26498114,66511]),$toNativeArray($kindInt32,[22644454,-8761729,-16671776,4884562,-3105614,-13559366,30540766,-4286747,-13327787,-7515095])),new BI.ptr($toNativeArray($kindInt32,[-28017847,9834845,18617207,-2681312,-3401956,-13307506,8205540,13585437,-17127465,15115439]),$toNativeArray($kindInt32,[23711543,-672915,31206561,-8362711,6164647,-9709987,-33535882,-1426096,8236921,16492939]),$toNativeArray($kindInt32,[-23910559,-13515526,-26299483,-4503841,25005590,-7687270,19574902,10071562,6708380,-6222424])),new BI.ptr($toNativeArray($kindInt32,[2101391,-4930054,19702731,2367575,-15427167,1047675,5301017,9328700,29955601,-11678310]),$toNativeArray($kindInt32,[3096359,9271816,-21620864,-15521844,-14847996,-7592937,-25892142,-12635595,-9917575,6216608]),$toNativeArray($kindInt32,[-32615849,338663,-25195611,2510422,-29213566,-13820213,24822830,-6146567,-26767480,7525079])),new BI.ptr($toNativeArray($kindInt32,[-23066649,-13985623,16133487,-7896178,-3389565,778788,-910336,-2782495,-19386633,11994101]),$toNativeArray($kindInt32,[21691500,-13624626,-641331,-14367021,3285881,-3483596,-25064666,9718258,-7477437,13381418]),$toNativeArray($kindInt32,[18445390,-4202236,14979846,11622458,-1727110,-3582980,23111648,-6375247,28535282,15779576])),new BI.ptr($toNativeArray($kindInt32,[30098053,3089662,-9234387,16662135,-21306940,11308411,-14068454,12021730,9955285,-16303356]),$toNativeArray($kindInt32,[9734894,-14576830,-7473633,-9138735,2060392,11313496,-18426029,9924399,20194861,13380996]),$toNativeArray($kindInt32,[-26378102,-7965207,-22167821,15789297,-18055342,-6168792,-1984914,15707771,26342023,10146099]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[-26016874,-219943,21339191,-41388,19745256,-2878700,-29637280,2227040,21612326,-545728]),$toNativeArray($kindInt32,[-13077387,1184228,23562814,-5970442,-20351244,-6348714,25764461,12243797,-20856566,11649658]),$toNativeArray($kindInt32,[-10031494,11262626,27384172,2271902,26947504,-15997771,39944,6114064,33514190,2333242])),new BI.ptr($toNativeArray($kindInt32,[-21433588,-12421821,8119782,7219913,-21830522,-9016134,-6679750,-12670638,24350578,-13450001]),$toNativeArray($kindInt32,[-4116307,-11271533,-23886186,4843615,-30088339,690623,-31536088,-10406836,8317860,12352766]),$toNativeArray($kindInt32,[18200138,-14475911,-33087759,-2696619,-23702521,-9102511,-23552096,-2287550,20712163,6719373])),new BI.ptr($toNativeArray($kindInt32,[26656208,6075253,-7858556,1886072,-28344043,4262326,11117530,-3763210,26224235,-3297458]),$toNativeArray($kindInt32,[-17168938,-14854097,-3395676,-16369877,-19954045,14050420,21728352,9493610,18620611,-16428628]),$toNativeArray($kindInt32,[-13323321,13325349,11432106,5964811,18609221,6062965,-5269471,-9725556,-30701573,-16479657])),new BI.ptr($toNativeArray($kindInt32,[-23860538,-11233159,26961357,1640861,-32413112,-16737940,12248509,-5240639,13735342,1934062]),$toNativeArray($kindInt32,[25089769,6742589,17081145,-13406266,21909293,-16067981,-15136294,-3765346,-21277997,5473616]),$toNativeArray($kindInt32,[31883677,-7961101,1083432,-11572403,22828471,13290673,-7125085,12469656,29111212,-5451014])),new BI.ptr($toNativeArray($kindInt32,[24244947,-15050407,-26262976,2791540,-14997599,16666678,24367466,6388839,-10295587,452383]),$toNativeArray($kindInt32,[-25640782,-3417841,5217916,16224624,19987036,-4082269,-24236251,-5915248,15766062,8407814]),$toNativeArray($kindInt32,[-20406999,13990231,15495425,16395525,5377168,15166495,-8917023,-4388953,-8067909,2276718])),new BI.ptr($toNativeArray($kindInt32,[30157918,12924066,-17712050,9245753,19895028,3368142,-23827587,5096219,22740376,-7303417]),$toNativeArray($kindInt32,[2041139,-14256350,7783687,13876377,-25946985,-13352459,24051124,13742383,-15637599,13295222]),$toNativeArray($kindInt32,[33338237,-8505733,12532113,7977527,9106186,-1715251,-17720195,-4612972,-4451357,-14669444])),new BI.ptr($toNativeArray($kindInt32,[-20045281,5454097,-14346548,6447146,28862071,1883651,-2469266,-4141880,7770569,9620597]),$toNativeArray($kindInt32,[23208068,7979712,33071466,8149229,1758231,-10834995,30945528,-1694323,-33502340,-14767970]),$toNativeArray($kindInt32,[1439958,-16270480,-1079989,-793782,4625402,10647766,-5043801,1220118,30494170,-11440799])),new BI.ptr($toNativeArray($kindInt32,[-5037580,-13028295,-2970559,-3061767,15640974,-6701666,-26739026,926050,-1684339,-13333647]),$toNativeArray($kindInt32,[13908495,-3549272,30919928,-6273825,-21521863,7989039,9021034,9078865,3353509,4033511]),$toNativeArray($kindInt32,[-29663431,-15113610,32259991,-344482,24295849,-12912123,23161163,8839127,27485041,7356032]))]),$toNativeArray($kindStruct,[new BI.ptr($toNativeArray($kindInt32,[9661027,705443,11980065,-5370154,-1628543,14661173,-6346142,2625015,28431036,-16771834]),$toNativeArray($kindInt32,[-23839233,-8311415,-25945511,7480958,-17681669,-8354183,-22545972,14150565,15970762,4099461]),$toNativeArray($kindInt32,[29262576,16756590,26350592,-8793563,8529671,-11208050,13617293,-9937143,11465739,8317062])),new BI.ptr($toNativeArray($kindInt32,[-25493081,-6962928,32500200,-9419051,-23038724,-2302222,14898637,3848455,20969334,-5157516]),$toNativeArray($kindInt32,[-20384450,-14347713,-18336405,13884722,-33039454,2842114,-21610826,-3649888,11177095,14989547]),$toNativeArray($kindInt32,[-24496721,-11716016,16959896,2278463,12066309,10137771,13515641,2581286,-28487508,9930240])),new BI.ptr($toNativeArray($kindInt32,[-17751622,-2097826,16544300,-13009300,-15914807,-14949081,18345767,-13403753,16291481,-5314038]),$toNativeArray($kindInt32,[-33229194,2553288,32678213,9875984,8534129,6889387,-9676774,6957617,4368891,9788741]),$toNativeArray($kindInt32,[16660756,7281060,-10830758,12911820,20108584,-8101676,-21722536,-8613148,16250552,-11111103])),new BI.ptr($toNativeArray($kindInt32,[-19765507,2390526,-16551031,14161980,1905286,6414907,4689584,10604807,-30190403,4782747]),$toNativeArray($kindInt32,[-1354539,14736941,-7367442,-13292886,7710542,-14155590,-9981571,4383045,22546403,437323]),$toNativeArray($kindInt32,[31665577,-12180464,-16186830,1491339,-18368625,3294682,27343084,2786261,-30633590,-14097016])),new BI.ptr($toNativeArray($kindInt32,[-14467279,-683715,-33374107,7448552,19294360,14334329,-19690631,2355319,-19284671,-6114373]),$toNativeArray($kindInt32,[15121312,-15796162,6377020,-6031361,-10798111,-12957845,18952177,15496498,-29380133,11754228]),$toNativeArray($kindInt32,[-2637277,-13483075,8488727,-14303896,12728761,-1622493,7141596,11724556,22761615,-10134141])),new BI.ptr($toNativeArray($kindInt32,[16918416,11729663,-18083579,3022987,-31015732,-13339659,-28741185,-12227393,32851222,11717399]),$toNativeArray($kindInt32,[11166634,7338049,-6722523,4531520,-29468672,-7302055,31474879,3483633,-1193175,-4030831]),$toNativeArray($kindInt32,[-185635,9921305,31456609,-13536438,-12013818,13348923,33142652,6546660,-19985279,-3948376])),new BI.ptr($toNativeArray($kindInt32,[-32460596,11266712,-11197107,-7899103,31703694,3855903,-8537131,-12833048,-30772034,-15486313]),$toNativeArray($kindInt32,[-18006477,12709068,3991746,-6479188,-21491523,-10550425,-31135347,-16049879,10928917,3011958]),$toNativeArray($kindInt32,[-6957757,-15594337,31696059,334240,29576716,14796075,-30831056,-12805180,18008031,10258577])),new BI.ptr($toNativeArray($kindInt32,[-22448644,15655569,7018479,-4410003,-30314266,-1201591,-1853465,1367120,25127874,6671743]),$toNativeArray($kindInt32,[29701166,-14373934,-10878120,9279288,-17568,13127210,21382910,11042292,25838796,4642684]),$toNativeArray($kindInt32,[-20430234,14955537,-24126347,8124619,-5369288,-5990470,30468147,-13900640,18423289,4177476]))])]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["encoding/base64"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,K,L,M,N,O,P,Q,R,S,T,U,D,F,J;A=$packages["io"];B=$packages["strconv"];C=$pkg.Encoding=$newType(0,$kindStruct,"base64.Encoding",true,"encoding/base64",true,function(encode_,decodeMap_,padChar_,strict_){this.$val=this;if(arguments.length===0){this.encode=K.zero();this.decodeMap=L.zero();this.padChar=0;this.strict=false;return;}this.encode=encode_;this.decodeMap=decodeMap_;this.padChar=padChar_;this.strict=strict_;});E=$pkg.encoder=$newType(0,$kindStruct,"base64.encoder",true,"encoding/base64",false,function(err_,enc_,w_,buf_,nbuf_,out_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.enc=N.nil;this.w=$ifaceNil;this.buf=O.zero();this.nbuf=0;this.out=P.zero();return;}this.err=err_;this.enc=enc_;this.w=w_;this.buf=buf_;this.nbuf=nbuf_;this.out=out_;});G=$pkg.CorruptInputError=$newType(8,$kindInt64,"base64.CorruptInputError",true,"encoding/base64",true,null);H=$pkg.decoder=$newType(0,$kindStruct,"base64.decoder",true,"encoding/base64",false,function(err_,readErr_,enc_,r_,end_,buf_,nbuf_,out_,outbuf_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.readErr=$ifaceNil;this.enc=N.nil;this.r=$ifaceNil;this.end=false;this.buf=P.zero();this.nbuf=0;this.out=M.nil;this.outbuf=R.zero();return;}this.err=err_;this.readErr=readErr_;this.enc=enc_;this.r=r_;this.end=end_;this.buf=buf_;this.nbuf=nbuf_;this.out=out_;this.outbuf=outbuf_;});I=$pkg.newlineFilteringReader=$newType(0,$kindStruct,"base64.newlineFilteringReader",true,"encoding/base64",false,function(wrapped_){this.$val=this;if(arguments.length===0){this.wrapped=$ifaceNil;return;}this.wrapped=wrapped_;});K=$arrayType($Uint8,64);L=$arrayType($Uint8,256);M=$sliceType($Uint8);N=$ptrType(C);O=$arrayType($Uint8,3);P=$arrayType($Uint8,1024);Q=$arrayType($Uint8,4);R=$arrayType($Uint8,768);S=$ptrType(E);T=$ptrType(H);U=$ptrType(I);D=function(a){var $ptr,a,b,c,d,e,f,g;if(!((a.length===64))){$panic(new $String("encoding alphabet is not 64-bytes long"));}b=new C.ptr(K.zero(),L.zero(),0,false);b.padChar=61;$copyString(new M(b.encode),a);c=0;while(true){if(!(c<256)){break;}(d=b.decodeMap,((c<0||c>=d.length)?($throwRuntimeError("index out of range"),undefined):d[c]=255));c=c+(1)>>0;}e=0;while(true){if(!(e<a.length)){break;}(f=b.decodeMap,g=a.charCodeAt(e),((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g]=(e<<24>>>24)));e=e+(1)>>0;}return b;};$pkg.NewEncoding=D;C.ptr.prototype.WithPadding=function(a){var $ptr,a,b;b=this;b.padChar=a;return b;};C.prototype.WithPadding=function(a){return this.$val.WithPadding(a);};C.ptr.prototype.Strict=function(){var $ptr,a;a=this;a.strict=true;return a;};C.prototype.Strict=function(){return this.$val.Strict();};C.ptr.prototype.Encode=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if(b.$length===0){return;}d=0;e=0;f=d;g=e;i=$imul(((h=b.$length/3,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))),3);while(true){if(!(g<i)){break;}m=((((((j=g+0>>0,((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))>>>0)<<16>>>0)|(((k=g+1>>0,((k<0||k>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+k]))>>>0)<<8>>>0))>>>0)|((l=g+2>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]))>>>0))>>>0;(p=f+0>>0,((p<0||p>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+p]=(n=c.encode,o=((m>>>18>>>0)&63)>>>0,((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]))));(s=f+1>>0,((s<0||s>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+s]=(q=c.encode,r=((m>>>12>>>0)&63)>>>0,((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]))));(v=f+2>>0,((v<0||v>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+v]=(t=c.encode,u=((m>>>6>>>0)&63)>>>0,((u<0||u>=t.length)?($throwRuntimeError("index out of range"),undefined):t[u]))));(y=f+3>>0,((y<0||y>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+y]=(w=c.encode,x=(m&63)>>>0,((x<0||x>=w.length)?($throwRuntimeError("index out of range"),undefined):w[x]))));g=g+(3)>>0;f=f+(4)>>0;}z=b.$length-g>>0;if(z===0){return;}ab=((aa=g+0>>0,((aa<0||aa>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+aa]))>>>0)<<16>>>0;if(z===2){ab=(ab|((((ac=g+1>>0,((ac<0||ac>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ac]))>>>0)<<8>>>0)))>>>0;}(af=f+0>>0,((af<0||af>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+af]=(ad=c.encode,ae=((ab>>>18>>>0)&63)>>>0,((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]))));(ai=f+1>>0,((ai<0||ai>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ai]=(ag=c.encode,ah=((ab>>>12>>>0)&63)>>>0,((ah<0||ah>=ag.length)?($throwRuntimeError("index out of range"),undefined):ag[ah]))));aj=z;if(aj===(2)){(am=f+2>>0,((am<0||am>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+am]=(ak=c.encode,al=((ab>>>6>>>0)&63)>>>0,((al<0||al>=ak.length)?($throwRuntimeError("index out of range"),undefined):ak[al]))));if(!((c.padChar===-1))){(an=f+3>>0,((an<0||an>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+an]=(c.padChar<<24>>>24)));}}else if(aj===(1)){if(!((c.padChar===-1))){(ao=f+2>>0,((ao<0||ao>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ao]=(c.padChar<<24>>>24)));(ap=f+3>>0,((ap<0||ap>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ap]=(c.padChar<<24>>>24)));}}};C.prototype.Encode=function(a,b){return this.$val.Encode(a,b);};C.ptr.prototype.EncodeToString=function(a){var $ptr,a,b,c;b=this;c=$makeSlice(M,b.EncodedLen(a.$length));b.Encode(c,a);return $bytesToString(c);};C.prototype.EncodeToString=function(a){return this.$val.EncodeToString(a);};E.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;$s=-1;return[b,c];}if(d.nbuf>0){$s=1;continue;}$s=2;continue;case 1:g=0;g=0;while(true){if(!(g<a.$length&&d.nbuf<3)){break;}(h=d.buf,i=d.nbuf,((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])));d.nbuf=d.nbuf+(1)>>0;g=g+(1)>>0;}b=b+(g)>>0;a=$subslice(a,g);if(d.nbuf<3){$s=-1;return[b,c];}d.enc.Encode(new M(d.out),new M(d.buf));k=d.w.Write($subslice(new M(d.out),0,4));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;d.err=j[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){l=b;m=d.err;b=l;c=m;$s=-1;return[b,c];}d.nbuf=0;case 2:case 4:if(!(a.$length>=3)){$s=5;continue;}n=768;if(n>a.$length){n=a.$length;n=n-((o=n%3,o===o?o:$throwRuntimeError("integer divide by zero")))>>0;}d.enc.Encode(new M(d.out),$subslice(a,0,n));r=d.w.Write($subslice(new M(d.out),0,($imul((q=n/3,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero")),4))));$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;d.err=p[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){s=b;t=d.err;b=s;c=t;$s=-1;return[b,c];}b=b+(n)>>0;a=$subslice(a,n);$s=4;continue;case 5:u=0;while(true){if(!(u<a.$length)){break;}(v=d.buf,((u<0||u>=v.length)?($throwRuntimeError("index out of range"),undefined):v[u]=((u<0||u>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+u])));u=u+(1)>>0;}d.nbuf=a.$length;b=b+(a.$length)>>0;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Write=function(a){return this.$val.Write(a);};E.ptr.prototype.Close=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if($interfaceIsEqual(a.err,$ifaceNil)&&a.nbuf>0){$s=1;continue;}$s=2;continue;case 1:a.enc.Encode(new M(a.out),$subslice(new M(a.buf),0,a.nbuf));c=a.w.Write($subslice(new M(a.out),0,a.enc.EncodedLen(a.nbuf)));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;a.err=b[1];a.nbuf=0;case 2:$s=-1;return a.err;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Close=function(){return this.$val.Close();};F=function(a,b){var $ptr,a,b;return new E.ptr($ifaceNil,a,b,O.zero(),0,P.zero());};$pkg.NewEncoder=F;C.ptr.prototype.EncodedLen=function(a){var $ptr,a,b,c,d;b=this;if(b.padChar===-1){return(c=((($imul(a,8))+5>>0))/6,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=((a+2>>0))/3,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),4);};C.prototype.EncodedLen=function(a){return this.$val.EncodedLen(a);};G.prototype.Error=function(){var $ptr,a;a=this;return"illegal base64 data at input byte "+B.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(G).prototype.Error=function(){return this.$get().Error();};C.ptr.prototype.decode=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=0;d=false;e=$ifaceNil;f=this;g=0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}while(true){if(!(g<b.$length&&!d)){break;}h=Q.zero();i=3;j=4;k=i;l=j;m=h;n=0;while(true){if(!(n<4)){break;}o=n;if(b.$length===g){if(!((f.padChar===-1))||o<2){p=c;q=false;r=new G(0,(g-o>>0));c=p;d=q;e=r;return[c,d,e];}s=o-1>>0;t=o;u=true;k=s;l=t;d=u;break;}v=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);g=g+(1)>>0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}if((v>>0)===f.padChar){w=o;if((w===(0))||(w===(1))){x=c;y=false;z=new G(0,(g-1>>0));c=x;d=y;e=z;return[c,d,e];}else if(w===(2)){if(g===b.$length){aa=c;ab=false;ac=new G(0,b.$length);c=aa;d=ab;e=ac;return[c,d,e];}if(!(((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])>>0)===f.padChar))){ad=c;ae=false;af=new G(0,(g-1>>0));c=ad;d=ae;e=af;return[c,d,e];}g=g+(1)>>0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}}if(g<b.$length){e=new G(0,g);}ag=3;ah=o;ai=true;k=ag;l=ah;d=ai;break;}((o<0||o>=h.length)?($throwRuntimeError("index out of range"),undefined):h[o]=(aj=f.decodeMap,((v<0||v>=aj.length)?($throwRuntimeError("index out of range"),undefined):aj[v])));if(((o<0||o>=h.length)?($throwRuntimeError("index out of range"),undefined):h[o])===255){ak=c;al=false;am=new G(0,(g-1>>0));c=ak;d=al;e=am;return[c,d,e];}n++;}an=(((((((h[0]>>>0)<<18>>>0)|((h[1]>>>0)<<12>>>0))>>>0)|((h[2]>>>0)<<6>>>0))>>>0)|(h[3]>>>0))>>>0;ao=((an>>>0>>>0)<<24>>>24);ap=((an>>>8>>>0)<<24>>>24);aq=((an>>>16>>>0)<<24>>>24);h[2]=ao;h[1]=ap;h[0]=aq;ar=l;if(ar===(4)){(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=h[2]);h[2]=0;(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(f.strict&&!((h[2]===0))){as=c;at=d;au=new G(0,(g-1>>0));c=as;d=at;e=au;return[c,d,e];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){av=c;aw=d;ax=new G(0,(g-2>>0));c=av;d=aw;e=ax;return[c,d,e];}}else if(ar===(3)){(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(f.strict&&!((h[2]===0))){ay=c;az=d;ba=new G(0,(g-1>>0));c=ay;d=az;e=ba;return[c,d,e];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){bb=c;bc=d;bd=new G(0,(g-2>>0));c=bb;d=bc;e=bd;return[c,d,e];}}else if(ar===(2)){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){be=c;bf=d;bg=new G(0,(g-2>>0));c=be;d=bf;e=bg;return[c,d,e];}}a=$subslice(a,k);c=c+((l-1>>0))>>0;}bh=c;bi=d;bj=e;c=bh;d=bi;e=bj;return[c,d,e];};C.prototype.decode=function(a,b){return this.$val.decode(a,b);};C.ptr.prototype.Decode=function(a,b){var $ptr,a,b,c,d,e,f;c=0;d=$ifaceNil;e=this;f=e.decode(a,b);c=f[0];d=f[2];return[c,d];};C.prototype.Decode=function(a,b){return this.$val.Decode(a,b);};C.ptr.prototype.DecodeString=function(a){var $ptr,a,b,c,d,e,f;b=this;c=$makeSlice(M,b.DecodedLen(a.length));d=b.decode(c,new M($stringToBytes(a)));e=d[0];f=d[2];return[$subslice(c,0,e),f];};C.prototype.DecodeString=function(a){return this.$val.DecodeString(a);};H.ptr.prototype.Read=function(a){var $ptr,a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(d.out.$length>0){b=$copySlice(a,d.out);d.out=$subslice(d.out,b);e=b;f=$ifaceNil;b=e;c=f;$s=-1;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.err;b=g;c=h;$s=-1;return[b,c];}case 1:if(!(d.nbuf<4&&$interfaceIsEqual(d.readErr,$ifaceNil))){$s=2;continue;}j=$imul((i=a.$length/3,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")),4);if(j<4){j=4;}if(j>1024){j=1024;}l=d.r.Read($subslice(new M(d.buf),d.nbuf,j));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;j=k[0];d.readErr=k[1];d.nbuf=d.nbuf+(j)>>0;$s=1;continue;case 2:if(d.nbuf<4){if((d.enc.padChar===-1)&&d.nbuf>0){m=0;n=d.enc.decode(new M(d.outbuf),$subslice(new M(d.buf),0,d.nbuf));m=n[0];d.err=n[2];d.nbuf=0;d.end=true;d.out=$subslice(new M(d.outbuf),0,m);b=$copySlice(a,d.out);d.out=$subslice(d.out,b);if(b>0||(a.$length===0)&&d.out.$length>0){o=b;p=$ifaceNil;b=o;c=p;$s=-1;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){q=0;r=d.err;b=q;c=r;$s=-1;return[b,c];}}d.err=d.readErr;if($interfaceIsEqual(d.err,A.EOF)&&d.nbuf>0){d.err=A.ErrUnexpectedEOF;}s=0;t=d.err;b=s;c=t;$s=-1;return[b,c];}v=$imul((u=d.nbuf/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero")),4);x=$imul((w=d.nbuf/4,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero")),3);if(x>a.$length){y=d.enc.decode(new M(d.outbuf),$subslice(new M(d.buf),0,v));x=y[0];d.end=y[1];d.err=y[2];d.out=$subslice(new M(d.outbuf),0,x);b=$copySlice(a,d.out);d.out=$subslice(d.out,b);}else{z=d.enc.decode(a,$subslice(new M(d.buf),0,v));b=z[0];d.end=z[1];d.err=z[2];}d.nbuf=d.nbuf-(v)>>0;$copySlice($subslice(new M(d.buf),0,d.nbuf),$subslice(new M(d.buf),v));aa=b;ab=d.err;b=aa;c=ab;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Read=function(a){return this.$val.Read(a);};I.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=b.wrapped.Read(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];case 2:if(!(e>0)){$s=3;continue;}g=0;h=$subslice(a,0,e);i=0;while(true){if(!(i<h.$length)){break;}j=i;k=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if(!((k===13))&&!((k===10))){if(!((j===g))){((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=k);}g=g+(1)>>0;}i++;}if(g>0){$s=-1;return[g,f];}m=b.wrapped.Read(a);$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;e=l[0];f=l[1];$s=2;continue;case 3:$s=-1;return[e,f];}return;}if($f===undefined){$f={$blk:I.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I.prototype.Read=function(a){return this.$val.Read(a);};J=function(a,b){var $ptr,a,b;return new H.ptr($ifaceNil,$ifaceNil,a,new I.ptr(b),false,P.zero(),0,M.nil,R.zero());};$pkg.NewDecoder=J;C.ptr.prototype.DecodedLen=function(a){var $ptr,a,b,c,d;b=this;if(b.padChar===-1){return(c=($imul(a,6))/8,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=a/4,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),3);};C.prototype.DecodedLen=function(a){return this.$val.DecodedLen(a);};C.methods=[{prop:"WithPadding",name:"WithPadding",pkg:"",typ:$funcType([$Int32],[N],false)},{prop:"Strict",name:"Strict",pkg:"",typ:$funcType([],[N],false)}];N.methods=[{prop:"Encode",name:"Encode",pkg:"",typ:$funcType([M,M],[],false)},{prop:"EncodeToString",name:"EncodeToString",pkg:"",typ:$funcType([M],[$String],false)},{prop:"EncodedLen",name:"EncodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"decode",name:"decode",pkg:"encoding/base64",typ:$funcType([M,M],[$Int,$Bool,$error],false)},{prop:"Decode",name:"Decode",pkg:"",typ:$funcType([M,M],[$Int,$error],false)},{prop:"DecodeString",name:"DecodeString",pkg:"",typ:$funcType([$String],[M,$error],false)},{prop:"DecodedLen",name:"DecodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)}];S.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([M],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];G.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([M],[$Int,$error],false)}];U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([M],[$Int,$error],false)}];C.init("encoding/base64",[{prop:"encode",name:"encode",exported:false,typ:K,tag:""},{prop:"decodeMap",name:"decodeMap",exported:false,typ:L,tag:""},{prop:"padChar",name:"padChar",exported:false,typ:$Int32,tag:""},{prop:"strict",name:"strict",exported:false,typ:$Bool,tag:""}]);E.init("encoding/base64",[{prop:"err",name:"err",exported:false,typ:$error,tag:""},{prop:"enc",name:"enc",exported:false,typ:N,tag:""},{prop:"w",name:"w",exported:false,typ:A.Writer,tag:""},{prop:"buf",name:"buf",exported:false,typ:O,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:P,tag:""}]);H.init("encoding/base64",[{prop:"err",name:"err",exported:false,typ:$error,tag:""},{prop:"readErr",name:"readErr",exported:false,typ:$error,tag:""},{prop:"enc",name:"enc",exported:false,typ:N,tag:""},{prop:"r",name:"r",exported:false,typ:A.Reader,tag:""},{prop:"end",name:"end",exported:false,typ:$Bool,tag:""},{prop:"buf",name:"buf",exported:false,typ:P,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:M,tag:""},{prop:"outbuf",name:"outbuf",exported:false,typ:R,tag:""}]);I.init("encoding/base64",[{prop:"wrapped",name:"wrapped",exported:false,typ:A.Reader,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.StdEncoding=D("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");$pkg.URLEncoding=D("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_");$pkg.RawStdEncoding=$clone($pkg.StdEncoding,C).WithPadding(-1);$pkg.RawURLEncoding=$clone($pkg.URLEncoding,C).WithPadding(-1);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/onet.v1/crypto"]=(function(){var $pkg={},$init,A,F,J,K,B,H,M,I,C,D,E,G,L,AW,AY,Z,AA,AP;A=$packages["bytes"];F=$packages["encoding"];J=$packages["encoding/base64"];K=$packages["encoding/hex"];B=$packages["errors"];H=$packages["gopkg.in/dedis/crypto.v0/abstract"];M=$packages["gopkg.in/dedis/crypto.v0/random"];I=$packages["gopkg.in/dedis/onet.v1/log"];C=$packages["hash"];D=$packages["io"];E=$packages["os"];G=$packages["reflect"];L=$packages["strings"];AW=$sliceType($emptyInterface);AY=$ptrType(H.Point);Z=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=a.Point();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c[0]=d;e=J.NewDecoder(J.StdEncoding,b);f=a.Read(e,new AW([(c.$ptr||(c.$ptr=new AY(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c)))]));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=-1;return[c[0],g];}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.$s=$s;$f.$r=$r;return $f;};$pkg.Read64Pub=Z;AA=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=J.NewEncoder(J.StdEncoding,b);e=AP(a,d,new AW([c]));$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AA};}$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.Write64Pub=AA;AP=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=a.Write(b,new AW([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=-1;return e;}f=b.Close();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AP};}$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;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($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=F.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$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=H.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$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=C.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["gopkg.in/dedis/onet.v1/network"]=(function(){var $pkg={},$init,G,H,E,I,K,L,M,N,Q,O,R,A,J,B,C,D,F,P,S,T,AD,AE,AO,AS,AV,AX,BJ,BP,BQ,BR,BS,BV,CG,CH,CK,CL,CM,CN,CO,CP,CR,CS,CT,CU,DH,DI,DJ,DK,DL,DM,DN,DQ,DR,AF,AN,AU,a,b,U,AG,AH,AI,AJ,AK,AM,AP,AT;G=$packages["bytes"];H=$packages["encoding/binary"];E=$packages["errors"];I=$packages["fmt"];K=$packages["github.com/dedis/protobuf"];L=$packages["github.com/satori/go.uuid"];M=$packages["gopkg.in/dedis/crypto.v0/abstract"];N=$packages["gopkg.in/dedis/crypto.v0/ed25519"];Q=$packages["gopkg.in/dedis/onet.v1/crypto"];O=$packages["gopkg.in/dedis/onet.v1/log"];R=$packages["io"];A=$packages["net"];J=$packages["reflect"];B=$packages["regexp"];C=$packages["strconv"];D=$packages["strings"];F=$packages["sync"];P=$packages["time"];S=$pkg.ConnType=$newType(8,$kindString,"network.ConnType",true,"gopkg.in/dedis/onet.v1/network",true,null);T=$pkg.Address=$newType(8,$kindString,"network.Address",true,"gopkg.in/dedis/onet.v1/network",true,null);AD=$pkg.Message=$newType(8,$kindInterface,"network.Message",true,"gopkg.in/dedis/onet.v1/network",true,null);AE=$pkg.MessageTypeID=$newType(16,$kindArray,"network.MessageTypeID",true,"gopkg.in/dedis/onet.v1/network",true,null);AO=$pkg.typeRegistry=$newType(0,$kindStruct,"network.typeRegistry",true,"gopkg.in/dedis/onet.v1/network",false,function(types_,lock_){this.$val=this;if(arguments.length===0){this.types=false;this.lock=new F.Mutex.ptr(0,0);return;}this.types=types_;this.lock=lock_;});AS=$pkg.LocalManager=$newType(0,$kindStruct,"network.LocalManager",true,"gopkg.in/dedis/onet.v1/network",true,function(conns_,Mutex_,listening_,counter_){this.$val=this;if(arguments.length===0){this.conns=false;this.Mutex=new F.Mutex.ptr(0,0);this.listening=false;this.counter=new $Uint64(0,0);return;}this.conns=conns_;this.Mutex=Mutex_;this.listening=listening_;this.counter=counter_;});AV=$pkg.endpoint=$newType(0,$kindStruct,"network.endpoint",true,"gopkg.in/dedis/onet.v1/network",false,function(addr_,uid_){this.$val=this;if(arguments.length===0){this.addr="";this.uid=new $Uint64(0,0);return;}this.addr=addr_;this.uid=uid_;});AX=$pkg.LocalConn=$newType(0,$kindStruct,"network.LocalConn",true,"gopkg.in/dedis/onet.v1/network",true,function(local_,remote_,incomingQueue_,outgoingQueue_,closeCh_,closeConfirm_,counterSafe_,manager_){this.$val=this;if(arguments.length===0){this.local=new AV.ptr("",new $Uint64(0,0));this.remote=new AV.ptr("",new $Uint64(0,0));this.incomingQueue=$chanNil;this.outgoingQueue=$chanNil;this.closeCh=$chanNil;this.closeConfirm=$chanNil;this.counterSafe=new BV.ptr(new $Uint64(0,0),new $Uint64(0,0),new F.Mutex.ptr(0,0));this.manager=CS.nil;return;}this.local=local_;this.remote=remote_;this.incomingQueue=incomingQueue_;this.outgoingQueue=outgoingQueue_;this.closeCh=closeCh_;this.closeConfirm=closeConfirm_;this.counterSafe=counterSafe_;this.manager=manager_;});BJ=$pkg.Conn=$newType(8,$kindInterface,"network.Conn",true,"gopkg.in/dedis/onet.v1/network",true,null);BP=$pkg.Envelope=$newType(0,$kindStruct,"network.Envelope",true,"gopkg.in/dedis/onet.v1/network",true,function(ServerIdentity_,MsgType_,Msg_,Constructors_,err_){this.$val=this;if(arguments.length===0){this.ServerIdentity=CU.nil;this.MsgType=CG.zero();this.Msg=$ifaceNil;this.Constructors=false;this.err=$ifaceNil;return;}this.ServerIdentity=ServerIdentity_;this.MsgType=MsgType_;this.Msg=Msg_;this.Constructors=Constructors_;this.err=err_;});BQ=$pkg.ServerIdentity=$newType(0,$kindStruct,"network.ServerIdentity",true,"gopkg.in/dedis/onet.v1/network",true,function(Public_,ID_,Address_,Description_){this.$val=this;if(arguments.length===0){this.Public=$ifaceNil;this.ID=CG.zero();this.Address="";this.Description="";return;}this.Public=Public_;this.ID=ID_;this.Address=Address_;this.Description=Description_;});BR=$pkg.ServerIdentityID=$newType(16,$kindArray,"network.ServerIdentityID",true,"gopkg.in/dedis/onet.v1/network",true,null);BS=$pkg.ServerIdentityToml=$newType(0,$kindStruct,"network.ServerIdentityToml",true,"gopkg.in/dedis/onet.v1/network",true,function(Public_,Address_){this.$val=this;if(arguments.length===0){this.Public="";this.Address="";return;}this.Public=Public_;this.Address=Address_;});BV=$pkg.counterSafe=$newType(0,$kindStruct,"network.counterSafe",true,"gopkg.in/dedis/onet.v1/network",false,function(tx_,rx_,Mutex_){this.$val=this;if(arguments.length===0){this.tx=new $Uint64(0,0);this.rx=new $Uint64(0,0);this.Mutex=new F.Mutex.ptr(0,0);return;}this.tx=tx_;this.rx=rx_;this.Mutex=Mutex_;});CG=$arrayType($Uint8,16);CH=$sliceType(S);CK=$sliceType($emptyInterface);CL=$sliceType($Uint8);CM=$arrayType($Uint8,64);CN=$ptrType(AE);CO=$ptrType(M.Point);CP=$ptrType(M.Scalar);CR=$ptrType(AX);CS=$ptrType(AS);CT=$ptrType(BP);CU=$ptrType(BQ);DH=$ptrType(AO);DI=$mapType(AE,J.Type);DJ=$funcType([BJ],[],false);DK=$mapType(AV,CR);DL=$mapType(T,DJ);DM=$chanType(CL,false,false);DN=$chanType($Bool,false,false);DQ=$ptrType(BS);DR=$ptrType(BV);U=function(c){var $ptr,c,d,e,f,g,h;d=c;e=new CH(["tcp","tls","purb","local"]);f=e;g=0;while(true){if(!(g<f.$length)){break;}h=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(h===d){return d;}g++;}return"wrong";};T.prototype.ConnType=function(){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this.$val;d=new T(c).Valid();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(!d){$s=1;continue;}$s=2;continue;case 1:$s=-1;return"wrong";case 2:e=D.Split(c,"://");$s=-1;return U((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]));}return;}if($f===undefined){$f={$blk:T.prototype.ConnType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(T).prototype.ConnType=function(){return new T(this.$get()).ConnType();};T.prototype.NetworkAddress=function(){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this.$val;d=new T(c).Valid();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(!d){$s=1;continue;}$s=2;continue;case 1:$s=-1;return"";case 2:e=D.Split(c,"://");$s=-1;return(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]);}return;}if($f===undefined){$f={$blk:T.prototype.NetworkAddress};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(T).prototype.NetworkAddress=function(){return new T(this.$get()).NetworkAddress();};T.prototype.Valid=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this.$val;d=D.Split(c,"://");if(!((d.$length===2))){$s=-1;return false;}if(U((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))==="wrong"){$s=-1;return false;}f=A.SplitHostPort((1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1]));$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];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return false;}j=C.Atoi(h);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))||k<0||k>65535){$s=-1;return false;}if(g==="localhost"){$s=-1;return true;}else if(A.ParseIP(g)===A.IP.nil){$s=-1;return false;}$s=-1;return true;}return;}if($f===undefined){$f={$blk:T.prototype.Valid};}$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;};$ptrType(T).prototype.Valid=function(){return new T(this.$get()).Valid();};T.prototype.String=function(){var $ptr,c;c=this.$val;return c;};$ptrType(T).prototype.String=function(){return new T(this.$get()).String();};T.prototype.Host=function(){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:c=this.$val;d=new T(c).NetworkAddress();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===""){$s=-1;return"";}g=new T(c).NetworkAddress();$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.SplitHostPort(g);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;i=f[0];j=f[2];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return"";}if(i==="::"){i="[::]";}$s=-1;return i;}return;}if($f===undefined){$f={$blk:T.prototype.Host};}$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;};$ptrType(T).prototype.Host=function(){return new T(this.$get()).Host();};T.prototype.Port=function(){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:c=this.$val;d=new T(c).NetworkAddress();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===""){$s=-1;return"";}g=A.SplitHostPort(e);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];i=f[2];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return"";}$s=-1;return h;}return;}if($f===undefined){$f={$blk:T.prototype.Port};}$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;};$ptrType(T).prototype.Port=function(){return new T(this.$get()).Port();};T.prototype.Public=function(){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=this.$val;e=new T(c).NetworkAddress();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=B.MatchString("(^127\\.)|(^10\\.)|(^172\\.1[6-9]\\.)|(^172\\.2[0-9]\\.)|(^172\\.3[0-1]\\.)|(^192\\.168\\.)|(^169\\.254)|(^\\[::\\])",f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}d=g;h=d[0];i=d[1];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return false;}if(!(!h)){j=false;$s=3;continue s;}k=new T(c).Valid();$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 3:$s=-1;return j;}return;}if($f===undefined){$f={$blk:T.prototype.Public};}$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;};$ptrType(T).prototype.Public=function(){return new T(this.$get()).Public();};AE.prototype.String=function(){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=this.$val;e=AN.get($clone(c,AE));$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(g){$s=2;continue;}$s=3;continue;case 2:h=f.String();$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=new $String(h);j=new L.UUID($clone($clone(c,L.UUID),L.UUID)).Bytes();k=I.Sprintf("PTID(%s:%x)",new CK([i,j]));$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;case 3:$s=-1;return new L.UUID($clone($clone(c,L.UUID),L.UUID)).String();}return;}if($f===undefined){$f={$blk:AE.prototype.String};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AE).prototype.String=function(){return new AE(this.$get()).String();};AE.prototype.Equal=function(c){var $ptr,c,d;d=this.$val;return G.Compare(new L.UUID($clone($clone(d,L.UUID),L.UUID)).Bytes(),new L.UUID($clone($clone(c,L.UUID),L.UUID)).Bytes())===0;};$ptrType(AE).prototype.Equal=function(c){return new AE(this.$get()).Equal(c);};AG=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=AH(c);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,AE);f=J.ValueOf(c);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if($clone(g,J.Value).Kind()===22){$s=3;continue;}$s=4;continue;case 3:h=$clone(g,J.Value).Elem();$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 4:i=$clone(g,J.Value).Type();$r=AN.put($clone(e,AE),i);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AG};}$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;};$pkg.RegisterMessage=AG;AH=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=J.ValueOf(c);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if($clone(e,J.Value).Kind()===22){$s=2;continue;}$s=3;continue;case 2:f=$clone(e,J.Value).Elem();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 3:g=$clone(e,J.Value).Type().String();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h="https://dedis.epfl.ch//protocolType/"+g;i=L.NewV5($clone(L.NamespaceURL,L.UUID),h);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$clone(i,L.UUID);$s=-1;return $clone(j,AE);}return;}if($f===undefined){$f={$blk:AH};}$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;};AI=function(c){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:d=AH(c);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,AE);g=AN.get($clone(e,AE));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];if(!h){$s=-1;return $pkg.ErrorType;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AI};}$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;};$pkg.MessageType=AI;AJ=function(c){var $ptr,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;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;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:d=CG.zero();e=AI(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}AE.copy(d,e);if($equal(d,$pkg.ErrorType,AE)){$s=2;continue;}$s=3;continue;case 2:f=I.Errorf("type of message %s not registered to the network library",new CK([J.TypeOf(c)]));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return[CL.nil,f];case 3:g=new G.Buffer.ptr(CL.nil,0,CM.zero(),0);h=H.Write(g,new AF.constructor.elem(AF),new AE(d));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return[CL.nil,i];}j=CL.nil;k=$ifaceNil;m=K.Encode(c);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;j=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:$r=O.Errorf("Error for protobuf encoding: %s %+v",new CK([k,c]));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=O.DebugVisible();$s=12;case 12:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}if(n>0){$s=10;continue;}$s=11;continue;case 10:$r=O.Error(new CK([new $String(O.Stack())]));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:$s=-1;return[CL.nil,k];case 8:o=g.Write(j);k=o[1];$s=-1;return[g.Bytes(),k];}return;}if($f===undefined){$f={$blk:AJ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Marshal=AJ;AK=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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=[d];e=G.NewBuffer(c);d[0]=CG.zero();f=H.Read(e,new AF.constructor.elem(AF),new CN(d[0]));$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=-1;return[$pkg.ErrorType,$ifaceNil,g];}i=AN.get($clone(d[0],AE));$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];if(!k){$s=3;continue;}$s=4;continue;case 3:l=new AE($clone(d[0],AE)).String();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=new $String(l);n=I.Errorf("type %s not registered",new CK([m]));$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return[$pkg.ErrorType,$ifaceNil,n];case 4:o=J.New(j);$s=7;case 7:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=$clone(p,J.Value).Interface();$s=8;case 8:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=AM($pkg.Suite);$s=9;case 9:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;u=K.DecodeWithConstructors(e.Bytes(),r,t);$s=10;case 10:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=u;if(!($interfaceIsEqual(v,$ifaceNil))){$s=-1;return[$pkg.ErrorType,$ifaceNil,v];}w=$clone(p,J.Value).Interface();$s=11;case 11:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=-1;return[d[0],w,$ifaceNil];}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Unmarshal=AK;AM=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:c=[c];d=[d];e=[e];f={};d[0]=$ifaceNil;e[0]=$ifaceNil;h=J.TypeOf((d.$ptr||(d.$ptr=new CO(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d)))).Elem();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;(f||$throwRuntimeError("assignment to entry in nil map"))[J.Type.keyFor(g)]={k:g,v:(function(c,d,e){return function $b(){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=c[0].Point();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};})(c,d,e)};j=J.TypeOf((e.$ptr||(e.$ptr=new CP(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e)))).Elem();$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;(f||$throwRuntimeError("assignment to entry in nil map"))[J.Type.keyFor(i)]={k:i,v:(function(c,d,e){return function $b(){var $ptr,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=c[0].Scalar();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};})(c,d,e)};$s=-1;return f;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DefaultConstructors=AM;AP=function(){var $ptr;return new AO.ptr({},new F.Mutex.ptr(0,0));};AO.ptr.prototype.get=function(c){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);d=this;$r=d.lock.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(d.lock,"Unlock"),[]]);e=(f=d.types[AE.keyFor(c)],f!==undefined?[f.v,true]:[$ifaceNil,false]);g=e[0];h=e[1];$s=-1;return[g,h];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,false];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AO.ptr.prototype.get};}$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;}}};AO.prototype.get=function(c){return this.$val.get(c);};AO.ptr.prototype.put=function(c,d){var $ptr,c,d,e,f,$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;$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=this;$r=e.lock.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(e.lock,"Unlock"),[]]);f=$clone(c,AE);(e.types||$throwRuntimeError("assignment to entry in nil map"))[AE.keyFor(f)]={k:f,v:d};$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AO.ptr.prototype.put};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AO.prototype.put=function(c,d){return this.$val.put(c,d);};AT=function(){var $ptr;return new AS.ptr({},new F.Mutex.ptr(0,0),{},new $Uint64(0,0));};$pkg.NewLocalManager=AT;AS.ptr.prototype.send=function(c,d){var $ptr,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;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);e=this;$r=e.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(e.Mutex,"Unlock"),[]]);f=(g=e.conns[AV.keyFor(c)],g!==undefined?[g.v,true]:[CR.nil,false]);h=f[0];i=f[1];if(!i){$s=-1;return $pkg.ErrClosed;}$r=$send(h.incomingQueue,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AS.ptr.prototype.send};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AS.prototype.send=function(c,d){return this.$val.send(c,d);};AS.ptr.prototype.close=function(c){var $ptr,c,d,e,f,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;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;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=this;$r=d.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(d.Mutex,"Unlock"),[]]);e=(f=d.conns[AV.keyFor(c.local)],f!==undefined?[f.v,true]:[CR.nil,false]);g=e[1];if(!g){$s=-1;return $pkg.ErrClosed;}delete d.conns[AV.keyFor(c.local)];$r=c.closeChannels();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=(i=d.conns[AV.keyFor(c.remote)],i!==undefined?[i.v,true]:[CR.nil,false]);j=h[0];g=h[1];if(!g){$s=-1;return $ifaceNil;}delete d.conns[AV.keyFor(c.remote)];$r=j.closeChannels();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AS.ptr.prototype.close};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AS.prototype.close=function(c){return this.$val.close(c);};AX.ptr.prototype.Send=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;f=AJ(c);$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];if(!($interfaceIsEqual(h,$ifaceNil))){$s=-1;return h;}$r=d.counterSafe.updateTx(new $Uint64(0,g.$length));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=d.manager.send($clone(d.remote,AV),g);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;}return;}if($f===undefined){$f={$blk:AX.ptr.prototype.Send};}$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;};AX.prototype.Send=function(c){return this.$val.Send(c);};AX.ptr.prototype.Receive=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;e=$recv(c.outgoingQueue);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(!g){$s=-1;return[CT.nil,$pkg.ErrClosed];}$r=c.counterSafe.updateRx(new $Uint64(0,f.$length));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=AK(f);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=$clone(h[0],AE);k=h[1];l=h[2];$s=-1;return[new BP.ptr(CU.nil,$clone(j,AE),k,false,$ifaceNil),l];}return;}if($f===undefined){$f={$blk:AX.ptr.prototype.Receive};}$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;};AX.prototype.Receive=function(){return this.$val.Receive();};AX.ptr.prototype.Local=function(){var $ptr,c;c=this;return c.local.addr;};AX.prototype.Local=function(){return this.$val.Local();};AX.ptr.prototype.Remote=function(){var $ptr,c;c=this;return c.remote.addr;};AX.prototype.Remote=function(){return this.$val.Remote();};AX.ptr.prototype.Close=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=$select([[c.closeCh],[]]);if(d[0]===0){e=d[1];f=e[1];if(!f){$s=-1;return $pkg.ErrClosed;}}else if(d[0]===1){}g=c.manager.close(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:AX.ptr.prototype.Close};}$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;};AX.prototype.Close=function(){return this.$val.Close();};AX.ptr.prototype.closeChannels=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;$close(c.closeCh);d=$recv(c.closeConfirm);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$close(c.closeConfirm);$s=-1;return;}return;}if($f===undefined){$f={$blk:AX.ptr.prototype.closeChannels};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AX.prototype.closeChannels=function(){return this.$val.closeChannels();};AX.ptr.prototype.Type=function(){var $ptr,c;c=this;return"local";};AX.prototype.Type=function(){return this.$val.Type();};BR.prototype.Equal=function(c){var $ptr,c,d;d=this.$val;return L.Equal($clone($clone(d,L.UUID),L.UUID),$clone($clone(c,L.UUID),L.UUID));};$ptrType(BR).prototype.Equal=function(c){return new BR(this.$get()).Equal(c);};BQ.ptr.prototype.String=function(){var $ptr,c;c=this;return new T(c.Address).String();};BQ.prototype.String=function(){return this.$val.String();};BQ.ptr.prototype.Equal=function(c){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=d.Public.Equal(c.Public);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:BQ.ptr.prototype.Equal};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};BQ.prototype.Equal=function(c){return this.$val.Equal(c);};BQ.ptr.prototype.Toml=function(c){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:d=[d];e=this;d[0]=new G.Buffer.ptr(CL.nil,0,CM.zero(),0);f=Q.Write64Pub(c,d[0],e.Public);$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:$r=O.Error(new CK([new $String("Error while writing public key:"),g]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return new BS.ptr(d[0].String(),e.Address);}return;}if($f===undefined){$f={$blk:BQ.ptr.prototype.Toml};}$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;};BQ.prototype.Toml=function(c){return this.$val.Toml(c);};BS.ptr.prototype.ServerIdentity=function(c){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:d=this;f=Q.Read64Pub(c,D.NewReader(d.Public));$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];if(!($interfaceIsEqual(h,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=O.Error(new CK([new $String("Error while reading public key:"),h]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return new BQ.ptr(g,CG.zero(),d.Address,"");}return;}if($f===undefined){$f={$blk:BS.ptr.prototype.ServerIdentity};}$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;};BS.prototype.ServerIdentity=function(c){return this.$val.ServerIdentity(c);};BV.ptr.prototype.Rx=function(){var $ptr,c,$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;$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;$r=c.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(c.Mutex,"Unlock"),[]]);$s=-1;return c.rx;}return;}}catch(err){$err=err;$s=-1;return new $Uint64(0,0);}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV.ptr.prototype.Rx};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BV.prototype.Rx=function(){return this.$val.Rx();};BV.ptr.prototype.Tx=function(){var $ptr,c,$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;$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;$r=c.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(c.Mutex,"Unlock"),[]]);$s=-1;return c.tx;}return;}}catch(err){$err=err;$s=-1;return new $Uint64(0,0);}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV.ptr.prototype.Tx};}$f.$ptr=$ptr;$f.c=c;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BV.prototype.Tx=function(){return this.$val.Tx();};BV.ptr.prototype.updateRx=function(c){var $ptr,c,d,e,f,$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;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=this;$r=d.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(d.Mutex,"Unlock"),[]]);d.rx=(e=d.rx,f=c,new $Uint64(e.$high+f.$high,e.$low+f.$low));$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV.ptr.prototype.updateRx};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BV.prototype.updateRx=function(c){return this.$val.updateRx(c);};BV.ptr.prototype.updateTx=function(c){var $ptr,c,d,e,f,$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;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=this;$r=d.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(d.Mutex,"Unlock"),[]]);d.tx=(e=d.tx,f=c,new $Uint64(e.$high+f.$high,e.$low+f.$low));$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV.ptr.prototype.updateTx};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BV.prototype.updateTx=function(c){return this.$val.updateTx(c);};T.methods=[{prop:"ConnType",name:"ConnType",pkg:"",typ:$funcType([],[S],false)},{prop:"NetworkAddress",name:"NetworkAddress",pkg:"",typ:$funcType([],[$String],false)},{prop:"Valid",name:"Valid",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Host",name:"Host",pkg:"",typ:$funcType([],[$String],false)},{prop:"Port",name:"Port",pkg:"",typ:$funcType([],[$String],false)},{prop:"Public",name:"Public",pkg:"",typ:$funcType([],[$Bool],false)}];AE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([AE],[$Bool],false)}];DH.methods=[{prop:"get",name:"get",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([AE],[J.Type,$Bool],false)},{prop:"put",name:"put",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([AE,J.Type],[],false)}];CS.methods=[{prop:"isListening",name:"isListening",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([T],[$Bool],false)},{prop:"setListening",name:"setListening",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([T,DJ],[],false)},{prop:"unsetListening",name:"unsetListening",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([T],[],false)},{prop:"connect",name:"connect",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([T,T],[CR,$error],false)},{prop:"send",name:"send",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([AV,CL],[$error],false)},{prop:"close",name:"close",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([CR],[$error],false)},{prop:"len",name:"len",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([],[$Int],false)}];CR.methods=[{prop:"start",name:"start",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([],[],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([AD],[$error],false)},{prop:"Receive",name:"Receive",pkg:"",typ:$funcType([],[CT,$error],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[T],false)},{prop:"Remote",name:"Remote",pkg:"",typ:$funcType([],[T],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"closeChannels",name:"closeChannels",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([],[],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[S],false)}];CU.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([CU],[$Bool],false)},{prop:"Toml",name:"Toml",pkg:"",typ:$funcType([M.Suite],[DQ],false)}];BR.methods=[{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BR],[$Bool],false)}];DQ.methods=[{prop:"ServerIdentity",name:"ServerIdentity",pkg:"",typ:$funcType([M.Suite],[CU],false)}];DR.methods=[{prop:"Rx",name:"Rx",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Tx",name:"Tx",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"updateRx",name:"updateRx",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([$Uint64],[],false)},{prop:"updateTx",name:"updateTx",pkg:"gopkg.in/dedis/onet.v1/network",typ:$funcType([$Uint64],[],false)}];AD.init([]);AE.init($Uint8,16);AO.init("gopkg.in/dedis/onet.v1/network",[{prop:"types",name:"types",exported:false,typ:DI,tag:""},{prop:"lock",name:"lock",exported:false,typ:F.Mutex,tag:""}]);AS.init("gopkg.in/dedis/onet.v1/network",[{prop:"conns",name:"conns",exported:false,typ:DK,tag:""},{prop:"Mutex",name:"",exported:true,typ:F.Mutex,tag:""},{prop:"listening",name:"listening",exported:false,typ:DL,tag:""},{prop:"counter",name:"counter",exported:false,typ:$Uint64,tag:""}]);AV.init("gopkg.in/dedis/onet.v1/network",[{prop:"addr",name:"addr",exported:false,typ:T,tag:""},{prop:"uid",name:"uid",exported:false,typ:$Uint64,tag:""}]);AX.init("gopkg.in/dedis/onet.v1/network",[{prop:"local",name:"local",exported:false,typ:AV,tag:""},{prop:"remote",name:"remote",exported:false,typ:AV,tag:""},{prop:"incomingQueue",name:"incomingQueue",exported:false,typ:DM,tag:""},{prop:"outgoingQueue",name:"outgoingQueue",exported:false,typ:DM,tag:""},{prop:"closeCh",name:"closeCh",exported:false,typ:DN,tag:""},{prop:"closeConfirm",name:"closeConfirm",exported:false,typ:DN,tag:""},{prop:"counterSafe",name:"",exported:false,typ:BV,tag:""},{prop:"manager",name:"manager",exported:false,typ:CS,tag:""}]);BJ.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[T],false)},{prop:"Receive",name:"Receive",pkg:"",typ:$funcType([],[CT,$error],false)},{prop:"Remote",name:"Remote",pkg:"",typ:$funcType([],[T],false)},{prop:"Rx",name:"Rx",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([AD],[$error],false)},{prop:"Tx",name:"Tx",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[S],false)}]);BP.init("gopkg.in/dedis/onet.v1/network",[{prop:"ServerIdentity",name:"ServerIdentity",exported:true,typ:CU,tag:""},{prop:"MsgType",name:"MsgType",exported:true,typ:AE,tag:""},{prop:"Msg",name:"Msg",exported:true,typ:AD,tag:""},{prop:"Constructors",name:"Constructors",exported:true,typ:K.Constructors,tag:""},{prop:"err",name:"err",exported:false,typ:$error,tag:""}]);BQ.init("",[{prop:"Public",name:"Public",exported:true,typ:M.Point,tag:""},{prop:"ID",name:"ID",exported:true,typ:BR,tag:""},{prop:"Address",name:"Address",exported:true,typ:T,tag:""},{prop:"Description",name:"Description",exported:true,typ:$String,tag:""}]);BR.init($Uint8,16);BS.init("",[{prop:"Public",name:"Public",exported:true,typ:$String,tag:""},{prop:"Address",name:"Address",exported:true,typ:T,tag:""}]);BV.init("gopkg.in/dedis/onet.v1/network",[{prop:"tx",name:"tx",exported:false,typ:$Uint64,tag:""},{prop:"rx",name:"rx",exported:false,typ:$Uint64,tag:""},{prop:"Mutex",name:"",exported:true,typ:F.Mutex,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=H.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=Q.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=R.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Suite=N.NewAES128SHA256Ed25519(false);$pkg.ErrorType=$clone($clone(L.Nil,AE),AE);AF=$clone(H.BigEndian,H.bigEndian);AN=AP();AU=AT();$pkg.ErrClosed=E.New("Connection Closed");$pkg.ErrEOF=E.New("EOF");$pkg.ErrCanceled=E.New("Operation Canceled");$pkg.ErrTimeout=E.New("Timeout Error");$pkg.ErrUnknown=E.New("Unknown Error");b=AG((a=new BQ.ptr($ifaceNil,CG.zero(),"",""),new a.constructor.elem(a)));$s=19;case 19:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$pkg.ServerIdentityType=$clone(b,AE);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["unicode/utf16"]=(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["encoding/json"]=(function(){var $pkg={},$init,A,B,C,D,E,O,Q,L,F,G,M,H,N,P,I,J,K,W,AK,EZ,FA,FB,FC,Z,AC,AD,AZ,BA,a,b,c;A=$packages["bytes"];B=$packages["encoding"];C=$packages["encoding/base64"];D=$packages["errors"];E=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/nosync"];Q=$packages["io"];L=$packages["math"];F=$packages["reflect"];G=$packages["runtime"];M=$packages["sort"];H=$packages["strconv"];N=$packages["strings"];P=$packages["sync/atomic"];I=$packages["unicode"];J=$packages["unicode/utf16"];K=$packages["unicode/utf8"];W=$pkg.Number=$newType(8,$kindString,"json.Number",true,"encoding/json",true,null);AK=$pkg.Marshaler=$newType(8,$kindInterface,"json.Marshaler",true,"encoding/json",true,null);EZ=$sliceType($Uint8);FA=$ptrType(B.TextUnmarshaler);FB=$ptrType(AK);FC=$ptrType(B.TextMarshaler);W.prototype.String=function(){var $ptr,d;d=this.$val;return d;};$ptrType(W).prototype.String=function(){return new W(this.$get()).String();};W.prototype.Float64=function(){var $ptr,d;d=this.$val;return H.ParseFloat(d,64);};$ptrType(W).prototype.Float64=function(){return new W(this.$get()).Float64();};W.prototype.Int64=function(){var $ptr,d;d=this.$val;return H.ParseInt(d,10,64);};$ptrType(W).prototype.Int64=function(){return new W(this.$get()).Int64();};W.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Float64",name:"Float64",pkg:"",typ:$funcType([],[$Float64,$error],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64,$error],false)}];AK.init([{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[EZ,$error],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=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=O.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=Q.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$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;}$r=M.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Z=D.New("JSON decoder out of sync - data changing underfoot?");a=F.TypeOf($newDataPointer($ifaceNil,FA)).Elem();$s=18;case 18:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}AC=a;AD=F.TypeOf(new W(""));b=F.TypeOf($newDataPointer($ifaceNil,FB)).Elem();$s=19;case 19:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AZ=b;c=F.TypeOf($newDataPointer($ifaceNil,FC)).Elem();$s=20;case 20:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}BA=c;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/montanaflynn/stats"]=(function(){var $pkg={},$init,A,D,E,B,C;A=$packages["math"];D=$packages["math/rand"];E=$packages["sort"];B=$packages["strconv"];C=$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=E.$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=C.$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["gopkg.in/dedis/onet.v1/simul/monitor"]=(function(){var $pkg={},$init,A,B,C,O,F,G,L,D,M,N,H,I,J,K,E,AO,AP;A=$packages["encoding/json"];B=$packages["errors"];C=$packages["fmt"];O=$packages["github.com/montanaflynn/stats"];F=$packages["gopkg.in/dedis/onet.v1/log"];G=$packages["io"];L=$packages["math"];D=$packages["net"];M=$packages["regexp"];N=$packages["sort"];H=$packages["strconv"];I=$packages["strings"];J=$packages["sync"];K=$packages["syscall"];E=$packages["time"];AP=function(){var $ptr;AO=new $Chan($Bool,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;}$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=O.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$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=L.$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=M.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AO=$chanNil;AP();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["github.com/JoaoAndreSa/MedCo/lib"]=(function(){var $pkg={},$init,C,I,E,O,L,F,M,G,H,B,J,K,N,D,A,W,EF,EH,ET,T,U,V,AE,AG,AH,AL,AO,AP,AR;C=$packages["fmt"];I=$packages["github.com/r0fls/gostats"];E=$packages["gopkg.in/dedis/crypto.v0/abstract"];O=$packages["gopkg.in/dedis/crypto.v0/cipher"];L=$packages["gopkg.in/dedis/crypto.v0/proof"];F=$packages["gopkg.in/dedis/crypto.v0/random"];M=$packages["gopkg.in/dedis/crypto.v0/shuffle"];G=$packages["gopkg.in/dedis/onet.v1/log"];H=$packages["gopkg.in/dedis/onet.v1/network"];B=$packages["gopkg.in/dedis/onet.v1/simul/monitor"];J=$packages["math"];K=$packages["reflect"];N=$packages["strconv"];D=$packages["strings"];A=$packages["sync"];W=$pkg.CipherText=$newType(0,$kindStruct,"lib.CipherText",true,"github.com/JoaoAndreSa/MedCo/lib",true,function(K_,C_){this.$val=this;if(arguments.length===0){this.K=$ifaceNil;this.C=$ifaceNil;return;}this.K=K_;this.C=C_;});EF=$sliceType($emptyInterface);EH=$sliceType($Uint8);ET=$ptrType(W);AE=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=$ifaceNil;b=$ifaceNil;c=V.Scalar();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Pick(F.Stream);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;e=V.Point();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=V.Point();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Base();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=e.Mul(g,a);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}b=h;$s=-1;return[a,b];}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};$pkg.GenKey=AE;AG=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=V.Point();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Base();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=V.Scalar();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Pick(F.Stream);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=V.Point();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i.Mul(e,h);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=V.Point();$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l.Mul(a,h);$s=8;case 8:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=n.Add(n,b);$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;$s=-1;return new W.ptr(k,p);}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.h=h;$f.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;};AH=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=V.Point();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b.Base();$s=2;case 2:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=V.Scalar();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e.SetInt64(a);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=V.Point();$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h.Mul(d,g);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=-1;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;};$pkg.IntToPoint=AH;AL=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=a;d=AH(b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=AG(c,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}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.$s=$s;$f.$r=$r;return $f;};$pkg.EncryptInt=AL;AO=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=V.Point();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Mul(b.K,a);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=V.Point();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Sub(b.C,e);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return h;}return;}if($f===undefined){$f={$blk:AO};}$f.$ptr=$ptr;$f.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;};AP=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=AO(a,$clone(b,W));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=AR(d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:AP};}$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.DecryptInt=AP;AR=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=V.Point();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b.Base();$s=2;case 2:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=$ifaceNil;f=new $Int64(0,0);g=false;i=a.String();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=(j=$pkg.PointToInt[$String.keyFor(i)],j!==undefined?[j.v,true]:[new $Int64(0,0),false]);f=h[0];g=h[1];if(g){$s=-1;return f;}if((U.$high===0&&U.$low===0)){$s=4;continue;}$s=5;continue;case 4:k=V.Point();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Null();$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}T=l;case 5:m=T;n=U;e=m;f=n;case 8:o=e.Equal(a);$s=10;case 10:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}if(!(!o&&(f.$high<0||(f.$high===0&&f.$low<100000)))){$s=9;continue;}q=e.String();$s=11;case 11:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;($pkg.PointToInt||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(p)]={k:p,v:f};s=e.Add(e,d);$s=12;case 12:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=new $Int64(f.$high+0,f.$low+1);e=r;f=t;$s=8;continue;case 9:T=e;v=e.String();$s=13;case 13:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;($pkg.PointToInt||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(u)]={k:u,v:f};U=f;$s=-1;return f;}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.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;};W.ptr.prototype.DeterministicTagging=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=this;e=V.Point();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e.Mul(a.K,c);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d.K=f;g=V.Point();$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g.Mul(a.K,b);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=V.Point();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j.Sub(a.C,i);$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}d.C=k;l=V.Point();$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l.Mul(d.C,c);$s=8;case 8:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}d.C=m;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.DeterministicTagging};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.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.prototype.DeterministicTagging=function(a,b,c){return this.$val.DeterministicTagging(a,b,c);};W.ptr.prototype.ReplaceContribution=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=this;e=d.C.Sub(a.C,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;f=d.C.Add(d.C,c);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.ReplaceContribution};}$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;};W.prototype.ReplaceContribution=function(a,b,c){return this.$val.ReplaceContribution(a,b,c);};W.ptr.prototype.KeySwitching=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;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:e=this;f=V.Scalar();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Pick(F.Stream);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=V.Point();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i.Mul(b,d);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=V.Point();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l.Mul(c,h);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=V.Point();$s=7;case 7:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=V.Point();$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p.Base();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=o.Mul(q,h);$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;$r=e.ReplaceContribution($clone(a,W),k,n);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}t=e.K.Add(a.K,s);$s=12;case 12:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;$s=-1;return h;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.KeySwitching};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.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;};W.prototype.KeySwitching=function(a,b,c,d){return this.$val.KeySwitching(a,b,c,d);};W.ptr.prototype.Add=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.C.Add(a.C,b.C);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=c.K.Add(a.K,b.K);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Add};}$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;};W.prototype.Add=function(a,b){return this.$val.Add(a,b);};W.ptr.prototype.MulCipherTextbyScalar=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=V.Point();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Mul(a.C,b);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}c.C=e;f=V.Point();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Mul(a.K,b);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}c.K=g;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.MulCipherTextbyScalar};}$f.$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;};W.prototype.MulCipherTextbyScalar=function(a,b){return this.$val.MulCipherTextbyScalar(a,b);};W.ptr.prototype.Sub=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.C.Sub(a.C,b.C);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=c.K.Sub(a.K,b.K);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.Sub};}$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;};W.prototype.Sub=function(a,b){return this.$val.Sub(a,b);};W.ptr.prototype.String=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;b="nil";c=b;if(!($interfaceIsEqual((a).C,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:d=(a).C.String();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=$substring(d,1,7);case 2:if(!($interfaceIsEqual((a).K,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:e=(a).K.String();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}c=$substring(e,1,7);case 5:f=C.Sprintf("CipherText{%s,%s}",new EF([new $String(c),new $String(b)]));$s=7;case 7:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.String};}$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;};W.prototype.String=function(){return this.$val.String();};W.ptr.prototype.ToBytes=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=(a).K.MarshalBinary();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[0];e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=G.Fatal(new EF([e]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:g=(a).C.MarshalBinary();$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];if(!($interfaceIsEqual(i,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:$r=G.Fatal(new EF([i]));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:j=$appendSlice(d,h);$s=-1;return j;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.ToBytes};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.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;};W.prototype.ToBytes=function(){return this.$val.ToBytes();};W.ptr.prototype.FromBytes=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=V.Point();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b.K=c;d=V.Point();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b.C=d;e=(b).K.UnmarshalBinary($subslice(a,0,32));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;f=(b).C.UnmarshalBinary($subslice(a,32));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;return;}return;}if($f===undefined){$f={$blk:W.ptr.prototype.FromBytes};}$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;};W.prototype.FromBytes=function(a){return this.$val.FromBytes(a);};ET.methods=[{prop:"DeterministicTagging",name:"DeterministicTagging",pkg:"",typ:$funcType([ET,E.Scalar,E.Scalar],[],false)},{prop:"ReplaceContribution",name:"ReplaceContribution",pkg:"",typ:$funcType([W,E.Point,E.Point],[],false)},{prop:"KeySwitching",name:"KeySwitching",pkg:"",typ:$funcType([W,E.Point,E.Point,E.Scalar],[E.Scalar],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([W,W],[],false)},{prop:"MulCipherTextbyScalar",name:"MulCipherTextbyScalar",pkg:"",typ:$funcType([W,E.Scalar],[],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([W,W],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"ToBytes",name:"ToBytes",pkg:"",typ:$funcType([],[EH],false)},{prop:"FromBytes",name:"FromBytes",pkg:"",typ:$funcType([EH],[],false)}];W.init("",[{prop:"K",name:"K",exported:true,typ:E.Point,tag:""},{prop:"C",name:"C",exported:true,typ:E.Point,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=I.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$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=B.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$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;}$r=N.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}T=$ifaceNil;U=new $Int64(0,0);$pkg.PointToInt={};V=H.Suite;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
+$packages["main"]=(function(){var $pkg={},$init,D,C,B,A,E;D=$packages["github.com/JoaoAndreSa/MedCo/lib"];C=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];A=$packages["time"];E=function(){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:a=$clone(A.Now(),A.Time);b=$clone(a,A.Time).Format("20060102150405");$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$global.document.getElementById($externalize("testtext1",$String)).innerHTML=$externalize("modif from go - "+b,$String);c=new $Int64(0,888);A.Time.copy(a,A.Now());d=$clone(a,A.Time).Format("20060102150405");$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$global.document.getElementById($externalize("testtext2",$String)).innerHTML=$externalize("generating keys... - "+d,$String);f=D.GenKey();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];A.Time.copy(a,A.Now());i=$clone(a,A.Time).Format("20060102150405");$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$global.document.getElementById($externalize("testtext3",$String)).innerHTML=$externalize("keys gen, encrypting... - "+i,$String);j=D.EncryptInt(h,c);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;A.Time.copy(a,A.Now());l=$clone(a,A.Time).Format("20060102150405");$s=6;case 6:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$global.document.getElementById($externalize("testtext4",$String)).innerHTML=$externalize("encrypted, decrypting... - "+l,$String);m=D.DecryptInt(g,$clone(k,D.CipherText));$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;A.Time.copy(a,A.Now());o=$clone(a,A.Time).Format("20060102150405");$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$global.document.getElementById($externalize("testtext5",$String)).innerHTML=$externalize("value:"+B.FormatInt(n,10)+" - "+o,$String);$s=-1;return;}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.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;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;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=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if($pkg===$mainPkg){$s=5;continue;}$s=6;continue;case 5:$r=E();$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["main"];
+$packages["runtime"].$init();
+$go($mainPkg.$init, []);
+$flushConsole();
+
+}).call(this);
+//# sourceMappingURL=test-medco-crypto-web.js.map
diff --git a/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.js.map b/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.js.map
new file mode 100644
index 000000000..60daa4577
--- /dev/null
+++ b/shrine-webclient/src/main/gopherjs/test-medco-crypto-web.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"test-medco-crypto-web.js","sources":["/github.com/gopherjs/gopherjs/js/js.go","runtime.go","/runtime/error.go","/errors/errors.go","atomic.go","pool.go","sync.go","/sync/mutex.go","/sync/once.go","/sync/pool.go","/sync/runtime.go","/sync/rwmutex.go","/io/io.go","math.go","/math/abs.go","/math/frexp.go","/math/log10.go","/math/pow10.go","syscall.go","syscall_unix.go","/syscall/dirent.go","/syscall/env_unix.go","/syscall/exec_unix.go","/syscall/netlink_linux.go","/syscall/str.go","/syscall/syscall.go","/syscall/syscall_linux.go","/syscall/syscall_unix.go","/syscall/zsyscall_linux_amd64.go","/github.com/gopherjs/gopherjs/nosync/mutex.go","/github.com/gopherjs/gopherjs/nosync/once.go","/github.com/gopherjs/gopherjs/nosync/pool.go","time.go","/time/format.go","/time/time.go","/time/zoneinfo.go","os.go","/os/dir.go","/os/dir_unix.go","/os/env.go","/os/error.go","/os/error_unix.go","/os/file.go","/os/file_posix.go","/os/file_unix.go","/os/path_unix.go","/os/proc.go","/os/stat_linux.go","/os/stat_unix.go","/os/types.go","/os/types_unix.go","/unicode/utf8/utf8.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","reflect.go","/reflect/type.go","/reflect/value.go","/fmt/format.go","/fmt/print.go","/fmt/scan.go","/math/rand/exp.go","/math/rand/normal.go","/math/rand/rand.go","/math/rand/rng.go","/sort/search.go","/sort/sort.go","/crypto/subtle/constant_time.go","/encoding/binary/binary.go","/encoding/binary/varint.go","/gopkg.in/dedis/crypto.v0/subtle/ctime.go","unicode.go","/unicode/digit.go","/unicode/graphic.go","/unicode/letter.go","bytes.go","/bytes/buffer.go","/bytes/bytes.go","/bytes/bytes_generic.go","strings.go","/strings/reader.go","/strings/strings.go","/io/ioutil/ioutil.go","/gopkg.in/dedis/crypto.v0/util/grow.go","/gopkg.in/dedis/crypto.v0/util/reverse.go","/gopkg.in/dedis/crypto.v0/abstract/cipher.go","/gopkg.in/dedis/crypto.v0/abstract/encoding.go","/gopkg.in/dedis/crypto.v0/ints/ints.go","/math/big/arith.go","/math/big/int.go","/math/big/intconv.go","/math/big/intmarsh.go","/math/big/nat.go","/math/big/natconv.go","/math/big/prime.go","rand.go","/gopkg.in/dedis/crypto.v0/random/rand.go","/log/log.go","/gopkg.in/dedis/crypto.v0/cipher/hash.go","/gopkg.in/dedis/crypto.v0/cipher/sponge.go","/flag/flag.go","/github.com/daviddengcn/go-colortext/ct.go","/github.com/daviddengcn/go-colortext/ct_ansi.go","/regexp/syntax/compile.go","/regexp/syntax/parse.go","/regexp/syntax/prog.go","/regexp/syntax/regexp.go","/regexp/syntax/simplify.go","/regexp/backtrack.go","/regexp/exec.go","/regexp/onepass.go","/regexp/regexp.go","/runtime/debug/stack.go","/gopkg.in/dedis/onet.v1/log/log.go","/gopkg.in/dedis/onet.v1/log/lvl.go","/gopkg.in/dedis/onet.v1/log/testutil.go","/gopkg.in/dedis/onet.v1/log/ui.go","/net/url/url.go","/text/template/exec.go","/text/template/funcs.go","/github.com/dedis/protobuf/decode.go","/github.com/dedis/protobuf/encode.go","/github.com/dedis/protobuf/field.go","/crypto/crypto.go","/crypto/md5/md5.go","/crypto/md5/md5block.go","/crypto/sha1/sha1.go","/crypto/sha1/sha1block.go","/context/context.go","/encoding/hex/hex.go","net.go","/net/addrselect.go","/net/cgo_stub.go","/net/dnsmsg.go","/net/interface.go","/net/interface_linux.go","/net/ip.go","/net/iprawsock.go","/net/ipsock.go","/net/mac.go","/net/net.go","/net/parse.go","/net/hook.go","/github.com/satori/go.uuid/uuid.go","/crypto/sha256/sha256.go","/crypto/sha256/sha256block.go","/crypto/sha512/sha512.go","/crypto/sha512/sha512block.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/hashes.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/keccakf.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/register.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/shake.go","/gopkg.in/dedis/crypto.v0/cipher/sha3/sponge.go","/gopkg.in/dedis/crypto.v0/group/encoding.go","/gopkg.in/dedis/crypto.v0/math/jacobi.go","/gopkg.in/dedis/crypto.v0/math/sqrt.go","/gopkg.in/dedis/crypto.v0/nist/int.go","/gopkg.in/dedis/crypto.v0/ed25519/fe.go","/gopkg.in/dedis/crypto.v0/ed25519/ge.go","/gopkg.in/dedis/crypto.v0/ed25519/point.go","/gopkg.in/dedis/crypto.v0/ed25519/suite.go","/encoding/base64/base64.go","/gopkg.in/dedis/onet.v1/crypto/key.go","/gopkg.in/dedis/onet.v1/network/address.go","/gopkg.in/dedis/onet.v1/network/encoding.go","/gopkg.in/dedis/onet.v1/network/local.go","/gopkg.in/dedis/onet.v1/network/struct.go","/encoding/json/decode.go","/gopkg.in/dedis/onet.v1/simul/monitor/proxy.go","/github.com/JoaoAndreSa/MedCo/lib/crypto.go","test-medco-crypto-web.go"],"mappings":";;;;mlBA+B4C,yC,gHAGW,kE,mHAGhB,yC,kHAGN,kC,kHAGQ,mB,yHAGc,4C,iIAGY,yE,qHAGX,mD,kHAGH,kG,0GAGrB,mB,4GAGI,sC,6GAGN,8B,yGAGI,qC,8GAGE,sC,+GAGA,6B,iHAGQ,8C,sHAGP,gB,+GASnC,kE,6GAKA,4C,mFAsBA,oB,0CAkDA,kBACA,W,wqD;;w9BC5IA,qEACA,0BACA,wBACA,2CACC,kB,GAGG,YACJ,0BACA,W,4EAoBA,yE,kB,qD,CAIA,6J,6F,sCAYA,4CACA,a,yCAIA,S,iD,gEA6E6D,S,2H,6B,2GAEA,S,iFAG7D,c,kDAcA,6B,kBAEC,S,CAED,iH,iE,+HCpJA,oB,WAEC,c,C,0BAGA,kE,C,yBAGA,mF,CAGD,gH,uH,kJAUA,0B,6sC,4F,4F;sQCxCA,oB,gEASA,W;gG,0C,0C,4C,uC,6C,gD;wJ,mBC8BC,YACA,Y,CAED,a,iEA4CA,mBACA,YACA,U,6CAoCA,iB,sDAwBA,Y,sM;48FC9IA,qD,OACC,kE,OACC,oG,OAED,uB,OAED,sIACA,oDACA,e,iP,mCAKC,O,CAED,2B,iF,6NCvBA,8C,OACC,qBACA,4IACA,2F,O,yB,+V,yBAaD,+C,kBAEC,a,CAGD,4FACA,iBACA,sF,kBAEC,uB,C,gG,6J,2BASD,a,uU,oJ,UCQE,a,CAED,a,CAGD,QACA,IACA,OACC,UACA,MACA,gD,O,S,2LAOG,O,CAED,KACA,WACA,c,CAED,S,O,M,cAMC,oC,CAED,c,CAED,iL,O,cAEE,c,CAED,sMACA,OACA,I,O,qB,UAKD,a,C,ib,UAYA,iBACA,a,CAID,sI,uBAEC,oC,CAGD,IACA,O,oCAIE,a,CAGD,eACA,iL,OACC,sMACA,a,OAED,U,qB,sjB,uIC5FA,a,CAGD,6FACA,8CACA,4C,OACC,qJACA,sF,O,kVC8KD,sJACC,2GACI,iDACH,gBACA,sBACA,yDACC,wH,KAED,gBANiC,W,CAQlC,UACA,c,KAED,c,yBASA,K,kCAIA,wG,2BClMI,wBACJ,M,+S,UCbC,mBACA,Y,CAED,8L,OAEC,0N,O,UAGA,WACA,gJ,C,mZ,UAUA,mBACA,qJACA,Y,CAEE,8JAAH,qC,O,6CAEE,WACA,uC,CAGD,6L,OAEC,0N,O,O,UAID,W,C,6Z,UASA,mBACA,Y,CAGD,6FAEA,qLAEA,6M,OACC,0N,O,UAGA,WACA,gJACA,gJ,C,+Z,UAYA,mBACA,gJACA,gJACA,Y,CAID,sK,kBAEC,WACA,sC,CAGG,0CACH,0NADuB,W,qBAIxB,+F,UAEC,W,C,6PAOD,wC,gRAK4B,2H,sYACA,6H,6yG,4F,4F,sG,K,I,K;+4BCoJzB,sCAAH,mC,O,kI,O,oJ,gd,gB,oD,CAiBA,iEACK,IACJ,sHACA,W,qB,SAGA,Y,6CAEA,wB,CAED,kB,ma,kI,mgC,4F,4F,wC,0C,sB,8C,wE,iC,iC;+hBCpQA,8B,2D,0C,0C,UA0BC,S,MAEA,S,C,8C,WAMA,a,C,WAGA,a,CAED,a,sD,0B,0C,iBAsBC,S,CAED,8B,yCAYA,c,sCA2BA,S,wCAwDA,+BACA,4CACA,8CACA,8C,8BAIA,sBACA,yB,kDAIA,qBACA,0B,4DAIA,sBACA,gJ,kDAIA,gCACA,sDACA,0B,sD,SC5NC,U,C,WAGA,S,CAED,U,sE,mC,6D,C,qC,yE,a,qC,yB,qC,CCIA,4BACA,UACA,+GACA,yFACA,uFACA,UACA,c,uCCZA,2B,aAIC,gB,CAED,mC,qCCQA,QACA,SACI,qCACH,+FACA,0QAF8B,a,C,kL,sJ,e,I,M,O,M,K;ulSCrB/B,mC,uBAEE,6DACA,S,C,G,wB,OAOD,yJ,CAED,O,+BAIA,2B,qBAEC,KACA,O,CAGD,oBACA,YACC,U,WAEC,M,CAED,4EACA,wB,C,2B,uCAUD,qJ,UAEE,S,C,KAGF,S,oCC9CA,kB,kBAEC,c,CAED,QACA,yBACA,qCACI,oDACH,6BACA,wJAFiC,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,WAIA,W,CAED,I,iD,oGAKG,gB,gBACF,mB,iH,C,iBAIA,I,C,6C,yFAME,e,gBACF,a,iH,CAGD,I,6C,uDAcA,yCACA,6K,UAEE,0B,CAED,O,KAED,cACA,oB,uG,6B,+C,C,U,iD,C,iD,oF,I,YCzFC,gH,kBAEA,mGACA,+R,kBAEA,mGACA,ioB,kBAEA,mGACA,01C,MAGA,8D,C,oF,I,YAOA,gH,kBAEA,mGACA,+R,kBAEA,mGACA,ioB,kBAEA,mGACA,01C,MAGA,8D,C,mHASD,YACA,IACA,kDACC,sB,2F,sC,CAIA,+BACA,6BACA,sB,OAEC,M,C,8BAGA,S,CAGD,uB,wIAEC,M,CAED,kEACA,mK,WAEE,sBACA,M,C,M,wDAKD,S,CAED,WACA,WACA,gC,C,yD,gEC9DD,MACA,sJACK,yC,yBAEF,oBACG,sE,OACF,4F,MAMA,uG,CAED,M,CAZsB,W,C,K,gfAiCzB,4F,iB,uC,CAKA,6FACA,8CAEA,6E,O,uC,CAIA,sGACI,yC,yB,0D,CAAoB,W,C,uC,gZCWE,U,oD,gC,4BCnF1B,2B,4BAMA,2B,+DAWA,8BACA,mDACA,oDACA,qDACA,oDACA,qDACA,0GACA,S,6GAIA,kDACA,gBACA,2BACA,mBACA,qBACA,2BACA,wB,smBAMA,2B,sCAEC,uB,CAED,yBACA,2CACG,yF,sCACF,uB,CAED,YACG,6F,sCACF,uB,CAEG,SACJ,sBAEA,iBACC,IACA,0B,sCAEC,uB,C,SAGA,gC,CAED,mBACA,oBACA,uB,sCAEC,uB,CAED,wKACC,2B,uCAEC,wB,CAED,M,+B,W,wDAGE,gC,C,M,MAGD,gC,C,uBAGA,W,C,uBAGA,gC,C,M,CAIH,0B,qfAYI,SACJ,wCACC,oC,sCAEC,iB,CAED,6DACA,eACA,iB,CAED,oB,kEAIA,6NACA,iB,+BAEC,mC,CAED,sC,8CAaI,S,gB,2BAGH,uB,iCAEA,sB,iCAEA,uB,MAEA,0B,CAEG,SACJ,uCACC,oC,sCAEC,iB,CAED,4DACA,eACA,iB,CAED,oB,kEAIA,sI,uCAEC,mC,CAED,kD,4B,QCzKC,uB,CAED,mB,oCAII,YACJ,KACA,gCACC,iKACA,WACA,2F,CAED,qGACA,8C,iG,qC,gHCoEA,oG,oN,0B,wE,6C,sF,2BCkLC,uB,CAED,eACA,6HACA,0CACA,kCACI,kCACH,wLAD6B,W,CAG9B,4C,wI,2BAKC,uB,CAED,gBACA,6HACA,0CACA,kCACA,wBACI,mCACH,wLAD6B,W,CAG9B,4C,wIAIA,SACA,W,WAEC,uB,CAED,eACI,kCACH,wHADkB,W,CAInB,I,QAEC,0B,C,uBAGA,gBAEA,Y,CAGD,4C,oI,sCAeC,uB,CAED,gBACA,0BACA,6BACA,sBACA,wBACA,oBACI,kCACH,wLAD6B,W,CAG9B,4C,8HAYA,gBACA,gBACA,gBACA,sBACA,4C,+O,gB,aAMC,ycACA,0CACA,kBACA,YACA,YACA,kBACA,oB,mBAGA,knBACA,oEACA,sBACA,yBACA,kBACA,oBACA,gBACI,oCACH,gMAD6B,a,CAG9B,oB,kBAGA,gfACA,0C,mBAOC,c,CAQD,KACA,4IACC,a,CAED,0DACA,2BACA,qB,kBAGA,snBACA,+DACA,uHACA,qEACI,oCACH,kMAD6B,a,CAG9B,qB,mBAGA,ulBACA,2DACA,uHACA,qEACA,sBACI,qCACH,kMAD6B,a,CAG9B,qB,CAED,6B,gEAqCI,gDACA,MACD,qE,sCACF,Y,C,kC,0E,oC,+CAqSD,gB,4BAIA,iB,kCAIA,sB,OAEC,+B,CAED,8C,ylB,S,gD,CCxtBA,yH,sC,uC,CAMI,uBAOJ,OAGA,uDACA,iGACA,kDACA,iG,8C,s6B,kD,4B,CAUA,sDACA,iGACA,kDACA,sD,2F,4B,CAMG,4H,sC,mB,CAGH,8B,2B,8a,0BAeC,mF,cAEC,S,C,CAGF,0B,wIAIA,mE,8IAIA,oC,+G,I,YAgBC,iB,mBAEA,U,mBAEA,U,kBAEA,U,CAED,iB,sDAoBA,wB,U,QAGE,iC,C,mCAGA,0E,C,C,eAID,uB,CAED,Y,mE,UAKC,+E,CAED,wB,eAEC,gC,C,eAGA,uB,CAED,Y,4QA8BA,mH,sC,mB,C,2B,iOAgCI,gDACA,MACD,uF,sCACF,c,C,2BAGA,sB,CAED,c,qSAIA,mH,sC,mB,C,+B,+N,qC,sC,CAgDA,0BACA,Y,qFCpRI,SACJ,qB,sCAEC,Y,CAED,qDACA,KACA,S,eAEC,Q,CAED,Y,8CA0PA,0B,eAEC,Q,CAED,S,0CA4EA,mBACA,O,2DAgCA,2B,eAEC,Q,CAED,S,iEAMA,iC,eAEC,Q,CAED,S,6EAMI,SACJ,qB,sCAEC,S,CAED,8CACA,K,eAEC,Q,CAED,S,+EAsBA,8CACA,S,eAEC,Q,CAED,Y,8CA0BA,2B,eAEC,Q,CAED,S,0EAMI,I,gBAEH,mB,MAEA,oB,CAED,iDACA,S,eAEC,Q,CAED,Y,6EAwQI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,4DA8QI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,kDAsCA,qB,eAEC,Q,CAED,S,sDAoGA,uC,eAEC,Q,CAED,S,uEAMA,umC,eAEC,Q,CAED,S,gEAgBA,sC,eAEC,Q,CAED,S,qDAsBA,sBACA,SACA,S,kDAgBA,sBACA,SACA,S,2EA+DI,SACJ,qB,sCAEC,S,CAED,imCACA,K,eAEC,Q,CAED,S,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,iEACA,S,eAEC,Q,CAED,Y,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,iEACA,S,eAEC,Q,CAED,Y,2FAMA,kDACA,2C,eAEC,Q,CAED,Y,yEAuHI,SACJ,qB,sCAEC,S,CAED,imCACA,K,eAEC,Q,CAED,S,mEAsEA,iC,eAEC,Q,CAED,S,8DAyDA,8CACA,S,eAEC,Q,CAED,Y,4DA0BA,gT,eAEC,Q,CAED,S,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,iVACA,S,eAEC,Q,CAED,Y,gEAMI,I,gBAEH,mB,MAEA,oB,CAED,2D,eAEC,Q,CAED,S,0EA4BA,8DACA,I,eAEC,Q,CAED,Y,2rO,4F,4F,4F,kQ,Q,Q,K,O,a,c,c,c,c,a,ozG,6C;k9B,aC3tDC,uD,CAED,c,4G,cAMC,wD,CAED,e,sb,cCOC,a,C,eAGA,kD,CAED,gBACA,wDACC,iBACA,e,aAED,sF,2hBCQA,qD,OACC,kE,OACC,oG,OAED,uB,OAED,sIACA,oDACA,e,iP,mCAMC,O,CAED,2B;4+EC/CI,6C,gCAcJ,sBACA,0BACA,UACA,U,uBAEC,cACA,O,CAED,iCACA,6F,wBAIA,wF,0DAIA,M,oJ,+BAsDA,+D,6B,iBCgCC,a,CAED,kBACA,qB,+TAMI,yCACI,uB,I,a,yD,6D,6E,C,+B,6E,C,C,mB,uB,qC,4D,iF,C,+B,mF,C,C,qC,kF,C,C,mB,+E,yM,C,mB,sD,mF,C,mF,mB,0D,mF,C,mF,mB,sD,iE,0F,C,mF,C,mB,mF,mB,mF,mB,mF,mB,sD,mF,C,oB,uD,mF,C,mB,6D,kF,C,+D,kF,C,2D,kF,C,4D,kF,C,yD,kF,C,mB,6D,kF,C,+D,kF,C,2D,kF,C,4D,kF,C,yD,kF,C,mB,sFA2GL,0BACA,UACA,+DACC,a,C,cAIA,M,gCAEC,M,CAED,sC,4E,C,C,CAvHyB,W,C,6C,qCAuLzB,yCACH,kBACA,kB,eAGC,eACA,e,4BAEC,a,C,CARsB,W,CAYzB,Y,uCAIA,qJ,sDAEE,2C,C,KAGF,gB,gDAOA,U,QAEC,gBACA,W,CAIG,YACJ,KACA,gCACC,WACA,yFACA,sHACA,I,CAED,WACA,qGAGI,wCACH,gBADiC,W,CAIlC,8C,gEAQA,Q,gEAEC,uBACA,kB,CAED,6BACA,2C,iD,6B,C,MAKC,K,C,oC,oDAQD,IACI,YACA,kCACH,WACA,iKACA,2F,C,QAIA,I,C,MAGA,gIACC,W,C,UAGA,S,C,CAGF,gBACA,gD,8NAMA,2J,obAqBI,SACJ,iB,SAEK,YACJ,2B,MAEA,qB,CAED,gHACA,+B,80BAOC,4HAEA,KACA,IACA,IACA,KACA,IACA,IAGD,oCACC,mC,eAEC,qB,C,WAGA,M,CAED,K,2BAIC,sC,C,2BAKA,iC,CAGD,kB,Y,eAEC,K,SAEC,O,CAED,8E,qBAEA,Y,qBAEA,qD,qBAEA,sBACA,qB,qBAEA,iB,qBAEA,iB,qBAEA,yD,qBAEA,0BACA,qB,qBAEA,Y,qB,SAGC,gB,CAED,Y,qBAEA,Y,qBAEA,Y,qBAGA,qE,WAEC,M,CAED,a,qBAGA,qE,WAEC,M,CAED,a,qBAEA,Y,qBAEA,Y,qBAEA,Y,qBAEA,Y,qB,UAGC,uB,MAEA,uB,C,qB,UAIA,uB,MAEA,uB,C,2I,qEAMA,gBACA,M,CAED,+FACA,K,SAEC,gBACA,OACA,O,MAEA,gB,CAED,uG,+CAEC,gB,C,+BAGA,6E,C,+C,yBAMC,gB,CAED,6E,C,oB,cAKA,oBACA,M,CAID,+F,SAEC,gBACA,O,MAEA,gB,CAED,uGACA,6E,mCAEA,kE,C,C,CAGF,e,0hBAeA,kB,sD,mBAMC,gH,CAMD,4C,2F,gBAOC,a,CAED,kBACA,oB,gC,aAQC,e,C,a,MAIC,e,CAED,qE,CAED,uH,4BAIA,6DACC,kB,CAED,S,gCAMA,qC,yB,0CAGG,a,CAED,QACA,QACA,S,C,2DAGA,a,CAED,kBACA,kB,CAED,oB,8MA+CA,wH,mwDAaA,gBACA,KACA,QACA,QAIC,IACA,IACA,IACA,KACA,KACA,KACA,KACA,UACA,MACA,MAID,YACK,aACJ,mCACA,mDACA,6B,uCAEC,2E,C,W,sBAIC,2F,CAED,M,CAED,KACI,MACJ,kB,Y,e,eAGE,MACA,M,CAED,mDACA,2B,UAEC,c,MAEA,c,C,qB,yBAIA,MACA,M,CAED,mDACA,2B,qBAEA,mC,qBAEA,mC,qCAEA,2C,eAEC,U,C,qBAID,2B,qBAEA,2B,mD,mDAGC,kB,CAED,2C,QAGC,Q,C,qBAGD,yC,iBAEC,S,C,qCAGD,4C,gBAEC,S,C,qCAGD,4C,iBAEC,W,C,qCAGD,4C,iBAEC,WACA,M,C,iDAKA,iBACA,c,yBAGC,M,CAGD,KACA,gDAA2C,a,CAE3C,sCACA,mB,C,qB,eAIA,MACA,M,CAED,mD,M,gBAGC,O,sBAEA,O,MAEA,M,C,qB,eAIA,MACA,M,CAED,mD,M,gBAGC,O,sBAEA,O,MAEA,M,C,2I,2EAIA,kBACA,YACA,M,CAEG,gD,yB,eAGF,MACA,M,C,8BAGA,MACA,M,CAED,uH,+B,eAGC,MACA,M,CAED,0G,+B,eAGC,MACA,M,C,yDAGA,MACA,M,CAED,oI,+B,eAGC,MACA,M,CAED,oI,M,eAGC,MACA,M,CAED,uH,CAEG,iCACJ,4B,oCAEC,4B,C,oCAGA,4B,CAED,8C,oB,c,oBAIC,O,MAEA,M,C,oB,2CAKA,YACA,kBACA,M,CAED,2B,QAEC,MACA,M,CAED,qD,oBAKA,sB,gBAEC,MACA,M,CAED,sCACA,mB,oB,kFAKC,M,CAID,KACA,6GACC,a,CAED,2CACA,0B,C,C,cAGA,+F,C,uCAGA,2E,C,C,aAID,c,uBAEA,K,C,wBAKA,6F,CAGD,gD,OACC,2I,OAGD,8C,OACC,uIACA,qFAIA,4K,kCAEC,aACA,2B,CAID,qBACA,2B,OAGD,4C,OACC,yIAGA,qL,OAEC,qFACA,aACA,2B,C,4CAKA,iCACA,oB,CAED,qBACA,2B,OAID,4I,ixC,e,gC,C,0E,+B,C,8BAuBC,Q,+B,CAIG,IACA,kC,gBAEF,M,CAEE,kB,eACF,M,CAL0B,W,C,I,+C,gC,kB,yB,mC,C,kB,uD,mC,C,kB,mC,C,oC,sCA8B5B,kB,iBAEC,S,CAED,kB,6BAEC,S,CAED,2C,sCAEC,S,C,WAGA,+B,C,sHAGA,S,CAED,kC,iE,8BAKC,KACA,c,CAEE,sC,sCACF,c,C,uBAGA,sBACA,c,CAKD,UACI,kCACH,gBAD4B,W,CAG7B,c,qGAOA,IACA,qCACC,kB,eAEC,M,C,kE,sD,CAMD,iI,yC,wD,CATiB,W,C,kE,iFAsBlB,IACA,IACA,QACA,qCACC,kB,eAEC,M,C,MAHgB,W,S,C,kEAUhB,OAVgB,W,S,CAajB,iI,yCAEC,OAfgB,W,S,CAkBjB,IACA,SAnBiB,W,C,oD,6FA0ClB,IACI,kBACJ,Q,cAIC,kB,uBAEC,SACA,kB,C,C,YAKD,8B,C,WAGA,uD,CAED,oCAEE,4CACA,IAGG,Y,wEAIH,uD,CAGD,WACA,6B,sCAEC,uD,CAED,oBAGA,S,sCAEC,kBACA,YACA,iCACA,sB,C,YAIA,uD,CAID,KACA,sCACC,oB,8BAEC,M,CAHgB,a,C,WAOjB,+D,CAED,sBACA,mBACA,oG,QAEC,sE,C,qHAIA,uD,CAED,iB,yCAIC,kG,yCAGC,uD,C,CAGF,qD,yCAGC,uD,C,C,MAKD,+B,CAED,yC,gF,WCnvCC,S,CAED,Q,8HAKA,qJ,6HAKA,qJ,0HAQA,gF,yH,gBAuCC,kG,CAED,oBACA,yBACA,oD,uIA2BkC,uF,wIAuGlC,wD,yXAMA,QAEA,oD,OACC,yF,OAED,sDACA,2C,OACC,wM,OACC,iF,qBAEA,oGACA,gE,O,OAGF,4F,2lBAMA,QACA,oD,OACC,yF,OAGD,sDACA,2C,OACC,wM,OACC,mBACA,qB,qBAEA,6G,OAED,gE,qBAEA,Q,OAED,kFACA,oB,ihBAKA,8HACA,oB,qbAKA,iHACA,e,waAKA,gHACA,e,yaAKA,gHACA,e,8ZAKA,kM,2NAMA,2EACA,8G,2WAQA,qIACA,+KAgBA,uGAMA,iF,eAEC,W,C,UAMA,WACA,K,8BAKC,W,C,C,yBAQE,qF,iBACF,WACA,I,C,CAIF,kB,gjB,gO,mQAUA,gDACA,0FACA,yBACA,wFACA,uBACA,c,qOAKA,gP,yZAKA,6O,sZAKA,uJ,4OAMA,kB,oTAMA,iHACA,oB,mQAuCI,YACJ,KAEA,8BACA,uC,MAEC,gC,C,kDAMI,IACJ,WACA,mFACA,W,8BAGC,W,kDAGA,IACA,mF,qDAGA,IAEA,WACA,+C,MAGA,IACA,mF,CAED,iDACA,iC,MAEA,WACA,mFAEA,iDAGA,gEACA,sC,yCAIC,WACA,mFACA,gEACA,sC,yCAKC,WACA,mFACA,iC,C,C,C,MAMF,WACA,kF,CAGD,8C,kJASA,YACA,QACI,kCACH,mCACA,kC,MAEC,WACA,iI,CAED,sCAPqB,W,C,MAUrB,WACA,oG,C,4B,kCAQD,Y,8BAEC,WACA,oG,MAEA,+DACC,WACA,gKACA,sC,C,CAGF,S,wDAIuC,kC,yIAavC,uCACA,sCACA,yC,iIAKA,wCACA,uCACA,yC,+HAKA,wCACA,uCACA,2C,8IAKA,gIACA,2F,kBAEC,4EACA,oB,cAEA,4EACA,oB,CAED,SACA,S,0HAQA,+L,uDAIC,S,4CAEA,6B,MAEA,qC,C,mZAyBD,0HACA,2HACA,0K,ukB,2O,oUAsBA,uCAGA,wCACA,+BACA,iFAMA,uCACA,wEACA,8EACA,gFAKA,sCACA,4EACA,kFAMA,qCACA,2EACA,sDACA,iFAEA,4HACA,c,OAGC,gB,CAGD,I,U,SAME,W,mBAGA,IACA,KACA,gB,C,CAMF,mGACA,wGACI,K,UAEH,WACA,M,MAEA,yF,CAGD,WACA,iBACA,gB,kC,mBAwBC,U,CAED,6L,+BAQA,oBACA,yE,gEAKA,aACA,S,2GAKA,qBACA,S,+G,eAQC,iE,CAED,YACA,S,gHAKA,Q,eAEC,W,CAED,S,wUAMA,iKACA,kB,8PAMA,0D,sHASA,kK,0VAOI,IAEJ,oE,OACC,K,qBAEA,4G,2EAEC,oF,CAED,0F,gCAEC,yE,CAED,c,OAGD,ydAkBA,0B,oqBAKA,I,kBAEC,oD,C,uGAIA,gE,C,wBAIA,2D,CAGD,iBACA,+zCAGA,iBACA,iaAEA,iBACA,yOAEA,0C,OACC,a,qBACS,2K,YACT,qB,MAEA,oB,C,OAGD,uB,2kBASA,yH,qaAKA,iH,icAMG,qG,kBAGF,+E,CAGD,sBACA,gBACA,oJACA,gBACA,0B,sd,+BAQC,uB,CAGG,YACJ,8JACA,e,2dAMG,qG,kBACF,+E,CAGD,sBACA,0K,sdAOI,YACJ,0JACA,e,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,6rB,eAuBA,8D,CAID,cACA,2BACA,cAGA,mCACA,2BACA,2BACA,2BAEA,wGAKA,uCACA,qFACA,oCAGA,uCACA,qFACA,uFAGA,qCACA,mFACA,sFAGA,MACA,qFAGA,sK,gBAEC,wE,CAID,+EAGA,mCACA,gHAEA,yFAMA,gIACA,6C,OACQ,uEACP,6K,OACC,4I,c,OAEA,8G,O,OAED,uE,OAGD,wEACA,aACA,gB,kiB,0CAYC,S,CAED,4BACA,kD,gI,0CAaC,S,CAED,4B,oGAEC,kD,CAED,+D,yNAOA,QACA,S,mDAGC,OACA,6CACA,K,QAEC,oBACA,4E,C,C,2JAOD,qIACA,gH,4EAIA,0EACA,yEACA,iJ,MAQA,4CACA,gEACA,4BACA,uBACA,wFACA,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,kN,eCnpCC,gB,CAED,wC,OACC,2F,OAED,e,+XAMA,yG,qNAMA,iLAOA,iHACA,S,kiBAWA,yF,uBAGC,QACA,IACA,QACA,4BACA,oCACA,wB,CAGE,c,iKACF,SACA,WACA,UACA,eACA,aACA,wB,C,0LAIA,yIACA,UACA,YACA,WACA,4B,mBAEC,8G,MAEA,oC,CAED,wB,CAKD,QACA,oCACA,KACA,cACA,uCACC,+GACA,+G,6DAEC,KACA,M,MAEA,M,C,CAGF,sOACA,UACA,YACA,WACA,8GAEA,wB,uc,uBAqBC,S,C,iPAKI,oJ,uHAEF,S,CAFyC,W,C,CAQ5C,uD,uHAEE,S,C,KAKF,S,iJAMA,+J,gBAEE,Y,C,KAGF,a,kmBAOA,yFAQA,0DACC,8GACA,4C,OACC,8L,gB,uD,C,O,yBAQF,6DACC,sH,gB,oE,C,MAOD,oB,0pM,4F,4F,4F,4F,kM,qD,mF,sD,0F,gI,iC,gC,6B,+I,wG,6S,+E,0E,Y,c,8G,4C;wzFCjPA,iB,8BAIG,kB,qBACF,SACA,oDACI,2DACH,2JADgC,W,C,C,0BAKjC,wB,C,wB,yO,eCAA,qC,CAED,yG,4R,e,+C,C,8C,8cCPA,c,WAEC,M,CAED,kCACA,6BACA,oJACC,2G,UAIC,kB,C,sC,kC,CAKD,e,yB,yDAKA,Q,C,kC,+Z,4BAQA,sCAEA,uC,CAED,iBAEA,I,SAEC,MACA,K,CAGD,qBACA,qC,mBAGE,SACI,YACJ,mE,sC,4C,C,cAKC,M,C,CAKE,gBACJ,yEACA,qBACA,W,C,0B,gC,C,oC,6RCED,oGACA,e,wVCvDoC,+H,wYAQG,yH,2M,mCAOtC,iB,CAED,sB,mDAcA,a,uDAYA,I,8B,SAEC,a,oC,SAEA,a,oC,SAEA,a,CAED,S,4BC7DA,QACA,kF,qDC2B8B,mB,oRA8C9B,wI,4QAOG,uB,sC,4B,CAGH,0B,yD,gC,C,sCAKC,kC,C,4B,6JAUE,uB,sC,4B,CAGH,sCACC,6B,4C,gC,C,sCAKC,kCACA,M,CAED,WACA,iBACA,gE,CAED,Y,4JAOG,wB,sC,4B,CAGH,2B,QAEC,I,C,uBAGA,kB,CAGD,Q,sCAGC,mC,C,4B,4JASE,wB,sC,4B,CAGH,sCACC,8B,sCAEC,mCACA,M,CAED,WACA,iBACA,gE,CAED,Y,qLASG,uB,sC,0C,CAGH,4B,6FAEC,kB,C,sC,wE,C,oC,kJ,+D,iIA4CE,wB,sCACF,S,CAEE,sB,sCACF,wC,CAED,iB,qFAQA,iB,6C,QA2BC,I,CAED,Y,8D,eAOC,uB,C,mBAGA,+C,CAED,iB,yLC/PA,mC,+BAEC,iB,C,+BAGA,iB,C,+BAGA,gB,CAGD,S,kCAOG,mB,sCACF,8B,CAED,iB,2EAMG,wB,sCACF,S,CAEE,4B,sCACF,wC,CAED,iB,4HA0BG,wB,sCACF,S,CAEE,0B,sCACF,wC,CAED,iB,+HAOG,2B,sCACF,S,CAEE,2B,sCACF,2C,CAED,iB,0HAOG,uB,sCACF,S,CAEE,qB,sCACF,uC,CAED,iB,0G,eC/EC,kB,CAED,sB,uFAKA,S,QAEC,c,CAED,qCACA,uDACA,S,gD,6EAeC,K,C,gDAcD,Q,uDAEI,e,UACF,O,C,CAIE,IACJ,YACK,YACJ,yC,mCAEC,M,C,+CAOA,S,CAGD,qC,C,MAKA,Q,C,UAMA,iB,CAGD,gC,uE,eAOC,uB,CAED,sB,mH,4BAKC,uB,CAEG,YACD,gB,sCACF,8B,CAED,QAGA,4BACA,S,yI,gCAgBC,4B,C,gE,8I,gCAUA,4B,C,mE,0JAQD,YACC,I,gCAEC,4B,CAED,qDACA,W,0DAMC,iBACA,S,C,sEAIA,iBACA,S,C,4B,C,iJ,gCAWD,4B,C,oE,iK,kD,2FC7LD,gBAEA,sDACC,oBAD8B,W,CAI3B,W,+B,yBAEF,yBACA,M,CAHe,W,CAOjB,S,yB,UCdC,O,CAED,c,yBAMmB,kB,wCAMA,kB,2C,UAkBlB,I,CAED,U,+CCzCA,aACA,kBACA,yDACA,oC,yB,gBAGC,+B,qBAEA,+B,sBAEA,iC,qBAEA,+B,sBAEA,gC,sB,sBAIA,+B,C,qCAGA,8B,C,qCAGA,8B,C,oCAGA,8B,C,4BAKD,4B,yD,eC5BC,kC,CAEG,gYACJ,2B,sCAEC,kD,CAED,kBACA,oB,uFAMI,gYACJ,kB,sCAEC,wC,CAED,QACA,oB,6CAQI,gYACJ,mB,sCAEC,yC,CAED,QACA,oB,uCCtCwB,uB,wGAqDpB,YACJ,IACA,wF,iEAEE,4FACA,W,C,S,UAID,kFACA,W,CAGD,qF,gEAEE,4F,MAEA,kF,CAED,W,SAED,gD,sIAMA,oC,wIAMA,+B,2IAKA,kB,gIAGmC,c,6GACA,gC,8GCpFM,c,4GACA,c,+GACA,iB,iHACA,a,u2J,4F,4F,4F,4F,4F,4F,4F,6G,0C,8C,2C,8C,4C,yC,M,0C,6C,6C,I;4XC+HzC,Y,Q,gC,CAIA,4FACA,iF,WAKC,yB,6I,CAGD,YACA,8G,a,gC,CAIA,4F,mB,gC,C,U,sE,CAOA,4F,iB,gC,C,U,mG,CAOA,6F,mB,oC,C,oI,sHAgBA,W,Q,gC,CAIA,kBACA,iF,WAKC,yB,mE,CAGD,YACA,8G,a,gC,CAIA,kB,mB,gC,C,U,sE,CAOA,kB,iB,gC,C,U,mG,CAOA,mB,mB,oC,C,oI,yFAgBA,Y,U,gC,CAIA,SACA,wG,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,wGAEF,M,CAFyB,W,C,QAM1B,I,CAED,oC,sB,gC,C,4B,qFAgBA,W,U,gC,CAIA,SACA,uB,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,uBAEF,M,CAFyB,W,C,QAM1B,I,CAED,qC,sB,gC,C,4B,yD,QAYC,S,iBAEA,S,kBAEA,S,6BAEA,S,mBAEA,S,qBAEA,S,CAED,S,gDAOO,U,WAEN,uGACA,S,kBAEA,mGACA,2HACA,8HACA,S,4CAEA,QAGA,mGACA,4HACA,sIACA,8HACA,S,mBAJA,mGACA,4HACA,sIACA,8HACA,S,MAEA,mGACA,4HACA,uIACA,sIACA,8HACA,S,C,yEAOD,YACI,IACA,kCACH,WACA,mG,UAGC,WACA,S,CAED,iF,YAEC,WACA,S,CAED,mB,eAEC,WACA,S,CAED,8GACG,8G,mBACF,I,gB,MAES,8G,iBACT,I,gB,MAES,8G,iBACT,I,C,C,CAED,W,CAED,S,sEAKA,WACI,kCACH,kB,UAGC,WAJkB,W,S,CAOnB,iF,YAEC,WATkB,W,S,CAYnB,mB,eAEC,WAdkB,W,S,CAiBnB,8GACG,yB,mBACF,I,gB,MAES,yB,iBACT,I,gB,MAES,yB,iBACT,I,C,C,CAED,WA3BmB,W,C,a,oDAmCS,+B,4C,kBAuE5B,Y,8BAEA,Y,CAED,a,0U,67B;qyE,I,8EC/fC,uB,uFAEA,wB,CAED,+B,4C,MAMC,a,CAED,c,uD,6BCNC,a,CAEG,yCACH,kB,iBAEC,kB,CAED,kB,iBAEC,kB,C,eAGA,a,CAVuB,W,CAazB,Y,6D,iBAKC,Y,C,kB,a,kC,sC,C,mB,kC,uC,C,kC,e,qC,C,kC,gC,sC,C,MAIA,Y,CAkBD,Y,8EAIA,IACA,YACA,c,gBAIC,S,C,2BAIA,W,iCAEA,WACA,W,CAID,QACA,QACA,qC,2B,MAIG,S,CAED,OACA,UAPgB,W,S,mDAWhB,O,uCAEC,iBAbe,W,S,C,aAiBf,8GACA,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,gKAQA,I,gBAIC,kB,C,2BAIA,W,iCAEA,OACA,W,CAID,QACA,QACA,IACA,IACA,IACA,qCACQ,kB,O,mB,MAGL,kB,CAED,OACA,IAPgB,W,S,6BAWhB,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,C,iCAIA,S,CAED,OACA,kB,6KAQI,IACA,mBAGJ,0C,OACC,mBACA,SACA,c,OAMD,0C,OACC,c,OAED,2C,OAEC,mBACA,SACA,c,OAID,IACA,iCACK,I,oBAEH,K,MAEA,4G,CAED,YACA,W,CAED,wDACK,I,qBAEH,K,MAEA,6G,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,kC,gJ,sEAsBA,Y,CAED,gB,MAEC,K,C,Y,+B,qB,SAYC,mHACA,K,C,sBAIA,Y,C,gI,sB,uI,CAMF,Y,qE,sEAOC,Y,CAED,gB,MAEC,K,C,Y,+B,qB,SAWC,4HACA,K,C,sBAIA,Y,C,yI,sB,gJ,CAMF,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,qC,WAwBA,qBACA,Y,CAED,Y,8OCngBA,0J,2MAIA,qC,+BAIA,oC,uGAYI,mBACA,YACA,8C,UAGH,K,CAGD,IAEA,sG,OACC,iBACA,c,c,O,c,OAQA,mK,OACC,8C,QACC,iBACA,c,QAED,KACA,I,e,QAEA,IACA,I,uBAEA,K,Q,O,qBAID,+BACA,c,O,O,I,aAOA,oC,mBAEA,2B,MAEA,wG,CAGD,6EAEA,0CACK,IACJ,kBAEA,mH,QACC,gB,e,QAEA,8B,e,QAEA,8B,uBAEA,mBACA,iBACA,c,Q,QAED,mD,QACC,mBACA,iBACA,c,QAGD,0F,QAEC,qCACA,gBACA,c,QAED,+BAEA,kEACA,gJ,QAEC,qCACA,gBACA,c,QAED,IApCiB,W,uBAuClB,0BAED,OACC,2C,4K,UAuBC,K,C,iB,wD,CASD,IACA,Q,yBAEC,kB,+BAEA,OACA,kB,CAIG,mBACJ,yB,iGAEC,kCACA,wB,0C,CAGD,gD,+D,uG,C,6D,oG,CAOA,6B,MAEC,+B,C,oC,uDAQD,0BACG,uC,MACF,c,CAED,mD,wECxLA,a,WAEC,c,C,WAGA,e,CAGD,mBACA,I,eAGC,U,kBAIA,oGACA,WACA,oGACA,WACA,wCACA,kE,oBAIA,kEACA,oGACA,WACA,qE,MAIA,kEACA,iD,CAED,wC,2FAIA,kDACC,oG,KAED,iB,gCAOA,4IACC,iB,C,aAGA,O,C,qEAMG,YAGJ,IACA,+DACC,oCACA,6EACA,gIACA,WACA,I,CAID,OACI,W,+BACH,6KACA,iBAFgB,W,CAIjB,UACA,M,8HAUA,IACA,IAGI,IACJ,yD,Y,UAIG,OACA,O,CAED,yDACC,WACA,W,CAED,M,CAED,+FACA,4BAdgB,W,CAgBjB,wBAEI,oCAGJ,iCACC,+FACA,2BACA,cACA,6GACA,WACA,4BANe,W,CAUhB,8BACC,2BACA,c,UAEC,6GACA,W,cAEA,a,CAED,W,CAGD,OACA,M,kCAiGI,yC,iBAEF,Y,C,4HAGA,uH,CALsB,W,CAQxB,a,4DAKA,4G,iJAEC,W,CAGD,OACA,YAGI,IACA,W,+BACH,0IACA,yFACA,mBACA,W,UAEC,6G,qBAEA,a,CAED,IAVgB,W,CAcjB,8BACC,yFACA,mBACA,W,UAEC,6G,qBAEA,a,CAED,I,CAGD,iB,cAEC,S,CAED,iBACA,M,wD,e,cASC,+BACC,SACA,Y,CAED,c,cAEA,gCACC,SACA,Y,CAED,e,C,oG,iBAOA,a,C,qH,YAKC,Y,CAED,gM,CAGD,iG,wD,iBASC,O,C,YAGA,a,MAEA,e,C,sH,iBAOA,O,CAED,OACA,M,sI,iBAMC,O,CAIG,wCACH,yF,SAEC,6LACA,YACA,O,CALuB,W,CAWzB,UACA,OACA,iB,wI,YAOC,0C,CAEG,IACJ,mBACI,6CACH,mMADgC,W,CAGjC,iCACC,gCADe,W,C,eAIf,kE,CAED,S,wMC7RA,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,wPAQA,SACA,2BACA,Q,sHAGC,gDACA,Q,oE,CAGD,cAEA,4G,mGAEC,4G,MAEA,4G,CAED,Y,2LAMA,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,yKAMA,0EACA,0EAGA,cACA,cAGA,qKACA,gMAEA,2EAEA,yFACA,6B,iNAeA,I,MAGC,W,CAGD,SACA,QACA,QAGA,oG,kB,iB,CAIA,4E,iKAKC,yGACA,c,MAEA,cACA,wGACA,W,CAID,wG,QAEC,W,CAED,WAGA,gBACA,2BAQA,eACI,I,aAGH,qD,MAEA,oB,CAGD,6CACA,qI,2X,iB,C,gB,6KA0BA,mHACA,oGAEA,iBACC,wG,UAGC,W,gBAEA,W,MAEA,W,C,CAKF,wG,oD,2GAOA,4BACA,wGACA,wGACA,S,+J,yCAQC,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,8FACA,qGACA,sC,MAEA,I,CAIG,YACJ,KACI,kCACH,gGACA,6BACA,WACA,qGACA,K,CAEG,qCACH,6MAD2B,a,CAG5B,WACA,QACA,YACA,Y,Q,6CAIE,yE,CAID,8BACC,gCACA,gC,oIAGC,a,CAED,0BACA,mKACA,uEACA,aACA,W,CAED,Q,CAkBD,wG,QAEC,a,CAGG,6C,8HAEF,aACA,M,CAHyB,a,CAM3B,Y,iJ,gFAaC,yE,C,6GAGA,0D,C,wJAGA,Y,C,wJAIA,YACA,+B,kHAEE,iB,MAEA,M,CAJY,W,C,QAQb,qGACA,OACA,iB,MAEA,iO,CAED,Y,CAED,a,2M,yCASC,OACA,OACA,YACA,Y,C,gDAII,YACJ,KACI,wEACH,oCACA,6EACA,gIACA,WACA,I,CAED,iBACI,kCACH,0MADmB,W,CAGpB,sBACA,8JACC,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,4GACA,2GACA,uIACA,wCAEG,wF,gEACF,aACA,aACA,YAGA,0D,CAZ6B,a,CAe/B,QACA,eACA,YAII,KACJ,oBACA,YACC,kCACA,kCACA,qCACA,8IACA,iBACA,yF,mFAKC,yG,C,C,mK,yFAcD,a,CAED,mN,YACC,iOACA,mD,C,2OAIA,a,C,gKAIA,a,C,yHAIA,OACA,O,CAED,Y,wCC9mBA,kE,gEAMA,qB,4HAII,mBACA,S,I,aAGH,2CACA,K,mBAEA,mBACA,K,MAEA,wE,CAGD,qFACA,sFACA,qI,I,kDAKK,K,iCAGH,Q,YAEA,S,MAEA,S,CAED,yB,kBAIA,W,MAIA,iG,CAED,gB,WAIC,qB,C,OAIA,yB,CAGG,+BACJ,QAEA,M,MAGC,uCACA,qEACI,aACJ,eACA,2B,OAEC,yB,C,K,8BAKA,kB,qBAEA,qB,oCAEA,O,C,uBAID,K,K,8BAGC,a,oC,UAGC,I,CAED,K,C,WAII,aACJ,eACA,wCACA,wB,C,C,OAID,yB,CAED,kC,8DAKA,uCACA,YACA,8BACI,+BACJ,M,MAEC,YACA,mD,I,4BAIC,Y,oBAEA,qB,kCAEA,O,C,M,I,4BAMA,gB,oBAEA,mB,kC,UAGC,I,CAED,W,CAED,mD,CAED,kC,sD,I,4BAMC,gC,oBAEA,8B,kCAGA,I,uBAEC,O,C,MAMA,I,CAED,Y,e,WAGE,O,CAED,iE,C,WAGA,O,CAED,4C,CAID,uB,gF,8BAQC,OACA,O,CAiBD,c,8EAGC,O,CAMD,uCACA,yEACA,qCAQI,mBACA,I,iHAEH,kCACA,I,MAEA,iEACA,S,CAED,uCACA,yEACA,qCAKA,gEAII,qCACH,K,WAEC,yF,CAED,yFACA,K,WAEC,yF,CAMD,mCAIA,mD,SAMC,gBACA,O,YAEA,oBACA,O,YAEA,kBACA,O,CA/BoB,W,C,kE,MA8CrB,gB,CAID,K,kBAEC,oG,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,e,SAKC,yC,gBAEA,+M,MAEA,yX,CAGD,S,kD,MAOC,gB,C,WAKA,gBACA,qCACA,iCACC,gBADe,W,C,MAIhB,gB,C,QAKA,gBACI,kCACH,KACG,Y,iBACF,2G,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,oCCzbA,oCACA,S,uDAOA,6FACA,S,8CAKA,8B,mDAaA,8BACA,S,mH,cAuBC,iE,CAIG,YACJ,K,MAGC,gC,C,W,SASC,wEACC,4CACA,gGACI,kCACH,WACA,yFACA,6HACA,IAJkB,W,CAMnB,I,C,CAKF,eACA,gCACC,WACA,yFACA,6HACA,I,CAGD,WACA,qG,MAES,mF,QAET,mBACA,qBACA,iFACC,WACA,yJACA,2B,CAGD,WACA,+I,MAIA,mBACA,iFACC,WACA,oBACA,wMACA,I,CAGD,WACA,+I,C,C,MAKA,WACA,kF,C,MAIA,yCACA,Y,CAED,yCACA,Y,0CChIA,2J,kDAQA,eACI,yCACH,uBACA,I,WAEC,wC,C,yBAGA,wBACA,2EACA,uEAT0B,2B,CAY3B,kBAZ2B,mBAc5B,eACA,S,4CAIA,e,oBAEC,Q,CAED,6BACA,eACA,S,0DAII,Y,2BAEH,gBACA,0BACA,S,C,M,iBAIC,0BACA,S,C,0BAGD,4BACA,2CACA,S,C,I,YAIA,wB,kBAEA,wB,mBAEA,wB,mBAEA,wB,mBAEA,wB,kBAEA,wB,mBAEA,wB,M,SAIC,wBACA,wEACA,oE,oBAEA,QAGA,wBACI,oCACH,4EADoB,W,C,kBADrB,wBACI,oCACH,4EADoB,W,C,MAIrB,wBACI,oCACH,4EADoB,W,C,C,CAKvB,S,4BAQA,4B,8CAMA,8B,gDAOA,2B,qDAMA,6B,2DA0BA,8B,wDAcA,6B,iEAqBA,qCACC,wCACA,kB,Q,cAGE,a,CAED,S,C,cAGA,a,C,4CAGA,a,C,CAGF,Y,+EAIA,S,iB,qC,wB,6C,uB,6C,CASA,Y,yHAmBO,kB,kCAEN,iBACA,gB,iBAEA,wC,yE,sB,6F,C,gBAQA,iBACA,gB,CAED,kBACA,kBAEA,kB,I,aAEC,I,mBAEA,I,oBAEA,K,oBAEA,K,oBAEA,K,oBAEA,I,oBAEA,K,+CAEA,I,I,cAGC,I,oBAEA,I,mBAEA,I,CAEG,I,eAEH,iBACA,gB,CAEG,kCACH,qC,QAEC,iBACA,gB,CAED,cANkB,W,CAQnB,kB,YAGC,IACA,M,C,cAGA,iBACA,gB,CAED,IACA,O,yGAEA,gB,eAEC,iBACA,gB,CAEG,oCACH,+B,eAEC,iBACA,gB,CAED,mBANkB,a,CAQnB,kB,WAEC,iBACA,gB,CAED,K,mBAEA,K,iC,eAGC,iBACA,gB,CAED,S,MAEA,iBACA,gB,C,CAED,IACA,gB,kFASA,W,QAEC,0B,CAED,kB,oCAEC,0B,CAED,2B,W,aAIE,0B,C,aAIA,mCACI,yC,8BAEF,6B,CAFsB,W,CAKxB,oC,CAED,oB,C,6BAGA,0B,C,aAGA,0B,C,wB,I,aAOC,oB,mBAEA,wC,iDAEC,oB,C,C,CAKC,YACJ,0HACA,qCACC,sC,sCAEC,a,CAED,I,cAEC,0B,MAEA,4BACA,2C,C,gCAIA,0B,C,CAGF,oC,kDAKI,yC,wBAEF,Y,CAFsB,W,CAKxB,a,4CAMA,wBACA,8BACC,qG,uGAEC,S,MAEA,I,C,CAGF,S,4CAMA,wBACA,8BACC,qG,uGAEC,S,MAEA,I,C,CAGF,S,oE,W,kBAiBE,Y,C,mBAIA,mB,CAED,a,C,kBAUA,qCACA,U,+OAEC,a,CAED,UACA,+H,CAGD,gCACA,U,+OAEC,a,C,cAGA,Y,CAED,eACA,qBACA,0I,gD,YAmBC,a,CAED,eACA,WACA,+H,43F,4F,4F,4F,O,mC,6I,qE,0C,uC,q1E,ia,+4J,wiB,yB,2B,o5E,+tB,w3E,gd,6F;4pTClgBA,6B,GACA,mKACA,mJACA,2IACA,+LACA,wLACA,gMACA,wMACA,iOACA,sLACA,wLACA,0MACA,yIACA,gKAEA,OACA,qC,0PAIA,iB,mI,+BAKC,6JAKA,aACA,kBAEA,kB,gDAEC,4B,iBAEC,4B,CAED,uCACA,yDACC,UACA,6L,MAKD,6FAKA,2FACA,a,C,a,cAKA,6G,oBAKA,K,oBAEC,K,C,oBAGA,K,CAED,kF,oBAKA,aACA,uCACA,yDACC,iH,MAED,cACA,uCACA,yDACC,iH,MAED,mC,oBAEC,oB,CAED,wE,oBAQA,cACA,uCACA,yDACC,UACA,yL,MAKD,qD,oBAKA,uH,oBAKA,yE,oBAIA,yE,oBAIA,aACA,uCACA,yDACC,UACA,oM,MAMD,0E,C,CAQF,sB,mCAIA,eACA,Y,yDAcA,mB,0HAMA,uD,oHAaA,c,yGAIA,e,sH,yE,uH,wE,gHAyBA,qE,2HAIA,sE,uHAIA,yBACA,+GAMA,qB,kEAQA,uH,iGAIA,aACA,gBACA,c,kEAMA,uH,iGAIA,aACA,gBACA,c,gCAII,kBACJ,UACA,c,6BAIA,wB,kDAIA,gBACI,uDACH,qCACA,0DAFgC,a,C,uUAOjC,oGACA,ia,OACC,6I,OAED,0L,0bAIA,6I,OACC,2D,O,SAGA,uD,C,SAGA,uD,C,UAGA,oD,CAGD,gQAAgH,8M,iN,gL,OAK/G,mD,C,oCAGA,iB,CAED,yB,yN,oCAKC,oC,CAED,iI,yfAYA,6W,OACC,+E,OAGD,6BACA,mKACC,6G,MAED,6BACA,mKACC,6G,MAED,0F,mTAaA,0B,uFAIA,4B,0NA2CA,uH,mJ,a,cAMC,wB,oBAEA,oB,MAEA,mD,C,4QAKD,oGACA,U,a,aAGC,2B,mBAEA,2B,iCAEA,sB,mBAEA,sC,mBAEA,4B,mBAEA,4B,+CAEA,uB,oBAEA,Y,CAED,oE,4LAoCA,mB,sC,mC,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,sW,0KAIA,MACA,iB,8BAIA,mC,6YAII,0BACJ,oD,OACC,0H,OAGG,QACG,kG,MACP,kN,OACC,yBACA,sBACA,sBACA,0BACA,iC,e,OAEA,uO,QACC,qK,QACC,MACA,c,QAED,gBACA,gNACA,c,QAED,+B,e,OAEA,oBACA,Y,e,OAEA,U,uBAEA,yC,Q,OAED,gQ,kfAIA,0B,+BAEC,sC,C,YAGA,mC,CAED,iCAEA,0B,+BAEC,sC,CAED,iCAEA,iIAEA,0B,YAEC,iC,CAGD,0B,YAEC,iC,CAGD,6C,0PAII,M,uBAEH,mB,iCAEC,qE,CAED,0H,sDAEC,4D,CAED,4BACA,8C,MAEA,qB,2CAEC,qE,CAED,uI,oDAEC,4D,CAED,2BACA,wD,CAED,0B,cAEC,sB,CAED,gCACA,iB,yN,gBAKC,gD,C,oCAGA,6G,CAED,8D,OACC,sH,O,cAIA,oD,CAED,oC,wJAIA,Y,yBAIA,gB,yR,4BAKC,+E,CAGD,wDACA,6B,cAEC,4B,CAED,qEACC,gE,aAED,2K,gN,a,iFAMC,Y,MAEA,a,C,wV,aAMD,iI,OACC,mB,OAEA,yH,OAEI,mDACH,gP,OACC,mB,QAF4B,a,qB,O,OAM/B,kB,wwB,mBAKC,e,0C,CAGD,6G,yBAEC,0D,CAED,qHACA,iCACA,4BACA,MACA,uBACA,eACA,4CACA,kBACA,mKACC,kB,MAED,qCACA,mKACC,kB,MAED,wHACA,WACA,2DACA,qEACC,gGACA,oG,UAED,6CAEA,Y,+B,wb,+CAMC,c,C,iCAGA,iB,qDAEC,kB,iB,4BAEC,oC,mCAEA,qC,oB,4BAGC,iBACA,M,CAED,6BACA,sBACA,sBACA,0BACA,M,C,C,CAGF,U,CAED,c,m8BAOC,UACA,KACA,Q,iCAGA,8DACA,0B,cAEC,sB,C,MAGD,UACA,0BACA,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,6J,6BAEE,iE,C,MAGE,wCACA,qJAAH,2I,OACC,4P,OAFiB,a,qBAKnB,sD,OAEC,oBACA,8GACA,2GACI,0CACH,wHACG,wBAAH,+I,QACC,wQ,QAED,iOALkB,a,uBAOnB,MACA,4BACA,kCACA,0G,OAGD,c,yBAEC,gE,CAED,eAEA,kCACA,wKACC,+d,4BAED,uK,MAGA,yE,QACC,oB,QAEA,yJ,QAEA,qBACA,8DACC,oO,4BAED,gB,Q,Q,iwBAKD,0B,M,cAGC,oB,mCAEA,sD,CAED,2C,yF,6BAOC,sB,CAED,U,oC,6BAKC,iB,CAED,U,uTAIO,0B,MACP,wE,OACC,0B,mBAEC,oC,CAED,qBACA,iI,O,0BAIC,oC,CAED,0BACA,mBACA,4CACA,mCACA,mD,OAGA,4C,O,O,gsB,qCAMA,iE,CAED,mB,sCAEC,yD,CAGD,sDACA,yHACA,aAEA,gD,oC,kCAGE,iB,MAEA,iB,C,CAIC,8IAAH,yD,OACI,aAAH,+C,OACC,eACC,+GACA,6C,OACC,oCACA,qGACuC,iE,+EACC,6D,0B,OAGzC,sD,QACC,+G,Q,qB,O,OAMJ,aACA,2G,QACC,kGACuC,oD,yEACC,gD,uB,QAGzC,6J,iWAIA,qCAEC,KACA,iEACC,a,CAED,qB,YAEC,M,CAKD,KACA,8HACC,a,C,0FAGA,M,CAED,uBACA,4BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,8BACA,4B,cAGC,0BACA,U,C,CAGF,S,sdAIO,0B,MACP,qG,OACC,mB,+BAEC,yD,CAED,cACA,qBACA,iCAEA,aACA,yG,OACC,wGACuC,8B,qFACC,0B,6B,OAGzC,qI,OAGA,0B,+CAEC,yD,CAED,mBACA,cACA,gCACA,iCAEA,4CACA,gBACA,2G,QACC,wGACuC,8B,qFACC,0B,6B,QAGzC,uI,OAGA,iB,8BAEC,0D,CAED,8BACA,2BACA,+I,OAGA,6C,O,O,0aAKD,4D,uIAIO,0B,M,6BAEN,8C,oBAEA,yC,oBAEA,sD,oBAEA,sC,oBAEA,0C,MAEA,6C,C,qHAKM,0B,M,6BAEN,gD,oBAEA,oD,oBAEA,2D,oBAEA,uD,MAEA,2C,C,qHAKM,0B,M,uD,0BAGL,S,CAED,8B,oB,0BAGC,S,CAED,S,oB,0BAGC,S,CAED,qC,MAEA,+C,C,qUAKD,mCACA,iCACA,uIACA,8D,O,iBAEC,qG,OACC,8B,c,OAEA,4H,c,OAEA,wB,qBAEA,oC,O,OAED,a,OAED,c,6fAIA,mCACA,2BACA,oJ,OACC,gE,OAED,MACA,mN,OACC,6BACA,sBACA,sBACA,0BACA,M,OAED,gB,6TAIA,mCACA,2BACA,iB,mEAEC,sE,CAED,6BACA,sBACA,sBACA,gBACA,gB,mIAIA,mCACA,2BACA,iB,0CAEC,oE,CAED,6BACA,sBACA,cACA,0BACA,gB,gaAKC,KACA,aACA,QAEM,0B,MACP,qG,O,4BAEE,yE,CAED,mBACA,eACA,eACA,sC,c,OAGA,UACA,0BACA,8B,c,OAGA,iB,8BAEC,6E,CAED,wI,OAGA,6C,O,O,uBAIA,sE,CAGD,6I,+mBAKC,KACA,aACA,QAEM,0B,M,c,4BAGL,yE,CAED,mBACA,eACA,eACA,sC,oBAGA,UACA,0BACA,8B,MAGA,8C,C,8BAIA,uE,CAGD,gJ,8UAIA,2BACA,iCACA,+B,8aAMA,0B,OAEC,0B,CAED,yG,oC,kD,CAIA,SACA,e,qD,geAKA,oC,OAEC,0B,CAED,yG,oCAEC,mB,CAED,kB,4M,uBC1tBC,6G,CAED,6B,2IAuJA,uC,gCAEC,wB,CAED,U,kHAGgC,e,iH,gBAI/B,iD,CAED,a,gBAEC,yE,CAED,6B,+GAG6B,oB,sHAEK,yB,0HAEL,+B,gHAII,U,6dAQjC,qGACA,wFACA,uG,OAGC,gB,CAGD,iB,gBAEC,oB,CAED,gBACA,QACA,wKACC,iC,+BAEC,SACA,M,C,M,OAID,M,MAEA,+BACA,wKACC,iC,8BAEC,kB,C,MAGF,yC,CAGD,oG,iBAEC,Q,CAED,8FACA,sGAEA,gB,2kB,mBAKC,eACA,4B,C,2BAGA,e,CAED,+H,qrB,mBAuCC,e,sE,CAGD,iB,gB,0G,CAIA,gBACI,oDACH,qHACA,iCACA,qF,O,kK,OAH+B,a,qB,0G,wZ,2BAY/B,S,CAED,iB,gBAEC,S,CAED,+C,0H,2BASC,S,CAED,eACA,kBACA,gC,2BAEE,M,CAED,a,CAED,gC,oH,wBAKC,yD,CAED,eACA,kB,6H,wBAKC,4D,CAED,eACA,yC,4I,a,cAMC,eACA,mB,oBAEA,eACA,mB,oBAEA,eACA,mB,oBAEA,eACA,mB,oBAEA,eACA,mB,CAED,qD,qT,wBAKC,yD,CAED,eACA,+G,6c,wBAKC,gE,CAED,eACA,sH,ie,wBAKC,+D,CAED,eACA,qH,ke,wBAKC,mE,CAED,eACA,yH,sS,wBAKC,oD,CAED,eACA,gI,gH,wBAKC,oD,CAED,eACA,kB,8G,wBAKC,sD,CAED,eACA,kB,mH,wBAKC,4D,CAED,eACA,yB,0H,wBAKC,uD,CAED,eACA,sB,qH,wBAKC,wD,CAED,eACA,wB,4H,wBAKC,qD,CAED,eACA,gI,sH,M,aA2BC,e,mBAEA,e,mBAEA,a,CAED,gC,iN,iCAMC,U,CAED,0HACA,uCACA,4B,+BAEC,kC,oBAEC,uC,C,CAGF,qCACA,YACA,U,2HAIyC,0B,iO,gBAKxC,c,CAEG,UACJ,iEACC,0H,oD,uE,C,MAKD,c,6IAmCA,kCACA,U,+LAaA,qCAEC,KACA,iEACC,a,CAED,qB,YAEC,M,CAOD,KACA,qJACC,a,C,oGAGA,M,CAED,uBACA,4BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,8BACA,4B,YAGC,mC,uCAEC,M,C,wC,C,C,yC,sd,gCAWF,0D,CAED,yHACA,mBACG,4BAAH,4C,OACC,W,qBAEA,WACA,qI,OACC,kG,OAED,uGACA,kB,O,oCAGA,uC,oBAEC,uC,C,CAGC,2B,eACF,U,CAED,oBASA,sBACA,gB,qrBAQA,qBACA,sKACC,sC,OACC,WACA,qX,OACC,oG,OAED,W,OAED,qH,0BAED,gB,ihCAoBA,cACA,mCAQI,SAOJ,0BAEA,0CACC,uCACA,MACA,SAMA,2KACC,UACA,kF,OAIC,mB,OAED,8FACA,mEACC,yHAEI,MACA,UACD,4BAAH,6C,OACC,M,uBAIA,UACA,kD,QACC,6G,QAED,a,QAID,iI,Q,uD,mG,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,oB,8+BAOA,SACA,+C,OACC,mEACC,yHACA,4BACA,yC,OACC,QACA,mB,OAED,4C,O,iK,O,0B,O,QAMD,oB,C,oEAE8C,kB,gJ,oWAmB/C,kC,qQ,oCAyEC,mE,CAED,0I,OACC,6E,OAED,uC,md,oCAKC,qE,CAED,sBACA,uH,me,oCAKC,sE,CAED,sBACA,sI,iT,wBAUC,a,CAED,e,2BAEC,Y,C,mBAgBA,eACA,KACI,qDACH,0HACA,0H,qIAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,CAGD,iB,gBAEC,a,CAED,KACA,gBACI,iDACH,0HACA,qH,sIAEI,a,2BACF,Y,C,CAL4B,a,CAS/B,a,yN,YAWC,kB,C,qEAMA,mB,CAID,iH,kc,OAKC,sC,CAGD,md,OACC,mB,OAGD,4T,oyB,YAKC,kB,CAGD,a,wBAEC,mB,C,wCAMA,kB,C,MAKD,wO,OACC,mM,OAMA,sN,QACC,kB,QAID,2M,OAGA,eACA,e,iEAEC,mB,CAEG,wDACH,kK,QACC,mB,QAFyB,a,uBAKvB,yDACH,oK,QACC,mB,QAF0B,a,uBAK5B,kB,OAGA,eACA,e,uDAEC,kB,CAID,mB,OAGA,+R,OAGA,+H,OAGA,eACA,e,+CAEC,mB,CAED,qEACC,yHACA,yH,2DAEC,mB,CAED,gJ,QACC,mB,Q,6DAGA,mB,C,+BAGA,mB,C,oCAGA,+B,YAEC,+B,CAED,+B,YAEC,+B,C,eAGA,mB,C,C,4BAIH,kB,O,OAGD,mB,4a,gBAsyCC,iB,CAED,U,8BA4HA,6B,wDC1gGA,0B,qI,6CAOC,iE,C,iCAGA,qB,CAED,c,qH,gBAiEC,qD,CAED,6E,wH,gCA0CC,2C,C,qJ,WAQA,2B,C,2BAGA,qF,C,mK,WASA,2B,C,2BAIA,qF,C,uBAGA,mE,C,0J,4BAWA,iE,CAED,uE,8GAMA,0BACA,qB,2RAMA,2BACA,oJ,OACC,6D,OAGD,2B,sZAMA,2BACA,oJ,OACC,6D,OAGD,2B,4OASA,mC,sHASA,gC,4SAYA,2BACA,iCACA,gI,kbAWA,2BACA,iCACA,qI,8QAiYA,0B,M,cAGC,4D,oBAEA,qB,CAED,mE,sZA6EA,gD,OACC,oN,OAED,2BACA,sKACC,sC,OACC,4N,O,0BAEE,mF,CAED,+G,O,OAGF,kH,0BAED,gB,okBAOA,2BACG,4IAAH,oC,OACC,uI,OAED,oC,iiBAQG,gJAAH,oC,OACC,uI,OAED,oC,+TAMA,0B,M,cAGC,qB,oBAEA,qB,CAED,iE,wHAsDA,0BACA,U,M,aAGC,+B,mBAEA,+B,mBAEA,+B,mBAEA,+B,mBAEA,iB,CAED,+D,oH,gBAMC,mD,CAED,6B,wU,+H,iQAwFA,uB,oHAMA,8B,oXA8BA,2BACA,mBASA,kJAEI,K,iCAEH,U,MAEA,mH,CAED,yC,WAEC,oC,CAED,WACA,sCACA,8B,WAIC,UACA,aACA,4C,MAEA,yC,C,goBASD,2BACA,mBACA,UAEA,4CAEA,2BACA,K,cAEC,U,CAED,iBACA,qBACI,KACA,gDACH,+F,WAKC,c,C,WAKA,UACA,aACA,sI,MAEA,mI,CAED,OAjBsB,a,qBAmBvB,gC,6hB,oBASC,6C,CAED,gO,OACC,0D,O,gDAGA,8D,CAED,qBACA,iBACA,6CACA,0C,4b,oBAMC,gD,C,iCAGA,e,CAED,qH,ue,oBAUC,mD,C,iCAGA,oC,CAED,6I,QAEC,oC,CAED,iI,sTAMA,2BACA,mBACA,yB,4IAMA,0B,M,cAGC,kC,oBAEA,a,CAED,2E,4JAMA,0B,M,cAGC,c,oBAEA,a,CAED,yE,2G,SAKC,O,CAED,8D,+EAMA,0B,M,+DAGC,4BACA,oEACA,kD,CAED,uE,yJAMA,0B,M,8EAGC,4BACA,qEACA,kD,CAED,wE,qXAsDA,2BACA,iC,wJ,kjBAOA,mB,wBAEC,0D,CAED,WACA,oCACI,K,WAEH,UACA,UACA,4B,MAEA,mH,CAED,mJ,QAEC,0B,CAED,oB,4eAOA,2BACA,iCACA,6H,kgBAMA,mB,wBAEC,0D,CAED,iCACA,+IACI,K,iCAEH,U,MAEA,mH,C,iJ,8SA0BD,mCACA,0BACA,gB,sTAiBA,mCACA,2BACA,oJ,OACC,gE,OAED,gB,6RAMA,mCACO,0B,M,cAIN,+C,oBAEA,gB,MAJA,sE,C,6IAWD,mCACO,0B,M,cAIN,yB,oBAEA,gB,MAJA,oE,C,uIAWD,mCACO,0B,M,aAIN,wD,mBAEA,6D,mBAEA,6D,mBAEA,wD,mBAEA,gB,MAVA,kE,C,sXA+CD,2BACA,iCACA,iCACA,mBACA,qJACI,K,iCAEH,U,MAEA,mH,C,oBAGA,sCACA,a,CAED,iCACA,sJACI,K,iCAEH,U,MAEA,mH,CAED,2H,sVAMA,mCACO,0B,M,aAIN,2B,mBAEA,gC,mBAEA,gC,oBAEA,2B,oBAEA,gB,oBAEA,2B,MAZA,mE,C,mIAmBD,mCACA,2BACA,gB,wIAMA,mCACA,2BACA,gB,kUAyHO,0B,M,aAEN,8B,oBAEA,2B,CAID,6I,ofASA,2BACA,iC,uJ,ucASA,2BACA,iCACA,yI,oRAKA,W,WAEC,2C,C,uBAIA,c,CAKD,uB,uBAGC,mB,uCAEC,qE,CAED,0HACA,8B,CAGD,qB,2CAEC,qE,CAED,uIACA,+B,0HAMA,0BACA,U,M,aAGC,gC,mBAEA,gC,mBAEA,gC,oBAEA,gC,oBAEA,iB,oBAEA,iE,CAED,gE,oH,oBASC,iD,C,4BAGA,uE,CAED,c,uTAwCA,6D,OACC,sO,O,0bAaD,uBACA,Y,UAEC,sD,CAED,uBACA,wC,OACC,mI,O,WAGA,M,MAEA,gC,YAEE,c,MAEA,uG,C,C,CAIH,uHACA,qHACA,uB,8fAMA,2BACA,gJACI,0DACH,iUAD0B,uDAG3B,gB,ybAsPA,0I,OACC,uD,OAED,0BACA,gI,iV,mCAQC,gB,CAED,uH,oW,oCAwCC,yC,CAED,0BACA,MACA,6N,2dAcA,8D,OACC,6G,OAID,qK,OAGC,UACA,qBACA,8BACA,sC,O,WAIC,U,CAED,gHACA,6I,QACC,Y,uBAEA,a,QAED,mC,O,OAID,qG,umBAOA,8D,OACC,oH,OAED,oMACA,4D,OACC,8M,OAED,uH,+qB,aAOA,2U,O,a,0IAGE,gB,mCAEA,gB,oBAEA,gB,C,c,O,a,0IAMA,gB,mCAEA,gB,oBAEA,gB,C,c,O,a,+DAMA,gB,oFAEA,gB,mCAEA,gB,C,c,O,a,6BAMA,gB,C,c,OAID,iN,O,2G,aAGE,gB,mBAEA,gB,C,Q,Q,c,OAKF,kN,Q,2G,aAGE,gB,mBAEA,gB,C,Q,Q,O,OAMH,0I,QACC,gB,QAID,ud,QAGC,gB,Q,c,mBAKC,gB,CAED,gB,CAGD,mC,qiBAwBA,oGACA,U,W,aAGC,qB,mBAEA,Y,CAED,oE,8ZAMA,oGACA,U,W,aAGC,2C,oBAEA,Y,CAED,oE,kZAIA,sMACA,4BACA,sCACA,gB,yYAIA,sMACA,6GACA,sCACA,gB,yYAIA,sMACA,6GACA,sCACA,gB,8WAUA,iL,gVAKA,+I,mVAKA,iM,gVAKA,+J,uUAKA,0J,uUAKA,2J,uUAKA,gJ,uUAKA,kJ,uUAKA,gK,uUAKA,iK,uXAKA,uQ,2ZAKA,gR,2ZAKA,uQ,2ZAKA,gR,mbAoBA,6LACA,gHACA,yI,OACC,Y,qBAEA,6B,OAED,qK,iaAKA,uD,OACC,+FACA,2CACA,gB,OAED,8N,8zjB,4F,4F,4F,4F,4F,mL,Q,K,K,uD,yD,mB,6P,qC;0hHC51EA,oF,yHAIA,QACA,e,uI,SAMC,O,CAED,eACA,YACA,S,kBAGC,8CACA,2B,CAGD,K,oBAEC,K,CAGD,mBACA,kDACC,mG,KAED,6B,gI,wCAMC,eACA,O,CAED,0B,sBAGC,kBACA,e,MAGA,eACA,kB,C,oH,wCAOA,qBACA,O,CAED,kC,sBAGC,kBACA,qB,MAGA,qBACA,kB,C,gI,MAOA,oB,MAEA,qB,C,8IAMD,gCAKA,I,qCAEC,SAEA,8B,gBAEC,mB,C,CAKF,Y,0FAIC,WACA,oGACA,gCACA,yCACA,WACA,oGACA,WACA,oG,CAGD,iEACC,WACA,oLACA,WACA,2B,CAED,WACA,+IACA,WAEA,8BACC,WACA,oGACA,W,CAGD,WACA,oGACA,WACA,oGAEA,kBACA,sBACA,sBACA,kB,8KAKA,yE,MAEC,gC,CAGD,gC,kDAKC,yB,gBAGC,mB,C,CAOF,I,2BAEC,S,uCAGC,kBACA,sBACA,sBACA,kBACA,O,C,iDAGD,Q,yCAEC,W,C,CAOF,Y,I,aAKC,iEACC,WACA,oCACA,+NACA,I,C,mBAGD,iEACC,WACA,kKACA,2B,C,kBAGD,gEACC,WACA,4LACA,2B,C,kBAGD,gEACC,WACA,4LACA,2B,C,MAGD,uD,CAED,WACA,6HACA,kDACC,WACA,oG,C,qB,I,Y,+GAQE,WACA,oG,C,mBAID,WACA,kHACA,WACA,oG,C,C,MAKD,WACA,oG,0BAEA,WACA,oG,2BAEA,WACA,oG,CAKD,kBACA,sBACA,sBACA,kB,uJ,2BAMC,SACA,oEACC,W,QAEC,yB,C,S,CAIH,S,wHAKA,gBACA,e,sIAKA,Y,eAGC,W,C,qCAIA,S,CAGD,a,Q,qB,qBAKG,e,CAGD,kB,2BAGA,W,C,M,0BAIA,sB,CAED,O,C,sDAIA,2B,CAGD,e,qBAGC,iC,CAEG,IACA,kC,0BAGF,gB,qBAGC,iC,C,C,kBAID,mG,MAEA,kB,CAGD,uEAfuB,W,CAiBxB,c,qDAGC,2B,C,mIAMD,sB,6HAKA,kB,0HAOA,gB,wCAEC,uBACA,O,CAED,kC,oBAEC,iC,MAEA,0B,C,wHAOD,c,+CAEC,Q,CAED,kCACA,mCACA,wB,uHAMA,c,+CAEC,Q,CAED,kC,oBAEC,qC,MAEA,8B,C,wI,2BASA,S,CAGD,oE,uMAEC,iB,MAEA,6F,C,yIAKA,6F,C,uMAKA,kBACA,sB,0IAGC,iB,CAED,SACA,kBACA,O,C,yH,4DAOC,2GACA,mCACA,4BACA,O,CAED,SACA,O,CAGD,sB,4ICnaA,iC,oEAIA,iC,kEAIA,4B,0E,UAKC,uCACA,O,CAGD,WACA,YACA,+CACC,e,CAED,wGACA,gC,iMAgCA,yGACA,kBACA,iBACA,yHACA,e,oJAKA,2BACA,gBACA,oCACA,S,+H,4D,qI,8D,yH,I,aAUC,4B,mBAEA,iD,mBAEA,mD,mBAEA,4B,mBAEA,2B,CAED,a,wIAMA,sH,4C,wVASA,qFACA,kGACA,4KACA,SACA,kB,sYAWA,qFACA,kGACA,wBACA,SACA,e,0VAMA,yL,+YASA,qFACA,+FACA,4KACA,SACA,kB,4Y,+H,sVAaA,qFACA,+FACA,wBACA,SACA,e,+YAWA,qFACA,iGACA,4KACA,SACA,kB,+Y,+H,2VAaA,qFACA,iGACA,wBACA,SACA,e,gWAOA,4GACA,6F,OACC,0G,OAED,e,kJAOA,6B,sE,S,0C,CAQI,4E,U,0C,CAIH,sDACA,OALiE,W,CAOlE,c,4O,iCAKC,kIACA,a,CAED,2HACA,6TACA,2H,qcAIA,gBACA,+HACA,0HACA,2HAEA,4H,OACC,oTACA,2HACA,wG,c,OAEA,qUACA,2HACA,gI,qBAEA,kI,O,OAED,2HACA,iB,kc,IAKA,0D,OACC,qB,qBAEA,+F,O,O,mRAOD,uBACA,uBACA,kDACA,uB,mU,IAMA,iR,O,8BAEE,kB,MAEA,8C,C,e,OAGD,8C,e,OAEA,6C,e,OAEA,6C,e,OAEA,8C,e,OAEA,8C,e,OAEA,e,e,OAEA,+E,QACC,gB,uBAEA,iG,Q,e,QAGD,qB,uBAEA,iG,Q,O,se,IAQD,sL,OACC,4B,c,OAEA,0B,c,OAEA,yB,c,OAEA,2B,qBAEA,+F,O,O,6f,IAWD,oI,OACC,sBACA,2HACA,6LAEA,yBACA,6LACA,+HACA,sB,qBAEA,+F,O,O,if,IAMD,8J,O,0BAEE,e,MAEA,e,C,c,OAGD,e,c,OAEA,oC,c,OAEA,oC,c,OAEA,e,qBAEA,+F,O,O,yiB,IAMD,6K,O,0BAEE,4H,eAEC,kIACA,a,CAED,4HACA,qJ,QAEE,+H,CAED,iC,KAED,4H,MAEA,2HACA,qJ,QAEE,2H,CAED,iE,KAED,2H,C,c,OAGD,+B,c,OAEA,oC,c,OAEA,oC,c,OAEA,+B,qBAEA,kN,O,O,ijBAKG,I,2BAEJ,wG,OACC,8B,qBAEA,+FACA,a,O,O,IAID,0J,OACC,yD,QACC,2HACA,iUACA,+H,UAEC,gI,MAEA,0D,CAED,2H,uB,UAGC,yB,MAEA,2E,C,Q,e,OAIF,2E,e,OAEA,oJ,uBAEA,iG,Q,O,kgBAKE,aAAH,mE,OAII,8F,+DACF,kIACA,a,C,gBAMA,U,CAGD,2BAEA,mBAEA,+HACA,0HACA,oIACA,iBACA,oGACA,kBACA,2HAEA,yB,O,qvB,eAMA,e,CAGE,0CAAH,mC,OACC,OACA,uDACA,gGACA,e,OAID,uD,OACI,0CAAH,mC,OACC,OACA,uDAEA,6LACA,e,O,qB,IAOD,kG,QAKC,sH,Q,IAEC,OACA,uDACA,8LACA,e,Q,IAGA,OACA,uDACA,+LACA,e,Q,Q,Q,O,uB,k8BAQH,QACA,oCAEA,gE,O,IAEC,yD,OACC,yB,qBAEA,+F,O,OAED,a,O,IAMD,yE,OACC,uMACA,a,QAEA,oNACA,a,Q,OAID,o9B,Q,SAEC,mG,e,Q,SAEA,uG,e,Q,SAEA,uG,e,Q,SAEA,wI,e,Q,SAEA,0G,e,Q,SAEA,0H,e,Q,SAEA,0H,e,Q,SAEA,0H,e,Q,SAEA,0H,e,Q,SAEA,qI,e,Q,SAEA,2H,e,Q,SAEA,2H,e,Q,SAEA,2H,e,Q,SAEA,2H,e,Q,SAEA,4G,e,Q,SAEA,oJ,e,Q,SAEA,qG,e,Q,SAEA,6G,e,Q,UAIA,mG,QACC,4HACA,6I,QACC,a,Q,QAGF,yH,uB,KAGA,8I,QAGC,2N,Q,Q,4pCAWF,oG,OACC,mHACA,mI,OACC,a,O,OAGF,gBACA,UAEO,I,2BACP,8kB,OACC,yC,QACC,oJ,uB,IAGA,6C,QACC,kI,uBAEA,iG,Q,Q,Q,e,OAIF,0H,e,QAEA,iK,e,QAEA,mI,e,QAEA,+H,e,QAEA,+H,e,QAEA,mI,e,QAEA,oI,e,QAEA,+M,e,QAEA,yD,QACC,iU,8BAEC,kIACA,a,CAED,4H,uBAEA,iI,QAED,+GACA,0J,Q,0BAGG,+H,MAEA,2H,C,CAGF,6HACA,2HACA,0P,2B,0BAGA,4H,MAEA,2H,C,e,QAGD,yD,QACC,iU,QAED,4HACI,kE,Q,0BAGD,+H,MAEA,2H,C,CAGF,+E,QACI,0H,cACF,4HACA,2H,C,QAGF,oOAd6B,W,uBAgB9B,4H,e,QAEA,4GACA,gE,QACC,yD,QACC,uUACA,kI,uBAEA,kI,Q,uBAGD,6H,Q,e,Q,KAID,yF,QAEC,4BACA,sO,QACK,UACJ,iH,QACC,oH,e,QAEA,4P,uBAKA,0CACA,8DACC,wV,4B,QAGF,0NACA,a,Q,Q,QAGF,yD,QACC,uU,+DAEC,kIACA,a,CAED,4HACI,gE,SAEF,+H,CAED,kPAJwB,a,wBAMzB,4H,uBAEA,2HACI,iE,SAEF,2H,CAED,kPAJwB,a,yBAMzB,2H,Q,e,QAKD,mF,SACQ,qH,6BACP,wF,SACC,2HACA,gIACA,a,S,S,SAKF,wH,e,QAAA,wH,uBAEA,uH,Q,O,q6BAMD,IACA,6C,OACC,wIACA,oC,OAEQ,6L,2B,0DAEN,0B,oGAEC,2CACA,O,C,8EAGD,2B,8IAEC,cACA,O,C,C,O,OAMH,S,UAEC,IACA,Q,C,OAGF,oB,yQ,e,0C,CAgBI,yC,yBAEF,iC,mB,+C,C,mD,CAF2B,W,C,0C,wH,2C,0C,CAmB7B,iBACA,2C,iB,8C,CAIA,mB,2C,0IAKA,+HACA,0HACA,uI,+HAIA,+HACA,0HACA,sI,0gBAIA,WACA,IACA,QACA,kBAEI,qCACH,kBACA,IACA,yDACC,W,C,QAGA,4I,C,SAIA,c,CAID,WAGA,mBAEA,iCACC,kB,IAEA,4J,OACC,0B,e,OAEA,0C,e,OAEA,yB,e,OAEA,0BACA,0B,e,QAEA,0B,uBAIA,8D,Q,YAGE,2CACA,2BAEA,yCACA,0B,CAED,wMACA,WACA,WACA,gB,QAGD,gB,Q,OAhCa,W,qBAqCf,oDAGA,+D,QACC,WACA,gJ,+BAGC,yI,C,gBAMA,qBACA,0BACA,0B,CAED,Q,uBAEA,iE,iCAEC,mB,C,QAKF,sE,QACC,W,MAEC,mB,CAED,oDACA,+D,QACC,WACA,kJ,iBAGC,aACA,iC,C,gCAGA,wI,CAED,Q,uBAEA,mE,gCAEC,aACA,gC,C,Q,Q,OAMF,oD,C,SAIA,uIACA,c,CAGD,sDACA,WAGA,6I,QACC,2H,e,QAEA,e,e,QAEA,gB,e,QAGA,2CACA,2BAEA,yCACA,0BAGA,mMACA,W,uBADA,mMACA,W,Q,Q,qBAOF,6D,QACC,mBACA,sIACA,uK,QAEE,+H,CAED,kE,QACC,kI,uBAEA,0TACA,2HACA,sG,Q,2BAGF,2H,Q,gqBAKD,QACA,wJACC,sL,gBAGC,2H,CAED,oGACA,I,yB,8fAOD,wJ,QAEE,2H,CAED,oG,yBAED,2H,mT,uF,iV,uCC37BC,QACA,oB,CAGD,sH,mCAEC,uB,8BAEC,a,C,qCAGD,a,CAED,oB,iS,gC,gC,C,4C,uTAaA,4G,sC,+B,oB,CAKC,W,CAED,e,2aAeA,iGACA,cACA,uBACA,uB,wPAIA,oD,4HAIA,2D,kgBAIA,gEACI,a,sCACC,kD,MACF,W,MAEA,U,C,C,a,8BAKF,K,CAED,2BACA,8FACA,qB,kZ,aAoBC,a,CAED,eACA,6J,WAEE,a,C,YAGA,Y,C,KAGF,a,4BAKA,a,wNAOA,qG,wP,gBA2GC,mBACA,O,C,yBAIA,O,CAED,2BACA,eACA,U,wUAKA,OACC,6F,WAEC,a,CAED,+K,OACC,c,OAED,wC,O,MAEE,c,C,sBAGA,c,CAED,oCACA,a,OAED,0C,QACC,gGACA,c,Q,qB,kgBASF,mC,OACC,qG,OAGD,OACC,6F,WAEC,c,CAED,sH,OACC,gGACA,c,OAED,0H,qBAED,gF,wQAOA,2E,UAEE,S,C,SAGF,S,wPAwBA,6FACA,6C,OACC,8F,OAED,wB,utU,4F,4F,4F,4F,4F,4F,4F,4F,iDD9X0B,uL,I,2B,kZ,kDCkQA,+E,I,iD;qjDClW1B,OACC,4FACA,cACA,mF,qFAEC,e,CAED,uC,OACC,+M,OAED,gb,OACC,e,O,qB,sR,QClBD,e,CAED,c,4TAYA,OACC,iGACA,QACA,mF,wFAGC,e,CAGD,uC,OAEC,OACC,wMACA,wL,aAEC,c,C,qB,QAID,8B,CAED,8B,OAED,ub,QACC,e,Q,qB,gTCtBE,4BACJ,UACA,S,gDAqBA,+BACA,wC,kQAMG,2CAAH,mC,OACC,4NACA,a,OAGD,gGACA,Y,yaAI8B,0G,yYAGE,qI,kcAIhC,uE,OACC,2G,OAED,4V,8bAI8B,qK,sZAI9B,sGACA,sC,8e,0CAOC,kD,CAED,kJ,OACC,0L,OAED,0JACA,2FACA,mFACC,2F,qBAED,8B,2hB,SAOC,kD,CAED,oD,OACC,iH,OAED,oGACA,2FACA,iCACC,2F,qBAED,yE,yd,SAOC,gD,CAED,+C,OACC,iH,OAED,gK,uaAqBD,OACC,6HACA,uC,OACC,c,OAED,e,gaAQD,OACC,sGACA,uC,OACC,c,OAED,e,ybAKA,mBAMI,qCACH,gGACA,kMACA,mGAHkB,W,qBAKnB,e,ogBAOG,2CAAH,mC,O,qX,O,sY,igBAOA,WACA,WACI,6CACH,uC,OACC,qFACA,I,OAED,mHACA,0BACA,gBAPsB,W,qBASvB,UACA,UACA,kB,yYA8FA,YACA,+FACA,cACA,e,+aAIA,YACA,gGACA,cACA,e,qZAIA,YACA,gGACA,c,qaAKA,YACA,gGACA,UACA,c,qfAKA,YACA,kIACA,cACA,kB,mQCnKA,2FACA,mEACA,sC,QAEC,oB,CAED,S,wEAKA,QACA,WAEA,0C,yCAEC,yE,C,8BAGA,yB,CAGD,2CACI,sCACH,Q,SAEK,kBACJ,mCACA,QACA,uFACA,QACA,sEACA,uIACA,2F,CAVsB,W,C,mHAiBxB,4G,kIAKA,mB,YAEC,qB,CAGD,qB,aAEC,uB,CAGD,qPACA,oGACA,mC,kzF,4F,4F,uxF,+lL,o8J,u5C,ozF,u9E,kioB;yuBC1LA,gBACA,iCACC,qGAEA,sH,OACC,S,qBAEA,I,O,qBAIF,e,wXA6BA,8DAAyC,sH,qG,+VAUE,2J,mbCpFvC,0CACC,gLACH,mGADuC,W,qBADlB,W,qB,uZAUvB,IACA,OACC,oB,SAEC,c,CAED,mM,OACC,W,OAED,uI,OACC,a,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,0oBAaF,qGACA,6C,OAEC,gGACA,kHACA,uGACA,qI,OAED,kGASA,IACA,0BAEA,yKAAoC,W,qBAEpC,IACA,QACC,8KAAqC,W,uBAErC,kLAAsC,W,uB,SAGrC,e,CAGD,qGACA,WACA,W,uBAID,aACA,8I,QAEC,IACA,sI,QACC,qGACA,WACA,W,QAED,sI,QACC,WACA,W,QAKD,uI,QACC,qGACA,WACA,W,QAGD,M,QAED,qC,QAKC,QACC,4LAAuC,W,uBAEvC,sLAAoC,W,uB,SAGnC,e,CAGD,qGACA,WACA,W,uB,QAIF,qG,2C,ulBAKA,yCACC,uC,OACC,2FACA,a,OAED,WACA,wGAGA,mD,OACC,+FACA,I,qBAEA,+FACA,I,O,qBAGF,8C,QAGK,4CACH,qI,QACC,qG,QAFqB,W,uBAKvB,6F,Q,gXAQD,yFACA,gG,+JAMI,IACA,kCACH,WADkB,uB,CAGnB,kB,gPAwDA,kH,wNAKA,oB,8DA4C0C,iB,uHACA,wM,mIACA,4Y,sRAGb,uF,ykC;iV,4F,4F,4F;0FCpT7B,+BACA,6BACA,6BACA,6BAEA,a;8hB,4F,4F,4F,4F;;6hDCeA,mGACA,oO,mHAIA,mGACA,uGACA,sH,sHAIA,mGACA,yb,mHAIA,mGACA,uGACA,iHACA,kHACA,kH,kJAIA,mGACA,q0C,mHAKA,mGACA,4GACA,iIACA,kIACA,kIACA,kIACA,kIACA,kIACA,kI,mHAGqC,qB,yGAEE,4B,8GAKvC,mGACA,oO,mHAIA,mGACA,sHACA,uG,sHAIA,mGACA,yb,mHAIA,mGACA,kHACA,kHACA,iHACA,uG,kJAIA,mGACA,q0C,mHAKA,mGACA,kIACA,kIACA,kIACA,kIACA,kIACA,kIACA,iIACA,4G,mHAGkC,kB,yGAEE,yB,gnCAmBjC,OAAH,4C,OACK,WACA,Q,QAEH,kB,MAEA,0B,CAEE,wG,sCACF,e,CAED,u0B,O,SAEC,sB,e,O,SAEA,uB,e,O,SAEA,a,e,O,SAEA,qH,e,O,SAEA,2G,e,O,SAEA,gH,e,Q,SAEA,2G,e,Q,SAEA,6I,e,Q,SAEA,2G,e,Q,SAEA,kKACC,gH,M,e,Q,SAGD,kKACC,iH,M,e,Q,SAGD,gB,e,Q,SAEA,6DACC,0O,4B,e,Q,SAGD,6DACC,gO,4B,e,Q,SAGD,6DACC,qO,4B,e,Q,SAGD,6DACC,gO,4B,e,Q,UAGD,8DACC,qQ,4B,e,Q,UAGD,8DACC,mO,4B,QAGF,uB,OAID,uGACA,M,6BAEA,2E,QACC,oHACA,gH,e,QAEA,gH,Q,QAED,wC,QACC,oP,QAED,iCACG,wH,uCACF,gB,CAED,iHACA,uB,i0DAaG,OAAH,4C,OACK,WACA,Q,QAEH,kB,MAEA,0B,CAED,ywC,O,S,aAGE,O,MAEA,O,C,e,O,S,MAIA,O,MAEA,O,C,e,O,SAGD,kK,OAEE,sG,MAEA,sG,C,M,e,O,SAIF,yB,e,O,SAEA,kB,e,O,SAEA,kKACC,kH,M,e,O,SAGD,c,e,Q,SAEA,O,e,Q,SAEA,I,e,Q,SAEA,uH,e,Q,SAEA,gH,e,Q,SAEA,uKACC,0I,4B,e,Q,SAGD,4G,e,Q,SAEA,qG,e,Q,SAEA,uKACC,+H,4B,e,Q,SAGD,kH,e,Q,SAEA,2G,e,Q,SAEA,uKACC,qI,4B,e,Q,SAGD,4G,e,Q,UAEA,sG,e,Q,UAEA,wKACC,+H,4B,e,Q,UAGD,gJ,e,Q,UAEA,iI,e,Q,UAEA,wKACC,0J,4B,e,Q,UAGD,6G,e,Q,UAEA,sG,e,Q,UAEA,wKACC,+H,4B,QAGF,8GACA,gB,OAID,0NACA,gHACA,wC,QACC,qP,QAED,oBACA,mBACA,iHACA,+GACA,gB,0+BAeA,+D,OACI,mM,SACF,8C,CAED,e,OAED,wH,8b,0FAMA,6O,OACI,4KAAH,uC,OACC,+G,Q,c,OAID,IACI,+IACH,uL,QAEC,e,CAED,WALmC,W,uBAOpC,e,OAMA,2G,O,OAGD,e,iQAYA,sGACA,yBACA,iB,iH,MAKC,sG,MAEA,sG,CAED,yB,iHAIA,sGACA,yBACA,S,kHAIA,sGACA,yB,gSAIA,sHACA,yBACA,e,oZAIA,4HACA,yB,oaAIA,sHACA,yBACA,e,oZAIA,4HACA,yB,oaAIA,sHACA,yBACA,e,oZAIA,4HACA,yB,kPAG+B,0B,6GAEC,sB,oRAEC,gH,yYAEC,yG,uZAED,2G,yYAEC,oG,gaAED,qI,gZAEC,wH,gwB,2BAIlC,gd,OACC,0BACI,uCACH,yNADkB,W,uB,e,OAKnB,2BACA,+BACI,uCAMA,8GAAH,iN,QACC,+G,uBAEA,8G,QATiB,W,uB,e,OAcnB,0BACI,uCACH,yNADkB,W,uB,e,OAKnB,oC,e,OAGA,iD,e,OAEA,uN,e,OAEA,uN,e,OAEA,yM,e,QAGA,oD,e,QAEA,0N,e,QAEA,0N,e,QAEA,2M,e,QAGA,gT,e,QAEA,gT,e,QAGA,uiB,e,QAKA,uiB,Q,O,w6B,2BASD,kX,OACC,0BACI,uCACH,yNADkB,W,uB,e,OAKnB,2BACA,+BACI,uCAEA,8GAAH,iN,QACC,+G,uBAEA,8G,QALiB,W,uB,e,OAUnB,0BACI,uCACH,yNADkB,W,uB,e,OAKnB,iC,e,O,mHAIA,+H,QACC,gF,e,QAEA,qK,e,QAEA,gK,e,QAEA,qH,Q,Q,e,O,mHAKD,iI,QACC,kD,e,QAEA,uI,e,QAEA,kI,e,QAEA,uH,Q,Q,e,O,mHAKD,yE,QACC,gJ,e,QAEA,uI,Q,Q,e,O,oHAKD,2E,QACC,+BACA,+HACA,+H,e,QAEA,+BACA,sHACA,sH,Q,Q,Q,O,mmBAMF,2H,idAIA,sGACA,qEACC,6G,KAED,yB,uRAMA,I,8K,IAEC,S,oC,SAEA,iB,mC,SAEA,iB,8H,IAEA,S,oC,SAEA,0B,oC,SAEA,0B,8H,IAEA,S,oC,SAEA,0B,oC,SAEA,0B,8H,IAEA,S,oC,SAEA,0B,oC,SAEA,0B,CAED,S,iCCtoBA,IACA,kEACC,+HACA,2BACA,W,CAED,mHACA,c,6DAYI,mBACA,IACJ,qJ,U,sBAGG,qC,CAED,qG,CAED,oGACA,Y,KAED,2B,2gI,4F,4F,4F,qJ;iJCvDI,IACJ,iJACC,6B,KAED,iC,2M;8iE,cCfC,a,CAED,IACA,YACA,8BACC,qGACA,mG,+BAEC,6F,cAEC,+D,CAED,c,C,gBAGA,I,MAEA,S,C,CAGF,S,2B,WCjBC,oB,CAED,uB,4C,iBCwCC,6H,CAED,6B,oDAgBA,iJ,WAEE,Y,C,KAGF,a,uC,iBAiBC,4H,CAED,wB,qE,0BCAC,kDACC,mG,WAEC,a,C,YAGA,gG,C,KAGF,a,CAID,IACA,YACA,8BACC,qGACA,mG,qBAEC,gG,C,WAGA,I,MAEA,S,C,CAGF,a,qD,kBAMC,kDACC,mG,WAEC,a,C,YAGA,2F,C,KAGF,a,CAID,IACA,YACA,8BACC,qGACA,6G,qBAEC,2F,C,WAGA,I,MAEA,S,C,CAGF,a,qCAKA,Q,gJAEC,yB,CAED,Q,sHAEC,oB,CAED,a,iDAIA,QACG,gB,gJACF,sC,CAED,Q,sHAEC,oB,CAED,a,gCAoEA,8B,uC,W,kBAOE,Y,CAED,S,CAED,e,4C,W,iBAOE,Y,CAED,S,CAED,e,sD,mBAsEC,S,C,eAIA,4F,CAID,IACA,aACA,8BACC,qG,oHAEC,S,MAEA,I,C,C,sIAID,kH,CAME,Q,eACF,S,CAED,a,ujC,ojB,wE,2b,sH,0D,0xZ,6gH,2lC,shU,mM,6uG,yvL,2wG,yJ,s9L,mtF,gzC,kT,y8C,ghH,4J,wT,ykB,6J,oL,q/G,upB,snJ,yU,8mB,2sC,i7H,gL,wD,wD,yJ,W,W,W,W,c,W,e,U,W,W,W,U,W,W,W,W,W,U,U,W,W,W,W,W,W,W,U,W,W,W,W,U,U,8D,W,W,W,W,W,ysB,sH,gH,8D,o8C,6K,uF,+E,sF,uF,+E,mW,yI,wG,gH,0D,+E,wD,+E,8D,uF,uF,qI,wG,+jI,yG,yI,2L,+N,8D,+H,4K,8D,8D,6xB,+N,6N,8D,4Z,s1B,mW,iZ,8b,6X,wD,gH,4P,4I,uF,+qB,uF,uF,4G,8D,mW,8O,mF,6O,6H,uF,uF,+b,2uB,sG,oJ,gH,oN,0D,8D,uF,8D,gP,+E,uF,gH,4G,2F,gH,8D,gH,uF,uM,gH,kK,0G,uF,6H,gH,wD,wD,wD,gH,8D,8D,8D,uF,8D,8D,mW,uF,uF,kK,8D,8D,0D,uF,gH,mF,+E,+E,mF,uF,8D,uF,sH,iV,uF,+E,0D,sG,+E,sG,+E,oJ,mF,uF,iZ,mH,4U,wD,+E,kM,4G,uF,uF,0D,uF,mF,c,a,8B,e,iB,gB,iB,c,kB,c,gB,kB,iB,e,gB,iB,c,4B,e,2B,e,a,iB,e,e,kB,gB,iB,gB,mB,iB,6B,gB,iB,iB,mB,e,gB,c,iB,iB,Y,e,gB,e,e,iB,yB,kB,8B,+B,iB,e,gB,iB,iB,mB,c,e,kB,Y,c,e,c,iB,iB,a,e,e,iB,kB,gB,mB,gB,qB,sB,yB,6B,a,a,kB,Y,gB,gB,kB,oB,a,Y,c,iB,sB,mB,0B,mB,oB,0B,mB,c,c,gB,qB,kB,oB,iB,mB,wB,e,c,kB,mB,gB,gB,gB,oB,gB,qB,kB,qB,e,gB,iB,e,iB,iB,c,c,e,e,e,a,gB,iB,gB,iB,Y,oB,W,+vI,owkB,mB,25B,sb,uzD,uD,wD,8E,sD,u6E,yO,w5E,8E,8E,uL;kpBCzWA,qJ,UAEE,S,C,KAGF,S,wD,+BAKC,a,CAED,qJ,8GAEE,a,C,KAGF,Y,sDAIA,qJ,iBAEE,S,CAED,mG,QAEC,S,C,QAGA,S,C,K,wBAID,S,CAED,S,oECKiC,8B,8G,eAOhC,c,CAED,8C,6GAK4B,8B,uGAIA,uB,+GAM5B,a,mBAGC,6D,kBAGA,Q,CAED,sC,qHAM0B,c,qHAM1B,U,4BAGC,c,C,yCAGI,S,0BAEH,mC,uHAMA,yCACA,uB,MAGA,qCACA,qC,CAED,QACA,Q,CAED,6CACA,kB,iH,QAUC,yD,CAED,YACA,2B,0IAOA,aACA,oB,mE,kJAQA,aACA,mB,oE,ybAeA,a,yBAGC,c,CAED,OACI,mC,UAEF,Q,qBAIC,uC,CAED,qCACA,8CACA,Q,CAED,sJACA,8CACA,gE,+BAEC,c,C,sC,kC,C,qB,0C,+aAaF,qC,+CAEE,yB,C,QAGF,wB,2aAQA,aACA,qD,OACC,UACA,+H,QAEC,iE,CAED,mBACA,kB,sC,kC,C,e,gD,C,OAWD,cACA,kB,iUAQA,aACA,YACA,6GACA,iB,4J,UASC,0B,oC,CAGD,aACA,YACA,8CACA,kC,oC,iJASA,a,yBAGC,c,kBAEC,Y,C,gC,CAIF,uCACA,mB,QAEC,c,CAED,Y,mHAQA,aACA,U,QAEC,I,CAED,sCACA,mB,QAEC,c,CAED,S,sHAMA,a,yBAGC,cACA,gB,CAED,qHACA,mBACA,cACA,oB,4KASA,a,yBAGC,c,0C,CAGD,qH,UAEC,mBACA,a,mD,CAGD,qDACA,mBACA,kB,8C,wH,kBAWC,8E,C,2BAGA,iC,CAED,aACA,iB,4H,mBAQC,4E,CAED,a,YAEC,mB,CAED,iB,2JAUA,+BAGA,oBACA,Y,+JAKA,8BACA,oB,QAEC,gBACA,Q,CAED,2BACA,QACA,c,4B,4JAWA,+B,4C,+FAWoC,kC,iDC1DpC,2D,4DCtVA,Y,UAEC,S,C,gBAGA,S,CAED,4F,UAEC,c,CAED,IACA,yCACA,sC,8GAEE,sB,QAEC,M,CAED,W,C,iCAGA,S,CAED,W,CAED,S,qrE,4F,4F,4F,4F;mtBC5BA,+D,gDAIA,kC,gDAQA,I,mBAIC,mC,4BAEA,S,gC,UAGC,S,CAED,S,CAGD,YACC,S,WAEC,M,CAED,WACA,gC,CAED,S,0E,8FCpBC,S,CAED,8H,wGAO+B,gC,6I,8F,gC,CAM/B,cACA,iDACA,wEACA,Y,mJ,yC,0E,C,wF,gC,CAWA,+C,gBAEC,Q,CAED,Y,kIAIA,c,8FAEC,gB,CAED,kCACA,wEACA,oB,8HAIA,c,kDAEC,kE,CAED,wEACA,iB,kL,8FAKC,c,0C,CAGD,0DACG,kC,UACF,wE,mD,CAGD,sEACA,wEACA,c,wH,iBAKC,+E,CAED,6BACA,cACA,iB,qIAKA,cACI,kB,I,YAGH,I,kBAEA,oD,kBAEA,yE,MAEA,qE,C,yCAGA,wE,CAED,MACA,oB,qaAKA,c,8F,wD,CAIA,kCACA,kH,eAEC,yE,CAED,wEACA,kB,sDAEC,kB,CAED,kB,gUAIkC,0C,qFAIA,uC,+DCnIlC,yB,aAEC,I,CAED,mBACI,yCACH,wCACA,mHACA,kB,cAEC,gH,CALmB,W,C,QASpB,8G,CAED,S,gCA6DA,iB,iDAKA,kB,oDAKA,kB,+D,gBA+CC,yB,sBAEA,2E,cAEE,S,C,SAGF,S,0BAEA,S,MAEA,2B,C,4E,e,eASI,iC,MACE,yC,wCAEF,S,CAFsB,W,CAKxB,S,C,CAGF,2EACC,uE,UAEE,S,C,S,S,CAKJ,S,mE,UA6CC,c,C,WAGA,e,C,QAGA,c,CAED,kBACA,IACA,mBACA,IACI,oE,iFAEF,0HACA,WACA,gBACA,yB,CAL4C,W,CAQ9C,iHACA,+B,gCA2BoC,oB,8CAwFpC,wD,gOAoLA,yG,uXAaA,IACA,wCACC,IACA,uB,WAEC,sD,CAED,yH,OACC,e,OAED,W,qBAED,e,+MA4BI,yCACH,kB,W,oD,C,iBAIA,mNAL2B,W,C,mD,iEAY5B,qL,25C,4F,4F,4F,4F;2X,4F,4F,4F,4F,4F,4F,oD;ue,4F,4F,4F,4F,4F,4F,4F,4F,oDCjeC,qBACA,0H;+OC/HD,YACA,S,kBAEC,wCACA,gBACA,I,CAED,0C,2D,cCNC,0B,qCAEA,4D,CAED,YACI,+IACH,4YACA,WACA,W,CAED,S,iM,4F,4F,4F,4F;8qB;8+ECqLA,+GACA,e,+bAsBA,+GACA,e,0dAUA,yH,kD,wdAeA,yH,kD,kaAUA,8H,gbAmBA,2I,meAcA,2GAEA,0GACA,4BACA,oHAEA,e,mgBAWA,YACA,yGAEA,iCACA,mBACA,iBAEA,0GACA,oHAEA,e,+jBASA,yGACA,iB,QAEC,0D,CAED,mBACA,iBACA,4BAEA,4G,OACC,0G,qBAEA,mBACA,0GACA,gB,OAGD,+G,iCAEC,+D,CAGD,0B,+dAaA,6H,gcCrNA,6BACI,6CAIA,uS,sCACF,e,CALyB,W,qBAQ3B,uB,09BAMA,+GACG,sCAAH,mC,OACC,6GAEA,e,OAEG,Y,2BAKJ,oN,OACC,6D,QAEC,2BACA,8FACA,kE,QACC,mJ,QAGD,yN,QAID,6D,QACC,oU,QAED,wO,OAHA,6D,QACC,gV,QAED,oP,OAGA,gCACI,0CACA,4O,sCACF,e,CAFiB,a,uB,e,O,8BAQlB,oF,CAID,2BACI,0CACA,4O,sCACF,e,CAFiB,a,uB,e,QADnB,2BACI,0CACA,4O,sCACF,e,CAFiB,a,uB,e,QAOf,OACJ,sPACA,sE,QACC,iQ,QAED,6CACA,gB,QAGI,OACJ,sPACA,yCACA,gB,QAIA,2T,Q,OAED,e,o1BAkBA,gBACI,6CACA,6L,sCACF,e,CAFyB,W,qBAK3B,uB,+vBAMG,sCAAH,mC,OAEC,yGACA,e,OAID,8F,2BAIA,qM,O,e,OAEC,qU,OAGA,+BACI,uCACA,4T,sCACF,e,CAFiB,W,uB,e,OAOnB,0BACI,uCACA,yU,uCACF,gB,CAFiB,W,uB,e,QAOnB,4B,uCAEC,mD,CAED,6K,QAGA,K,6BAEC,K,CAED,6K,QAIA,gK,Q,OAED,uB,ipB,IAMA,sG,OACC,uG,OAEA,sG,O,OAED,uB,gWAKA,0I,0VAKA,2I,u9M,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,sH,sB,iK,iK;4R,4F;gHC1UA,iJ,QAEE,I,C,KAGF,S,gDAKA,iJ,QAEE,I,C,KAGF,S;irD,oC,iD,sC,yC,qB,yC,qB,yC,qB,yC,qB,yC,qB,yC,qB,6C,uB,yC,qB,6C,uB,iC,iB,iDCgBA,UACA,U,aAEC,I,CAED,Y,iDAKA,UACA,U,aAEC,I,CAED,Y,4DAMA,gBACA,aACA,gBACA,aACA,iBACA,oCACA,gBACA,aACA,2BACA,4CACA,iBACA,Y,oDAKA,wBACG,U,QACF,Y,CAED,Y,0CAKA,mCACC,YADkB,8B,C,WAIlB,6BACA,W,C,SAGA,6BACA,W,C,SAGA,6BACA,W,C,SAGA,W,CAED,S,4BAYA,yB,yG,S,8C,CAyBA,QACA,4BAEA,aACA,gBACA,wEACA,8BACA,eACA,kBACA,+FACA,2BAEA,sFACC,cACA,c,cAEC,M,C,CAIF,uDACA,gGACA,4BAEA,sFACC,cACA,c,cAEC,M,C,C,4I,8D,UAcD,kDACC,sT,KAED,S,CAGD,4KACC,mGACA,kBACA,mGAEA,0D,KAED,S,8D,UAMC,kDACC,sT,KAED,S,CAGD,4KACC,mGACA,kBACA,mGAEA,iE,KAED,S,4D,UAMC,IACA,kDACC,uN,KAED,S,CAGD,IACA,4KACC,UACA,mGACA,wB,KAED,S,4D,UAKC,IACA,kDACC,uN,KAED,S,CAGD,IACA,4KACC,UACA,mGACA,0B,KAED,S,iEAIG,Y,QACF,WACA,8GACA,2BACI,uCACH,IACA,8GACA,8JAHsB,W,CAKvB,uH,CAED,S,iEAIG,Y,QACF,WACA,4FACA,0BACI,yCACH,IACA,8GACA,8JAHoB,W,CAKrB,2I,CAED,S,sDAIA,IACA,kDACC,wN,KAED,S,wDAKA,kDACC,wNACA,wHACA,Y,KAED,S,kDAIA,IACI,gDACH,wNAD4B,W,CAG7B,S,qD,sBC/QC,S,C,UAGA,S,CAED,S,qHAKA,Q,yCAEC,OACA,+B,CAED,mDACA,QACA,S,8HAKA,yBACA,YACA,S,+FAKA,4C,sE,aAMC,uBACA,Y,CAED,S,8GASA,0E,kHASA,uEACA,YACA,S,sHAKA,SACA,YACA,S,8GAKA,SACA,8BACA,S,oHAKA,Q,kBAIC,6B,M,wBAKC,6B,MAEA,KACA,6B,C,CAGF,yBACA,S,wHAKA,Q,qBAIC,6B,M,wBAKC,6B,MAEA,KACA,6B,C,CAGF,yBACA,S,sHASA,6BACA,wCACA,S,qI,0DASC,mC,uFAEA,mC,CAID,Q,yCAEC,mHACA,sE,CAGD,8EACA,QACA,S,4X,sJAOC,4C,CAEG,0FACJ,8FACA,iCACA,6G,8eAOA,0HACA,wCACA,e,4bAOA,0HACA,6BACA,e,4dAgBA,oIACA,6EACA,kB,6eAOA,QACI,8BACJ,kG,a,MAGE,Y,MAEA,Y,C,CAGF,e,4cAOA,I,2BAEC,kC,CAEG,2BACJ,+F,U,UAGE,W,MAEA,W,C,CAGF,e,idAmBA,I,2BAEC,kC,CAED,+F,U,UAGE,YACA,W,MAEA,YACA,W,C,CAGF,kB,oR,kBAgBC,mB,UAEC,K,C,gBAGD,K,MAEA,I,CAED,S,2F,kBAcC,wB,CAED,0I,sBAEC,gN,CAED,S,0DAMA,2C,UAEC,+B,CAED,S,gHAMA,iB,8VAcA,iBACG,oG,sCACF,2B,CAGE,sB,kCACF,2B,CAED,qB,6SAMA,wBACA,YACA,S,yHAKA,0CACA,mC,gHAMA,sB,wUAUI,S,WAEH,Q,CAIG,S,kBAEH,Q,CAGD,4GACA,qJ,uBAGC,yBACA,Y,CAGD,e,2mB,6BASC,4B,kBAEC,4B,C,kBAGA,4B,CAED,e,CAED,wD,OACC,6G,OAGD,kCACA,kCAEA,2BACA,qDAEA,qDACA,2BAEA,2BACA,2BAEA,4BACA,6CACC,0HAEA,gCAEA,SACA,WACA,aACA,WACA,SAEA,SACA,WACA,aACA,WACA,S,qB,kBAIA,a,C,kBAIA,a,CAGD,aACA,e,4pBAOA,IACA,2BAIA,4G,OAEC,0FACA,S,c,OAEA,0FACA,S,qBAEA,SACA,S,O,O,sBAMA,e,CAKD,2BACG,2B,QACF,I,CAED,WACA,WAGA,2B,2HAGC,S,MAEA,S,CAGD,0CAEC,kC,UAEC,gBACA,8B,MAEA,kB,CAED,W,CAGD,wB,8gBAKA,Y,+BAEC,aACA,e,CAED,0HACA,e,idAMA,uC,OAEK,2BACJ,4F,OAEG,2BACJ,mG,UAKC,W,CAED,e,6kBAMA,0K,OACC,kM,OAOG,uIACJ,YACA,YACA,I,a,aAIE,K,CAED,e,CAGD,O,qBAEE,e,C,yBAGA,e,CAED,mG,yBAEC,e,CAKD,8B,yBAEC,kH,uBAEC,K,C,CAGF,iB,2PAIC,K,CAED,eACA,e,qB,4eAWD,SACA,YACA,WACA,4FACA,e,yuBAOI,8BACJ,eACA,8BACA,iBAGI,8BACJ,+BACA,iIACC,kB,qBAOG,sLACJ,kBACA,iBACA,wGACA,wGACA,2GACA,KACA,OAEK,KACJ,eACA,oDACC,uHACA,c,sB,WAIA,yB,CAGD,+KAEA,uHACA,uHACA,uHACA,M,qB,stB,yF,aAWA,oB,kBAEA,yC,kBAEA,c,C,OAED,oD,OACC,mH,OAID,uN,OACC,qH,OAGD,wH,6SAKA,yBACA,YACA,S,wH,UAOC,sBACA,aACA,kBACA,WACA,S,CAGD,yBACA,YACA,S,sH,U,oBASE,0H,CAED,S,C,QAGA,0C,C,UAGA,uBACA,6B,CAGD,0B,2H,QASC,0C,C,UAGA,sBACA,gCACA,kBACA,sBACA,S,CAED,oCACA,YACA,S,0I,kB,UAQE,uBACA,uBACA,kCACA,WACA,S,CAID,6BACA,YACA,S,C,UAKA,gB,CAID,uBACA,4BACA,YACA,S,iI,kB,UAQE,uBACA,uBACA,wBACA,YACA,S,CAID,gCACA,YACA,S,C,UAKA,uBACA,sCACA,WACA,S,CAID,uBACA,yBACA,YACA,S,qI,kB,UAQE,uBACA,uBACA,mCACA,WACA,S,CAID,4BACA,YACA,S,C,UAKA,gB,CAID,uBACA,0CACA,WACA,S,8H,kB,UAQE,uBACA,uBACA,qBACA,YACA,S,CAID,6BACA,YACA,S,C,UAKA,gB,CAID,uBACA,uCACA,WACA,S,kH,UAOC,0BACA,YACA,S,CAID,0BACA,WACA,S,6R,UAOC,sD,CAED,YACA,uGACA,e,0Z,eCh5BC,oB,CAED,gI,yb,eAOC,qC,CAED,wI,ibAIA,uG,mZAKA,4C,OACC,4BACA,iCACC,0FADgB,W,qB,O,4vBAqBd,I,IAEJ,2K,OACC,I,c,OAEA,I,c,OAEA,K,c,OAEA,K,qBAGA,2PACA,a,O,OAGD,8C,QACC,4HACA,a,QAID,KAEA,yQ,QACC,M,e,QAEA,M,e,QAEA,M,Q,QAID,MACA,qI,Q,K,eAGE,O,qBAEA,Q,oBAEA,Q,C,QAIF,wG,WAGC,mK,oBAEE,wI,C,M,CAMC,KACA,KACA,KAGJ,0H,O,kBAIE,oB,0IAEA,a,C,CAKF,iDACG,sHAAH,6C,QACQ,YACP,gQ,QAEC,M,e,QAGA,M,uBAGA,M,Q,Q,QAKF,iGACA,8FACA,+FACA,iGACA,mGACA,iG,uxBAgBA,qG,sCAEC,yB,CAID,gI,sCAEC,yB,CAED,yBAEA,4B,igBAII,IACD,4G,sC,sC,C,IAIH,sE,OACC,O,c,O,qBAIA,8F,O,OAED,kB,saAUA,6HACA,4E,OACC,sI,OAED,6B,4bAIA,qH,2dASA,gGACA,I,I,aAGC,I,oBAEA,I,oBAEA,K,kCAEA,K,mC,MAIA,6C,CAED,8IACA,e,kS,eC1OC,yB,CAED,iDACA,sBACA,I,UAEC,c,CAED,mGACA,iC,qT,kBAOC,oCACA,uB,CAED,4FACA,2D,OACC,gM,OAED,2BACA,qCACA,uB,wf,e,wE,C,4I,ofAcG,yHAAH,oC,OACC,kK,OAED,uB,ucASA,4G,+a,+BAOC,uB,CAED,+G,uQCxCA,kDACC,mG,K,0HAKD,YACA,iJACC,W,CAED,wB,uH,mBAKC,wB,CAKD,iC,4H,UAKC,wB,CAED,YACA,4FACA,S,kJAKG,e,uFACF,oB,CAID,IACI,mEACH,WADkB,4B,CAKnB,YACA,kDACC,2JACA,4B,KAGD,S,kIAIA,oBACA,gBACA,S,sIAIA,YACA,Y,QAIC,kB,kBAGA,wB,kBAGA,gB,CAID,iBACA,wM,QAEC,mK,CAED,mGAEA,gB,0IAIA,YACA,Y,QAIC,iC,kBAGA,wB,kBAGA,gB,CAID,YACA,wM,QAEC,iK,C,eAGA,iC,CAGD,gB,sIAIA,YACA,Y,wB,QAIE,K,cAEA,I,CAED,S,CAGD,SACA,qOACC,W,C,sMAKA,K,4MAEA,I,CAED,S,uIAIA,Y,qBAEC,oB,CAID,iBACA,iPAEA,gB,qIAMA,gDACA,qJ,eAEE,iR,C,K,6F,+DAoBD,sE,CAED,YACA,UACI,IACA,kCACH,mGACA,2HACA,yGACA,2HACA,6BACA,UACA,UACA,kH,aAEC,I,MAEA,I,CAZiB,W,C,eAgBlB,iL,CAED,S,6IAMG,wM,eACF,gL,C,4CAME,wM,eACF,gL,C,sEAcD,Y,8BAMC,UACA,O,CA4BD,UACA,4CACA,4CAYA,UACA,uBAGA,IACA,iD,kMAEC,KACA,qL,CAID,iD,kMAEC,KACA,qL,CAKD,6BACA,aAIA,6BACA,2CAUA,wBACA,qC,QAEC,wB,MAEA,wB,C,oCAMD,6M,kDAOG,Y,QACC,kO,eACF,S,gBAEC,+J,C,C,C,gC,QAQF,S,CAED,S,gCAQA,IACA,+BACC,uBACA,Y,CAED,6B,6EAIA,YACA,Y,QAIC,kB,2BAEA,wB,kBAEA,iH,C,qBAMA,S,C,SAKA,iBACA,UACA,gB,CAUD,QAIA,mBACA,mBACA,gCACA,UACA,0BACA,kC,oBAgBK,SAGJ,WACA,iBACA,aACA,UAGA,WACI,0CACH,iB,gBAEC,mB,CAED,WACA,aACA,UACA,aACA,eATuB,W,C,CAazB,gB,uI,8BASC,qC,gEAEA,qC,+CAEA,sB,mFAEA,sD,CAED,8EACA,sF,4JAKA,Y,YAGC,wC,kBAEA,WACA,Y,kBAEA,mBACA,Y,CAGD,YACA,6HACA,WACA,Y,+X,kBAKC,wC,C,eAIA,mBACA,WACA,kB,C,kBAII,IACJ,oHACA,eACA,kB,CAGD,iHACA,kB,ucAMI,SACD,0F,sCACF,oB,C,eAGA,6B,CAED,kBACA,e,2IAIA,U,+tBAYA,YACA,iB,qBAMC,S,CAED,iBAEA,4FACA,W,qBAEC,S,CAED,yBACA,UAGI,SACJ,kHACA,qC,OAEC,6FACA,YACA,6HACA,K,OAED,8QAGA,mHACI,qCAEH,cACG,oH,iBACE,KACJ,sJAGA,mHACA,8BAEA,2HACA,0CACC,cACA,MACA,e,UAGC,M,CAED,8B,C,CAKF,uPAEA,wP,gBAEC,gP,WACA,mNACA,c,CAGD,uGAlCmB,a,C,kBAqCnB,M,CAED,MAEA,WACA,yHACA,W,sC,knBAOG,iB,SACF,2H,CAED,S,yG,K,aAiCC,wJ,mBAEA,mG,MAEA,yC,C,+D,kBAQA,S,CAEG,IACJ,+HACC,Y,CAGD,0H,4JAKA,Y,UAEC,wB,CAID,mGACA,iBACA,kTACA,gCAEA,gB,wIAKA,YACA,mG,SAEC,wB,CAID,YACA,+MAEA,gB,mJAIA,8FACA,wFACA,Y,I,YAGC,YACA,gB,SAGC,S,CAED,+MACA,gB,kB,SAGC,iBACA,uB,MAEA,Y,CAED,gBACA,8MAEA,S,CAED,6C,4IAKA,yF,uBAEC,S,CAGD,8M,gIA0BA,YACA,Y,QAEC,I,CAID,YACI,kCACH,2SADkB,W,CAInB,gB,uIAIA,YACA,Y,QAEC,I,CAID,YACI,kCACH,4SADkB,W,CAGnB,8CAEA,gB,+IAIA,YACA,YACA,I,QAEC,gBACA,I,CAID,YACI,kCACH,2SADkB,W,CAGnB,8CAEA,gB,wIAIA,YACA,YACA,I,QAEC,gBACA,I,CAID,YACI,kCACH,2SADkB,W,CAGnB,8CAEA,gB,+GAKA,yB,4DAMI,SACJ,oB,sI,gc,YAQC,S,CAED,oBAEA,sE,UAEC,K,CAED,sCAEA,O,KAEC,sE,OACC,qDACC,mM,yB,c,OAGD,2DACC,sN,4B,qBAGD,yC,O,O,kBAED,oN,eAEC,c,C,qBAIF,sB,i+B,qBAQC,S,C,qHAKA,0B,C,kBAMA,0B,CAKD,sK,OACC,qGACA,e,O,uBAMA,oB,CAED,WAOA,uE,OACC,yI,OACC,qH,OAED,mH,OAGD,sHACA,cACA,4BACI,SAQJ,eAGI,gCACA,yCACH,eACA,sB,kCAGC,eACA,sB,CAGD,sD,QACC,2HACA,4C,QAGD,+BAdkB,a,uBAiBf,uDACH,sGAEI,0CACH,eACA,sB,kCAGC,eACA,sB,CAGD,sD,QACC,2HACA,4C,QAGD,+BAdmB,a,uBAHQ,a,uBAqB7B,sB,m5CAOI,0BAIA,YACJ,QACA,OACI,sCACH,qKACA,qCACA,6HACA,mCACA,6BACA,6HACA,mCAPqB,W,qBAUtB,eAEI,qDACH,uGACI,wCACH,0E,OAIC,aACA,oBACA,uHACA,oBAEA,aACA,oBACA,uHACA,oBAEA,aACA,oBACA,uHACA,oBAEA,aACA,oBACA,uHACA,oB,QAGD,8GACA,oBACA,uHACA,oBAEA,iCA/BmB,a,qBAFQ,a,qBAqC7B,sB,ktCAMA,YAIA,6C,OACC,+G,O,gBAIA,mBACA,gBACA,I,CAMD,kGACA,kGACI,mCACH,mBACA,6BAFmB,2B,CAIpB,SAGA,oBACA,+CACA,6G,gBAEC,YACA,gBACA,I,CAGD,oBACA,+FAII,aACJ,mCACA,kCACI,qCACH,iSADqB,a,CAKtB,YACA,oBAEA,YAGI,kDACH,uGACI,qC,4CAEF,0BACA,0BACA,0BACA,0B,CAED,6HACA,oBACA,iCATmB,a,CAFQ,a,CAe7B,2BAIA,6C,OAQC,aACA,6C,OACC,uH,O,OAIF,sB,8fAQA,YACA,iJACK,kCACH,WACA,8GACA,6BAHmB,W,C,KAOrB,8IACC,W,CAGD,S,6IAMA,uHAEA,IACA,IACI,IACA,0CACH,sJACG,Y,WACF,mGACA,WACA,IACA,I,CANwB,W,C,gBAUzB,mG,CAGD,gB,gY,iBAMC,sB,C,YAGA,S,CAQG,0BACJ,IACA,gCACA,sHACI,WACH,0GACA,aACA,a,gB,cAKE,e,CAED,sB,CAED,gBAZa,W,qB,+TC/rCd,gBACI,gIAEH,mBACA,W,CAGD,Y,sCAQA,IACA,8B,mBAEE,mB,CAED,mBACA,uB,CAED,S,0kBAoCA,6DAGA,oC,OACC,8J,OAID,4G,sCAEC,sB,CAID,IACA,uC,OAEC,KACA,wC,OACC,IACO,oH,KACP,qH,Q,OAGE,I,C,K,8BAIA,K,mCAEA,I,C,KAGD,wF,QACC,IACG,uH,sCAEF,sB,C,e,QAGD,I,Q,Q,e,QAID,mBACA,YACA,sB,QAGA,sB,Q,O,O,OASH,mBACA,WACA,4BACA,KACA,KACA,MACA,QACC,+C,QACC,QACA,KAEG,uH,sC,+BAED,YACA,e,CAED,sB,C,QAKE,K,iBAGH,yB,wBAEA,uC,uBAEA,uC,MAEA,M,CAED,0C,QACC,sGACA,e,QAED,WAGA,6BACA,a,YAIC,sBACA,KACA,K,CAIE,uH,sC,+BAED,YACA,e,CAED,sB,C,uB,U,qBAUA,IACA,K,iCAGA,wC,CAED,sB,C,SAMA,6B,CAED,W,UAKC,U,CAGD,sB,8pBAMA,4G,mmB,cAMC,oC,C,kBAKA,yC,CAKD,iC,MAEC,W,CAED,mBAGG,UAAH,wD,OAEC,QACA,oCACA,4FACA,KAGI,0CAEH,+BACC,WACA,gKACA,6BACA,Y,C,UAMA,mGACA,K,MAGA,qIACA,WACA,gKAGA,uIACA,qB,CAtBsB,W,CA2BxB,qCACC,WACA,gKACA,gC,C,qBAID,2BAIA,8GAGA,iBAGA,gHAKA,IACA,gIACC,W,C,O,MAKD,WACA,oG,CAGD,4B,kyBAqBA,+C,OAEK,SACJ,iBACA,0CAEC,aACA,UACA,mJACC,W,C,8NAGA,W,QAEC,8C,C,CAKF,+MAGA,wHACA,wIACA,mB,qB,OAKF,aACI,K,WAGH,sCAEC,gCACI,0CACH,aAIA,iGACA,yJACA,MAPiC,a,C,C,MAWnC,sCAEC,gCACI,0CACH,aACA,yNACA,kGAHiC,a,C,C,CASpC,+BACC,aACA,uG,C,soBAuBD,gJ,2gB,oBAOC,oB,CAID,IACI,iDACH,WADkE,2B,CAK/D,S,WAEH,gBACA,kC,MAEA,mB,CAID,yJ,OAEK,SACA,qCACH,8I,OACC,uC,OACC,wMACA,8G,qBAEA,iVACA,0O,OAID,mHACA,yJACC,iNACA,yN,CAGD,qN,OAjBiB,W,qB,O,WAuBnB,kB,CAGD,e,wuB,QCtcC,oD,C,+BAGA,mB,CAQD,sG,8BAEC,yI,C,oBAIA,mB,CAMG,gB,K,aAGH,+BACA,+B,mBAEA,wBACA,8EACA,8E,MAEA,mD,C,ukCAKA,mB,CAGD,4S,y3BASA,mBAEA,uBACA,kBAEA,mBACA,6JAEI,wCACJ,cAGI,uCACH,oD,OACC,Y,qBAEA,wGACA,c,OAED,sGACA,iE,OARqB,a,c,OAWjB,yCACH,aACA,yH,iBAboB,a,gB,C,kBAkBnB,mB,CAPuB,c,uBAUzB,mB,qBAGD,kB,2+B,qCA8BC,mB,C,4GAKA,2B,CAUD,IACA,cACA,SACA,sBACA,sBACA,OACC,yC,OAGC,uK,OAED,mHACA,yF,WAEC,c,C,UAQA,qI,CAED,wC,OAIC,2FACA,a,iBAEC,mB,C,OA1BK,Y,qBA2CR,mBACA,4BACA,mBACA,mBA8BA,oBACA,qBACA,qBACA,UACI,mDACH,4D,QAGC,eACA,aACA,aACA,2HAEA,eACA,aACA,2H,uBAIA,eACA,aACA,aACA,2HAEA,eACA,aACA,2H,QAtBgC,a,uBA2BlC,qE,QAQC,eACA,gB,iBAEC,wB,CAED,iBACA,MACA,UACA,YACA,4H,mBAEC,kB,C,QAKE,gD,mBAEF,kB,C,yHAKA,mB,CAID,eACA,cACA,2HAboB,a,uBAerB,mB,muR,4F,4F,4F,4F,4F,4F,4F,4F,4F,8L,e,wB,e,M,sH,sN;mYCnTA,wB,iGAMA,WACA,0BAGA,iB,kBAEC,mB,C,qB,qCAIC,Y,YAKC,Q,CAED,wC,oC,C,CAMC,kB,qBACC,gD,qBACF,sB,4C,C,C,iF,qS,2I,qZ,4F,4F,4F,kH,8E;yqBCzBF,gHACA,sGACA,Y,eAEC,6O,C,M,eAIC,uO,MAEA,kM,C,CAGF,e,8XAyCA,mBACA,iCACA,OACC,uL,2BAEC,e,C,qB,uWAOF,kBACA,sGACA,e,qWASI,QACJ,OACC,wFACA,iJ,eAEE,e,C,K,qBAIH,e,qcAOA,Y,uBAEC,+D,CAGD,kBACA,yG,sCAEC,U,C,gBAGA,8D,CAGG,kCACH,gTADkB,W,C,uiB,4F,4F,4F,4F;urBC9DnB,qD,yMAKA,YACA,+CACA,Q,0KAQI,YACJ,KACA,qCACC,WACA,wFACA,uHACA,WACA,I,CAGD,oGACA,qD,0XAIA,wC,yBAEC,sC,CAED,qD,OACC,qD,OACC,8HACA,SACA,6BACA,cACA,6BACA,SACA,6B,OAED,qD,OACC,+HACA,SACA,6BACA,SACA,6BACA,S,wBAEC,6BACA,2H,CAED,6B,O,O,yB,yBAKA,IACI,8C,yBAEF,yBACA,M,CAH6B,W,CAM/B,I,CAED,iCACA,6BACA,UACA,oC,C,sxBAWD,yBACI,KACA,IACJ,YACA,+C,yBAGC,cACI,QACJ,mC,OAEC,QACA,I,CAED,Y,CAED,2BACA,oOACA,4B,4DAEC,wB,CAED,2GACA,e,6nBAMA,6L,sdAK0C,0L,0cAIE,4L,8cAI5C,0LACA,U,odAKA,6LACA,U,wdAKA,4LACA,U,8cAKA,6FACA,6FACA,uB,odAKA,gGACA,6FACA,uB,wdAKA,+FACA,6FACA,uB,6YAKA,YACA,+CACA,c,2TAKA,YACA,+CACA,S,qTAKA,YACA,+CACA,gB,8TAKA,YACA,+CACA,W,8VA6EA,gGACA,6FACA,uB,mwD,4F,4F,4F,4F,4F,4F;g4DCjTA,iEACA,WACA,0HACA,SACA,e,mWAIA,+HACA,kC,scAMA,iIACA,gIAGA,iCACA,2HACA,e,8aAIA,iI,6OAIA,c,iTAIA,sD,OAEC,e,CAED,0G,2aCxBA,wJ,ycAgCA,yCACA,cACA,kGACA,qGACA,aACA,gDACA,WACA,oGAGA,4C,OACC,+L,OAED,6C,OACC,kH,OAID,oBAEA,oC,scAIA,QACA,oJACC,8D,O,SAEC,mB,qB,IAEA,gI,O,yBAGF,e,wTAKA,sIACA,0F,kUAMA,SACA,QACA,QAGA,uC,OACC,yHACA,I,OAID,uGACA,WACA,8BACC,mGADiB,W,C,SAGlB,qNAGA,yHACA,Q,ukBAIA,WACA,SACA,QACA,QACA,iDACA,iCACC,uC,OACC,kHACA,I,OAED,4BAGA,+BACA,+BACI,kCACH,2TADqB,W,CAGtB,mDACA,iBACA,iBAGA,+BACA,4CACI,kCACH,8GADqB,W,CAGtB,iBAEA,WACA,W,qBAGD,Q,uiBAKA,mGACA,iG,kcA+DA,iBACA,4GACA,0CACA,2BACA,kB,+YAIA,sG,0YAIA,sH,iZAIA,gH,qZAIA,4G,yrF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F;8S;6Y,4F,4F,4F;uc,4F,4F,4F,4F;mkFChLA,UACA,qF,kEAIA,+BACA,UACA,S,yDAGuC,2B,4DAEF,8B,gEAEE,Y,iCAavC,UACA,8F,kEAIA,mCACA,iDACA,S,yDAGsC,+B,4DAEF,6B,mCAMpC,UACA,wI,kEAIA,mCACA,8BACA,S,2DAGwC,8C,8DAEF,+D,iCAMtC,UACA,gG,kEAIA,oCACA,qBACA,S,yDAGuC,iC,4DAEF,gD,mCAMrC,UACA,yI,kEAIA,oCACA,8BACA,S,2DAGyC,+C,8DAEF,iE,iCAMvC,UACA,qF,4DAIA,UACA,iB,yDAGyC,6B,4DAEF,gB,iCAMvC,UACA,qF,kEAIA,mCACA,UACA,S,yDAG0C,8B,4DAEF,yC,mCAMxC,UACA,4I,kEAIA,mCACA,8BACA,S,2DAG2C,kD,gEAEF,qJ,+SA+DzC,4CACA,IACA,kE,kB,a,OACC,wGACA,W,KAED,2FACA,2BACA,qJACC,mJ,KAED,e,yO,0CAKC,gB,CAED,gB,kHAMA,W,wUAMA,8OACC,uF,yB,oeAaD,8OACC,uF,yB,qRAYD,+D,4WAWA,wFACA,oC,OACC,kJ,OAED,gG,sCAEC,e,C,qBAGA,Y,CAED,kGACA,uB,mgBAcA,oBACI,8BACJ,8H,OACC,gL,qBAEA,2F,OAED,6P,OACC,kB,O,I,kBAKA,kB,mBAEA,kB,oBAEA,kB,CAED,mB,oNAUA,UACI,yC,yBAEE,8C,yBAEF,2BACA,6C,4B,CAH8B,W,CAOhC,M,CAT0B,W,CAa5B,UACA,U,6BAEC,K,oCAEA,a,oCAEA,U,+DAEA,Q,oCAEA,W,+DAEA,S,CAED,Y,0PAOA,gUACC,kIACA,sB,eAEC,Y,C,gBAKA,W,MAIA,iB,CAED,QACA,kI,OACI,sCAAH,mC,OAEC,kJ,qBAEA,kJ,O,OAGF,iJ,4Q,4XAwBD,mH,mWAKA,6C,OACC,wH,qBAEA,iJ,OAED,oG,6QAkB+B,8B,kH,2BAU9B,S,CAED,kH,4GAW8B,sB,4GAMK,c,wTAQnC,oG,geAYA,4BACA,qGACA,e,maAMA,yH,4XAMA,oG,4dAYA,wBACA,oGACA,e,gaAMA,wH,6XAMA,oG,oeAYA,sCACA,sGACA,e,8cAYA,oG,geAYA,wBACA,qGACA,e,maAMA,yH,+XAMA,oG,weAYA,uCACA,uGACA,e,mdAYA,oG,weAYA,yBACA,uGACA,e,yaAMA,2H,kYAMA,oG,4eAYA,wBACA,wGACA,e,wdAaA,oG,gfAcA,0CACA,yGACA,e,+aAOA,6H,4cAWA,8GACA,iFACA,mC,OACK,KACJ,6C,OACC,0I,qBAEA,iK,OAED,4HACA,uB,O,qBAGA,Y,CAED,kG,uhBAgBA,+FACA,+GACA,4FACA,e,oaAMA,iE,OACC,mG,qBAEA,4F,O,+sB,uBAOA,8B,CAED,uG,8DAEC,8B,CAED,I,yBAEC,W,iBAEC,2BACA,8B,C,CAGF,kBACA,gG,OACC,2J,OAID,2BACA,QACA,KACI,yC,yBAEF,yBACA,OACA,oBACA,M,CALyB,W,CAQ3B,WACA,iFACA,oC,OACC,qD,OACC,4FACA,iC,OAED,0K,OAGE,4CAAH,kL,QACC,qC,QACI,4FAAH,qE,QACC,+L,Q,uBAGE,iGAAH,qE,QACC,6K,Q,Q,uB,yBAOD,OACA,kJ,CAED,sC,QACC,2K,QAEE,yGAAH,sE,QACC,mM,Q,Q,qBAID,Y,CAED,qGACA,6B,orBAQA,cACA,SACA,OACC,4G,MAEC,c,C,mCAGA,c,C,kB,YAIA,e,kBAEA,U,kBAEA,U,C,qBAGF,uB,0QAKA,gB,oFAyBA,0B,gLAIA,+F,kIAMA,2EAIA,qCACA,S,+EAOA,SACA,kB,q+L,4F,4F,4F,4F,4F,4F,4F,4F,2C,4H,4MA1cA,gPACA,uF,iH;ueCnfA,sF,2UAQA,6F,kVAKA,iG,uTC3BA,sH,0RAIA,oH,OACC,a,OAED,wH,0J,qBAKC,S,CAED,kC,eAEC,oG,MAEC,uB,C,C,eAID,oG,MAEC,uB,C,CAGF,sBACA,yB,4OAIA,oH,OACC,a,O,qBAGA,a,CAED,yH,2T,4F,4F;itHC5BA,0H,oBAEC,kB,CAED,kB,8IAIA,qCACC,0H,oBAEC,cACA,Q,MAEA,cACA,Q,C,C,yJ,UAOD,S,C,UAGA,S,CAGD,IACA,YACC,mB,UAEC,M,CAED,I,CAGD,0H,oBAEC,c,MAEA,c,CAED,S,kHAgBI,oBACJ,SACA,yBACA,oCACA,mBACA,sB,mEAIA,2BACA,aACA,U,4J,O,YASC,gB,kBAEA,e,kB,uBAGC,e,CAEG,iBACJ,uDACC,yD,UAEC,Y,MAEA,yC,C,KAGF,S,kBAEA,8B,kBAEA,mB,kBAEA,mB,kBAEA,kB,kBAEA,kB,kBAEA,kB,mBAEA,kB,mBAEA,mB,mBAEA,mB,mBAEA,uCACA,2HACA,2CACA,mE,mBAEA,oK,mBAEA,oK,mBAEA,qK,mB,sBAGC,e,CAEG,iBACJ,yJ,UAEE,uB,MAEA,oD,C,KAGF,S,mBAEI,iBACJ,qJACC,oD,KAED,S,CAED,yD,uHAKA,sCACA,oDACA,S,6GAIA,sBACA,yBACA,S,wGAIA,sB,kHAIA,sBACA,yBACA,0H,6BAGC,uB,CAED,S,gH,yBAMC,sB,CAKD,4BACA,4B,4H,YAMC,S,C,YAGA,S,CAGD,sBACA,sHACA,UACA,UACA,qCACA,S,8HAIA,sBACA,sH,MAEC,UACA,yB,MAEA,UACA,mC,CAED,qCACA,S,iIAIA,sBACA,sH,MAEC,UACA,yB,MAEA,UACA,mC,CAED,4BACA,S,uHAIA,gD,0HAIA,sBACA,gIACA,yBACA,S,6HAIA,sBACA,sHACA,SACA,c,8NAGC,oB,CAED,cACA,yB,mPAKC,O,kOAEA,O,qaAEA,Q,CAGD,S,iHC1QA,uE,+GA2BA,S,2IAwCA,S,kBAEC,iBACA,sE,MAEA,6D,CAED,OACA,S,0HAIA,iBACA,S,qJ,oP,8IAUE,c,CAED,OACA,6BACA,8B,qjD,wIAWC,c,CAID,OACA,6BACA,wB,MAGA,oB,CAGD,2BACA,S,0IAaA,kB,QAEC,a,CAGD,wHACA,wH,6EAEC,a,CAID,mC,SAIC,sCACA,uGACA,UACA,Y,CAGD,sCACA,WACA,a,6IAKA,iBACA,U,yBAEC,O,CAED,aACA,sCACA,S,uG,mBAMC,S,CAED,IACA,IACI,uD,QAEF,I,CAFsC,mBAKxC,S,0DAMA,gC,qHAMA,iBACA,gBACA,iB,mJAQA,U,gC,uCAGE,kBACA,oB,C,cAMA,kG,C,CAGF,kB,UAEC,uG,CAED,wH,cAEC,uG,CAGD,iBACA,QACA,QACA,UACA,oCACA,sGACA,wH,uCAGC,oF,CAGD,oB,yH,cAcC,Q,UAEC,Y,C,QAGA,Q,C,QAGA,a,C,QAGA,yF,C,CAGF,qJ,YAEE,a,C,KAGF,Y,0QAKA,oBAGA,kBACA,4JACC,W,CAED,uBACA,+B,kBAIC,oC,CAGD,oM,weAOA,kBACA,4JACC,W,CAED,uBACA,+BAIA,6C,OACC,yM,O,kBAMA,oC,CAGD,oM,me,OAMA,yC,OACC,2M,uPAEC,cACA,OACA,a,C,gdAGA,cACA,OACA,a,C,6CAKA,2D,C,O,O,wc,kBAWD,sG,CAED,iBACA,oCACA,iJ,aAEE,gCACA,W,MAEA,uB,C,KAGF,wC,OACC,6G,sBAEC,IACA,sGACA,W,C,OAGF,e,+yB,gBAgBC,e,CAIG,SACA,IACJ,IACA,mBACI,8CAOC,SACA,IACJ,6C,OACC,kI,UAEC,IACA,0PACC,W,C,QAKA,mBAnBuB,W,c,C,C,OA8B1B,uE,O,c,OAIC,8G,qBAGA,iBACA,UACA,6CAEI,kCACH,mOADsB,W,CAGvB,iHAEA,kBACA,wCACA,e,OAID,IACA,IACA,IAtD0B,W,qBAwD3B,IAUA,IACA,mBACI,SACA,gDAMC,SACJ,+C,QACC,oH,8KARyB,W,e,C,QAoB1B,0E,Q,e,QAIC,8G,uBAGA,IACI,kCACH,aACA,2NAFsB,W,CAIvB,mHAEA,mBACA,0CACA,gB,QAID,IACA,IAzC0B,W,uBA2C3B,IAGA,IACA,mBACI,kDAOH,wJ,QAP0B,a,e,QAa1B,4E,Q,e,QAGC,8G,uBAIA,KACI,0C,woBAEF,M,CAFyB,a,CAK3B,sZAEI,0CACH,wMACA,6GAF0B,a,CAI3B,wLACA,8G,Q,iBAKA,iH,CAED,UAxC0B,a,uBA0C3B,IAGA,IACA,mBACA,wD,iQAEE,c,CAED,iH,MAED,IAEA,e,kgB,iCAOC,sG,C,kBAGA,iB,CAED,+B,gK,iCASC,sGACA,6BACA,sG,aAEC,W,gB,yBAIC,OACA,a,kBAEA,IACA,sGACA,W,MAEA,qCACA,8C,C,CAGF,S,C,aAIA,kE,uBAEC,O,C,CAGF,S,8J,aAOC,c,C,iCAGA,sG,aAEC,c,CAED,S,CAED,S,4J,iC,MASE,6G,CAED,8D,gB,YAGC,OACA,a,kBAEA,IACA,sGACA,W,CAED,S,C,MAGA,W,CAED,sB,mIAIA,6DACA,UACA,sCACA,uE,qCAGE,iCACA,M,CAED,yB,SAED,S,otB,yBAWI,Q,sCACF,uB,CAED,+B,CAKA,yCACA,YACA,IACA,IACA,KAED,UACA,gBACA,IACA,uCACC,K,kBASA,uU,O,qEAGK,oC,sCACF,uB,CAED,c,CAED,yBACA,uBACA,kB,e,OAEG,wG,sCACF,uB,CAED,kB,e,OAEG,uG,sCACF,uB,CAED,kB,e,O,gCAGC,Q,MAEA,Q,CAED,kB,e,O,gC,W,4B,MAKC,Q,CAED,kB,e,O,+BAGC,Q,MAEA,Q,CAED,kB,e,QAEG,iH,sCACF,uB,C,e,QAGD,I,kB,aAGC,K,mBAEA,K,mBAEA,K,CAED,kBACG,sC,sCACF,uB,CAED,IACA,I,e,QAEA,KACA,IACA,gD,QAGC,eACA,kBACA,c,C,mCAIA,8F,CAEE,yC,sCACF,uB,CAED,IACA,I,e,Q,6C,mB,cAKE,QACA,kBACA,gB,oBAEA,SACA,kBACA,gB,oBAEA,SACA,kBACA,gB,oBAGA,4E,oBAGI,MACD,oB,SACF,mBACA,K,MAEA,sBACA,0B,CAED,qCACC,qC,uCAEC,wB,CAED,cACA,M,CAED,gB,qBAEA,SACA,kBACA,gB,C,CAIF,kBACA,iBAGA,kG,QACC,4K,uCAEC,wB,C,mBAGA,WACA,KACA,WACA,gB,C,QAKC,sK,mBACF,WACA,KACA,WACA,gB,CAED,YAGG,4C,sCACF,uB,CAED,a,uBAhKG,iC,sCACF,uB,CAED,a,Q,OA+JD,I,qBAGD,kGACA,8I,QAEC,oD,QAED,qGAEA,mB,gBAEC,sD,CAED,kI,gmB,uCAQC,gB,CAED,kBACI,QACD,qC,OACF,gB,C,WAGA,gB,C,8BAGA,I,MAEA,kB,WAEC,gB,C,0BAGA,K,MACS,qC,OACT,gB,cAGA,K,C,C,C,uCAID,gB,CAED,kBACA,OACA,gB,uNAOA,I,+DAmBC,oB,QAEI,Q,sC,6B,C,gE,CAMJ,2BACA,oBACG,Q,sC,6B,C,U,gE,CAQH,yBACA,YACA,eACA,S,yD,CAKG,IACJ,kBACA,UACA,IACA,QAEA,yCACI,6B,sC,6B,C,K,eASF,cACA,O,qBAEA,qBACA,O,qBAEA,cACA,O,oBAEA,eACA,O,oB,QAKC,W,CAED,KAGA,cACA,Q,mC,Q,OAME,W,CAED,c,C,WAIA,U,CAED,U,wC,MAvCA,W,C,C,sH,+G,WAsDD,a,CAED,uE,wBAEE,a,C,SAGF,Y,sF,mDAMC,c,C,kFAIA,c,CAED,IACA,8EACC,kB,CAED,IACA,OAEA,yCACI,yC,iBAGF,KACA,M,CAED,gDANuB,W,CAQxB,c,2FAMA,2E,2C,O,YAUC,uI,kBAEI,+C,4OAEF,Y,CAF4B,W,CAK9B,a,kBAEA,kB,kBAEA,Y,CAED,a,gPAKA,0FAMA,qI,OACC,U,OAGD,uB,+PAOA,kB,O,Y,kB,YAME,O,C,kB,aAKA,+H,MAEA,yB,C,kB,uOAKA,M,CAED,OACA,8IACA,+H,C,C,8eAUD,kB,+XAEC,wHACA,wH,cAGC,gBACA,wH,CAED,OACA,WACA,sCACA,kB,CAGD,sC,OACC,wHACA,wHACA,4C,OACC,sC,OAGC,2M,OAED,gIACA,gIACA,kB,O,OAGF,mB,stBAKA,0FACA,oI,OAEC,oD,OAED,6FAEA,kB,QAEC,qD,CAED,wHACA,wHACA,sC,oBAEC,qD,CAGD,gB,cAGC,U,MAEA,QACA,oCACA,sGACA,U,CAED,uB,ihBAMA,kB,W,6F,CAIA,6B,sC,uC,CAMA,yB,I,uF,mDAcE,M,CAKD,UACI,kC,mDAEF,M,CAED,+CACA,kBALkB,W,C,8C,mBADnB,UACI,kC,mDAEF,M,CAED,+CACA,kBALkB,W,C,8C,oB,WAYlB,M,CAEE,6B,sC,uC,C,YAQF,KACA,IACA,Y,WAEE,a,CAEE,iC,sC,6C,C,YAIF,M,CAED,S,SAEC,a,CAED,sB,cAEC,a,CAED,a,C,WAGA,a,C,oD,CAMF,SACG,iC,sC,6C,CAGH,S,eAEC,M,C,uE,mB,4C,oB,6C,oB,6C,oB,6C,oB,4C,oB,6C,wB,oD,C,C,uH,gL,W,sE,C,yB,sD,C,2C,oZ,oEAoDD,kB,CAED,4F,eAEC,kB,C,0J,mrB,qEAUA,oB,CAGD,gC,QAEC,oB,CAED,WACA,4DACA,4E,e,6F,C,8J,ukBAQA,uD,O,aAEE,kB,MAEA,kB,C,qBAGD,4BACA,kBACA,aACA,sN,aAEC,U,MAEA,U,C,OAGF,e,iQ,cAaC,c,CAEE,+D,kBACF,yE,CAEE,4D,kBACF,uE,CAED,sB,yhB,4HAQC,oB,CAID,I,yBAEC,K,CAED,kBACA,6B,sCAEC,oB,CAEG,kB,iBAGH,yCACA,kB,MAGA,qB,QAEI,Q,sCACF,oB,C,6F,CAIF,4DACA,oBACG,Q,sCACF,oB,C,C,sCAMD,KACA,kB,CAGD,sB,e,6F,CAKA,qE,O,QAEE,U,MAEA,U,C,qBAMD,6BACA,YACA,YACA,cACA,6N,QAEC,W,MAEA,W,C,O,0D,0rCASF,kBACA,iBACA,gBACA,sCAEA,I,sCAEC,KACA,kB,0BAKC,6B,C,CAIF,SACA,OACA,kE,iHAIE,+C,qG,CAGD,QAGA,4F,OACC,6H,sC,mC,C,kBAKC,gBACA,c,C,OAKF,gI,uC,wC,CAIA,+C,OACC,oBACA,c,OAIE,sI,mBACF,sBACA,c,CAID,KACI,sBACD,mD,uC,wC,CAGH,M,mEAGC,kBACG,mD,uC,wC,C,UAIF,4C,mF,C,C,0BAKD,c,MAEA,c,C,qBAGF,kBAGA,SACA,8M,QAEC,Q,CAED,SACA,U,8C,u4BASA,sIAEA,W,gBAEC,e,CAID,IACI,0CACH,yN,0H,kHAIE,8G,CALqB,W,S,CAUvB,mGACA,8GACA,WAZuB,W,CAexB,8B,yN,yBAMC,iB,CAED,iB,wDASA,YACI,mC,SAEF,2O,6B,QAGE,8G,C,QAGA,qH,CAED,S,C,CAViB,W,CAepB,sB,wC,qBAgBC,iB,C,mBAIA,iB,C,SAIA,aACA,K,C,aAIA,iBACA,S,CAIG,mCACH,YACA,kBACA,qCACC,YACA,kB,CALoB,W,CAQtB,S,oCAMI,0CACH,qNADuB,W,CAGxB,S,oCAKI,0CACH,qNADuB,W,CAGxB,S,8CAMA,IACI,0CACH,yN,gBAEC,iB,CAED,SALuB,W,C,eAQvB,kB,CAED,S,wEAKA,uKACC,oD,UAEC,YACA,a,CAEG,mCACH,YADqB,W,C,KAIvB,uKACC,oD,UAEC,YACA,a,CAEG,mCACH,YADqB,W,C,KAIvB,S,0EAKA,IACA,uKACC,oD,U,gBAGE,iB,CAED,SACA,a,CAEG,mC,gBAEF,iB,CAED,SAJqB,W,C,KAOvB,uKACC,oD,U,gBAGE,iB,CAED,SACA,a,CAEG,mC,gBAEF,iB,CAED,SAJqB,W,C,K,eAQtB,kB,CAED,S,8CAMA,IACA,IACI,0CACH,yN,gBAEC,mGACA,qHACA,W,CAED,SAPuB,W,CASxB,mB,eAIC,uB,CAED,S,kEAYA,aACA,eACA,eACA,wmB,mHAIA,4G,mIAIA,aACA,eACA,eACA,o0B,+FAIA,oCACC,wC,yBAEC,oC,CAED,kB,CAED,iB,uEAIA,wC,yB,kE,C,4D,4BAQA,iD,4B,iBAKC,e,C,kBAGA,sB,C,iBAGA,sB,CAED,S,wD,8BCn0DC,S,CAED,0G,mHAsBI,KACA,I,UAGH,I,mBAEA,c,cAEA,c,C,UAIA,mB,mBAEA,c,cAEA,e,C,eAGA,oB,CAED,S,mDAOA,2D,4EAYI,yCACJ,QACA,kB,4HAMA,8GACA,iDACC,QACA,8G,CAED,Y,sHAKA,O,I,qCAGC,I,CAED,S,6IAOA,kC,6C,oC,CAQI,yCACJ,+FACC,kHACA,0B,C,4C,iIAQG,IACJ,gBACA,8GAEA,iB,O,YAGE,6B,kBAEA,W,+B,MAIA,W,CAED,QACA,8G,CAED,S,8HAQA,kC,+JASA,S,kBAIC,4F,UAEC,S,C,wCAGI,uD,UAEF,S,CAF0C,mB,CAM7C,S,CAKG,gD,uGAEF,S,C,mHAGA,2F,CALmC,W,CAUrC,IACA,+FACA,8BACC,qGACG,kH,S,8HAED,S,CAED,S,MAEA,I,C,CAGF,S,qGAMA,gE,yE,mB,YAYC,yB,kBAEA,yB,kBAEA,c,kBAEA,c,mBAEA,uB,mBAEA,qB,CAED,+C,4IAII,yCACJ,QACA,kB,iGAIA,iJACC,iB,K,4CAKD,uDACC,8GACA,Y,eAEC,0C,C,gBAGA,U,CAED,uBACA,QACA,qB,K,4BAKD,yC,kC,O,YAMC,mD,kBAEA,wD,kBAEA,kD,kBAEA,oD,kBAEA,wB,kBAEA,uB,kBAEA,oC,kB,oBAIC,6B,CAED,+D,wCAEC,qB,CAED,iC,kBAEA,iF,kBAEA,oC,mBAEA,yC,C,2F,2BCvRA,a,C,qBAGA,a,C,O,a,mDAMC,a,C,+B,yCAKA,a,CAED,0J,yHAEE,a,C,K,iC,uCAMD,a,CAED,yJ,yHAEE,a,C,K,6C,kQAMD,a,C,mB,0SAKA,a,C,mB,4PAKA,a,C,CAGF,Y,+KAKA,kB,O,YAIC,sC,kBAEA,sB,kB,+BAGC,sB,CAED,sJACC,c,K,+BAGA,mB,C,kB,uFAIA,sCACA,M,CAED,gB,uBAEC,oC,oQAIA,gBACI,sDACH,uPACA,e,eAEC,gBACA,e,CAL8B,W,C,MAS5B,+CACH,6OACA,e,eAEC,gBACA,e,CAL4B,W,C,CAS/B,gB,kBAEA,yB,kBAEA,wB,kBAEA,wB,kBAEA,wB,kBAEA,qB,mB,iCAGC,yB,MAEA,qB,C,mBAGD,qB,mBAEA,qB,mB,mBAGC,sBACA,sBACA,gB,MAEA,gB,C,wHAGA,8G,CAED,gB,yDAEG,2G,6CACF,qBACA,SACA,mB,MAEA,S,C,Q,cAIA,gB,oBAEA,gB,oBAEA,gB,oBAEA,iBACA,6B,uBAEC,gB,aAEC,6B,C,CAGF,iB,C,gCAGA,gB,C,mBAGD,gK,eAEE,qBACA,SACA,mB,MAEA,S,C,M,mBAIF,sK,SAEE,iB,CAED,S,M,MA1HD,mD,C,C,yDAgIG,yCACJ,QACA,kB,mG,iB,2CAQE,gB,CAED,eACA,O,CAGD,kB,I,YAEC,qB,mBAEA,qB,mBAEA,qB,mBAEA,qB,kBAEA,qB,mBAEA,qB,M,UAGC,qBACA,kC,iBAEC,gB,CAED,iBACA,M,CAED,sBACA,+CACA,mB,C,C,iEAMD,I,cAEC,Q,CAED,qJACI,a,QACF,I,C,KAGF,S,sHAKA,mCACA,cACA,S,mI,cAKC,kH,CAED,qJACC,c,K,8J,eC7SA,c,C,O,uCAKA,IACA,yJACC,e,oBAGC,6DACA,aACA,cACA,uE,C,aAGA,uB,C,KAGF,S,6CAGA,iHACA,4B,mB,6BAMC,kE,CAID,iH,e,cAME,+B,C,cAKA,+B,CAID,8DACA,oCACI,6CACH,uBADyB,W,CAG1B,6CACA,S,C,6BAOA,S,CAQG,S,YAEH,8DACA,oCACI,sCACH,uBADuB,W,C,C,gBAOxB,0BACI,+CACH,8DACA,iDACA,0BAHgC,W,C,eAMhC,S,CAED,uB,C,kBAGA,S,CAKD,kE,CAGD,S,yG,aAsBC,S,C,oDAIA,S,C,4KAGA,S,CAGD,6DACA,+CACA,S,syP,4F,4F,4F,4F,4F,4F,2B,sB,+G,mB,8B,sC,yM,gC,0B,mB,uB,0B,mB,oB,oB,oB,uC,wB,mB,sC,gC,k/B;62L,UCrGC,S,CAED,6G,2B,UAQC,S,CAED,2C,2BAQA,2B,gFAOA,Q,yBAGC,4B,MAEA,6B,CAGD,+I,0BAEC,gC,MAEA,mCACA,0DACC,iH,K,C,sBAKD,uB,MAEA,2B,CAED,sDACC,8G,K,oJAOD,8C,sQAEC,a,C,yFAED,+QACA,Y,2I,4HAOC,O,C,iCAMA,O,CAGD,wC,8vBAKA,wBACA,gBAEA,cACA,8CACC,sBAEA,iHACA,kHACA,kHACA,6BASA,cACD,O,wBAEE,c,CAEF,OAEC,kI,OAKA,gU,OACC,2C,e,O,IAWA,uE,QACC,cACA,QACA,c,e,QAGA,IACA,QACA,c,Q,QAED,0C,e,O,8HAKA,+E,QAEC,kBACA,QACA,QACA,c,Q,QAGD,sBACA,QACA,c,e,OAGA,2GACA,mD,QACC,c,QAED,WACA,QACA,c,e,QAGA,6GACA,sJ,QACC,c,QAED,YACA,QACA,c,e,QAGA,sHACA,wD,QACC,c,QAED,YACA,QACA,c,e,QAGA,sHACA,2C,QACC,c,QAED,YACA,QACA,c,e,Q,KAIA,yE,Q,wCAGE,uIACA,6H,CAED,QACA,c,e,QAGA,6HACA,c,Q,QAGD,8C,e,QAGA,+K,QACC,c,QAED,QACA,c,e,QAGA,QACA,c,e,Q,sBAMC,eACA,uB,C,oBAOA,0G,C,yIAGA,6B,CAED,e,OAIC,uB,C,cAKA,uB,CAID,c,uBAvIA,gC,Q,O,qBA2IF,uB,s8BAKA,oI,OACC,yD,OAGD,qB,YAEC,mB,C,qCAIA,mB,CAGD,MACA,aAEA,qCACA,2DACC,mH,KAID,sD,O,oBAEE,sG,CAED,kI,OASD,KACA,8CACC,gE,OAEC,mG,QAEC,mB,CAED,W,Q,oBAIA,sG,CAED,0J,QAEC,kB,QAED,oGAjB+B,W,qBAmBhC,mB,2YCnTA,mBACA,oB,2IAIA,oBACA,qB,6IAIA,kBACA,0BACA,oBACA,qB,iHAKA,uKACA,mBACA,4DACA,4DACA,W,QAEC,I,C,WAGA,sB,CAED,4BACA,S,6DAIA,sJACC,2B,KAED,qC,wHAMI,SACD,iB,QACF,uHACA,oC,MAEA,2BACA,6D,CAED,SACA,S,qqBAOA,qB,YAEC,mB,CAED,gBACA,2DACC,mH,KAED,sBACA,kBACA,gBACA,yGACA,6C,OACC,8G,OAEG,IACJ,uC,OACC,yB,qBAEA,8F,OAED,OACC,uD,Q,qCAGE,e,C,cAIA,e,CAED,8P,QAEC,0G,SAEC,e,CAED,YACA,oHACA,yH,Q,Q,e,yBAKA,+G,CAED,+C,CAED,wBACA,yB,UAEC,e,C,wCAKA,e,CAED,WACA,oBACA,+C,QACC,yH,QAED,oB,sBAED,WACA,uB,+hBAKA,iK,oBAEE,2B,C,KAGF,+B,qKASA,wBACI,gDACH,+GACA,M,eAFgC,W,S,C,gPAO/B,yBAP+B,W,S,CAUhC,SACA,Q,O,Y,kJAOE,sGACA,6B,C,OAIA,qL,oBAEE,2B,C,KAGF,+B,CAED,e,kBAGA,iB,kBAEA,2G,kBAEA,O,mBAEA,c,MAzBA,gC,C,MA4BA,6B,C,kBAGA,yB,CA7C+B,W,CAgDjC,+B,oL,UASC,S,CAEE,gH,mJACF,S,CAGD,kBACA,sCACA,+GACA,WACA,OACA,sHAEA,gH,O,Y,+BAOC,yBACA,yB,kB,yCAGC,yB,C,kBAGD,yB,kB,yBAGC,6GACA,6GACA,4BACA,6G,MAEA,yB,C,iE,eAIA,a,MAEA,S,C,sGAGA,oB,CAED,MACA,S,MA/BA,iC,CAiCD,S,iuBAOA,qB,YAEC,mB,CAED,gBACA,2DACC,mH,KAED,kBACA,gBACA,yGACA,6C,OACC,8G,OAEG,IACJ,uC,OACC,yB,qBAEA,8F,OAED,aACA,8HAEA,gR,OAGC,4I,QACC,qCACA,oHACA,yHACA,sGACA,+B,uBAEA,uB,Q,QAGF,QACC,gIACA,qB,gBAIA,gU,QACC,e,yBAEC,+GACA,+G,CAED,uB,Q,4BAGC,uB,C,e,Q,8HAIA,uB,C,e,Q,e,Q,WAMA,uB,C,e,QAID,iBACA,e,e,QAEA,uB,QAEA,e,e,Q,sDAGC,uB,CAED,e,e,Q,0CAGC,0I,CAED,e,uBAvCA,gC,Q,Q,UA0CA,e,CAED,wBACA,WACA,oBACA,+C,QACC,yH,Q,uBAGF,uB,iwBAKA,qI,kiBAQA,UACI,YACA,I,sCAEH,sB,wBAEA,qBACA,Y,MAEA,sBACA,W,CAED,oH,OACC,gI,OACC,SACA,oB,O,c,O,iBAIA,W,CAED,wI,OACC,SACA,oB,O,qBAGD,UACA,kI,QACC,SACA,oB,Q,OAGF,6B,eAGC,2B,CAED,SACA,e,2XC/ZA,wH,sD,0D,CAIA,QACA,8GACA,mCACC,QACA,8G,C,2C,0D,CAQG,yCACJ,6FACC,kHACA,sI,C,kLAKA,O,C,+C,mCAUD,yB,SAEC,kH,C,kBAGA,kB,CAED,S,+BAIA,O,I,qCAGC,I,CAED,S,sDAWA,2B,wHAIA,6HACA,gCACA,S,6GAIA,SACA,c,6H,8BAKC,a,CAED,+V,2H,mBAKC,e,C,gI,8BAMA,O,CAED,qHACA,wHACA,sB,0G,6D,ijBAuBA,mBACA,mB,mCAEC,uD,CAGA,sBAED,sBACA,sBACA,UACA,kE,UAEE,YACA,Y,C,uBAIF,QACA,2E,yPAEE,a,CAED,0Q,wBAEA,iBACA,qBACA,Y,kBAGD,4CAEC,qU,OACC,8L,c,OAEA,gM,c,OAEA,gM,qBAEA,gM,O,O,UAGA,oB,C,qBAGF,wB,gaAKA,yK,O,oC,gEAIE,wH,2CAEA,wHACA,uJ,C,K,+GAOF,qCAIA,qKACC,0D,KAQD,uD,sH,yBAME,yOACA,yOAEA,mI,wCAEC,gBACA,iI,wCAEC,a,C,CAGF,mI,qCAIC,a,CAID,iQACA,iQACA,S,yBAEC,Q,+BAEA,QACA,wB,C,OAGA,kB,C,yBAMA,kB,C,MAtCD,a,C,KA0CF,S,gDAMwC,iB,yHACA,wM,qIACA,4Y,6Y,4BAavC,gB,CAIA,2BACA,2BACA,2BACA,sCAKD,myBACC,OACA,iH,qBAEC,e,CAED,e,YAEA,+Q,OACC,uPAEA,4DACA,4D,SAEC,QACA,c,C,MAIA,oDACA,gB,C,MAGA,8FACA,Y,CAID,4U,0IAGC,QACA,c,C,e,OAGD,4GACA,yJAEA,gQACA,kBACI,8OACH,kCAD2C,a,C,e,OAI5C,4GACA,yJACA,gQACA,kBACI,8OACH,kCAD2C,a,C,e,OAI5C,0GACA,c,e,OAEA,kG,qBAEC,c,CAED,wB,4BAEC,qHACA,4BACA,c,CAED,oBACA,uG,QACC,iHACA,qBACI,2DACH,qBAD2C,qBAG5C,0J,uBAEA,gC,QAED,6GACA,kBACI,8OACH,kCAD2C,a,CAG5C,Y,e,OAEA,kG,qBAEC,c,CAED,wBACA,cAEA,4E,QACC,iHACA,qBACI,2DACH,qBAD2C,qBAG5C,0J,uBAEA,2O,QAED,6GACA,kBACI,8OACH,kCAD2C,a,CAG5C,Y,e,OAEA,kG,qBAEC,c,CAED,wBACA,sIACA,4B,e,OAEA,kG,qBAEC,c,CAED,wBACA,sIACA,kBACI,8OACH,kCAD2C,a,C,Q,OAI7C,e,+hBAGD,aACA,8BACA,kGACA,2CACC,aACA,cACA,2H,OACC,QACA,c,O,qB,iBAID,0DACC,mO,K,CAGF,kB,wf,gB,oB,C,+R,oB,CAmBA,wKACC,yH,O,yB,0I,oB,C,kB,U,mCAaG,kB,C,oB,C,gB,oB,C,yBAQJ,QAGA,uF,cAGC,Q,C,mB,0PC/YD,uB,gHAUA,uE,0PAgBA,4G,yKA+BA,wB,kYAIA,4G,sCAEC,uB,CAED,aACA,eAEA,eACA,6B,sCAEC,uB,CAED,yL,4BAYC,mE,MAEA,uF,C,8BAKA,iEACA,qE,CAED,0B,iQAOA,YACG,oB,QACF,0HACA,0CACA,cACA,S,CAED,cACA,wCACA,OACA,S,4GAQA,YACA,+BACA,c,8RAOA,qGACA,mE,OACC,6I,OAED,e,6K,sBAgBC,gB,CAED,kB,0DAKA,4B,6HASA,8B,+H,mBAsBC,sB,UAEC,iB,CAED,iD,CAED,a,wHAIA,Y,wIAIA,4C,gIAIA,sD,sIAIA,kB,yBAEC,yD,C,mBAGA,mD,CAED,6B,2H,oBAUC,6G,UAEC,iB,CAED,wC,CAED,a,wHAIA,Y,wIAIA,iD,gIAIA,0D,sIAIA,kB,0BAEC,gD,C,oBAGA,0C,CAED,6B,yU,6BAYC,mB,CAGD,qH,sCAEC,aACA,mB,CAED,mBACA,kB,+QAIA,a,wIAIA,a,gIAIA,S,0HAIA,S,kJ,oE,sTAaA,mH,sbAKA,0H,gbAKA,sH,0eAkBA,qG,sC,sC,C,wI,+dAsBA,I,yBAEC,4C,CAED,mFACC,yC,4FAED,+B,2fAOA,yEACC,4B,mH,8gBASD,iRACC,+T,gNAED,+B,6lBAIA,IACA,IACI,SACA,I,kBAEH,Y,MAEA,W,C,6BAGA,yB,CAGG,YACJ,kCACC,yI,kBAEC,c,C,kBAKA,2H,MAEA,4H,CAOD,8N,OACC,wF,OAED,4FAGI,I,kBAEH,sC,MAEA,+C,C,uGAGA,W,6GAIA,W,MAEA,4F,C,qB,kBAMD,iC,MAEA,kC,CAGD,e,0lBAOA,I,4BAEC,4C,CAED,QACA,iF,oCAEE,0B,CAED,qC,8FAED,e,0eAOA,qEACC,4B,mG,6eASD,6QACC,8T,2N,sR,eAgDA,c,CAED,yCACA,sCACC,gB,CAED,S,gbAKI,I,eAEH,W,MAEA,Y,CAGG,gEACH,4I,kBAEC,c,CAGD,O,kG,kGAME,Q,CAEG,I,eAGH,iD,MAEA,wC,C,QAGA,W,MAEA,S,C,MAGD,4F,CAED,4FAEA,mC,OACC,8FACA,W,O,qB,gkBAQE,YACJ,0I,eAEC,oB,CAED,8M,wcAQA,wH,e,wB,C,kC,+cAaI,YACJ,8I,eAEC,e,CAED,+M,geAQA,4H,e,wB,C,kC,+eAaA,qH,e,wB,C,kC,kiBAaI,YACJ,+J,eAEC,oB,CAED,6CACA,kD,+IAEE,qV,C,KAGF,e,iVAqBA,4C,qJAOA,gC,uMAIA,qCACC,iB,QAEC,M,CAED,oCACA,kB,uCAGC,gBACA,kBACA,S,CAED,oC,OAGC,gBACA,kBACA,S,CAED,I,S,sJ,kBAIG,sQ,MAEA,uQ,C,C,MAIF,0K,6J,kBAGG,sQ,MAEA,uQ,CAED,M,C,K,C,CAKJ,oBACA,S,mJ,0CAOC,gB,CAED,Q,0BAEC,OACA,kB,MAEA,kB,CAED,IACA,qCACC,sD,+CAEC,M,CAED,W,C,UAIA,gB,CAED,oB,M,4CAIE,gB,CAED,W,CAID,IACI,yC,yDAEF,KACA,M,CAED,gDAL0B,W,C,uCAS1B,K,CAGD,kBACA,OACA,gB,4PASA,8O,uiBASI,YACJ,mK,eAEC,oB,CAED,6CACA,kD,+IAEE,sV,C,KAGF,e,+hBASA,kP,sfASA,2O,of,QAWC,oB,CAED,yBACA,uEACC,uN,0F,qBAGA,oB,CAED,kB,uc,QASC,iB,CAED,yBACA,kEACC,oC,wF,qBAGA,oB,CAED,kB,6d,QASC,mB,CAED,yBACA,2EACC,wN,0F,qBAGA,oB,CAED,kB,+d,QASC,gB,CAED,yBACA,sEACC,oC,wF,qBAGA,oB,CAED,kB,if,QASC,oB,CAED,yBACA,uFACC,8GACA,kD,uHAEE,wV,C,KAGF,qB,0F,qBAGA,oB,CAED,kB,ue,QASC,iB,CAED,yBACA,kEACC,qB,wF,qBAGA,oB,CAED,kB,6f,QASC,mB,CAED,yBACA,2FACC,8GACA,kD,uHAEE,yV,C,KAGF,qB,0F,qBAGA,oB,CAED,kB,+f,QAUC,gB,CAED,yBACA,sEACC,qB,wF,qBAGA,oB,CAED,kB,kjB,UAqBC,oB,C,6CAIA,0B,CAGD,2GACA,6BAEA,IACA,IACA,iJ,6BAEE,M,CAGD,4F,uGAEC,+B,CAED,4F,K,sBAIA,6B,CAGD,e,m6W,4F,4F,4F,4F,4F,4F,4F,4F,wG,S,c,wB,4B,uB;qMC7mCA,qBACA,YACC,mB,gBAEC,wB,CAED,qC,C,+L,4F,4F,4F;mR,4F;sR,4F;uwB,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,8F,8F,qJ,oL,4J,qJ,4I,8I,gJ,0J,4J,sJ,8K,mJ,oK,qL,0L,4K,mJ,uM,yK,+J;ypBC6BD,WACA,W,gLCqBA,uF,kvBAIA,4FACA,6C,SAGC,a,CAED,4BACA,+HACA,uH,QAMC,I,C,kDAIA,0B,C,kDAGA,0B,CAED,2KACA,mI,2BAEC,yB,CAED,+FACA,MACA,I,MAEC,gB,CAED,Y,QAEC,U,C,IAGD,gO,OACC,+FACA,M,e,OAEA,+FACA,M,e,QAEA,+FACA,M,e,QAEA,gGACA,M,e,QAEA,+FACA,M,e,QAEA,+FACA,M,e,QAGC,wC,QACC,sBACA,sM,Q,Q,OAIH,oJACA,sC,QACC,0BACA,sV,QAED,qJACA,yC,QACC,4H,uBAEA,4H,QAED,sC,QACC,mG,Q,kpBAKD,oC,OACC,oG,O,mTAeD,4F,wSAiBA,0F,6bA4FA,6FACA,8CACA,gB,+eAoEI,YACJ,uGACA,2C,OACC,2BACA,8JACA,mE,OACC,6K,O,OAGF,wGACA,4C,OACC,gCACA,oKACA,qE,QACC,2K,Q,QAGF,2GACA,6C,QACC,gCACA,oKACA,qE,QACC,2K,Q,Q,gNC9SF,iC,4NCtEA,uH,OACC,4F,qBAEA,0F,O,+SAqBD,4F,+SAWA,4FACA,U,4UAoBA,mN,4kBAgCA,4FACA,6C,KAEA,qE,OACC,6CACA,Y,aAEC,qD,CAED,oO,c,O,O,OAGD,wJACC,uGACA,6D,QACC,wH,Q,yBAGF,yH,ie,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,yK,oB,mB,kB,K,S,S,Q,4G,I;iQ,8CCXC,a,C,qB,I,+MAeC,a,C,C,I,oDAMD,a,iI,I,YAWC,c,kBAKA,6C,kBAOA,6C,kBAIA,Y,kBAKA,a,C,CAKF,Y,2BAsGA,c,0EAUA,gBACI,yCACH,kB,W,sBAGE,W,MAEA,W,C,CANqB,W,C,qBAYvB,S,CAGD,4CACA,IACI,yCACI,kB,sBAEN,oGACA,W,iBAEA,oGACA,4JACA,wJACA,W,MAEA,iHACA,W,CAZsB,W,CAexB,yB,kL,4F,4F,4F,4F,4F;6Z,4F,4F,4F,4F,4F,4F;yuC,iC,mC,C,2B,mDCjBC,4B,kBAEA,2B,iCAEA,gE,yDAEA,6B,gEAEA,2D,iCAEA,qC,8EAEA,4D,mBAEA,O,MAEA,Y,C,+B,4M,0F,2EA0XA,kB,mBAEA,qC,C,OAED,mB,uYAuLA,8F,8B,qC,CAAgE,+H,sC,8U,uCAc/D,e,C,8BAGA,yC,CAED,qH,8XAoBA,+D,OACC,8G,O,iCAGA,6C,CAGD,2T,OACC,uZ,OACC,2B,uB,2B,2BAIC,8B,C,Q,OAIH,kI,0WCr2BA,KACA,0FACA,e,6aAKA,qE,kB,kB,aACC,wC,OACC,uK,OAED,8F,uCAEC,sD,CAED,8I,OACC,oT,OAED,2G,yB,qbAgBD,0Y,OACC,kB,OAEA,kB,O,OAED,mB,4J,WAMC,a,CAED,2E,a,kCAIE,a,wCAEA,a,C,SAGF,Y,kPAqBA,8D,OACC,uH,OACC,oL,OAED,2F,OAED,4J,OACC,4M,OAED,0B,ypBASA,uGACA,8D,OACC,qK,OAED,oJACC,uGACI,QACD,qHAAH,oC,OACC,uK,Q,2BAGD,+H,QACK,kB,2BAEJ,6M,QACC,0B,e,QAEA,0D,e,QAEA,oL,QAEA,gN,Q,QAED,0K,QACC,0K,QAED,2J,e,QAEA,oQ,uCAEC,6C,CAEE,yIAAH,gE,QACC,K,uBAEA,wN,Q,e,QAID,mC,uBAEA,4M,Q,Q,yBAGF,0B,6mBAOA,8FACA,8D,OACC,yI,OAED,qHACA,mC,OACC,yI,O,2B,+DAIA,gD,CAED,6J,ssBAQA,uGACA,8D,OACC,4J,OAED,2BACA,mI,OACC,yK,OAED,0H,OACC,0S,QAED,6FACI,YACJ,mI,QACC,sD,QACC,sO,QAED,wL,uBAEA,sD,QACC,sN,Q,QAGF,2BACA,kKACC,iHAEI,aACJ,uJ,QACC,mG,uBAEA,K,QAGG,aACD,uOAAH,sE,QACC,kL,Q,4BAGF,oHACA,2K,QACC,+U,QAED,qH,klBAMA,gNACA,e,wWAMA,uI,OACC,e,OAED,qDACC,mGACA,uI,OACC,c,O,yBAGF,e,sXAMA,sI,OACC,e,OAED,qDACC,mGACA,sI,OACC,c,O,yBAGF,e,uUAKA,kH,+H,2B,YA4BC,oB,gEAEA,oB,8EAEA,oB,iCAEA,oB,iCAEA,oB,mBAEA,oB,CAED,a,6fAKA,uGACA,sC,sCAEC,sB,C,kBAGA,uB,CAED,oJACC,uGACA,sC,sCAEC,sB,CAED,QACA,4C,O,qBAIE,iM,2BAEA,uM,MAEA,uB,C,qB,KAID,4L,OACC,sD,e,QAEA,6G,e,QAEA,wD,e,QAEA,mG,e,QAEA,wO,e,QAEA,qG,uBAEA,oC,Q,O,O,MAID,6B,C,yBAGF,8B,yjBAMA,iJACA,mB,kjBAKA,uGACA,sC,sCAEC,sB,CAED,uGACA,sC,sCAEC,sB,CAED,QACA,4C,O,qBAIE,iN,2BAEA,kN,MAEA,uB,C,qB,IAID,qK,OACC,uB,OAEA,sD,e,OAEA,kH,e,QAEA,sO,e,QAEA,wH,uBAEA,oC,Q,O,OAGF,0B,4gBAMA,uI,yCAEC,kB,CAED,8I,6WAMA,uI,sCAEC,sB,CAED,2B,sWAMA,uI,sCAEC,sB,CAED,2B,4ZAeA,IACA,wJACK,S,I,aAGH,K,mBAEA,K,mBAEA,K,mBAEA,K,mBAEA,K,MAEA,kB,C,OAED,yGACA,0FACA,S,yBAED,uG,gZ,+BAOC,e,CAEG,4CACJ,qHACA,2B,sUAMA,qL,yhBAkBA,IACI,6CACH,mGAEA,6C,OAHuB,W,c,OAOvB,yGAEA,uC,O,IAIC,gK,QACC,6F,e,QAEA,6F,e,QAEA,6F,e,QAEA,6F,e,QAEA,6F,uBAEA,6FACA,sCACA,yHACA,yH,Q,O,qBAID,6CACA,gD,QACC,wH,uBAEA,sI,QAED,kB,OAED,SAvCuB,W,qBAyCxB,+G,wfAMA,oI,OACC,e,OAEG,4CACJ,qHACA,2B,6J,I,+DAMC,Y,CAED,oB,4MAMA,qL,sUAMA,gM,+aASA,QACI,K,kBAGH,oI,CAED,oC,OACC,wJACC,+M,MAEC,mG,C,yBAGF,6F,OAED,e,uW,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,2G,4G,4G,wC,8C,4C,mC,mC,mC,kC,kC,mC,8C,kC,iC,kC,mC,mC,2d;07FC7mBI,KACJ,4E,kB,kB,aACC,8N,yBAED,e,gYAiBA,yG,mY,mCAOC,uB,CAED,eACA,8F,uCAGC,+D,CAED,yO,ypBAOA,8GACA,IACA,yCAEC,6B,SAEC,6C,CAED,iBACA,kDACA,yBAMI,8BACJ,kOACC,W,CAGD,wN,OACC,yGACA,6BACA,oJACC,eACA,mHACA,6F,OACC,oU,Q,yB,OAMH,2IACA,sE,QACC,6J,QACC,qR,QAEA,gB,Q,QAGF,K,qBAED,uB,k5BAQI,mBACA,IACA,S,I,YAGH,6B,SAEC,wD,CAED,iB,kB,gBAIC,wD,CAED,6nBAIA,iB,kB,gBAIC,wD,CAED,g1CAQA,iB,kBAGA,gC,wGAEC,kE,CAGD,oCACA,kC,MAGA,yD,CAKE,4H,uCACF,wB,CAED,0B,2e,UAKC,iD,2EAEC,mC,CAED,oB,gBAEA,4C,gBAEA,6C,MAEA,iE,C,0sB,gCAWA,uB,C,2BAID,wX,O,eAEE,4C,C,yCAGA,yC,CAED,wD,e,OAKA,uCACA,qE,QACC,yVACA,e,QAED,4B,e,O,UAKC,6B,gBAEA,uD,gBAEA,6B,MAEA,4C,C,e,O,eAMA,+C,CAED,4D,e,O,eAKC,+C,CAED,iD,e,O,eAKC,8C,CAED,+C,e,OAIA,kF,QACC,uC,sCAEC,e,CAED,0GACA,iPACA,uB,Q,eAGA,wD,CAED,6H,OAKA,6D,QACC,4U,QAED,sQ,Q,eAKC,sD,CAED,iI,Q,eAGC,sD,CAED,6D,QAEC,sP,QAED,oI,QAGA,6D,QACC,0P,QAIE,gLAAH,sC,Q,eAEE,6C,CAGD,0H,QAMD,0O,QAGA,6F,Q,OAED,uB,0yBAQA,8H,OACC,kGACA,oC,OACC,+I,OAED,0L,OAID,qG,kpBAYA,iHACA,gMAGI,I,0FAEJ,6K,O,I,6BAIE,I,mCAEA,I,mCAEA,I,mCAEA,I,MAEA,I,C,e,OAID,I,e,OAGA,I,e,OAGA,iE,Q,6CAEE,qD,CAEG,6DAEH,yUAF4B,W,uB,uBAK7B,kH,QAED,uB,QAIG,sI,sCACF,e,CAED,oQACA,uB,Q,OAID,2CACC,gI,sCAEC,e,CAED,oQACA,I,uBAED,uB,kvBAKA,sMACA,uMACA,0GACA,0GACA,6B,SAEC,6C,CAED,iBACA,kDAEI,YACJ,8H,sCAEC,e,CAED,yCACC,6B,SAEC,6C,CAED,iBACA,kDACA,gI,sCAEC,e,C,qBAIF,8F,QAGC,gK,QAED,uJAEA,uB,o0BCvZA,4DACI,a,sCACF,mCACA,Y,C,e,mC,2D,CAMF,qDACA,8F,uC,2F,CAIA,qN,qE,qyBAKI,YACJ,oOACI,aAAH,mE,OACC,kD,OACC,wK,qBAEA,U,O,O,2HAKH,iQACC,4HACA,0DAGA,4D,OACC,2H,O,yB,ujCAWF,i1B,O,SAEC,iDACA,mB,MAEC,mB,CAED,aACA,a,O,SAGA,iDACA,2BACA,a,O,SAGA,iDACA,2BACA,a,O,wBAGA,8BACA,iDACA,mCACA,a,O,SAGA,iDACA,aACA,a,O,SAGA,iDACA,4BACA,a,O,SAGA,iDACA,aACA,a,O,SAGA,iDACA,eACA,a,Q,SAGA,iDACA,mCACA,a,Q,SAGA,iDACA,eACA,a,Q,SAGA,iDACA,mCACA,a,Q,SAGA,iDACA,wBACA,a,Q,SAGA,iDACA,wBACA,a,Q,SAGA,iDACA,4BACA,oCACA,kBACA,a,Q,S,e,eAKE,2D,CAED,a,CAED,iDACA,oCACA,kBACA,a,Q,4BAOD,+Y,QACC,iDACA,oB,6BAEC,oB,CAED,c,e,QAKA,iDACA,mC,e,QAIA,iDACA,oC,e,QAIA,iDACA,yD,e,QAIA,iDACA,gD,e,QAIA,iDACA,6IACA,qCACA,mB,e,QAIA,iDACA,sDACA,kHACA,qBACA,qCACA,mB,e,QAIA,iHACA,a,Q,8B,UAME,6C,CAED,a,CAED,mP,e,Q,8BAKC,a,CAIE,8KAAH,sC,QACC,iDACA,+HACA,sE,QACC,uH,QAED,qCACA,mBACA,a,QAID,mP,e,QAGA,uHACA,a,QAGA,kM,Q,Q,qrCAOD,0BACA,qDACA,4sB,O,SAEK,kCACH,mB,qGAEC,mB,CAED,aALsB,W,C,e,O,SASnB,kCACH,0HADsB,W,C,e,O,SAKnB,oCACH,+GADsB,a,C,e,O,SAKnB,oCACH,8HADsB,a,C,e,O,SAKnB,oCACH,+GADsB,a,C,e,O,SAKnB,oCACH,iHADsB,a,C,e,O,SAKnB,oCACH,8IADsB,a,C,e,O,SAKnB,oCACH,iHADsB,a,C,e,Q,SAKnB,oCACH,8IADsB,a,C,e,Q,SAKnB,oCACH,0HADsB,a,C,e,Q,SAKnB,oCACH,0HADsB,a,C,e,Q,SAKvB,iDACA,4BACA,kBACA,a,Q,SAGI,yCACH,sHACA,8IACA,8BACA,iDACA,qCACA,mBANsB,a,uBAQvB,a,Q,IAEA,wHACA,a,QAID,iDACA,oBACA,qCACA,mB,02BAgBA,6PACC,+HAIO,2B,IACP,oF,O,8BAEE,kD,C,c,OAGD,oP,OACC,qF,Q,O,OAIF,qDACA,mHACA,yBACA,iKAEA,iDACA,mBACA,oCACA,kB,yB,ugCAOD,2B,6BAEC,uC,CAED,0BACA,iHACA,qD,0FAEA,0N,OACK,uCACH,mBACA,uP,QACC,mB,QAED,aALsB,W,uB,e,OASnB,uCACH,kTADsB,W,uB,e,OAKnB,uCACH,mTADsB,W,uB,e,OAKnB,uCACH,yZADsB,W,uB,e,OAMnB,yCACH,maADsB,a,uB,e,OAKvB,iDACA,4BACI,UACJ,iE,QACC,uHACA,4P,uBAEA,2P,QAED,mBACA,a,QAGA,0HACA,2R,QACC,oGACA,6I,QACC,wF,Q,QAIE,yCACH,gPADsB,a,uBAGvB,a,Q,OAID,iDACA,oBACA,qCACA,mB,uoBAII,YACJ,4BACA,yC,8H,0CAKC,uD,MAEA,mG,C,wHAKG,YACJ,kBACA,4BACA,6BACA,6BACA,0B,gHAII,YACJ,uBACA,4CACA,6CACA,6CACA,6CACA,6CACA,6CACA,6CACA,0B,sHChfA,yC,WAEC,c,CAED,iBACA,iJ,cAEE,I,oBAEA,I,MAEA,0B,sCAEC,I,MAEA,I,C,C,KAIH,c,0PAaA,8K,otBAOA,4FACA,iFACA,8F,MAEC,e,CAED,OACA,0LACA,6BACA,oJACI,kFAAH,mC,OACC,0X,OAED,wG,yBAED,8FACA,6CACA,2FACA,e,0uBAIA,8H,OACC,kM,OAED,aACI,+HACH,kH,wBAEA,mD,eAEC,U,CAED,+C,Q,wBAEC,kPACC,0CACA,e,2B,uBAGD,wF,QAd4B,W,qBAuB9B,e,ouF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,sH,qB,wB,qB,uB,oF,iC,wB,8B;sUCzFA,S,sI,cA6CC,4G,CAED,6D,6SAQA,2C,OACC,mGACA,8D,OACC,gG,O,OAGF,0F,6QAKA,yI,kH,UAQC,qE,CAED,mG,ke,4F,4F,4F,0D;kmBChFA,oB,qDA0BA,kBACA,kBACA,kBACA,iBACA,OACA,uB,kFAKA,kDACA,UACA,S,+DAG6B,U,+GAEK,U,mWAGlC,YACA,8EACA,wC,OACC,2CACA,iBACA,2C,OACC,kGACA,O,OAED,iB,OAED,+C,OACC,qBACA,wGACA,iB,O,gBAGA,8B,CAED,kB,8cAKA,cACA,wGACA,sC,qjBAKA,QACI,WACJ,SACA,4G,OACC,gM,qBAEA,iM,OAID,sBACI,kCACH,gIADwB,Y,CAGzB,gH,kBAGC,iC,CAGG,WACJ,6HACC,2GACA,4HACA,6HACA,6H,KAGD,e,wUCrGA,WACA,uCACA,gB,uEAIA,SACA,SACA,SACA,SACI,QACA,WACJ,wCACC,gC,UAQC,mB,8CAEA,mB,MAEA,IACA,IACI,mCACH,qlBACA,WAFmB,W,C,CAQrB,yFACA,wCAEA,yFACA,yCAEA,wFACA,yCAEA,yFACA,yCAEA,yFACA,wCAEA,yFACA,yCAEA,yFACA,yCAEA,yFACA,yCAEA,yFACA,wCAEA,yFACA,yCAEA,0FACA,yCAEA,0FACA,yCAEA,0FACA,wCAEA,0FACA,yCAEA,0FACA,yCAEA,0FACA,yCAIA,yFACA,wCAEA,yFACA,wCAEA,yFACA,yCAEA,yFACA,yCAEA,yFACA,wCAEA,wFACA,wCAEA,0FACA,yCAEA,yFACA,yCAEA,wFACA,wCAEA,0FACA,wCAEA,yFACA,yCAEA,yFACA,yCAEA,0FACA,wCAEA,yFACA,wCAEA,yFACA,yCAEA,0FACA,yCAIA,2EACA,wCAEA,2EACA,yCAEA,4EACA,yCAEA,4EACA,wCAEA,2EACA,wCAEA,2EACA,yCAEA,2EACA,yCAEA,4EACA,wCAEA,2EACA,wCAEA,2EACA,yCAEA,2EACA,yCAEA,yEACA,wCAEA,2EACA,wCAEA,4EACA,yCAEA,2EACA,yCAEA,2EACA,wCAIA,oFACA,wCAEA,oFACA,yCAEA,qFACA,yCAEA,oFACA,yCAEA,qFACA,wCAEA,oFACA,yCAEA,qFACA,yCAEA,oFACA,yCAEA,oFACA,wCAEA,qFACA,yCAEA,oFACA,yCAEA,qFACA,yCAEA,oFACA,wCAEA,qFACA,yCAEA,mFACA,yCAEA,oFACA,yCAEA,YACA,YACA,YACA,YAEA,kB,CAGD,SACA,SACA,SACA,S,i0B,4F,4F,oG,I,I;wjBC1PA,oB,qDA2BA,kBACA,kBACA,kBACA,iBACA,kBACA,OACA,uB,kFAKA,kDACA,UACA,S,+DAG6B,U,+GAEK,U,mWAGlC,YACA,8EACA,wC,OACC,2CACA,iBACA,2C,OACC,kGACA,O,OAED,iB,OAED,+C,OACC,qBACA,wGACA,iB,O,gBAGA,8B,CAED,kB,8cAKA,cACA,wGACA,sC,qjBAIA,QAEI,WACJ,SACA,4G,OACC,gM,qBAEA,iM,OAID,sBACI,kCACH,yIADwB,Y,CAGzB,gH,kBAGC,iC,CAGG,WACJ,6HACC,sHACA,6HACA,4HACA,kH,KAGD,e,8iBAKA,cACA,wGACA,sC,gxBAII,WACJ,wBACI,kCACH,yIADwB,Y,CAIzB,kBACA,gBACA,sCAEA,MACI,mCACH,mDAGA,4NAGA,c,UAIC,mS,CAX2B,iB,CAgB7B,kGAEI,WACJ,6HACC,gIACA,uIACA,sIACA,4H,KAGG,mC,SAGF,yFACA,I,MAEA,+L,CAN2B,iB,CAW7B,kGAEA,wI,eACC,6N,sBACA,6N,sBACA,4N,sBACA,kN,MAGD,e,4vBC5KI,WAEJ,iEACA,wCAGK,mCACH,aACA,ikBAFmB,W,CAKpB,0CAKA,KACA,gCACC,2CACA,iCACA,iCACA,0IACA,uDALa,a,CAOd,gCACC,2aACA,+HAEA,2CACA,iCACA,iCACA,0IACA,uDARa,a,CAUd,gCACC,2aACA,+HACA,wBACA,iCACA,iCACA,0IACA,uDAPa,a,CASd,gCACC,2aACA,+HACA,kDAEA,iCACA,iCACA,0IACA,uDARa,a,CAUd,gCACC,2aACA,+HACA,wBACA,iCACA,iCACA,0IACA,uDAPa,a,CAUd,YACA,YACA,YACA,aACA,aAEA,kB,CAGD,2E,u+B,4F,4F,I;0cCkFA,Y,iDAIA,gB,gDAIA,iB,qDAIA,iB,8D,I,YAMC,2B,kBAEA,qB,CAED,8B,+iB,4F,4F,4F,4F,4F,wC,uB;irB,4F,4F,4F,4F,4F,4F,2E,gD;kVC3K4B,kB,iEAO5B,qJACC,kNACA,qN,KAGD,0B,2OAUA,qK,oP,6EAcC,yB,CAGG,6HACH,mI,OAEC,4I,CAED,0I,OAEC,mJ,CAED,6HAT2B,W,CAY5B,+G,yC,iBAOC,2B,wBAEA,yC,uBAEA,yC,CAGD,gB,6BAKA,6BACA,OACA,yB,yR,4F,4F,4F,4F,kF;;uQ;o5OCjFA,+D,wB,wBAeA,a,gD,oC,wBAYA,W,gLC6OA,mK,gJAOsC,iB,6HACA,ob,yIAEtC,6HACA,6HACA,W,gTAMA,6BACA,mE,OACC,8G,O,wBAGA,4C,CAED,e,2LAOA,4J,yBAEE,S,C,KAGF,8B,sGC/Sa,Q,uDC4Hb,S,yWAIA,8tC,mSAoBA,a,mTAIA,6W,yPAUA,a,qUAIA,slB,uQASA,a,mTAIA,8V,yPASA,a,mTAIA,mW,yPAeA,a,ibAIA,s5D,yVAgBA,a,4TAIA,+H,OACC,mB,OAEG,IACJ,oDACK,QACJ,gO,OACC,mB,O,oEAIA,mB,CAED,mDACA,mB,qBAED,kB,gQAYA,a,yWAIA,wnC,mSAaA,a,mTAIA,uV,yPASA,a,mTAIA,oQ,sQCvPA,KACA,sJ,yD,cAGG,U,CAED,Q,C,K,WAID,M,CAED,S,uU,eAOC,yE,CAED,qG,sCAEC,qD,CAED,kB,oc,eAOC,yE,CAED,qG,sCAEC,qD,CAED,kB,oQAiDA,4J,gBAEE,oB,C,KAGF,kB,sVCpIA,kH,sCAEC,uD,CAED,yC,sCAEC,gE,CAEG,SAEJ,kL,oB,aAGE,W,oBAEA,2D,iCAEC,mD,uCAEC,mE,CAED,uB,sBAEC,W,C,C,C,KAKJ,0B,8QAcA,mDACA,4K,c,Y,kB,Y,S,0CAUI,a,C,mB,S,6BAKA,a,C,CAGE,QACJ,kK,gBAEE,OACA,M,C,M,MAID,0F,C,kBAGD,mE,kBAEA,oI,C,KAGF,S,8BAII,I,yBAEH,c,C,yBAGA,c,C,yBAGA,c,C,0BAGA,c,C,4BAGA,e,CAED,S,4SAOA,kH,sCAEC,uD,CAED,yC,sCAEC,gE,CAEG,SACJ,4C,OACK,YACJ,qG,sCAEC,uB,C,OAGF,8B,sCAEC,uB,CAED,2B,kPAII,SAEJ,+K,gB,YAGE,W,mBAEA,uD,iD,uBAGM,YACJ,mC,sCAEC,iB,C,CAGF,gD,uCAEC,6D,CAED,c,uCAEC,gB,C,C,C,KAKJ,oB,mEAII,QAIJ,4K,oBAEE,OACA,M,C,KAGF,4K,yBAEE,a,C,W,YAIA,ud,mBAEA,0DACA,0BACA,U,C,KAGF,iB,8NAMA,wGACA,yGACA,0C,6sBAIA,sB,sCAEC,oB,CAED,2CAEC,SACA,KAED,4FACA,mBACI,8IACH,qBACA,8C,OAF+B,qI,O,0DAO9B,+F,oH,2BAMK,6IACH,0UAD4B,a,CAG7B,sHACA,8GACA,gB,C,CAlB6B,4IAsBhC,e,u8BAIA,sB,sCAEC,oB,CAED,2CACI,SACJ,oBACI,2IACH,mBACA,8C,OAF+B,mI,O,sHAM1B,6IACH,0UAD4B,a,CAG7B,w8CACA,gB,CAV8B,0IAahC,e,saChOA,oBACA,iBACA,8FACA,8FACA,8FACA,8FACA,S,uDAQA,mBACA,4FACA,4FACA,4FACA,4FACA,S,6D,8BAQC,c,C,aAGA,c,CAED,uFACA,mBACA,UACI,kC,SAEF,qGACA,YAHiB,W,S,CAMlB,+IACA,IAPkB,W,CASnB,S,2EAuBA,6D,8IAKG,U,kBACF,sG,CAED,kC,yIAKG,U,kBACF,kH,CAED,0H,uJAMA,sO,gLAMG,U,kBACF,0S,CAED,sO,oKAMG,U,kBACF,2M,CAED,yO,2JAYA,oJ,uHAUI,0C,8GAEF,a,CAFsB,W,CAKxB,Y,gD,kBAOC,S,C,sPAMA,0B,CAED,c,kH,kBAOC,mX,C,mBAGA,S,CAED,c,6HAcG,U,eACF,c,C,O,wGAIA,U,8GAEA,U,MAEA,U,C,mHAKD,iJ,iBAEE,a,C,KAGF,Y,8D,2HAMC,kB,C,8HAGA,kB,CAED,Y,uBAEC,c,CAED,mBACI,kCACH,2SADkB,W,CAGnB,S,4IAUA,I,kBAGC,c,CAIE,U,kBACF,ma,C,wBAMA,wE,CAID,KACA,KACI,mCACH,IACA,0PACC,W,C,2BAGA,IACA,IACA,I,CARuB,W,C,gBAaxB,KACA,K,CAID,sBAGI,mC,UAEF,mBACA,I,UAEC,M,C,cAGD,gB,CAED,kPAVwB,W,CAYzB,yB,qHAIA,sCACA,qJACC,2U,KAED,yB,4B,kBAOC,S,CAED,kB,wD,kBAOC,6C,C,4CAGA,8G,CAED,qD,4J,kBAOC,eACA,iB,CAED,oBACA,Q,eAEC,kC,CAED,UACA,iB,6D,0BAQC,+H,C,sCAGA,2O,C,sCAGA,2O,CAED,a,+G,+BAKC,a,CAED,qJ,8GAEE,a,C,KAGF,Y,wCAUI,IACJ,qJ,YAEE,WACA,a,CAID,iDACC,WACA,iC,C,eAIA,S,CAEG,W,sC,8GAEF,S,CAFsB,W,CAKxB,M,CAED,S,qEAOA,qC,W,4B,CAIA,Y,sH,kBAMC,c,CAED,qE,uIAIG,a,eACF,O,wB,sC,C,CAKD,S,Y,Y,uB,sC,C,mB,kBAQE,kB,C,M,sC,CAKF,Y,wEAKA,sBACG,U,kBACF,I,CAED,Y,uBAEC,a,CAEG,kC,+ZAEF,a,CAFiB,W,CAKnB,Y,yHAIkC,e,4HASlC,sB,2BAEC,c,CAED,Q,WAEC,iC,CAED,kC,mGAKI,YACA,kC,iBAGF,c,C,Q,8BAIC,c,CAED,kB,CAED,6B,cAEC,c,CAED,kBACA,4FAhBwB,W,C,sBAmBxB,c,CAED,+B,6JAQA,oBACA,K,MAGC,sB,C,gEAKA,IACA,kB,iB,4B,C,CAQD,IACA,+BAEC,+B,iB,qC,C,yC,qB,qC,C,gB,qC,CAeC,S,gB,qC,CAIA,gMACA,+MACA,+MACA,+MACA,KACA,WACA,M,CAID,sHACA,6HACA,WAGA,mB,iBAEC,M,C,8C,qC,CAOD,kB,yB,S,qC,CAOC,IACA,kB,iBAEC,M,C,C,C,sB,qC,C,S,Q,qC,CAeF,WACI,0CACH,sNAD8B,a,CAG3B,kDACH,sGADyC,a,C,e,qC,C,gC,oCAgBvC,yC,kB,aAGF,a,mBAEA,qBACA,S,CANsB,W,CASxB,c,sEAYA,U,QAEC,mD,CAED,qDACA,IACA,Q,eAEC,KACA,qB,CAED,8B,4DAEC,mD,CAED,oBACA,8C,0EC3oBmC,W,sH,eAIlC,c,CAED,W,mBAEC,oB,CAED,S,qoBCwEA,iE,wD,GAGA,gBAGA,WACA,qC,O,+J,OAIA,sD,OAEC,WACA,sC,O,kK,O,WAIA,gF,Q,qK,Q,uBAQC,gE,Q,wK,Q,qK,Q,QAKD,qBACA,0B,qBAEA,oBACA,8C,Q,wK,QAGA,8C,Q,yK,Q,OAID,4D,Q,uK,QAGA,4D,Q,uK,QAIA,yB,0D,8bAOG,W,QACF,qD,MAEA,I,CAED,Y,6D,kBCtKC,S,CAED,+CACA,qJ,QAEE,gB,CAED,6DACA,yD,KAED,yB,kGC2EA,IACA,OACA,sB,wP,eA0VC,oB,CAED,O,kBAEC,gB,CAED,0E,OACC,2G,OAED,wE,O,6CAEE,W,MAEA,U,CAED,qG,OAED,wGACA,e,uhBAmBG,2CAAH,mC,OACC,2CACA,qJ,OAED,4CACA,+J,omBAQG,2CAAH,mC,OACC,2CACA,uJ,OAED,4CACA,iK,0UAmBqC,oC,iH,eASpC,c,CAED,Q,mBAEC,2B,CAED,S,iHAGsC,a,uHACA,a,uHCrgBd,e,gJAGxB,SACA,IACI,0C,0GAEF,mCACA,OAEA,WACA,iBACA,0CACA,wBACA,Y,CATwB,W,C,8BAczB,oBACA,6BACA,O,CAED,Y,kYAIG,oC,MACF,kB,CAED,iE,OACC,iBACA,uJ,SAEC,oC,C,wEAGA,a,C,OAGF,oCACA,kB,iRAIA,0B,sCAEC,iB,CAED,uE,oCAmBA,IACI,yC,4BAEF,W,CAFsB,W,CAKxB,S,wCAKA,gCACA,IACA,IACI,yC,4B,QAGD,mHACA,W,CAED,S,CANsB,W,C,eAUvB,iHACA,W,CAED,wB,sEAWA,IACI,mFACH,sD,gB,iD,CADoD,W,C,U,0C,C,6C,sEAerD,IACI,yC,6CAEF,gBACA,4C,oDAEA,gBACA,oD,mDAEA,gBACA,oD,MAEA,M,C,gB,0C,CAXqB,W,C,U,0C,C,6C,wC,yCA6BtB,gB,CAED,6CACA,gC,oC,UAcC,U,CAEG,YACJ,KACA,gCACC,yFACA,sHACA,WACA,I,CAGD,qGACA,8C,sC,UAMC,qB,CAEG,mCACH,4C,QAEC,yD,CAHkB,W,CAMpB,S,kCAgBA,WACI,W,+B,wBAEF,M,CAFe,W,CAKjB,S,22T,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,kI,qDR6E6B,6C,iCACA,+C,gCACA,6C,iCACA,6C,gCACA,0D,iCACA,6C,iCACA,mD,gCACA,4C,iCACA,oD,M,2NSlT5B,mG,kH,sC,4C,2C,sC,gD,oE,8G,yC,mC,8B,iC,0B,+D,4D,iB,mB,qB,O,sC,4B,mC,6C,+E,kE,yB,qB,qgC,yF,K;wrBCsJD,oC,uEAKA,gC,0I,6BAOC,S,iDAEA,S,iDAEA,S,CAED,S,wIAKA,iB,uIAMA,oBAEA,oDACA,6FACA,qDACA,+FACA,sDACA,+FACA,uDACA,+FACA,kDAEA,yB,8IAKA,yE,sJAKA,4D,8KAMA,wDACA,Y,mdASA,8C,OACC,yIACA,e,OAGD,IACA,Q,gCAGC,iB,0GAEA,OACA,iB,CAGD,YAEA,wJACC,qC,OACC,qI,OACC,sIACA,e,OAED,iB,OAGD,+C,QACC,2IACA,e,QAGD,0M,QAEC,0IACA,e,QAGD,wI,sCAEC,e,CAGD,iBACA,oG,yBAGD,e,0ZAKA,+BACA,Y,oWAMA,qD,OACC,kLACA,e,OAED,wBAEA,e,oSAKA,6D,0WAOA,iH,O,SAEC,gD,OACC,yH,OAED,uH,O,SAGA,+I,OAGD,oJ,4dA4CA,oIACA,kB,yVAkGA,uHACA,wBACA,uBAEA,e,iXAKA,YACA,kGACA,kHACA,mHAEA,e,qwC,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,mB,mB,sC,uB,mB,gK,gK,gK;2mBCjdA,oBACA,oB,qD,aA2CC,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,iBACA,kB,MAEA,kBACA,iBACA,iBACA,kBACA,kBACA,kBACA,kBACA,kB,CAED,OACA,uB,kFAKA,wDACA,UACA,S,qCAKA,wDACA,aACA,UACA,S,kE,aAKC,U,CAED,U,+GAGkC,U,mWAGlC,YACA,8EACA,wC,OACC,2CACA,iBACA,2C,OACC,kGACA,O,OAED,iB,OAED,+C,OACC,qBACA,wGACA,iB,O,gBAGA,8B,CAED,kB,8cAKA,cACA,wG,YAEC,sD,CAED,sC,8jBAIA,QAEI,WACJ,SACA,4G,OACC,gM,qBAEA,iM,OAID,sBACI,kCACH,yIADwB,Y,CAGzB,gH,kBAGC,iC,CAGD,a,YAEC,4B,CAGG,WACJ,qJACC,sHACA,6HACA,4HACA,kH,KAGD,e,weC9FI,WACJ,wGACA,wCAGK,mCACH,aACA,ikBAFmB,W,CAIhB,oCACH,6FACA,2GACA,kGACA,yGACA,oSALoB,W,CAQrB,wFAEI,qCACH,kYAEA,yMAEA,MACA,MACA,MACA,aACA,MACA,MACA,MACA,aAZmB,a,CAepB,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aAEA,kB,CAGD,wH,m4B,4F,4F,2rB,I;koBC9GA,oBACA,oBACA,qBACA,qB,uD,e,YAqEC,0CACA,yCACA,yCACA,yCACA,0CACA,0CACA,0CACA,0C,mBAEA,yCACA,0CACA,wCACA,0CACA,yCACA,wCACA,0CACA,yC,mBAEA,yCACA,0CACA,yCACA,0CACA,0CACA,0CACA,wCACA,yC,MAEA,0CACA,0CACA,0CACA,0CACA,0CACA,yCACA,yCACA,yC,CAED,OACA,uB,kFAKA,oDACA,UACA,S,qCAKA,qDACA,UACA,S,4CAKA,qDACA,UACA,S,4CAKA,oDACA,UACA,S,oE,e,aAMC,U,mBAEA,U,kBAEA,U,MAEA,U,C,+GAIiC,W,mWAGlC,YACA,8EACA,wC,OACC,2CACA,iBACA,4C,OACC,kGACA,O,OAED,iB,OAED,gD,OACC,sBACA,wGACA,iB,O,gBAGA,8B,CAED,kB,udAKA,oDACA,YACA,wG,e,YAGC,sD,mBAEA,sD,mBAEA,sD,MAEA,sC,C,4nBAMD,QACI,WACJ,SACA,8G,OACC,kM,qBAEA,kM,OAID,sBACI,mCACH,0IADyB,Y,CAG1B,iH,kBAGC,iC,CAGD,a,qBAEC,4B,CAGG,WACJ,qJACC,sIACA,6IACA,6IACA,6IACA,6IACA,6IACA,4IACA,uH,KAGD,e,miBAKA,oDACA,UACA,0FACA,yG,uiBClKI,WACJ,wGACA,yCACK,mCACH,aACA,0kDAFmB,W,CAKhB,sCACH,kGACA,wWACA,mGACA,uWAEA,gbANoB,a,CASrB,wFAEI,qCACH,0hCAEA,2wBAEA,MACA,MACA,MACA,kDACA,MACA,MACA,MACA,kDAZmB,a,CAepB,uDACA,uDACA,uDACA,uDACA,uDACA,uDACA,uDACA,uDAEA,mB,CAGD,wH,44B,4F,4F,qtF,I;y3BCrHA,mI,wUAQA,mI,wUAQA,mI,wUAQA,mI,mTAQA,4G,+RAOA,4G,+RAOA,4G,+RAOA,4G,2/DCrCI,6PAEA,mCAKH,6UACA,mVACA,mVACA,mVACA,mVACA,iKACA,iKACA,iKACA,iKACA,iKAEA,4EACA,4EACA,0GACA,6EACA,0GACA,6EACA,0GACA,6EACA,0GACA,uQACA,2HACA,4HACA,4HACA,4HAEA,6EACA,yGACA,6EACA,0GACA,6EACA,yGACA,4EACA,0GACA,4EACA,0GACA,4HACA,4HACA,4HACA,2HACA,2HAEA,6EACA,0GACA,4EACA,yGACA,4EACA,yGACA,6EACA,0GACA,6EACA,yGACA,4HACA,2HACA,2HACA,4HACA,4HAEA,4EACA,0GACA,6EACA,0GACA,6EACA,0GACA,6EACA,yGACA,4EACA,0GACA,2HACA,4HACA,4HACA,4HACA,2HAEA,6EACA,0GACA,6EACA,yGACA,4EACA,yGACA,4EACA,yGACA,6EACA,0GACA,4HACA,4HACA,2HACA,2HACA,4HAGA,mVACA,mVACA,mVACA,mVACA,mVACA,iKACA,iKACA,iKACA,iKACA,iKAEA,4EACA,6EACA,0GACA,4EACA,0GACA,6EACA,0GACA,6EACA,0GACA,sRACA,4HACA,2HACA,4HACA,4HAEA,6EACA,yGACA,6EACA,0GACA,4EACA,yGACA,6EACA,0GACA,4EACA,0GACA,4HACA,4HACA,2HACA,4HACA,2HAEA,6EACA,0GACA,4EACA,yGACA,6EACA,yGACA,6EACA,0GACA,4EACA,yGACA,4HACA,2HACA,4HACA,4HACA,2HAEA,6EACA,0GACA,4EACA,0GACA,6EACA,0GACA,4EACA,yGACA,6EACA,0GACA,4HACA,2HACA,4HACA,2HACA,4HAEA,4EACA,0GACA,6EACA,yGACA,6EACA,yGACA,4EACA,yGACA,6EACA,0GACA,2HACA,4HACA,4HACA,2HACA,4HAGA,mVACA,mVACA,mVACA,mVACA,mVACA,iKACA,iKACA,iKACA,iKACA,iKAEA,4EACA,6EACA,0GACA,6EACA,0GACA,4EACA,0GACA,6EACA,0GACA,sRACA,4HACA,4HACA,2HACA,4HAEA,6EACA,yGACA,4EACA,0GACA,6EACA,yGACA,6EACA,0GACA,4EACA,0GACA,4HACA,2HACA,4HACA,4HACA,2HAEA,4EACA,0GACA,6EACA,yGACA,4EACA,yGACA,6EACA,0GACA,6EACA,yGACA,2HACA,4HACA,2HACA,4HACA,4HAEA,6EACA,0GACA,4EACA,0GACA,6EACA,0GACA,4EACA,yGACA,6EACA,0GACA,4HACA,2HACA,4HACA,2HACA,4HAEA,6EACA,0GACA,6EACA,yGACA,4EACA,yGACA,6EACA,yGACA,4EACA,0GACA,4HACA,4HACA,2HACA,4HACA,2HAGA,mVACA,mVACA,mVACA,mVACA,mVACA,iKACA,iKACA,iKACA,iKACA,iKAEA,4EACA,4EACA,0GACA,4EACA,0GACA,4EACA,0GACA,4EACA,0GACA,sRACA,2HACA,2HACA,2HACA,2HAEA,4EACA,yGACA,4EACA,0GACA,4EACA,yGACA,4EACA,0GACA,4EACA,0GACA,2HACA,2HACA,2HACA,2HACA,2HAEA,6EACA,0GACA,6EACA,yGACA,6EACA,yGACA,6EACA,0GACA,6EACA,yGACA,4HACA,4HACA,4HACA,4HACA,4HAEA,6EACA,0GACA,6EACA,0GACA,6EACA,0GACA,6EACA,yGACA,6EACA,0GACA,4HACA,4HACA,4HACA,4HACA,4HAEA,6EACA,0GACA,6EACA,yGACA,6EACA,yGACA,6EACA,yGACA,6EACA,0GACA,4HACA,4HACA,4HACA,4HACA,4HA9WmB,W,C,wBC5BpB,qBACA,qBACA,qBACA,qB,8MCsEA,mI,uLCzD6B,c,gHAGI,qB,uHAIjC,eACA,S,gIAQA,cACA,sCACC,2RACA,iBACA,iB,CAGD,OAEA,cACA,sCACC,6IACA,iBACA,iB,C,gGAOkC,iC,yBAGA,iC,yBAGA,iC,yBAGA,iC,yBAGC,gC,onB,4F,4F,4F,4F,4F,4F,6B,mrB,8B;8bC/DpC,iH,sCAEC,kB,CAED,uG,gcAQG,6CAAH,mC,OACC,+FACA,2B,OAED,+GACA,+G,sCAEC,kB,CAED,oH,wbAMA,iH,sCAEC,kB,CAED,uG,icAQG,6CAAH,mC,OACC,yFACA,2B,OAED,+GACA,+G,sCAEC,kB,CAED,oH,0X,4F,4F;4S,4F,4F,4F;+S,4F,4F;sbChDI,kKACJ,YACA,YACA,IACA,O,oBAEE,e,C,oBAGA,e,CAED,mGAGA,IACA,0CACC,W,C,mBAGA,oH,qBAEC,K,C,CAGF,uB,yPAIC,K,CAED,eACA,e,qB,krB,iBC3BA,4BACA,kB,CAED,gI,OACC,mB,OAIG,oCACA,IACJ,cACA,6CACC,gGACA,W,qBAIG,oCACJ,+BACA,gIACC,iB,qBAMG,wNACJ,6MACA,oGACA,uGACA,IACA,QAEK,IACJ,eACA,oDACC,oGACA,W,uB,UAIA,YACA,kB,CAGD,8JAEA,iHACA,uHACA,uHACA,I,uB,2e,4F,4B,4B;4yCCVD,+J,uWAkBA,MACA,WACA,qGACA,e,+aAKA,MACA,WACA,0GACA,e,wbAKA,MACA,WACA,4GACA,e,0eAMA,MACA,WACG,2G,OACF,mE,CAED,e,ySAKA,qC,+XAQG,2G,OACF,2B,CAED,2C,OACK,4DACJ,WACG,+G,OACF,2B,CAED,6F,OAED,qB,8TAKA,oC,8GAKA,wC,iHAKA,0B,oHAOA,oBACA,aACA,QACA,S,2RAIA,sJACA,UACA,e,uOAKA,8BACA,S,yGAKA,8BACA,S,6RAMA,4GACA,e,mPAMA,mB,kSAMA,6GACA,e,uPAMA,oB,2TAKA,oBACA,oBACA,QACA,6GACA,e,ycAMA,oBACA,oBACA,QACA,6GACA,e,gQAKA,oBACA,Q,iBAEC,iB,MAEA,gC,CAED,S,uTAMA,oBACA,oBACA,QACA,6GACA,e,sfAKA,oBACA,oBACI,iCACJ,QACA,yMACA,gGACA,e,wdAKA,oBACA,QACA,uHACA,e,8aAMA,oBACA,QACA,kGACA,e,0bAmBA,oBACA,QACA,4MACA,e,obAQA,oBACA,QACA,gH,uaAMA,oLACA,e,sPAQA,+G,yIAKA,kBACA,cACA,iB,SAGC,sC,C,eAIA,mBACA,6BACA,I,CAED,oB,0I,qCAQC,8C,C,SAIA,sB,CAED,gB,oBAEC,+C,CAED,iB,wTAIA,mH,+aAIA,uH,6RAOA,kBACA,gB,QAEC,qB,C,oBAGA,0D,CAED,mBACA,uCACA,S,wTAOI,I,SAEH,sB,CAED,4GACA,e,4PAMA,c,SAEC,iB,CAED,S,qIAOA,kBACA,cACA,Y,QAEC,I,CAED,I,QAEC,I,C,oBAGA,0D,CAED,mBACA,8BACA,S,mIAOA,uB,4WAUA,cAIA,kCAEI,oCACJ,OAEK,YACJ,sHACA,mDAMA,+B,gCAEC,c,C,qBAIF,eACG,iB,eACF,mC,CAED,e,ge,iCAOC,yD,CAED,gBACA,gG,8nH,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,8F,8F,4B;8/GCtcA,2CACC,4F,K,4BAKD,MACA,kB,0CAIA,2CACC,uR,K,0CAKD,2CACC,uR,K,sCAKD,2CACC,sL,K,kDASG,YACJ,KACA,2CACC,oR,KAED,2CACC,8Q,K,kCAKG,kBACJ,0GACA,8KACA,+KACA,S,oCAII,kBACJ,0GACA,8KACA,+KACA,+KACA,S,6GAIA,QACA,qCACA,qCACA,sCACA,sCACA,sBACA,sCACA,sCACA,sCACA,uFAEI,YACJ,kEACA,8EACA,sEACA,kEACA,qDACA,sEACA,kEACA,qDACA,sEACA,kEACA,qDACA,yEACA,kEACA,wDACA,yEAEA,kEACA,wDACA,yEACA,kEACA,wDACA,yEACA,kEACA,wDACA,yEACA,kEACA,wDACA,yEACA,kEACA,wDACA,yEAEA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yD,oCA2BI,YAEJ,uDACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCACA,oCAGA,uDAGA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,8CACA,uDACA,gCACA,uDAQA,qDACA,qDACA,sDACA,sFACA,qDACA,sDACA,sFACA,qDACA,sDACA,sFACA,sDACA,uDACA,uFACA,sDACA,uDACA,uDACA,sDACA,sDACA,uDACA,uFACA,sDACA,uDACA,uFACA,sDACA,uDACA,uFACA,sDACA,uDACA,uFACA,sDACA,uDACA,uD,8BAII,YACJ,QACA,mB,sCAII,YACJ,QACI,IACJ,wHACC,c,KAED,6BACA,6BACA,6BACA,uB,sCAWA,2CACC,uL,K,6vBAgCD,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,qBACA,qBACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,gBACA,gBACA,cACA,cACA,cACA,cACA,cACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,4CACA,4CACA,6CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,6CACA,4CACA,6CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,2CACA,4CACA,2CACA,4CACA,2CACA,6CACA,4CACA,6CACA,4CACA,6CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,2CACA,4CACA,2CACA,6CACA,4CACA,6CACA,4CACA,6CACA,4CACA,6CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,2CACA,6CACA,4CACA,6CACA,4CACA,6CACA,4CACA,6CACA,4CACA,6CACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACA,ycACI,aASJ,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAMA,qEACA,qFACA,6EAIA,qEACA,4DACA,6EAIA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2D,ycAWA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,cACA,eACA,eACA,eACA,eACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,4CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,2CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACI,aAEJ,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,qFACA,6EAEA,qEACA,4DACA,6EAEA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2D,ueAcA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,cACA,eACA,eACA,eACA,eACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,2CACA,2CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,2CACA,2CACA,2CACA,2CACA,4CACA,4CACA,4CACA,2CACA,2CACA,4CACA,4CACA,4CACA,4CACA,2CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,4CACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACA,6PACA,0MACI,aAEJ,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDACA,yDAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,4DACA,6EACA,qEACA,4DACA,6EAEA,qEACA,qFACA,6EAEA,qEACA,4DACA,6EAEA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2DACA,2D,kDAII,4GACA,IAEJ,QACA,QACI,kCACH,QADiB,W,CAGlB,UACA,UACA,QACA,UACA,QACI,kCACH,QADiB,W,CAGlB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,oCACH,QADmB,W,CAGpB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,kCACH,QADiB,W,CAGlB,U,8CAII,iFACA,IAEJ,QACI,kCACH,QADiB,W,CAGlB,QACI,kCACH,QADiB,W,CAGlB,UACA,UACA,QACI,kCACH,QADiB,W,CAGlB,UACA,QACI,kCACH,QADiB,W,CAGlB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,oCACH,QADmB,W,CAGpB,UACA,QACI,mCACH,QADkB,W,CAGnB,UACA,QACI,kCACH,QADiB,W,CAGlB,U,mQAIA,kBACA,8C,QAEE,W,CAED,uN,yBAED,UACA,e,mRCt7BA,QACA,QACA,Q,mHAII,YAEJ,YACA,YACA,YACA,gBACA,UACA,gBACA,gBACA,cACA,gB,oIAII,iFAEJ,UACA,YACA,YACA,QACA,uE,oHAIA,QACA,QACA,QACA,Q,8GAIA,YACA,YACA,YACA,Y,mHAII,4CACJ,kBACA,Y,yHAIA,qBACA,sBACA,YACA,gB,iIAIA,YACA,YACA,Y,gJAII,iFAEJ,UACA,YACA,YACA,QACA,uE,kKAII,uI,wBAGH,a,CAED,UACA,QACA,UACA,UACA,YACA,YAEA,QACA,UACA,UACA,cACA,cAEA,YACA,cACA,cAEI,sDAEJ,UACA,UACA,U,cAEC,U,cAEC,a,CAED,cAGA,UACA,4HACC,6F,K,C,gIAKD,Y,CAGD,gBACA,Y,4TAIA,ud,sQAUA,gBACA,gBACA,gB,uIAIA,gBACA,gBACA,gBACA,gB,0HAIA,aACA,cACA,W,oHAII,YAEJ,gBACA,gBACA,qBACA,sBACA,kBACA,gBACA,cACA,gBACA,gBACA,cACA,c,wHAII,YAEJ,gBACA,gBACA,sBACA,qBACA,kBACA,gBACA,cACA,gBACA,gBACA,cACA,c,6HAII,YAEJ,gBACA,gBACA,qBACA,sBACA,mBACA,cACA,gBACA,gBACA,cACA,c,uIAII,YAEJ,gBACA,gBACA,sBACA,qBACA,mBACA,cACA,gBACA,gBACA,cACA,c,kIAOA,wBACA,0BACA,oB,sHAKA,uBACA,uBACA,kB,4GAMA,aACA,cACA,QACA,U,oHAKA,wBACA,0BACA,cACA,kB,sHAKA,uBACA,uBACA,YACA,gB,yFA6GA,mBACA,YACA,wB,4BAKA,qB,8CAII,4CACJ,QACA,4BAEA,SACI,kCACH,0LADyB,W,CAG1B,SACA,a,gEAUI,YAEJ,yIACC,qHACA,6I,KAKD,IACI,mCACH,4KACA,0GACA,yLAHmB,W,CAKpB,0BAGA,SACI,4CACA,sDACA,mCACH,+KACA,gBACA,gBAH0B,W,CAMvB,4CAEJ,YACA,kBACA,YACA,kBACA,YACA,kBACA,YACA,gBAEI,mCACH,+KACA,gBACA,gBAH0B,W,C,4CAQ3B,QACA,4BAGA,SACI,kCACH,kHADyB,W,CAKtB,sDACJ,SACA,a,sEAYI,sDACA,sDACA,4CACA,sDACA,IAGA,YACJ,yIACC,qHACA,6I,KAID,IACI,mCACH,4KACA,0GACA,yLAHmB,W,CAKpB,0BAII,YACJ,iBACI,kCACH,wFACA,gBACA,sGAHkB,W,CAOnB,SACA,mBACA,WAEI,oCAGH,kBACA,YACA,kBACA,YACA,kBACA,YACA,kBACA,YAGA,gBACA,4FACA,WAfmB,W,CAkBpB,gB,yDCvgBI,YACJ,gBACA,mC,uHAIA,U,qIAII,YACJ,gBACA,4B,4I,uBAKC,4C,CAED,iB,0TAIA,kH,kbAIA,sH,sRAQI,sDACJ,gBACA,gCACA,2C,yKAEE,a,C,KAGF,Y,kHAKA,mCACA,S,6GAKA,mC,8GAKA,YACA,S,4GAKA,gBACA,S,+GAOA,U,gUAMA,c,gBAEC,Y,CAGD,OAEK,YACJ,sH,kBAEC,kBACA,8C,C,+BAGA,c,C,eAeA,W,eAEC,c,CAED,+B,CAMG,kEACJ,W,eAEC,+B,C,qB,qSASE,YACJ,gBACA,Y,kBAEC,qD,CAED,kD,0HAIA,oBACA,oBAEI,sDACA,sDAEJ,iBACA,cACA,mBAIA,S,8HAIA,oBACA,oBAEI,sDACA,sDAEJ,iBACA,cACA,mBAIA,S,kHAMA,+BACA,S,gIASA,8BACA,iBACI,YACJ,kDACC,2L,K,mCAIA,W,MAEA,gC,CAID,S,sHAcA,Y,0HAKA,gB,qHAKA,U,wSAQA,iHACA,UACA,e,iPAMA,U,uHAKA,kEAEA,S,8GC9PA,e,0SAKA,qH,sbAIA,yH,ibAIA,0H,uaAIA,4G,+c,mCAOC,W,CAED,sGACA,wGACA,wBACA,yBACA,yBAEA,qNACA,e,kQAKA,2BACA,S,42K,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,uN,qP,mH,8C,yE,0H,yH,sH,me;24D,uBCpBC,8D,CAGD,uCACA,aACA,+BAEI,oCACH,mGADiC,W,CAG9B,yCACH,8HAD6B,W,CAG9B,S,iFAMA,YACA,S,4HAOA,cACA,S,qN,kBAiCC,O,CAGD,gBACA,0GACA,8BAEC,yXAEA,gOACA,gOACA,+NACA,qNAEA,WACA,W,CAGD,iB,UAEC,O,CAGD,iI,UAEC,6I,CAGD,4OACA,4O,K,aAIC,2O,wBAEC,qI,C,mB,wBAIA,qIACA,qI,C,C,mIAOF,wCACA,cACA,yB,6e,0C,sC,CAkBA,0C,OACK,IACA,oDACH,mMACA,qBAFoC,W,CAIrC,WACA,iB,aAEC,kB,CAED,wCACG,mI,0C,sC,CAGH,S,OAID,0CACC,M,gBAEC,YACA,sE,CAED,4CACG,iO,0C,sC,CAGH,WACA,iB,qBAIG,0CACH,0LADuB,W,CAGxB,iBACA,mBACA,kB,+hBAOA,8E,OACC,4DACA,0JACA,S,OAED,mB,kNASA,oD,mF,mBAOC,+G,CAED,8G,qHAUA,sF,mTAOA,IAGA,0PACC,W,CAGD,0CAEK,WACJ,gBAEA,0C,kB,6B,0D,CAKE,gCACA,M,CAED,mGAEA,WAEA,0PACC,W,C,uB,I,yB,0D,kB,kB,iE,C,2H,gE,CAoBC,WAEA,0PACC,W,C,C,gBAKD,a,CAED,iCACA,M,CAED,iL,yF,gE,C,KAOD,kGACA,0G,K,aAGC,+FACA,OAGA,+F,4B,4D,CAIA,OAGA,+F,6C,4D,C,mBAPA,+F,4B,4D,CAIA,OAGA,+F,6C,4D,C,mBAAA,+F,6C,4D,C,CAKD,iBACA,kB,C,4C,mJAYD,8BACA,Y,uIAKA,uCACA,qDACA,2B,oiB,oBAkBC,sBACA,yB,0C,C,0C,sC,CAWD,8EACC,wG,QAEC,I,C,WAGA,O,CAED,kJACA,qB,qB,a,mCAMK,IACJ,mFACA,SACA,WACA,qCACA,sBACA,yB,0C,0C,C,0C,sC,C,CAQD,gB,6CAEC,yB,C,sC,CAMF,qGACA,qG,gBAEC,yFACA,qCACA,sBACA,yB,MAEA,2E,CAED,qBACA,uE,0C,oqBASA,iHACA,iCACC,IACA,oK,6B,eAGG,mG,CAED,W,C,K,QAID,kB,CAGD,iH,qBAED,kB,uRAKA,qF,mF,mBAQC,sG,CAGD,qG,mmF,4F,4F,uF,uF,+D;wwBCldA,8FACA,gCACA,wMACA,qB,sXAKA,gCACA,gH,oXA8GG,wG,sCACF,e,CAED,sG,+S,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F;g3JClGA,IACA,uCACA,iJ,UAEE,S,C,KAGF,c,yOAOA,kI,OACC,oB,OAED,mBACA,0G,0bAOA,kI,OACC,e,OAED,mBACA,sG,kgBAWA,mB,uBAEC,mB,C,2GAGA,mB,CAGD,iN,sCAEC,mB,CAGD,0B,oDAEC,mB,C,oBAKA,kB,kCAEA,mB,CAED,kB,0SAKA,S,+VAOA,2G,WAEC,e,CAED,yN,sCAEC,e,C,aAIA,S,CAED,e,2eAOA,2G,WAEC,e,CAED,kH,sCAEC,e,CAED,e,wfASA,kV,sCAKC,mB,CAED,2J,6gBCxHA,oHACA,mC,OACC,kS,OAED,kE,4SAKA,8H,+TAiBA,kGACA,8FACA,+D,OACC,0G,OAED,2BACA,yGACA,e,qZAIA,8FACA,+D,OACC,0G,OAED,0JACA,yIACA,0B,kXAMA,kGACA,6G,OAEC,4B,CAED,e,ubAQI,YACD,gGAAH,6D,OACC,+L,OAED,yCACG,kI,sCACF,uB,CAEG,SACA,YACD,2GAAH,mE,OACC,gJACA,uI,QACC,8H,QAED,uB,OAED,oBACA,0B,kjBASA,iBACI,eACD,oI,sCACF,yC,CAED,uHACA,oC,OACC,oS,OAED,0FACA,+GACA,gGACG,2H,sCACF,yC,CAED,4I,mgBAYA,KACI,eACA,eACJ,ueAAmE,yG,uGACnE,ueAAoE,0G,uGACpE,e,gMAWA,2C,yZASA,gGACA,iDACA,qFACA,kB,2tBAKA,gGACA,iDACA,uG,sVCjJA,+D,6bAmFA,iGACA,kDACA,kF,OAEC,4B,C,2GAID,uB,swBAMA,iGACA,kDACA,iF,OAGC,4B,CAGD,mCACA,oGAEA,yF,OAEC,uB,CAED,oCACA,oGACA,uB,ymBA0FA,qG,sCAEC,e,CAED,mIACA,kI,ufAOA,sH,OAEC,oC,CAED,mIAEA,uHACA,kE,kSAQA,oB,gHAKA,qB,mTAOA,4B,aACK,c,OAEH,4B,C,mB,CAIF,+G,waAIA,kBACA,wGACA,uB,wQAKA,c,iHC3NA,gF,sIAIA,iC,kSA0BA,qH,qbAKI,4CACD,+GAAH,mE,OACC,sJ,OAED,iD,6cAQA,oIACA,mE,OACC,sJ,OAED,kD,ilBA4BA,iGACA,kDACA,kB,opBAKA,iGACA,kDACA,kB,srBAKA,iGACA,kDACA,6D,otBAKA,iGACA,kDACA,6D,0kM,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,8F,8F,8F,2C,2C,mC,Q,Q,0C,yB,6C,uC,uC;;g3BCEiC,S,qIAIjC,0B,qIAKA,2B,0kB,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8F,8F,8F,+D,mI,uB,mI;+W,4F,4F,4F,4F;wfCzKA,sB,kL,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,0G;muCC6CA,0LACA,gWACA,kB,6dAoBA,iLACA,0LAEA,mLACA,mLACA,4FACA,4B,8cAKA,iLACA,uLACA,mLACA,e,qZAwBA,+L,2YAsCA,qLACA,qLACA,e,2WAKA,mGACA,kG,ggBAcA,iLACI,YACA,kBACA,QAED,gM,MACF,e,CAGD,2D,OACC,iL,OAGG,qLACH,mMADwF,4JAGzF,IACA,mMACA,IACA,e,gkBAKA,uLAEA,qLACA,uLACA,uL,glBA4CA,8FACA,8F,qpBAKA,0LACA,mLACA,mLACA,kWACA,2HACA,gGACA,e,qkBAgCA,gGACA,gG,0eAKA,uLACA,uL,0gBA8CA,gGACA,gG,+cA6DA,QACA,IACA,uE,OACC,gH,OAED,uE,OACC,gH,OAED,mK,ifA6DA,qHACA,mE,OACC,uG,OAED,qHACA,mE,OACC,uG,OAED,oBAEA,e,+eAKA,6FACA,6FAEA,wHACA,sH,uxC,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,4H,mB;wfC1eO,yBACP,+OACA,oBAEO,uBACP,oPACA,0GAEO,uBACP,yPACA,mGAEO,uBACP,0PACA,wHAEO,uBACP,6P,0X,4F,4F,4F,4F,iD,O,sF,mB"}

Event Timeline