fixparser 9.3.1-ed12fa06 → 9.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9335,7 +9335,7 @@ Format is HH:MM:SS where HH = 00-23 hours, MM = 00-59 minutes, SS = 00-59 second
9335
9335
  `),p.push(Vd(a,r)),p.push($t(e)),c&&p.push("=",zd(c)),p.push(`-----END PGP SIGNATURE-----
9336
9336
  `);break}return S.concat(p)}var et=BigInt(0),ki=BigInt(1);function $(d){let e="0123456789ABCDEF",t="";return d.forEach(i=>{t+=e[i>>4]+e[i&15]}),BigInt("0x0"+t)}function ae(d,e){let t=d%e;return t<et?t+e:t}function Le(d,e,t){if(t===et)throw Error("Modulo cannot be zero");if(t===ki)return BigInt(0);if(e<et)throw Error("Unsopported negative exponent");let i=e,a=d;a%=t;let n=BigInt(1);for(;i>et;){let r=i&ki;i>>=ki;let o=n*a%t;n=r?o:n,a=a*a%t}return n}function AI(d){return d>=et?d:-d}function EC(d,e){let t=BigInt(0),i=BigInt(1),a=BigInt(1),n=BigInt(0),r=AI(d),o=AI(e),s=d<et,c=e<et;for(;o!==et;){let p=r/o,l=t;t=a-p*t,a=l,l=i,i=n-p*i,n=l,l=o,o=r%o,r=l}return{x:s?-a:a,y:c?-n:n,gcd:r}}function Bi(d,e){let{gcd:t,x:i}=EC(d,e);if(t!==ki)throw new Error("Inverse does not exist");return ae(i+e,e)}function CC(d,e){let t=d,i=e;for(;i!==et;){let a=i;i=t%i,t=a}return t}function Uo(d){let e=Number(d);if(e>Number.MAX_SAFE_INTEGER)throw new Error("Number can only safely store up to 53 bits");return e}function vC(d,e){return(d>>BigInt(e)&ki)===et?0:1}function $i(d){let e=d<et?BigInt(-1):et,t=1,i=d;for(;(i>>=ki)!==e;)t++;return t}function tt(d){let e=d<et?BigInt(-1):et,t=BigInt(8),i=1,a=d;for(;(a>>=t)!==e;)i++;return i}function Te(d,e="be",t){let i=d.toString(16);i.length%2===1&&(i="0"+i);let a=i.length/2,n=new Uint8Array(t||a),r=t?t-a:0,o=0;for(;o<a;)n[o+r]=parseInt(i.slice(2*o,2*o+2),16),o++;return e!=="be"&&n.reverse(),n}var TC=S.getNodeCrypto();function qe(d){let e=typeof crypto<"u"?crypto:TC?.webcrypto;if(e?.getRandomValues){let t=new Uint8Array(d);return e.getRandomValues(t)}else throw new Error("No secure random number generator available.")}function Md(d,e){if(e<d)throw new Error("Illegal parameter value: max <= min");let t=e-d,i=tt(t),a=$(qe(i+8));return ae(a,t)+d}var At=BigInt(1);function wI(d,e,t){let i=BigInt(30),a=At<<BigInt(d-1),n=[1,6,5,4,3,2,1,4,3,2,1,2,1,4,3,2,1,2,1,4,3,2,1,6,5,4,3,2,1,2],r=Md(a,a<<At),o=Uo(ae(r,i));do r+=BigInt(n[o]),o=(o+n[o])%n.length,$i(r)>d&&(r=ae(r,a<<At),r+=a,o=Uo(ae(r,i)));while(!Z4(r,e,t));return r}function Z4(d,e,t){return!(e&&CC(d-At,e)!==At||!DC(d)||!XC(d)||!xC(d,t))}function XC(d,e=BigInt(2)){return Le(e,d-At,d)===At}function DC(d){let e=BigInt(0);return RC.every(t=>ae(d,t)!==e)}var RC=[7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999].map(d=>BigInt(d));function xC(d,e,t){let i=$i(d);e||(e=Math.max(1,i/48|0));let a=d-At,n=0;for(;!vC(a,n);)n++;let r=d>>BigInt(n);for(;e>0;e--){let o=Md(BigInt(2),a),s=Le(o,r,d);if(s===At||s===a)continue;let c;for(c=1;c<n;c++){if(s=ae(s*s,d),s===At)return!1;if(s===a)break}if(c===n)return!1}return!0}var MI=S.getWebCrypto(),Qn=S.getNodeCrypto(),NC=Qn&&Qn.getHashes();function sd(d){if(!(!Qn||!NC.includes(d)))return async function(e){let t=Qn.createHash(d);return Ce(e,i=>{t.update(i)},()=>new Uint8Array(t.digest()))}}function cd(d,e){let t=async()=>{let{nobleHashes:i}=await Promise.resolve().then(function(){return q6}),a=i.get(d);if(!a)throw new Error("Unsupported hash");return a};return async function(i){if(De(i)&&(i=await Ae(i)),S.isStream(i)){let n=(await t()).create();return Ce(i,r=>{n.update(r)},()=>n.digest())}else return MI&&e?new Uint8Array(await MI.digest(e,i)):(await t())(i)}}var AC=sd("md5")||cd("md5"),wC=sd("sha1")||cd("sha1","SHA-1"),MC=sd("sha224")||cd("sha224"),LC=sd("sha256")||cd("sha256","SHA-256"),OC=sd("sha384")||cd("sha384","SHA-384"),kC=sd("sha512")||cd("sha512","SHA-512"),UC=sd("ripemd160")||cd("ripemd160"),qC=sd("sha3-256")||cd("sha3_256"),BC=sd("sha3-512")||cd("sha3_512");function Ot(d,e){switch(d){case u.hash.md5:return AC(e);case u.hash.sha1:return wC(e);case u.hash.ripemd:return UC(e);case u.hash.sha256:return LC(e);case u.hash.sha384:return OC(e);case u.hash.sha512:return kC(e);case u.hash.sha224:return MC(e);case u.hash.sha3_256:return qC(e);case u.hash.sha3_512:return BC(e);default:throw new Error("Unsupported hash function")}}function Re(d){switch(d){case u.hash.md5:return 16;case u.hash.sha1:case u.hash.ripemd:return 20;case u.hash.sha256:return 32;case u.hash.sha384:return 48;case u.hash.sha512:return 64;case u.hash.sha224:return 28;case u.hash.sha3_256:return 32;case u.hash.sha3_512:return 64;default:throw new Error("Invalid hash algorithm.")}}var wt=[];wt[1]=[48,32,48,12,6,8,42,134,72,134,247,13,2,5,5,0,4,16];wt[2]=[48,33,48,9,6,5,43,14,3,2,26,5,0,4,20];wt[3]=[48,33,48,9,6,5,43,36,3,2,1,5,0,4,20];wt[8]=[48,49,48,13,6,9,96,134,72,1,101,3,4,2,1,5,0,4,32];wt[9]=[48,65,48,13,6,9,96,134,72,1,101,3,4,2,2,5,0,4,48];wt[10]=[48,81,48,13,6,9,96,134,72,1,101,3,4,2,3,5,0,4,64];wt[11]=[48,45,48,13,6,9,96,134,72,1,101,3,4,2,4,5,0,4,28];function jC(d){let e=new Uint8Array(d),t=0;for(;t<d;){let i=qe(d-t);for(let a=0;a<i.length;a++)i[a]!==0&&(e[t++]=i[a])}return e}function eb(d,e){let t=d.length;if(t>e-11)throw new Error("Message too long");let i=jC(e-t-3),a=new Uint8Array(e);return a[1]=2,a.set(i,2),a.set(d,e-t),a}function tb(d,e){let t=2,i=1;for(let o=t;o<d.length;o++)i&=d[o]!==0,t+=i;let a=t-2,n=d.subarray(t+1),r=d[0]===0&d[1]===2&a>=8&!i;if(e)return S.selectUint8Array(r,n,e);if(r)return n;throw new Error("Decryption error")}function db(d,e,t){let i;if(e.length!==Re(d))throw new Error("Invalid hash length");let a=new Uint8Array(wt[d].length);for(i=0;i<wt[d].length;i++)a[i]=wt[d][i];let n=a.length+e.length;if(t<n+11)throw new Error("Intended encoded message length too short");let r=new Uint8Array(t-n-3).fill(255),o=new Uint8Array(t);return o[1]=1,o.set(r,2),o.set(a,t-n),o.set(e,t-e.length),o}var ji=S.getWebCrypto(),ei=S.getNodeCrypto(),Rd=BigInt(1);async function GC(d,e,t,i,a,n,r,o,s){if(Re(d)>=t.length)throw new Error("Digest size cannot exceed key modulus size");if(e&&!S.isStream(e)){if(S.getWebCrypto())try{return await KC(u.read(u.webHash,d),e,t,i,a,n,r,o)}catch(c){S.printDebugError(c)}else if(S.getNodeCrypto())return YC(d,e,t,i,a,n,r,o)}return _C(d,t,a,s)}async function QC(d,e,t,i,a,n){if(e&&!S.isStream(e)){if(S.getWebCrypto())try{return await $C(u.read(u.webHash,d),e,t,i,a)}catch(r){S.printDebugError(r)}else if(S.getNodeCrypto())return ZC(d,e,t,i,a)}return JC(d,t,i,a,n)}async function VC(d,e,t){return S.getNodeCrypto()?ev(d,e,t):tv(d,e,t)}async function zC(d,e,t,i,a,n,r,o){if(S.getNodeCrypto()&&!o)try{return await dv(d,e,t,i,a,n,r)}catch(s){S.printDebugError(s)}return iv(d,e,t,i,a,n,r,o)}async function HC(d,e){if(e=BigInt(e),S.getWebCrypto()){let r={name:"RSASSA-PKCS1-v1_5",modulusLength:d,publicExponent:Te(e),hash:{name:"SHA-1"}},o=await ji.generateKey(r,!0,["sign","verify"]),s=await ji.exportKey("jwk",o.privateKey);return LI(s,e)}else if(S.getNodeCrypto()){let r={modulusLength:d,publicExponent:Uo(e),publicKeyEncoding:{type:"pkcs1",format:"jwk"},privateKeyEncoding:{type:"pkcs1",format:"jwk"}},o=await new Promise((s,c)=>{ei.generateKeyPair("rsa",r,(p,l,m)=>{p?c(p):s(m)})});return LI(o,e)}let t,i,a;do i=wI(d-(d>>1),e,40),t=wI(d>>1,e,40),a=t*i;while($i(a)!==d);let n=(t-Rd)*(i-Rd);return i<t&&([t,i]=[i,t]),{n:Te(a),e:Te(e),d:Te(Bi(e,n)),p:Te(t),q:Te(i),u:Te(Bi(t,i))}}async function WC(d,e,t,i,a,n){if(d=$(d),i=$(i),a=$(a),i*a!==d)return!1;let r=BigInt(2);if(n=$(n),ae(i*n,a)!==BigInt(1))return!1;e=$(e),t=$(t);let o=BigInt(Math.floor($i(d)/3)),s=Md(r,r<<o),c=s*t*e;return ae(c,i-Rd)===s&&ae(c,a-Rd)===s}async function _C(d,e,t,i){e=$(e);let a=$(db(d,i,tt(e)));return t=$(t),Te(Le(a,t,e),"be",tt(e))}async function KC(d,e,t,i,a,n,r,o){let s=await Ts(t,i,a,n,r,o),c={name:"RSASSA-PKCS1-v1_5",hash:{name:d}},p=await ji.importKey("jwk",s,c,!1,["sign"]);return new Uint8Array(await ji.sign("RSASSA-PKCS1-v1_5",p,e))}async function YC(d,e,t,i,a,n,r,o){let s=ei.createSign(u.read(u.hash,d));s.write(e),s.end();let c=await Ts(t,i,a,n,r,o);return new Uint8Array(s.sign({key:c,format:"jwk",type:"pkcs1"}))}async function JC(d,e,t,i,a){if(t=$(t),e=$(e),i=$(i),e>=t)throw new Error("Signature size cannot exceed modulus size");let n=Te(Le(e,i,t),"be",tt(t)),r=db(d,a,tt(t));return S.equalsUint8Array(n,r)}async function $C(d,e,t,i,a){let n=Xs(i,a),r=await ji.importKey("jwk",n,{name:"RSASSA-PKCS1-v1_5",hash:{name:d}},!1,["verify"]);return ji.verify("RSASSA-PKCS1-v1_5",r,t,e)}async function ZC(d,e,t,i,a){let r={key:Xs(i,a),format:"jwk",type:"pkcs1"},o=ei.createVerify(u.read(u.hash,d));o.write(e),o.end();try{return o.verify(r,t)}catch{return!1}}async function ev(d,e,t){let a={key:Xs(e,t),format:"jwk",type:"pkcs1",padding:ei.constants.RSA_PKCS1_PADDING};return new Uint8Array(ei.publicEncrypt(a,d))}async function tv(d,e,t){if(e=$(e),d=$(eb(d,tt(e))),t=$(t),d>=e)throw new Error("Message size cannot exceed modulus size");return Te(Le(d,t,e),"be",tt(e))}async function dv(d,e,t,i,a,n,r){let s={key:await Ts(e,t,i,a,n,r),format:"jwk",type:"pkcs1",padding:ei.constants.RSA_PKCS1_PADDING};try{return new Uint8Array(ei.privateDecrypt(s,d))}catch{throw new Error("Decryption error")}}async function iv(d,e,t,i,a,n,r,o){if(d=$(d),e=$(e),t=$(t),i=$(i),a=$(a),n=$(n),r=$(r),d>=e)throw new Error("Data too large.");let s=ae(i,n-Rd),c=ae(i,a-Rd),p=Md(BigInt(2),e),l=Le(Bi(p,e),t,e);d=ae(d*l,e);let m=Le(d,c,a),P=Le(d,s,n),y=ae(r*(P-m),n)*a+m;return y=ae(y*p,e),tb(Te(y,"be",tt(e)),o)}async function Ts(d,e,t,i,a,n){let r=$(i),o=$(a),s=$(t),c=ae(s,o-Rd),p=ae(s,r-Rd);return p=Te(p),c=Te(c),{kty:"RSA",n:ze(d),e:ze(e),d:ze(t),p:ze(a),q:ze(i),dp:ze(c),dq:ze(p),qi:ze(n),ext:!0}}function Xs(d,e){return{kty:"RSA",n:ze(d),e:ze(e),ext:!0}}function LI(d,e){return{n:It(d.n),e:Te(e),d:It(d.d),p:It(d.q),q:It(d.p),u:It(d.qi)}}var Fd=BigInt(1);async function av(d,e,t,i){e=$(e),t=$(t),i=$(i);let a=eb(d,tt(e)),n=$(a),r=Md(Fd,e-Fd);return{c1:Te(Le(t,r,e)),c2:Te(ae(Le(i,r,e)*n,e))}}async function nv(d,e,t,i,a){d=$(d),e=$(e),t=$(t),i=$(i);let n=ae(Bi(Le(d,i,t),t)*e,t);return tb(Te(n,"be",tt(t)),a)}async function rv(d,e,t,i){if(d=$(d),e=$(e),t=$(t),e<=Fd||e>=d)return!1;let a=BigInt($i(d)),n=BigInt(1023);if(a<n||Le(e,d-Fd,d)!==Fd)return!1;let r=e,o=BigInt(1),s=BigInt(2),c=s<<BigInt(17);for(;o<c;){if(r=ae(r*e,d),r===Fd)return!1;o++}i=$(i);let p=Md(s<<a-Fd,s<<a),l=(d-Fd)*p+i;return t===Le(e,l,d)}var mo=typeof je=="object"&&"crypto"in je?je.crypto:void 0,Ie={},J=function(d){var e,t=new Float64Array(16);if(d)for(e=0;e<d.length;e++)t[e]=d[e];return t},Ds=function(){throw new Error("no PRNG")},ib=new Uint8Array(32);ib[0]=9;var qo=J(),Vn=J([1]),ov=J([56129,1]),sv=J([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),cv=J([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),OI=J([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),kI=J([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),pv=J([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function UI(d,e,t,i){d[e]=t>>24&255,d[e+1]=t>>16&255,d[e+2]=t>>8&255,d[e+3]=t&255,d[e+4]=i>>24&255,d[e+5]=i>>16&255,d[e+6]=i>>8&255,d[e+7]=i&255}function uv(d,e,t,i,a){var n,r=0;for(n=0;n<a;n++)r|=d[e+n]^t[i+n];return(1&r-1>>>8)-1}function ab(d,e,t,i){return uv(d,e,t,i,32)}function Ed(d,e){var t;for(t=0;t<16;t++)d[t]=e[t]|0}function yo(d){var e,t,i=1;for(e=0;e<16;e++)t=d[e]+i+65535,i=Math.floor(t/65536),d[e]=t-i*65536;d[0]+=i-1+37*(i-1)}function wi(d,e,t){for(var i,a=~(t-1),n=0;n<16;n++)i=a&(d[n]^e[n]),d[n]^=i,e[n]^=i}function va(d,e){var t,i,a,n=J(),r=J();for(t=0;t<16;t++)r[t]=e[t];for(yo(r),yo(r),yo(r),i=0;i<2;i++){for(n[0]=r[0]-65517,t=1;t<15;t++)n[t]=r[t]-65535-(n[t-1]>>16&1),n[t-1]&=65535;n[15]=r[15]-32767-(n[14]>>16&1),a=n[15]>>16&1,n[14]&=65535,wi(r,n,1-a)}for(t=0;t<16;t++)d[2*t]=r[t]&255,d[2*t+1]=r[t]>>8}function qI(d,e){var t=new Uint8Array(32),i=new Uint8Array(32);return va(t,d),va(i,e),ab(t,0,i,0)}function nb(d){var e=new Uint8Array(32);return va(e,d),e[0]&1}function rb(d,e){var t;for(t=0;t<16;t++)d[t]=e[2*t]+(e[2*t+1]<<8);d[15]&=32767}function Dt(d,e,t){for(var i=0;i<16;i++)d[i]=e[i]+t[i]}function xt(d,e,t){for(var i=0;i<16;i++)d[i]=e[i]-t[i]}function ne(d,e,t){var i,a,n=0,r=0,o=0,s=0,c=0,p=0,l=0,m=0,P=0,g=0,y=0,f=0,h=0,I=0,b=0,F=0,X=0,T=0,x=0,E=0,D=0,v=0,C=0,M=0,O=0,R=0,w=0,N=0,A=0,L=0,U=0,q=t[0],j=t[1],z=t[2],H=t[3],G=t[4],B=t[5],Q=t[6],K=t[7],W=t[8],Y=t[9],Z=t[10],ee=t[11],ie=t[12],pe=t[13],ue=t[14],Ee=t[15];i=e[0],n+=i*q,r+=i*j,o+=i*z,s+=i*H,c+=i*G,p+=i*B,l+=i*Q,m+=i*K,P+=i*W,g+=i*Y,y+=i*Z,f+=i*ee,h+=i*ie,I+=i*pe,b+=i*ue,F+=i*Ee,i=e[1],r+=i*q,o+=i*j,s+=i*z,c+=i*H,p+=i*G,l+=i*B,m+=i*Q,P+=i*K,g+=i*W,y+=i*Y,f+=i*Z,h+=i*ee,I+=i*ie,b+=i*pe,F+=i*ue,X+=i*Ee,i=e[2],o+=i*q,s+=i*j,c+=i*z,p+=i*H,l+=i*G,m+=i*B,P+=i*Q,g+=i*K,y+=i*W,f+=i*Y,h+=i*Z,I+=i*ee,b+=i*ie,F+=i*pe,X+=i*ue,T+=i*Ee,i=e[3],s+=i*q,c+=i*j,p+=i*z,l+=i*H,m+=i*G,P+=i*B,g+=i*Q,y+=i*K,f+=i*W,h+=i*Y,I+=i*Z,b+=i*ee,F+=i*ie,X+=i*pe,T+=i*ue,x+=i*Ee,i=e[4],c+=i*q,p+=i*j,l+=i*z,m+=i*H,P+=i*G,g+=i*B,y+=i*Q,f+=i*K,h+=i*W,I+=i*Y,b+=i*Z,F+=i*ee,X+=i*ie,T+=i*pe,x+=i*ue,E+=i*Ee,i=e[5],p+=i*q,l+=i*j,m+=i*z,P+=i*H,g+=i*G,y+=i*B,f+=i*Q,h+=i*K,I+=i*W,b+=i*Y,F+=i*Z,X+=i*ee,T+=i*ie,x+=i*pe,E+=i*ue,D+=i*Ee,i=e[6],l+=i*q,m+=i*j,P+=i*z,g+=i*H,y+=i*G,f+=i*B,h+=i*Q,I+=i*K,b+=i*W,F+=i*Y,X+=i*Z,T+=i*ee,x+=i*ie,E+=i*pe,D+=i*ue,v+=i*Ee,i=e[7],m+=i*q,P+=i*j,g+=i*z,y+=i*H,f+=i*G,h+=i*B,I+=i*Q,b+=i*K,F+=i*W,X+=i*Y,T+=i*Z,x+=i*ee,E+=i*ie,D+=i*pe,v+=i*ue,C+=i*Ee,i=e[8],P+=i*q,g+=i*j,y+=i*z,f+=i*H,h+=i*G,I+=i*B,b+=i*Q,F+=i*K,X+=i*W,T+=i*Y,x+=i*Z,E+=i*ee,D+=i*ie,v+=i*pe,C+=i*ue,M+=i*Ee,i=e[9],g+=i*q,y+=i*j,f+=i*z,h+=i*H,I+=i*G,b+=i*B,F+=i*Q,X+=i*K,T+=i*W,x+=i*Y,E+=i*Z,D+=i*ee,v+=i*ie,C+=i*pe,M+=i*ue,O+=i*Ee,i=e[10],y+=i*q,f+=i*j,h+=i*z,I+=i*H,b+=i*G,F+=i*B,X+=i*Q,T+=i*K,x+=i*W,E+=i*Y,D+=i*Z,v+=i*ee,C+=i*ie,M+=i*pe,O+=i*ue,R+=i*Ee,i=e[11],f+=i*q,h+=i*j,I+=i*z,b+=i*H,F+=i*G,X+=i*B,T+=i*Q,x+=i*K,E+=i*W,D+=i*Y,v+=i*Z,C+=i*ee,M+=i*ie,O+=i*pe,R+=i*ue,w+=i*Ee,i=e[12],h+=i*q,I+=i*j,b+=i*z,F+=i*H,X+=i*G,T+=i*B,x+=i*Q,E+=i*K,D+=i*W,v+=i*Y,C+=i*Z,M+=i*ee,O+=i*ie,R+=i*pe,w+=i*ue,N+=i*Ee,i=e[13],I+=i*q,b+=i*j,F+=i*z,X+=i*H,T+=i*G,x+=i*B,E+=i*Q,D+=i*K,v+=i*W,C+=i*Y,M+=i*Z,O+=i*ee,R+=i*ie,w+=i*pe,N+=i*ue,A+=i*Ee,i=e[14],b+=i*q,F+=i*j,X+=i*z,T+=i*H,x+=i*G,E+=i*B,D+=i*Q,v+=i*K,C+=i*W,M+=i*Y,O+=i*Z,R+=i*ee,w+=i*ie,N+=i*pe,A+=i*ue,L+=i*Ee,i=e[15],F+=i*q,X+=i*j,T+=i*z,x+=i*H,E+=i*G,D+=i*B,v+=i*Q,C+=i*K,M+=i*W,O+=i*Y,R+=i*Z,w+=i*ee,N+=i*ie,A+=i*pe,L+=i*ue,U+=i*Ee,n+=38*X,r+=38*T,o+=38*x,s+=38*E,c+=38*D,p+=38*v,l+=38*C,m+=38*M,P+=38*O,g+=38*R,y+=38*w,f+=38*N,h+=38*A,I+=38*L,b+=38*U,a=1,i=n+a+65535,a=Math.floor(i/65536),n=i-a*65536,i=r+a+65535,a=Math.floor(i/65536),r=i-a*65536,i=o+a+65535,a=Math.floor(i/65536),o=i-a*65536,i=s+a+65535,a=Math.floor(i/65536),s=i-a*65536,i=c+a+65535,a=Math.floor(i/65536),c=i-a*65536,i=p+a+65535,a=Math.floor(i/65536),p=i-a*65536,i=l+a+65535,a=Math.floor(i/65536),l=i-a*65536,i=m+a+65535,a=Math.floor(i/65536),m=i-a*65536,i=P+a+65535,a=Math.floor(i/65536),P=i-a*65536,i=g+a+65535,a=Math.floor(i/65536),g=i-a*65536,i=y+a+65535,a=Math.floor(i/65536),y=i-a*65536,i=f+a+65535,a=Math.floor(i/65536),f=i-a*65536,i=h+a+65535,a=Math.floor(i/65536),h=i-a*65536,i=I+a+65535,a=Math.floor(i/65536),I=i-a*65536,i=b+a+65535,a=Math.floor(i/65536),b=i-a*65536,i=F+a+65535,a=Math.floor(i/65536),F=i-a*65536,n+=a-1+37*(a-1),a=1,i=n+a+65535,a=Math.floor(i/65536),n=i-a*65536,i=r+a+65535,a=Math.floor(i/65536),r=i-a*65536,i=o+a+65535,a=Math.floor(i/65536),o=i-a*65536,i=s+a+65535,a=Math.floor(i/65536),s=i-a*65536,i=c+a+65535,a=Math.floor(i/65536),c=i-a*65536,i=p+a+65535,a=Math.floor(i/65536),p=i-a*65536,i=l+a+65535,a=Math.floor(i/65536),l=i-a*65536,i=m+a+65535,a=Math.floor(i/65536),m=i-a*65536,i=P+a+65535,a=Math.floor(i/65536),P=i-a*65536,i=g+a+65535,a=Math.floor(i/65536),g=i-a*65536,i=y+a+65535,a=Math.floor(i/65536),y=i-a*65536,i=f+a+65535,a=Math.floor(i/65536),f=i-a*65536,i=h+a+65535,a=Math.floor(i/65536),h=i-a*65536,i=I+a+65535,a=Math.floor(i/65536),I=i-a*65536,i=b+a+65535,a=Math.floor(i/65536),b=i-a*65536,i=F+a+65535,a=Math.floor(i/65536),F=i-a*65536,n+=a-1+37*(a-1),d[0]=n,d[1]=r,d[2]=o,d[3]=s,d[4]=c,d[5]=p,d[6]=l,d[7]=m,d[8]=P,d[9]=g,d[10]=y,d[11]=f,d[12]=h,d[13]=I,d[14]=b,d[15]=F}function bt(d,e){ne(d,e,e)}function ob(d,e){var t=J(),i;for(i=0;i<16;i++)t[i]=e[i];for(i=253;i>=0;i--)bt(t,t),i!==2&&i!==4&&ne(t,t,e);for(i=0;i<16;i++)d[i]=t[i]}function lv(d,e){var t=J(),i;for(i=0;i<16;i++)t[i]=e[i];for(i=250;i>=0;i--)bt(t,t),i!==1&&ne(t,t,e);for(i=0;i<16;i++)d[i]=t[i]}function sb(d,e,t){var i=new Uint8Array(32),a=new Float64Array(80),n,r,o=J(),s=J(),c=J(),p=J(),l=J(),m=J();for(r=0;r<31;r++)i[r]=e[r];for(i[31]=e[31]&127|64,i[0]&=248,rb(a,t),r=0;r<16;r++)s[r]=a[r],p[r]=o[r]=c[r]=0;for(o[0]=p[0]=1,r=254;r>=0;--r)n=i[r>>>3]>>>(r&7)&1,wi(o,s,n),wi(c,p,n),Dt(l,o,c),xt(o,o,c),Dt(c,s,p),xt(s,s,p),bt(p,l),bt(m,o),ne(o,c,o),ne(c,s,l),Dt(l,o,c),xt(o,o,c),bt(s,o),xt(c,p,m),ne(o,c,ov),Dt(o,o,p),ne(c,c,o),ne(o,p,m),ne(p,s,a),bt(s,l),wi(o,s,n),wi(c,p,n);for(r=0;r<16;r++)a[r+16]=o[r],a[r+32]=c[r],a[r+48]=s[r],a[r+64]=p[r];var P=a.subarray(32),g=a.subarray(16);return ob(P,P),ne(g,g,P),va(d,g),0}function cb(d,e){return sb(d,e,ib)}function mv(d,e){return Ds(e,32),cb(d,e)}var BI=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function jI(d,e,t,i){for(var a=new Int32Array(16),n=new Int32Array(16),r,o,s,c,p,l,m,P,g,y,f,h,I,b,F,X,T,x,E,D,v,C,M,O,R,w,N=d[0],A=d[1],L=d[2],U=d[3],q=d[4],j=d[5],z=d[6],H=d[7],G=e[0],B=e[1],Q=e[2],K=e[3],W=e[4],Y=e[5],Z=e[6],ee=e[7],ie=0;i>=128;){for(E=0;E<16;E++)D=8*E+ie,a[E]=t[D+0]<<24|t[D+1]<<16|t[D+2]<<8|t[D+3],n[E]=t[D+4]<<24|t[D+5]<<16|t[D+6]<<8|t[D+7];for(E=0;E<80;E++)if(r=N,o=A,s=L,c=U,p=q,l=j,m=z,P=H,g=G,y=B,f=Q,h=K,I=W,b=Y,F=Z,X=ee,v=H,C=ee,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=(q>>>14|W<<18)^(q>>>18|W<<14)^(W>>>9|q<<23),C=(W>>>14|q<<18)^(W>>>18|q<<14)^(q>>>9|W<<23),M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,v=q&j^~q&z,C=W&Y^~W&Z,M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,v=BI[E*2],C=BI[E*2+1],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,v=a[E%16],C=n[E%16],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,T=R&65535|w<<16,x=M&65535|O<<16,v=T,C=x,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=(N>>>28|G<<4)^(G>>>2|N<<30)^(G>>>7|N<<25),C=(G>>>28|N<<4)^(N>>>2|G<<30)^(N>>>7|G<<25),M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,v=N&A^N&L^A&L,C=G&B^G&Q^B&Q,M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,P=R&65535|w<<16,X=M&65535|O<<16,v=c,C=h,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=T,C=x,M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,c=R&65535|w<<16,h=M&65535|O<<16,A=r,L=o,U=s,q=c,j=p,z=l,H=m,N=P,B=g,Q=y,K=f,W=h,Y=I,Z=b,ee=F,G=X,E%16===15)for(D=0;D<16;D++)v=a[D],C=n[D],M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=a[(D+9)%16],C=n[(D+9)%16],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,T=a[(D+1)%16],x=n[(D+1)%16],v=(T>>>1|x<<31)^(T>>>8|x<<24)^T>>>7,C=(x>>>1|T<<31)^(x>>>8|T<<24)^(x>>>7|T<<25),M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,T=a[(D+14)%16],x=n[(D+14)%16],v=(T>>>19|x<<13)^(x>>>29|T<<3)^T>>>6,C=(x>>>19|T<<13)^(T>>>29|x<<3)^(x>>>6|T<<26),M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,a[D]=R&65535|w<<16,n[D]=M&65535|O<<16;v=N,C=G,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=d[0],C=e[0],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,d[0]=N=R&65535|w<<16,e[0]=G=M&65535|O<<16,v=A,C=B,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=d[1],C=e[1],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,d[1]=A=R&65535|w<<16,e[1]=B=M&65535|O<<16,v=L,C=Q,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=d[2],C=e[2],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,d[2]=L=R&65535|w<<16,e[2]=Q=M&65535|O<<16,v=U,C=K,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=d[3],C=e[3],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,d[3]=U=R&65535|w<<16,e[3]=K=M&65535|O<<16,v=q,C=W,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=d[4],C=e[4],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,d[4]=q=R&65535|w<<16,e[4]=W=M&65535|O<<16,v=j,C=Y,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=d[5],C=e[5],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,d[5]=j=R&65535|w<<16,e[5]=Y=M&65535|O<<16,v=z,C=Z,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=d[6],C=e[6],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,d[6]=z=R&65535|w<<16,e[6]=Z=M&65535|O<<16,v=H,C=ee,M=C&65535,O=C>>>16,R=v&65535,w=v>>>16,v=d[7],C=e[7],M+=C&65535,O+=C>>>16,R+=v&65535,w+=v>>>16,O+=M>>>16,R+=O>>>16,w+=R>>>16,d[7]=H=R&65535|w<<16,e[7]=ee=M&65535|O<<16,ie+=128,i-=128}return i}function Fa(d,e,t){var i=new Int32Array(8),a=new Int32Array(8),n=new Uint8Array(256),r,o=t;for(i[0]=1779033703,i[1]=3144134277,i[2]=1013904242,i[3]=2773480762,i[4]=1359893119,i[5]=2600822924,i[6]=528734635,i[7]=1541459225,a[0]=4089235720,a[1]=2227873595,a[2]=4271175723,a[3]=1595750129,a[4]=2917565137,a[5]=725511199,a[6]=4215389547,a[7]=327033209,jI(i,a,e,t),t%=128,r=0;r<t;r++)n[r]=e[o-t+r];for(n[t]=128,t=256-128*(t<112?1:0),n[t-9]=0,UI(n,t-8,o/536870912|0,o<<3),jI(i,a,n,t),r=0;r<8;r++)UI(d,8*r,i[r],a[r]);return 0}function Bo(d,e){var t=J(),i=J(),a=J(),n=J(),r=J(),o=J(),s=J(),c=J(),p=J();xt(t,d[1],d[0]),xt(p,e[1],e[0]),ne(t,t,p),Dt(i,d[0],d[1]),Dt(p,e[0],e[1]),ne(i,i,p),ne(a,d[3],e[3]),ne(a,a,cv),ne(n,d[2],e[2]),Dt(n,n,n),xt(r,i,t),xt(o,n,a),Dt(s,n,a),Dt(c,i,t),ne(d[0],r,o),ne(d[1],c,s),ne(d[2],s,o),ne(d[3],r,c)}function GI(d,e,t){var i;for(i=0;i<4;i++)wi(d[i],e[i],t)}function Rs(d,e){var t=J(),i=J(),a=J();ob(a,e[2]),ne(t,e[0],a),ne(i,e[1],a),va(d,i),d[31]^=nb(t)<<7}function pb(d,e,t){var i,a;for(Ed(d[0],qo),Ed(d[1],Vn),Ed(d[2],Vn),Ed(d[3],qo),a=255;a>=0;--a)i=t[a/8|0]>>(a&7)&1,GI(d,e,i),Bo(e,d),Bo(d,d),GI(d,e,i)}function xs(d,e){var t=[J(),J(),J(),J()];Ed(t[0],OI),Ed(t[1],kI),Ed(t[2],Vn),ne(t[3],OI,kI),pb(d,t,e)}function ub(d,e,t){var i=new Uint8Array(64),a=[J(),J(),J(),J()],n;for(t||Ds(e,32),Fa(i,e,32),i[0]&=248,i[31]&=127,i[31]|=64,xs(a,i),Rs(d,a),n=0;n<32;n++)e[n+32]=d[n];return 0}var So=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function lb(d,e){var t,i,a,n;for(i=63;i>=32;--i){for(t=0,a=i-32,n=i-12;a<n;++a)e[a]+=t-16*e[i]*So[a-(i-32)],t=Math.floor((e[a]+128)/256),e[a]-=t*256;e[a]+=t,e[i]=0}for(t=0,a=0;a<32;a++)e[a]+=t-(e[31]>>4)*So[a],t=e[a]>>8,e[a]&=255;for(a=0;a<32;a++)e[a]-=t*So[a];for(i=0;i<32;i++)e[i+1]+=e[i]>>8,d[i]=e[i]&255}function jo(d){var e=new Float64Array(64),t;for(t=0;t<64;t++)e[t]=d[t];for(t=0;t<64;t++)d[t]=0;lb(d,e)}function yv(d,e,t,i){var a=new Uint8Array(64),n=new Uint8Array(64),r=new Uint8Array(64),o,s,c=new Float64Array(64),p=[J(),J(),J(),J()];Fa(a,i,32),a[0]&=248,a[31]&=127,a[31]|=64;var l=t+64;for(o=0;o<t;o++)d[64+o]=e[o];for(o=0;o<32;o++)d[32+o]=a[32+o];for(Fa(r,d.subarray(32),t+32),jo(r),xs(p,r),Rs(d,p),o=32;o<64;o++)d[o]=i[o];for(Fa(n,d,t+64),jo(n),o=0;o<64;o++)c[o]=0;for(o=0;o<32;o++)c[o]=r[o];for(o=0;o<32;o++)for(s=0;s<32;s++)c[o+s]+=n[o]*a[s];return lb(d.subarray(32),c),l}function Sv(d,e){var t=J(),i=J(),a=J(),n=J(),r=J(),o=J(),s=J();return Ed(d[2],Vn),rb(d[1],e),bt(a,d[1]),ne(n,a,sv),xt(a,a,d[2]),Dt(n,d[2],n),bt(r,n),bt(o,r),ne(s,o,r),ne(t,s,a),ne(t,t,n),lv(t,t),ne(t,t,a),ne(t,t,n),ne(t,t,n),ne(d[0],t,n),bt(i,d[0]),ne(i,i,n),qI(i,a)&&ne(d[0],d[0],pv),bt(i,d[0]),ne(i,i,n),qI(i,a)?-1:(nb(d[0])===e[31]>>7&&xt(d[0],qo,d[0]),ne(d[3],d[0],d[1]),0)}function Pv(d,e,t,i){var a,n=new Uint8Array(32),r=new Uint8Array(64),o=[J(),J(),J(),J()],s=[J(),J(),J(),J()];if(t<64||Sv(s,i))return-1;for(a=0;a<t;a++)d[a]=e[a];for(a=0;a<32;a++)d[a+32]=i[a];if(Fa(r,d,t),jo(r),pb(o,s,r),xs(s,e.subarray(32)),Bo(o,s),Rs(n,o),t-=64,ab(e,0,n,0)){for(a=0;a<t;a++)d[a]=0;return-1}for(a=0;a<t;a++)d[a]=e[a+64];return t}var QI=32,fv=32,mb=32,yb=32,Kd=64,Er=32,Cr=64,gv=32;function Zi(){for(var d=0;d<arguments.length;d++)if(!(arguments[d]instanceof Uint8Array))throw new TypeError("unexpected type, use Uint8Array")}function hv(d){for(var e=0;e<d.length;e++)d[e]=0}Ie.scalarMult=function(d,e){if(Zi(d,e),d.length!==fv)throw new Error("bad n size");if(e.length!==QI)throw new Error("bad p size");var t=new Uint8Array(QI);return sb(t,d,e),t};Ie.box={};Ie.box.keyPair=function(){var d=new Uint8Array(mb),e=new Uint8Array(yb);return mv(d,e),{publicKey:d,secretKey:e}};Ie.box.keyPair.fromSecretKey=function(d){if(Zi(d),d.length!==yb)throw new Error("bad secret key size");var e=new Uint8Array(mb);return cb(e,d),{publicKey:e,secretKey:new Uint8Array(d)}};Ie.sign=function(d,e){if(Zi(d,e),e.length!==Cr)throw new Error("bad secret key size");var t=new Uint8Array(Kd+d.length);return yv(t,d,d.length,e),t};Ie.sign.detached=function(d,e){for(var t=Ie.sign(d,e),i=new Uint8Array(Kd),a=0;a<i.length;a++)i[a]=t[a];return i};Ie.sign.detached.verify=function(d,e,t){if(Zi(d,e,t),e.length!==Kd)throw new Error("bad signature size");if(t.length!==Er)throw new Error("bad public key size");var i=new Uint8Array(Kd+d.length),a=new Uint8Array(Kd+d.length),n;for(n=0;n<Kd;n++)i[n]=e[n];for(n=0;n<d.length;n++)i[n+Kd]=d[n];return Pv(a,i,i.length,t)>=0};Ie.sign.keyPair=function(){var d=new Uint8Array(Er),e=new Uint8Array(Cr);return ub(d,e),{publicKey:d,secretKey:e}};Ie.sign.keyPair.fromSecretKey=function(d){if(Zi(d),d.length!==Cr)throw new Error("bad secret key size");for(var e=new Uint8Array(Er),t=0;t<e.length;t++)e[t]=d[32+t];return{publicKey:e,secretKey:new Uint8Array(d)}};Ie.sign.keyPair.fromSeed=function(d){if(Zi(d),d.length!==gv)throw new Error("bad seed size");for(var e=new Uint8Array(Er),t=new Uint8Array(Cr),i=0;i<32;i++)t[i]=d[i];return ub(e,t,!0),{publicKey:e,secretKey:t}};Ie.setPRNG=function(d){Ds=d};(function(){if(mo&&mo.getRandomValues){var d=65536;Ie.setPRNG(function(e,t){var i,a=new Uint8Array(t);for(i=0;i<t;i+=d)mo.getRandomValues(a.subarray(i,i+Math.min(t-i,d)));for(i=0;i<t;i++)e[i]=a[i];hv(a)})}})();var Iv={"2a8648ce3d030107":u.curve.nistP256,"2b81040022":u.curve.nistP384,"2b81040023":u.curve.nistP521,"2b8104000a":u.curve.secp256k1,"2b06010401da470f01":u.curve.ed25519Legacy,"2b060104019755010501":u.curve.curve25519Legacy,"2b2403030208010107":u.curve.brainpoolP256r1,"2b240303020801010b":u.curve.brainpoolP384r1,"2b240303020801010d":u.curve.brainpoolP512r1},dd=class d{constructor(e){if(e instanceof d)this.oid=e.oid;else if(S.isArray(e)||S.isUint8Array(e)){if(e=new Uint8Array(e),e[0]===6){if(e[1]!==e.length-2)throw new Error("Length mismatch in DER encoded oid");e=e.subarray(2)}this.oid=e}else this.oid=""}read(e){if(e.length>=1){let t=e[0];if(e.length>=1+t)return this.oid=e.subarray(1,1+t),1+this.oid.length}throw new Error("Invalid oid")}write(){return S.concatUint8Array([new Uint8Array([this.oid.length]),this.oid])}toHex(){return S.uint8ArrayToHex(this.oid)}getName(){let e=Iv[this.toHex()];if(!e)throw new Error("Unknown curve object identifier.");return e}};function Sb(d){let e=0,t,i=d[0];return i<192?([e]=d,t=1):i<255?(e=(d[0]-192<<8)+d[1]+192,t=2):i===255&&(e=S.readNumber(d.subarray(1,5)),t=5),{len:e,offset:t}}function vr(d){return d<192?new Uint8Array([d]):d>191&&d<8384?new Uint8Array([(d-192>>8)+192,d-192&255]):S.concatUint8Array([new Uint8Array([255]),S.writeNumber(d,4)])}function bv(d){if(d<0||d>30)throw new Error("Partial Length power must be between 1 and 30");return new Uint8Array([224+d])}function zn(d){return new Uint8Array([192|d])}function VI(d,e){return S.concatUint8Array([zn(d),vr(e)])}function wn(d){return[u.packet.literalData,u.packet.compressedData,u.packet.symmetricallyEncryptedData,u.packet.symEncryptedIntegrityProtectedData,u.packet.aeadEncryptedData].includes(d)}async function Fv(d,e){let t=od(d),i,a;try{let n=await t.peekBytes(2);if(!n||n.length<2||(n[0]&128)===0)throw new Error("Error during parsing. This message / key probably does not conform to a valid OpenPGP format.");let r=await t.readByte(),o=-1,s=-1,c;s=0,(r&64)!==0&&(s=1);let p;s?o=r&63:(o=(r&63)>>2,p=r&3);let l=wn(o),m=null;if(l){if(S.isStream(d)==="array"){let y=new St;i=ct(y),m=y}else{let y=new TransformStream;i=ct(y.writable),m=y.readable}a=e({tag:o,packet:m})}else m=[];let P;do{if(s){let y=await t.readByte();if(P=!1,y<192)c=y;else if(y>=192&&y<224)c=(y-192<<8)+await t.readByte()+192;else if(y>223&&y<255){if(c=1<<(y&31),P=!0,!l)throw new TypeError("This packet type does not support partial lengths.")}else c=await t.readByte()<<24|await t.readByte()<<16|await t.readByte()<<8|await t.readByte()}else switch(p){case 0:c=await t.readByte();break;case 1:c=await t.readByte()<<8|await t.readByte();break;case 2:c=await t.readByte()<<24|await t.readByte()<<16|await t.readByte()<<8|await t.readByte();break;default:c=1/0;break}if(c>0){let y=0;for(;;){i&&await i.ready;let{done:f,value:h}=await t.read();if(f){if(c===1/0)break;throw new Error("Unexpected end of packet")}let I=c===1/0?h:h.subarray(0,c-y);if(i?await i.write(I):m.push(I),y+=h.length,y>=c){t.unshift(h.subarray(c-y+h.length));break}}}}while(P);let g=await t.peekBytes(l?1/0:2);return i?(await i.ready,await i.close()):(m=S.concatUint8Array(m),await e({tag:o,packet:m})),!g||!g.length}catch(n){if(i)return await i.abort(n),!0;throw n}finally{i&&await a,t.releaseLock()}}var ye=class d extends Error{constructor(...e){super(...e),Error.captureStackTrace&&Error.captureStackTrace(this,d),this.name="UnsupportedError"}},Hn=class extends ye{constructor(...e){super(...e),Error.captureStackTrace&&Error.captureStackTrace(this,ye),this.name="UnknownPacketError"}},Ta=class{constructor(e,t){this.tag=e,this.rawContent=t}write(){return this.rawContent}};async function Ns(d){switch(d){case u.publicKey.ed25519:try{let e=S.getWebCrypto(),t=await e.generateKey("Ed25519",!0,["sign","verify"]),i=await e.exportKey("jwk",t.privateKey),a=await e.exportKey("jwk",t.publicKey);return{A:new Uint8Array(It(a.x)),seed:It(i.d,!0)}}catch(e){if(e.name!=="NotSupportedError"&&e.name!=="OperationError")throw e;let t=qe(Tr(d)),{publicKey:i}=Ie.sign.keyPair.fromSeed(t);return{A:i,seed:t}}case u.publicKey.ed448:{let e=await S.getNobleCurve(u.publicKey.ed448),t=e.utils.randomPrivateKey();return{A:e.getPublicKey(t),seed:t}}default:throw new Error("Unsupported EdDSA algorithm")}}async function As(d,e,t,i,a,n){if(Re(e)<Re(Xr(d)))throw new Error("Hash algorithm too weak for EdDSA.");switch(d){case u.publicKey.ed25519:try{let r=S.getWebCrypto(),o=Ev(d,i,a),s=await r.importKey("jwk",o,"Ed25519",!1,["sign"]);return{RS:new Uint8Array(await r.sign("Ed25519",s,n))}}catch(r){if(r.name!=="NotSupportedError")throw r;let o=S.concatUint8Array([a,i]);return{RS:Ie.sign.detached(n,o)}}case u.publicKey.ed448:return{RS:(await S.getNobleCurve(u.publicKey.ed448)).sign(n,a)};default:throw new Error("Unsupported EdDSA algorithm")}}async function ws(d,e,{RS:t},i,a,n){if(Re(e)<Re(Xr(d)))throw new Error("Hash algorithm too weak for EdDSA.");switch(d){case u.publicKey.ed25519:try{let r=S.getWebCrypto(),o=fb(d,a),s=await r.importKey("jwk",o,"Ed25519",!1,["verify"]);return await r.verify("Ed25519",s,t,n)}catch(r){if(r.name!=="NotSupportedError")throw r;return Ie.sign.detached.verify(n,t,a)}case u.publicKey.ed448:return(await S.getNobleCurve(u.publicKey.ed448)).verify(t,n,a);default:throw new Error("Unsupported EdDSA algorithm")}}async function Pb(d,e,t){switch(d){case u.publicKey.ed25519:{let{publicKey:i}=Ie.sign.keyPair.fromSeed(t);return S.equalsUint8Array(e,i)}case u.publicKey.ed448:{let a=(await S.getNobleCurve(u.publicKey.ed448)).getPublicKey(t);return S.equalsUint8Array(e,a)}default:return!1}}function Tr(d){switch(d){case u.publicKey.ed25519:return 32;case u.publicKey.ed448:return 57;default:throw new Error("Unsupported EdDSA algorithm")}}function Xr(d){switch(d){case u.publicKey.ed25519:return u.hash.sha256;case u.publicKey.ed448:return u.hash.sha512;default:throw new Error("Unknown EdDSA algo")}}var fb=(d,e)=>{switch(d){case u.publicKey.ed25519:return{kty:"OKP",crv:"Ed25519",x:ze(e),ext:!0};default:throw new Error("Unsupported EdDSA algorithm")}},Ev=(d,e,t)=>{switch(d){case u.publicKey.ed25519:{let i=fb(d,e);return i.d=ze(t),i}default:throw new Error("Unsupported EdDSA algorithm")}},Cv=Object.freeze({__proto__:null,generate:Ns,getPayloadSize:Tr,getPreferredHashAlgo:Xr,sign:As,validateParams:Pb,verify:ws});function gb(d){return d instanceof Uint8Array||d!=null&&typeof d=="object"&&d.constructor.name==="Uint8Array"}function oe(d,...e){if(!gb(d))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(d.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${d.length}`)}function Wn(d,e=!0){if(d.destroyed)throw new Error("Hash instance has been destroyed");if(e&&d.finished)throw new Error("Hash#digest() has already been called")}function hb(d,e){oe(d);let t=e.outputLen;if(d.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var Ms=d=>new Uint8Array(d.buffer,d.byteOffset,d.byteLength),me=d=>new Uint32Array(d.buffer,d.byteOffset,Math.floor(d.byteLength/4)),Dr=d=>new DataView(d.buffer,d.byteOffset,d.byteLength),vv=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!vv)throw new Error("Non little-endian hardware is not supported");function Tv(d){if(typeof d!="string")throw new Error(`string expected, got ${typeof d}`);return new Uint8Array(new TextEncoder().encode(d))}function Xa(d){if(typeof d=="string")d=Tv(d);else if(gb(d))d=dt(d);else throw new Error(`Uint8Array expected, got ${typeof d}`);return d}function Xv(...d){let e=0;for(let i=0;i<d.length;i++){let a=d[i];oe(a),e+=a.length}let t=new Uint8Array(e);for(let i=0,a=0;i<d.length;i++){let n=d[i];t.set(n,a),a+=n.length}return t}function Ib(d,e){if(d.length!==e.length)return!1;let t=0;for(let i=0;i<d.length;i++)t|=d[i]^e[i];return t===0}var Ga=(d,e)=>(Object.assign(e,d),e);function Go(d,e,t,i){if(typeof d.setBigUint64=="function")return d.setBigUint64(e,t,i);let a=BigInt(32),n=BigInt(4294967295),r=Number(t>>a&n),o=Number(t&n),s=0,c=4;d.setUint32(e+s,r,i),d.setUint32(e+c,o,i)}function yt(d){return d.byteOffset%4===0}function dt(d){return Uint8Array.from(d)}function Ge(...d){for(let e=0;e<d.length;e++)d[e].fill(0)}var Zt=16,Ls=new Uint8Array(16),Rt=me(Ls),Dv=225,Rv=(d,e,t,i)=>{let a=i&1;return{s3:t<<31|i>>>1,s2:e<<31|t>>>1,s1:d<<31|e>>>1,s0:d>>>1^Dv<<24&-(a&1)}},mt=d=>(d>>>0&255)<<24|(d>>>8&255)<<16|(d>>>16&255)<<8|d>>>24&255|0;function xv(d){d.reverse();let e=d[15]&1,t=0;for(let i=0;i<d.length;i++){let a=d[i];d[i]=a>>>1|t,t=(a&1)<<7}return d[0]^=-e&225,d}var Nv=d=>d>64*1024?8:d>1024?4:2,_n=class{constructor(e,t){this.blockLen=Zt,this.outputLen=Zt,this.s0=0,this.s1=0,this.s2=0,this.s3=0,this.finished=!1,e=Xa(e),oe(e,16);let i=Dr(e),a=i.getUint32(0,!1),n=i.getUint32(4,!1),r=i.getUint32(8,!1),o=i.getUint32(12,!1),s=[];for(let g=0;g<128;g++)s.push({s0:mt(a),s1:mt(n),s2:mt(r),s3:mt(o)}),{s0:a,s1:n,s2:r,s3:o}=Rv(a,n,r,o);let c=Nv(t||1024);if(![1,2,4,8].includes(c))throw new Error(`ghash: wrong window size=${c}, should be 2, 4 or 8`);this.W=c;let l=128/c,m=this.windowSize=2**c,P=[];for(let g=0;g<l;g++)for(let y=0;y<m;y++){let f=0,h=0,I=0,b=0;for(let F=0;F<c;F++){if(!(y>>>c-F-1&1))continue;let{s0:T,s1:x,s2:E,s3:D}=s[c*g+F];f^=T,h^=x,I^=E,b^=D}P.push({s0:f,s1:h,s2:I,s3:b})}this.t=P}_updateBlock(e,t,i,a){e^=this.s0,t^=this.s1,i^=this.s2,a^=this.s3;let{W:n,t:r,windowSize:o}=this,s=0,c=0,p=0,l=0,m=(1<<n)-1,P=0;for(let g of[e,t,i,a])for(let y=0;y<4;y++){let f=g>>>8*y&255;for(let h=8/n-1;h>=0;h--){let I=f>>>n*h&m,{s0:b,s1:F,s2:X,s3:T}=r[P*o+I];s^=b,c^=F,p^=X,l^=T,P+=1}}this.s0=s,this.s1=c,this.s2=p,this.s3=l}update(e){e=Xa(e),Wn(this);let t=me(e),i=Math.floor(e.length/Zt),a=e.length%Zt;for(let n=0;n<i;n++)this._updateBlock(t[n*4+0],t[n*4+1],t[n*4+2],t[n*4+3]);return a&&(Ls.set(e.subarray(i*Zt)),this._updateBlock(Rt[0],Rt[1],Rt[2],Rt[3]),Ge(Rt)),this}destroy(){let{t:e}=this;for(let t of e)t.s0=0,t.s1=0,t.s2=0,t.s3=0}digestInto(e){Wn(this),hb(e,this),this.finished=!0;let{s0:t,s1:i,s2:a,s3:n}=this,r=me(e);return r[0]=t,r[1]=i,r[2]=a,r[3]=n,e}digest(){let e=new Uint8Array(Zt);return this.digestInto(e),this.destroy(),e}},Qo=class extends _n{constructor(e,t){e=Xa(e);let i=xv(dt(e));super(i,t),Ge(i)}update(e){e=Xa(e),Wn(this);let t=me(e),i=e.length%Zt,a=Math.floor(e.length/Zt);for(let n=0;n<a;n++)this._updateBlock(mt(t[n*4+3]),mt(t[n*4+2]),mt(t[n*4+1]),mt(t[n*4+0]));return i&&(Ls.set(e.subarray(a*Zt)),this._updateBlock(mt(Rt[3]),mt(Rt[2]),mt(Rt[1]),mt(Rt[0])),Ge(Rt)),this}digestInto(e){Wn(this),hb(e,this),this.finished=!0;let{s0:t,s1:i,s2:a,s3:n}=this,r=me(e);return r[0]=t,r[1]=i,r[2]=a,r[3]=n,e.reverse()}};function bb(d){let e=(i,a)=>d(a,i.length).update(Xa(i)).digest(),t=d(new Uint8Array(16),0);return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=(i,a)=>d(i,a),e}var zI=bb((d,e)=>new _n(d,e));bb((d,e)=>new Qo(d,e));var He=16,Os=4,bn=new Uint8Array(He),Av=283;function ks(d){return d<<1^Av&-(d>>7)}function Mi(d,e){let t=0;for(;e>0;e>>=1)t^=d&-(e&1),d=ks(d);return t}var Vo=(()=>{let d=new Uint8Array(256);for(let t=0,i=1;t<256;t++,i^=ks(i))d[t]=i;let e=new Uint8Array(256);e[0]=99;for(let t=0;t<255;t++){let i=d[255-t];i|=i<<8,e[d[t]]=(i^i>>4^i>>5^i>>6^i>>7^99)&255}return Ge(d),e})(),wv=Vo.map((d,e)=>Vo.indexOf(e)),Mv=d=>d<<24|d>>>8,Po=d=>d<<8|d>>>24,HI=d=>d<<24&4278190080|d<<8&16711680|d>>>8&65280|d>>>24&255;function Fb(d,e){if(d.length!==256)throw new Error("Wrong sbox length");let t=new Uint32Array(256).map((c,p)=>e(d[p])),i=t.map(Po),a=i.map(Po),n=a.map(Po),r=new Uint32Array(256*256),o=new Uint32Array(256*256),s=new Uint16Array(256*256);for(let c=0;c<256;c++)for(let p=0;p<256;p++){let l=c*256+p;r[l]=t[c]^i[p],o[l]=a[c]^n[p],s[l]=d[c]<<8|d[p]}return{sbox:d,sbox2:s,T0:t,T1:i,T2:a,T3:n,T01:r,T23:o}}var Us=Fb(Vo,d=>Mi(d,3)<<24|d<<16|d<<8|Mi(d,2)),Eb=Fb(wv,d=>Mi(d,11)<<24|Mi(d,13)<<16|Mi(d,9)<<8|Mi(d,14)),Lv=(()=>{let d=new Uint8Array(16);for(let e=0,t=1;e<16;e++,t=ks(t))d[e]=t;return d})();function si(d){oe(d);let e=d.length;if(![16,24,32].includes(e))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${e}`);let{sbox2:t}=Us,i=[];yt(d)||i.push(d=dt(d));let a=me(d),n=a.length,r=s=>Nt(t,s,s,s,s),o=new Uint32Array(e+28);o.set(a);for(let s=n;s<o.length;s++){let c=o[s-1];s%n===0?c=r(Mv(c))^Lv[s/n-1]:n>6&&s%n===4&&(c=r(c)),o[s]=o[s-n]^c}return Ge(...i),o}function qs(d){let e=si(d),t=e.slice(),i=e.length,{sbox2:a}=Us,{T0:n,T1:r,T2:o,T3:s}=Eb;for(let c=0;c<i;c+=4)for(let p=0;p<4;p++)t[c+p]=e[i-c-4+p];Ge(e);for(let c=4;c<i-4;c++){let p=t[c],l=Nt(a,p,p,p,p);t[c]=n[l&255]^r[l>>>8&255]^o[l>>>16&255]^s[l>>>24]}return t}function Cd(d,e,t,i,a,n){return d[t<<8&65280|i>>>8&255]^e[a>>>8&65280|n>>>24&255]}function Nt(d,e,t,i,a){return d[e&255|t&65280]|d[i>>>16&255|a>>>16&65280]<<16}function Ft(d,e,t,i,a){let{sbox2:n,T01:r,T23:o}=Us,s=0;e^=d[s++],t^=d[s++],i^=d[s++],a^=d[s++];let c=d.length/4-2;for(let g=0;g<c;g++){let y=d[s++]^Cd(r,o,e,t,i,a),f=d[s++]^Cd(r,o,t,i,a,e),h=d[s++]^Cd(r,o,i,a,e,t),I=d[s++]^Cd(r,o,a,e,t,i);e=y,t=f,i=h,a=I}let p=d[s++]^Nt(n,e,t,i,a),l=d[s++]^Nt(n,t,i,a,e),m=d[s++]^Nt(n,i,a,e,t),P=d[s++]^Nt(n,a,e,t,i);return{s0:p,s1:l,s2:m,s3:P}}function Rr(d,e,t,i,a){let{sbox2:n,T01:r,T23:o}=Eb,s=0;e^=d[s++],t^=d[s++],i^=d[s++],a^=d[s++];let c=d.length/4-2;for(let g=0;g<c;g++){let y=d[s++]^Cd(r,o,e,a,i,t),f=d[s++]^Cd(r,o,t,e,a,i),h=d[s++]^Cd(r,o,i,t,e,a),I=d[s++]^Cd(r,o,a,i,t,e);e=y,t=f,i=h,a=I}let p=d[s++]^Nt(n,e,a,i,t),l=d[s++]^Nt(n,t,e,a,i),m=d[s++]^Nt(n,i,t,e,a),P=d[s++]^Nt(n,a,i,t,e);return{s0:p,s1:l,s2:m,s3:P}}function Qa(d,e){if(e===void 0)return new Uint8Array(d);if(oe(e),e.length<d)throw new Error(`aes: wrong destination length, expected at least ${d}, got: ${e.length}`);if(!yt(e))throw new Error("unaligned dst");return e}function Cb(d,e,t,i){oe(e,He),oe(t);let a=t.length;i=Qa(a,i);let n=e,r=me(n),{s0:o,s1:s,s2:c,s3:p}=Ft(d,r[0],r[1],r[2],r[3]),l=me(t),m=me(i);for(let g=0;g+4<=l.length;g+=4){m[g+0]=l[g+0]^o,m[g+1]=l[g+1]^s,m[g+2]=l[g+2]^c,m[g+3]=l[g+3]^p;let y=1;for(let f=n.length-1;f>=0;f--)y=y+(n[f]&255)|0,n[f]=y&255,y>>>=8;({s0:o,s1:s,s2:c,s3:p}=Ft(d,r[0],r[1],r[2],r[3]))}let P=He*Math.floor(l.length/Os);if(P<a){let g=new Uint32Array([o,s,c,p]),y=Ms(g);for(let f=P,h=0;f<a;f++,h++)i[f]=t[f]^y[h];Ge(g)}return i}function ha(d,e,t,i,a){oe(t,He),oe(i),a=Qa(i.length,a);let n=t,r=me(n),o=Dr(n),s=me(i),c=me(a),p=e?0:12,l=i.length,m=o.getUint32(p,e),{s0:P,s1:g,s2:y,s3:f}=Ft(d,r[0],r[1],r[2],r[3]);for(let I=0;I+4<=s.length;I+=4)c[I+0]=s[I+0]^P,c[I+1]=s[I+1]^g,c[I+2]=s[I+2]^y,c[I+3]=s[I+3]^f,m=m+1>>>0,o.setUint32(p,m,e),{s0:P,s1:g,s2:y,s3:f}=Ft(d,r[0],r[1],r[2],r[3]);let h=He*Math.floor(s.length/Os);if(h<l){let I=new Uint32Array([P,g,y,f]),b=Ms(I);for(let F=h,X=0;F<l;F++,X++)a[F]=i[F]^b[X];Ge(I)}return a}var Ov=Ga({blockSize:16,nonceLength:16},function(e,t){oe(e),oe(t,He);function i(a,n){if(oe(a),n!==void 0&&(oe(n),!yt(n)))throw new Error("unaligned destination");let r=si(e),o=dt(t),s=[r,o];yt(a)||s.push(a=dt(a));let c=Cb(r,o,a,n);return Ge(...s),c}return{encrypt:(a,n)=>i(a,n),decrypt:(a,n)=>i(a,n)}});function kv(d){if(oe(d),d.length%He!==0)throw new Error(`aes/(cbc-ecb).decrypt ciphertext should consist of blocks with size ${He}`)}function Uv(d,e,t){oe(d);let i=d.length,a=i%He;if(!e&&a!==0)throw new Error("aec/(cbc-ecb): unpadded plaintext with disabled padding");yt(d)||(d=dt(d));let n=me(d);if(e){let s=He-a;s||(s=He),i=i+s}let r=Qa(i,t),o=me(r);return{b:n,o,out:r}}function qv(d,e){if(!e)return d;let t=d.length;if(!t)throw new Error("aes/pcks5: empty ciphertext not allowed");let i=d[t-1];if(i<=0||i>16)throw new Error("aes/pcks5: wrong padding");let a=d.subarray(0,-i);for(let n=0;n<i;n++)if(d[t-n-1]!==i)throw new Error("aes/pcks5: wrong padding");return a}function Bv(d){let e=new Uint8Array(16),t=me(e);e.set(d);let i=He-d.length;for(let a=He-i;a<He;a++)e[a]=i;return t}var vb=Ga({blockSize:16,nonceLength:16},function(e,t,i={}){oe(e),oe(t,16);let a=!i.disablePadding;return{encrypt(n,r){let o=si(e),{b:s,o:c,out:p}=Uv(n,a,r),l=t,m=[o];yt(l)||m.push(l=dt(l));let P=me(l),g=P[0],y=P[1],f=P[2],h=P[3],I=0;for(;I+4<=s.length;)g^=s[I+0],y^=s[I+1],f^=s[I+2],h^=s[I+3],{s0:g,s1:y,s2:f,s3:h}=Ft(o,g,y,f,h),c[I++]=g,c[I++]=y,c[I++]=f,c[I++]=h;if(a){let b=Bv(n.subarray(I*4));g^=b[0],y^=b[1],f^=b[2],h^=b[3],{s0:g,s1:y,s2:f,s3:h}=Ft(o,g,y,f,h),c[I++]=g,c[I++]=y,c[I++]=f,c[I++]=h}return Ge(...m),p},decrypt(n,r){kv(n);let o=qs(e),s=t,c=[o];yt(s)||c.push(s=dt(s));let p=me(s),l=Qa(n.length,r);yt(n)||c.push(n=dt(n));let m=me(n),P=me(l),g=p[0],y=p[1],f=p[2],h=p[3];for(let I=0;I+4<=m.length;){let b=g,F=y,X=f,T=h;g=m[I+0],y=m[I+1],f=m[I+2],h=m[I+3];let{s0:x,s1:E,s2:D,s3:v}=Rr(o,g,y,f,h);P[I++]=x^b,P[I++]=E^F,P[I++]=D^X,P[I++]=v^T}return Ge(...c),qv(l,a)}}}),Tb=Ga({blockSize:16,nonceLength:16},function(e,t){oe(e),oe(t,16);function i(a,n,r){oe(a);let o=a.length;r=Qa(o,r);let s=si(e),c=t,p=[s];yt(c)||p.push(c=dt(c)),yt(a)||p.push(a=dt(a));let l=me(a),m=me(r),P=n?m:l,g=me(c),y=g[0],f=g[1],h=g[2],I=g[3];for(let F=0;F+4<=l.length;){let{s0:X,s1:T,s2:x,s3:E}=Ft(s,y,f,h,I);m[F+0]=l[F+0]^X,m[F+1]=l[F+1]^T,m[F+2]=l[F+2]^x,m[F+3]=l[F+3]^E,y=P[F++],f=P[F++],h=P[F++],I=P[F++]}let b=He*Math.floor(l.length/Os);if(b<o){({s0:y,s1:f,s2:h,s3:I}=Ft(s,y,f,h,I));let F=Ms(new Uint32Array([y,f,h,I]));for(let X=b,T=0;X<o;X++,T++)r[X]=a[X]^F[T];Ge(F)}return Ge(...p),r}return{encrypt:(a,n)=>i(a,!0,n),decrypt:(a,n)=>i(a,!1,n)}});function jv(d,e,t,i,a){let n=a==null?0:a.length,r=d.create(t,i.length+n);a&&r.update(a),r.update(i);let o=new Uint8Array(16),s=Dr(o);a&&Go(s,0,BigInt(n*8),e),Go(s,8,BigInt(i.length*8),e),r.update(o);let c=r.digest();return Ge(o),c}var Fn=Ga({blockSize:16,nonceLength:12,tagLength:16},function(e,t,i){if(oe(e),oe(t),i!==void 0&&oe(i),t.length<8)throw new Error("aes/gcm: invalid nonce length");let a=16;function n(o,s,c){let p=jv(zI,!1,o,c,i);for(let l=0;l<s.length;l++)p[l]^=s[l];return p}function r(){let o=si(e),s=bn.slice(),c=bn.slice();if(ha(o,!1,c,c,s),t.length===12)c.set(t);else{let l=bn.slice(),m=Dr(l);Go(m,8,BigInt(t.length*8),!1);let P=zI.create(s).update(t).update(l);P.digestInto(c),P.destroy()}let p=ha(o,!1,c,bn);return{xk:o,authKey:s,counter:c,tagMask:p}}return{encrypt(o){oe(o);let{xk:s,authKey:c,counter:p,tagMask:l}=r(),m=new Uint8Array(o.length+a),P=[s,c,p,l];yt(o)||P.push(o=dt(o)),ha(s,!1,p,o,m);let g=n(c,l,m.subarray(0,m.length-a));return P.push(g),m.set(g,o.length),Ge(...P),m},decrypt(o){if(oe(o),o.length<a)throw new Error(`aes/gcm: ciphertext less than tagLen (${a})`);let{xk:s,authKey:c,counter:p,tagMask:l}=r(),m=[s,c,l,p];yt(o)||m.push(o=dt(o));let P=o.subarray(0,-a),g=o.subarray(-a),y=n(c,l,P);if(m.push(y),!Ib(y,g))throw new Error("aes/gcm: invalid ghash tag");let f=ha(s,!1,p,P);return Ge(...m),f}}});function Xb(d){return d!=null&&typeof d=="object"&&(d instanceof Uint32Array||d.constructor.name==="Uint32Array")}function Db(d,e){if(oe(e,16),!Xb(d))throw new Error("_encryptBlock accepts result of expandKeyLE");let t=me(e),{s0:i,s1:a,s2:n,s3:r}=Ft(d,t[0],t[1],t[2],t[3]);return t[0]=i,t[1]=a,t[2]=n,t[3]=r,e}function Rb(d,e){if(oe(e,16),!Xb(d))throw new Error("_decryptBlock accepts result of expandKeyLE");let t=me(e),{s0:i,s1:a,s2:n,s3:r}=Rr(d,t[0],t[1],t[2],t[3]);return t[0]=i,t[1]=a,t[2]=n,t[3]=r,e}var WI={encrypt(d,e){if(e.length>=2**32)throw new Error("plaintext should be less than 4gb");let t=si(d);if(e.length===16)Db(t,e);else{let i=me(e),a=i[0],n=i[1];for(let r=0,o=1;r<6;r++)for(let s=2;s<i.length;s+=2,o++){let{s0:c,s1:p,s2:l,s3:m}=Ft(t,a,n,i[s],i[s+1]);a=c,n=p^HI(o),i[s]=l,i[s+1]=m}i[0]=a,i[1]=n}t.fill(0)},decrypt(d,e){if(e.length-8>=2**32)throw new Error("ciphertext should be less than 4gb");let t=qs(d),i=e.length/8-1;if(i===1)Rb(t,e);else{let a=me(e),n=a[0],r=a[1];for(let o=0,s=i*6;o<6;o++)for(let c=i*2;c>=1;c-=2,s--){r^=HI(s);let{s0:p,s1:l,s2:m,s3:P}=Rr(t,n,r,a[c],a[c+1]);n=p,r=l,a[c]=m,a[c+1]=P}a[0]=n,a[1]=r}t.fill(0)}},_I=new Uint8Array(8).fill(166),xb=Ga({blockSize:8},d=>({encrypt(e){if(oe(e),!e.length||e.length%8!==0)throw new Error("invalid plaintext length");if(e.length===8)throw new Error("8-byte keys not allowed in AESKW, use AESKWP instead");let t=Xv(_I,e);return WI.encrypt(d,t),t},decrypt(e){if(oe(e),e.length%8!==0||e.length<3*8)throw new Error("invalid ciphertext length");let t=dt(e);if(WI.decrypt(d,t),!Ib(t.subarray(0,8),_I))throw new Error("integrity check failed");return t.subarray(0,8).fill(0),t.subarray(8)}})),KI={expandKeyLE:si,expandKeyDecLE:qs,encrypt:Ft,decrypt:Rr,encryptBlock:Db,decryptBlock:Rb,ctrCounter:Cb,ctr32:ha};async function Nb(d){switch(d){case u.symmetric.aes128:case u.symmetric.aes192:case u.symmetric.aes256:throw new Error("Not a legacy cipher");case u.symmetric.cast5:case u.symmetric.blowfish:case u.symmetric.twofish:case u.symmetric.tripledes:{let{legacyCiphers:e}=await Promise.resolve().then(function(){return z6}),t=u.read(u.symmetric,d),i=e.get(t);if(!i)throw new Error("Unsupported cipher algorithm");return i}default:throw new Error("Unsupported cipher algorithm")}}function Gv(d){switch(d){case u.symmetric.aes128:case u.symmetric.aes192:case u.symmetric.aes256:case u.symmetric.twofish:return 16;case u.symmetric.blowfish:case u.symmetric.cast5:case u.symmetric.tripledes:return 8;default:throw new Error("Unsupported cipher")}}function Qv(d){switch(d){case u.symmetric.aes128:case u.symmetric.blowfish:case u.symmetric.cast5:return 16;case u.symmetric.aes192:case u.symmetric.tripledes:return 24;case u.symmetric.aes256:case u.symmetric.twofish:return 32;default:throw new Error("Unsupported cipher")}}function Pe(d){return{keySize:Qv(d),blockSize:Gv(d)}}var Ui=S.getWebCrypto();async function zo(d,e,t){let{keySize:i}=Pe(d);if(!S.isAES(d)||e.length!==i)throw new Error("Unexpected algorithm or key size");try{let a=await Ui.importKey("raw",e,{name:"AES-KW"},!1,["wrapKey"]),n=await Ui.importKey("raw",t,{name:"HMAC",hash:"SHA-256"},!0,["sign"]),r=await Ui.wrapKey("raw",n,a,{name:"AES-KW"});return new Uint8Array(r)}catch(a){if(a.name!=="NotSupportedError"&&!(e.length===24&&a.name==="OperationError"))throw a;S.printDebugError("Browser did not support operation: "+a.message)}return xb(e).encrypt(t)}async function Ho(d,e,t){let{keySize:i}=Pe(d);if(!S.isAES(d)||e.length!==i)throw new Error("Unexpected algorithm or key size");let a;try{a=await Ui.importKey("raw",e,{name:"AES-KW"},!1,["unwrapKey"])}catch(n){if(n.name!=="NotSupportedError"&&!(e.length===24&&n.name==="OperationError"))throw n;return S.printDebugError("Browser did not support operation: "+n.message),xb(e).decrypt(t)}try{let n=await Ui.unwrapKey("raw",t,a,{name:"AES-KW"},{name:"HMAC",hash:"SHA-256"},!0,["sign"]);return new Uint8Array(await Ui.exportKey("raw",n))}catch(n){throw n.name==="OperationError"?new Error("Key Data Integrity failed"):n}}var YI=S.getWebCrypto();async function xd(d,e,t,i,a){let n=u.read(u.webHash,d);if(!n)throw new Error("Hash algo not supported with HKDF");let r=await YI.importKey("raw",e,"HKDF",!1,["deriveBits"]),o=await YI.deriveBits({name:"HKDF",hash:n,salt:t,info:i},r,a*8);return new Uint8Array(o)}var Kn={x25519:S.encodeUTF8("OpenPGP X25519"),x448:S.encodeUTF8("OpenPGP X448")};async function Bs(d){switch(d){case u.publicKey.x25519:{let e=qe(32),{publicKey:t}=Ie.box.keyPair.fromSecretKey(e);return{A:t,k:e}}case u.publicKey.x448:{let e=await S.getNobleCurve(u.publicKey.x448),t=e.utils.randomPrivateKey();return{A:e.getPublicKey(t),k:t}}default:throw new Error("Unsupported ECDH algorithm")}}async function Ab(d,e,t){switch(d){case u.publicKey.x25519:{let{publicKey:i}=Ie.box.keyPair.fromSecretKey(t);return S.equalsUint8Array(e,i)}case u.publicKey.x448:{let a=(await S.getNobleCurve(u.publicKey.x448)).getPublicKey(t);return S.equalsUint8Array(e,a)}default:return!1}}async function wb(d,e,t){let{ephemeralPublicKey:i,sharedSecret:a}=await Gs(d,t),n=S.concatUint8Array([i,t,a]);switch(d){case u.publicKey.x25519:{let r=u.symmetric.aes128,{keySize:o}=Pe(r),s=await xd(u.hash.sha256,n,new Uint8Array,Kn.x25519,o),c=await zo(r,s,e);return{ephemeralPublicKey:i,wrappedKey:c}}case u.publicKey.x448:{let r=u.symmetric.aes256,{keySize:o}=Pe(u.symmetric.aes256),s=await xd(u.hash.sha512,n,new Uint8Array,Kn.x448,o),c=await zo(r,s,e);return{ephemeralPublicKey:i,wrappedKey:c}}default:throw new Error("Unsupported ECDH algorithm")}}async function Mb(d,e,t,i,a){let n=await Qs(d,e,i,a),r=S.concatUint8Array([e,i,n]);switch(d){case u.publicKey.x25519:{let o=u.symmetric.aes128,{keySize:s}=Pe(o),c=await xd(u.hash.sha256,r,new Uint8Array,Kn.x25519,s);return Ho(o,c,t)}case u.publicKey.x448:{let o=u.symmetric.aes256,{keySize:s}=Pe(u.symmetric.aes256),c=await xd(u.hash.sha512,r,new Uint8Array,Kn.x448,s);return Ho(o,c,t)}default:throw new Error("Unsupported ECDH algorithm")}}function js(d){switch(d){case u.publicKey.x25519:return 32;case u.publicKey.x448:return 56;default:throw new Error("Unsupported ECDH algorithm")}}async function Gs(d,e){switch(d){case u.publicKey.x25519:{let t=qe(js(d)),i=Ie.scalarMult(t,e);Yn(i);let{publicKey:a}=Ie.box.keyPair.fromSecretKey(t);return{ephemeralPublicKey:a,sharedSecret:i}}case u.publicKey.x448:{let t=await S.getNobleCurve(u.publicKey.x448),i=t.utils.randomPrivateKey(),a=t.getSharedSecret(i,e);return Yn(a),{ephemeralPublicKey:t.getPublicKey(i),sharedSecret:a}}default:throw new Error("Unsupported ECDH algorithm")}}async function Qs(d,e,t,i){switch(d){case u.publicKey.x25519:{let a=Ie.scalarMult(i,e);return Yn(a),a}case u.publicKey.x448:{let n=(await S.getNobleCurve(u.publicKey.x448)).getSharedSecret(i,e);return Yn(n),n}default:throw new Error("Unsupported ECDH algorithm")}}function Yn(d){let e=0;for(let t=0;t<d.length;t++)e|=d[t];if(e===0)throw new Error("Unexpected low order point")}var Vv=Object.freeze({__proto__:null,decrypt:Mb,encrypt:wb,generate:Bs,generateEphemeralEncryptionMaterial:Gs,getPayloadSize:js,recomputeSharedSecret:Qs,validateParams:Ab}),fo=S.getWebCrypto(),Jn=S.getNodeCrypto(),Mt={[u.curve.nistP256]:"P-256",[u.curve.nistP384]:"P-384",[u.curve.nistP521]:"P-521"},Ht=Jn?Jn.getCurves():[],Xt=Jn?{[u.curve.secp256k1]:Ht.includes("secp256k1")?"secp256k1":void 0,[u.curve.nistP256]:Ht.includes("prime256v1")?"prime256v1":void 0,[u.curve.nistP384]:Ht.includes("secp384r1")?"secp384r1":void 0,[u.curve.nistP521]:Ht.includes("secp521r1")?"secp521r1":void 0,[u.curve.ed25519Legacy]:Ht.includes("ED25519")?"ED25519":void 0,[u.curve.curve25519Legacy]:Ht.includes("X25519")?"X25519":void 0,[u.curve.brainpoolP256r1]:Ht.includes("brainpoolP256r1")?"brainpoolP256r1":void 0,[u.curve.brainpoolP384r1]:Ht.includes("brainpoolP384r1")?"brainpoolP384r1":void 0,[u.curve.brainpoolP512r1]:Ht.includes("brainpoolP512r1")?"brainpoolP512r1":void 0}:{},Lb={[u.curve.nistP256]:{oid:[6,8,42,134,72,206,61,3,1,7],keyType:u.publicKey.ecdsa,hash:u.hash.sha256,cipher:u.symmetric.aes128,node:Xt[u.curve.nistP256],web:Mt[u.curve.nistP256],payloadSize:32,sharedSize:256,wireFormatLeadingByte:4},[u.curve.nistP384]:{oid:[6,5,43,129,4,0,34],keyType:u.publicKey.ecdsa,hash:u.hash.sha384,cipher:u.symmetric.aes192,node:Xt[u.curve.nistP384],web:Mt[u.curve.nistP384],payloadSize:48,sharedSize:384,wireFormatLeadingByte:4},[u.curve.nistP521]:{oid:[6,5,43,129,4,0,35],keyType:u.publicKey.ecdsa,hash:u.hash.sha512,cipher:u.symmetric.aes256,node:Xt[u.curve.nistP521],web:Mt[u.curve.nistP521],payloadSize:66,sharedSize:528,wireFormatLeadingByte:4},[u.curve.secp256k1]:{oid:[6,5,43,129,4,0,10],keyType:u.publicKey.ecdsa,hash:u.hash.sha256,cipher:u.symmetric.aes128,node:Xt[u.curve.secp256k1],payloadSize:32,wireFormatLeadingByte:4},[u.curve.ed25519Legacy]:{oid:[6,9,43,6,1,4,1,218,71,15,1],keyType:u.publicKey.eddsaLegacy,hash:u.hash.sha512,node:!1,payloadSize:32,wireFormatLeadingByte:64},[u.curve.curve25519Legacy]:{oid:[6,10,43,6,1,4,1,151,85,1,5,1],keyType:u.publicKey.ecdh,hash:u.hash.sha256,cipher:u.symmetric.aes128,node:!1,payloadSize:32,wireFormatLeadingByte:64},[u.curve.brainpoolP256r1]:{oid:[6,9,43,36,3,3,2,8,1,1,7],keyType:u.publicKey.ecdsa,hash:u.hash.sha256,cipher:u.symmetric.aes128,node:Xt[u.curve.brainpoolP256r1],payloadSize:32,wireFormatLeadingByte:4},[u.curve.brainpoolP384r1]:{oid:[6,9,43,36,3,3,2,8,1,1,11],keyType:u.publicKey.ecdsa,hash:u.hash.sha384,cipher:u.symmetric.aes192,node:Xt[u.curve.brainpoolP384r1],payloadSize:48,wireFormatLeadingByte:4},[u.curve.brainpoolP512r1]:{oid:[6,9,43,36,3,3,2,8,1,1,13],keyType:u.publicKey.ecdsa,hash:u.hash.sha512,cipher:u.symmetric.aes256,node:Xt[u.curve.brainpoolP512r1],payloadSize:64,wireFormatLeadingByte:4}},it=class{constructor(e){try{this.name=e instanceof dd?e.getName():u.write(u.curve,e)}catch{throw new ye("Unknown curve")}let t=Lb[this.name];this.keyType=t.keyType,this.oid=t.oid,this.hash=t.hash,this.cipher=t.cipher,this.node=t.node,this.web=t.web,this.payloadSize=t.payloadSize,this.sharedSize=t.sharedSize,this.wireFormatLeadingByte=t.wireFormatLeadingByte,this.web&&S.getWebCrypto()?this.type="web":this.node&&S.getNodeCrypto()?this.type="node":this.name===u.curve.curve25519Legacy?this.type="curve25519Legacy":this.name===u.curve.ed25519Legacy&&(this.type="ed25519Legacy")}async genKeyPair(){switch(this.type){case"web":try{return await zv(this.name,this.wireFormatLeadingByte)}catch(e){return S.printDebugError("Browser did not support generating ec key "+e.message),JI(this.name)}case"node":return Hv(this.name);case"curve25519Legacy":{let{k:e,A:t}=await Bs(u.publicKey.x25519),i=e.slice().reverse();return i[0]=i[0]&127|64,i[31]&=248,{publicKey:S.concatUint8Array([new Uint8Array([this.wireFormatLeadingByte]),t]),privateKey:i}}case"ed25519Legacy":{let{seed:e,A:t}=await Ns(u.publicKey.ed25519);return{publicKey:S.concatUint8Array([new Uint8Array([this.wireFormatLeadingByte]),t]),privateKey:e}}default:return JI(this.name)}}};async function Mn(d){let e=new it(d),{oid:t,hash:i,cipher:a}=e,n=await e.genKeyPair();return{oid:t,Q:n.publicKey,secret:S.leftPad(n.privateKey,e.payloadSize),hash:i,cipher:a}}function Ob(d){return Lb[d.getName()].hash}async function kb(d,e,t,i){let a={[u.curve.nistP256]:!0,[u.curve.nistP384]:!0,[u.curve.nistP521]:!0,[u.curve.secp256k1]:!0,[u.curve.curve25519Legacy]:d===u.publicKey.ecdh,[u.curve.brainpoolP256r1]:!0,[u.curve.brainpoolP384r1]:!0,[u.curve.brainpoolP512r1]:!0},n=e.getName();if(!a[n])return!1;if(n===u.curve.curve25519Legacy){i=i.slice().reverse();let{publicKey:s}=Ie.box.keyPair.fromSecretKey(i);t=new Uint8Array(t);let c=new Uint8Array([64,...s]);return!!S.equalsUint8Array(c,t)}let o=(await S.getNobleCurve(u.publicKey.ecdsa,n)).getPublicKey(i,!1);return!!S.equalsUint8Array(o,t)}function ti(d,e){let{payloadSize:t,wireFormatLeadingByte:i,name:a}=d,n=a===u.curve.curve25519Legacy||a===u.curve.ed25519Legacy?t:t*2;if(e[0]!==i||e.length!==n+1)throw new Error("Invalid point encoding")}async function JI(d){let e=await S.getNobleCurve(u.publicKey.ecdsa,d),t=e.utils.randomPrivateKey();return{publicKey:e.getPublicKey(t,!1),privateKey:t}}async function zv(d,e){let t=await fo.generateKey({name:"ECDSA",namedCurve:Mt[d]},!0,["sign","verify"]),i=await fo.exportKey("jwk",t.privateKey),a=await fo.exportKey("jwk",t.publicKey);return{publicKey:Ub(a,e),privateKey:It(i.d)}}async function Hv(d){let e=Jn.createECDH(Xt[d]);return await e.generateKeys(),{publicKey:new Uint8Array(e.getPublicKey()),privateKey:new Uint8Array(e.getPrivateKey())}}function Ub(d,e){let t=It(d.x),i=It(d.y),a=new Uint8Array(t.length+i.length+1);return a[0]=e,a.set(t,1),a.set(i,t.length+1),a}function xr(d,e,t){let i=d,a=t.slice(1,i+1),n=t.slice(i+1,i*2+1);return{kty:"EC",crv:e,x:ze(a),y:ze(n),ext:!0}}function qb(d,e,t,i){let a=xr(d,e,t);return a.d=ze(i),a}var $n=S.getWebCrypto(),Bb=S.getNodeCrypto();async function Vs(d,e,t,i,a,n){let r=new it(d);if(ti(r,i),t&&!S.isStream(t)){let c={publicKey:i,privateKey:a};switch(r.type){case"web":try{return await _v(r,e,t,c)}catch(p){if(r.name!=="nistP521"&&(p.name==="DataError"||p.name==="OperationError"))throw p;S.printDebugError("Browser did not support signing: "+p.message)}break;case"node":return Yv(r,e,t,a)}}let s=(await S.getNobleCurve(u.publicKey.ecdsa,r.name)).sign(n,a,{lowS:!1});return{r:Te(s.r,"be",r.payloadSize),s:Te(s.s,"be",r.payloadSize)}}async function zs(d,e,t,i,a,n){let r=new it(d);ti(r,a);let o=async()=>n[0]===0?$I(r,t,n.subarray(1),a):!1;if(i&&!S.isStream(i))switch(r.type){case"web":try{return await Kv(r,e,t,i,a)||o()}catch(c){if(r.name!=="nistP521"&&(c.name==="DataError"||c.name==="OperationError"))throw c;S.printDebugError("Browser did not support verifying: "+c.message)}break;case"node":return await Jv(r,e,t,i,a)||o()}return await $I(r,t,n,a)||o()}async function Wv(d,e,t){let i=new it(d);if(i.keyType!==u.publicKey.ecdsa)return!1;switch(i.type){case"web":case"node":{let a=qe(8),n=u.hash.sha256,r=await Ot(n,a);try{let o=await Vs(d,n,a,e,t,r);return await zs(d,n,o,a,e,r)}catch{return!1}}default:return kb(u.publicKey.ecdsa,d,e,t)}}async function $I(d,e,t,i){return(await S.getNobleCurve(u.publicKey.ecdsa,d.name)).verify(S.concatUint8Array([e.r,e.s]),t,i,{lowS:!1})}async function _v(d,e,t,i){let a=d.payloadSize,n=qb(d.payloadSize,Mt[d.name],i.publicKey,i.privateKey),r=await $n.importKey("jwk",n,{name:"ECDSA",namedCurve:Mt[d.name],hash:{name:u.read(u.webHash,d.hash)}},!1,["sign"]),o=new Uint8Array(await $n.sign({name:"ECDSA",namedCurve:Mt[d.name],hash:{name:u.read(u.webHash,e)}},r,t));return{r:o.slice(0,a),s:o.slice(a,a<<1)}}async function Kv(d,e,{r:t,s:i},a,n){let r=xr(d.payloadSize,Mt[d.name],n),o=await $n.importKey("jwk",r,{name:"ECDSA",namedCurve:Mt[d.name],hash:{name:u.read(u.webHash,d.hash)}},!1,["verify"]),s=S.concatUint8Array([t,i]).buffer;return $n.verify({name:"ECDSA",namedCurve:Mt[d.name],hash:{name:u.read(u.webHash,e)}},o,s,a)}async function Yv(d,e,t,i){let a=S.nodeRequire("eckey-utils"),n=S.getNodeBuffer(),{privateKey:r}=a.generateDer({curveName:Xt[d.name],privateKey:n.from(i)}),o=Bb.createSign(u.read(u.hash,e));o.write(t),o.end();let s=new Uint8Array(o.sign({key:r,format:"der",type:"sec1",dsaEncoding:"ieee-p1363"})),c=d.payloadSize;return{r:s.subarray(0,c),s:s.subarray(c,c<<1)}}async function Jv(d,e,{r:t,s:i},a,n){let r=S.nodeRequire("eckey-utils"),o=S.getNodeBuffer(),{publicKey:s}=r.generateDer({curveName:Xt[d.name],publicKey:o.from(n)}),c=Bb.createVerify(u.read(u.hash,e));c.write(a),c.end();let p=S.concatUint8Array([t,i]);try{return c.verify({key:s,format:"der",type:"spki",dsaEncoding:"ieee-p1363"},p)}catch{return!1}}var $v=Object.freeze({__proto__:null,sign:Vs,validateParams:Wv,verify:zs});async function jb(d,e,t,i,a,n){let r=new it(d);if(ti(r,i),Re(e)<Re(u.hash.sha256))throw new Error("Hash algorithm too weak for EdDSA.");let{RS:o}=await As(u.publicKey.ed25519,e,t,i.subarray(1),a,n);return{r:o.subarray(0,32),s:o.subarray(32)}}async function Gb(d,e,{r:t,s:i},a,n,r){let o=new it(d);if(ti(o,n),Re(e)<Re(u.hash.sha256))throw new Error("Hash algorithm too weak for EdDSA.");let s=S.concatUint8Array([t,i]);return ws(u.publicKey.ed25519,e,{RS:s},a,n.subarray(1),r)}async function Qb(d,e,t){if(d.getName()!==u.curve.ed25519Legacy)return!1;let{publicKey:i}=Ie.sign.keyPair.fromSeed(t),a=new Uint8Array([64,...i]);return S.equalsUint8Array(e,a)}var Zv=Object.freeze({__proto__:null,sign:jb,validateParams:Qb,verify:Gb});function eT(d){let e=8-d.length%8,t=new Uint8Array(d.length+e).fill(e);return t.set(d),t}function tT(d){let e=d.length;if(e>0){let t=d[e-1];if(t>=1){let i=d.subarray(e-t),a=new Uint8Array(t).fill(t);if(S.equalsUint8Array(i,a))return d.subarray(0,e-t)}}throw new Error("Invalid padding")}var vd=S.getWebCrypto(),Vb=S.getNodeCrypto();async function dT(d,e,t){return kb(u.publicKey.ecdh,d,e,t)}function zb(d,e,t,i){return S.concatUint8Array([e.write(),new Uint8Array([d]),t.write(),S.stringToUint8Array("Anonymous Sender "),i])}async function Hb(d,e,t,i,a=!1,n=!1){let r;if(a){for(r=0;r<e.length&&e[r]===0;r++);e=e.subarray(r)}if(n){for(r=e.length-1;r>=0&&e[r]===0;r--);e=e.subarray(0,r+1)}return(await Ot(d,S.concatUint8Array([new Uint8Array([0,0,0,1]),e,i]))).subarray(0,t)}async function iT(d,e){switch(d.type){case"curve25519Legacy":{let{sharedSecret:t,ephemeralPublicKey:i}=await Gs(u.publicKey.x25519,e.subarray(1));return{publicKey:S.concatUint8Array([new Uint8Array([d.wireFormatLeadingByte]),i]),sharedKey:t}}case"web":if(d.web&&S.getWebCrypto())try{return await rT(d,e)}catch(t){return S.printDebugError(t),e4(d,e)}break;case"node":return sT(d,e);default:return e4(d,e)}}async function Wb(d,e,t,i,a){let n=eT(t),r=new it(d);ti(r,i);let{publicKey:o,sharedKey:s}=await iT(r,i),c=zb(u.publicKey.ecdh,d,e,a),{keySize:p}=Pe(e.cipher),l=await Hb(e.hash,s,p,c),m=await zo(e.cipher,l,n);return{publicKey:o,wrappedKey:m}}async function aT(d,e,t,i){if(i.length!==d.payloadSize){let a=new Uint8Array(d.payloadSize);a.set(i,d.payloadSize-i.length),i=a}switch(d.type){case"curve25519Legacy":{let a=i.slice().reverse(),n=await Qs(u.publicKey.x25519,e.subarray(1),t.subarray(1),a);return{secretKey:a,sharedKey:n}}case"web":if(d.web&&S.getWebCrypto())try{return await nT(d,e,t,i)}catch(a){return S.printDebugError(a),ZI(d,e,i)}break;case"node":return oT(d,e,i);default:return ZI(d,e,i)}}async function _b(d,e,t,i,a,n,r){let o=new it(d);ti(o,a),ti(o,t);let{sharedKey:s}=await aT(o,t,a,n),c=zb(u.publicKey.ecdh,d,e,r),{keySize:p}=Pe(e.cipher),l;for(let m=0;m<3;m++)try{let P=await Hb(e.hash,s,p,c,m===1,m===2);return tT(await Ho(e.cipher,P,i))}catch(P){l=P}throw l}async function ZI(d,e,t){let n=(await S.getNobleCurve(u.publicKey.ecdh,d.name)).getSharedSecret(t,e).subarray(1);return{secretKey:t,sharedKey:n}}async function e4(d,e){let t=await S.getNobleCurve(u.publicKey.ecdh,d.name),{publicKey:i,privateKey:a}=await d.genKeyPair(),r=t.getSharedSecret(a,e).subarray(1);return{publicKey:i,sharedKey:r}}async function nT(d,e,t,i){let a=qb(d.payloadSize,d.web,t,i),n=vd.importKey("jwk",a,{name:"ECDH",namedCurve:d.web},!0,["deriveKey","deriveBits"]),r=xr(d.payloadSize,d.web,e),o=vd.importKey("jwk",r,{name:"ECDH",namedCurve:d.web},!0,[]);[n,o]=await Promise.all([n,o]);let s=vd.deriveBits({name:"ECDH",namedCurve:d.web,public:o},n,d.sharedSize),c=vd.exportKey("jwk",n);[s,c]=await Promise.all([s,c]);let p=new Uint8Array(s);return{secretKey:It(c.d),sharedKey:p}}async function rT(d,e){let t=xr(d.payloadSize,d.web,e),i=vd.generateKey({name:"ECDH",namedCurve:d.web},!0,["deriveKey","deriveBits"]),a=vd.importKey("jwk",t,{name:"ECDH",namedCurve:d.web},!1,[]);[i,a]=await Promise.all([i,a]);let n=vd.deriveBits({name:"ECDH",namedCurve:d.web,public:a},i.privateKey,d.sharedSize),r=vd.exportKey("jwk",i.publicKey);[n,r]=await Promise.all([n,r]);let o=new Uint8Array(n);return{publicKey:new Uint8Array(Ub(r,d.wireFormatLeadingByte)),sharedKey:o}}async function oT(d,e,t){let i=Vb.createECDH(d.node);i.setPrivateKey(t);let a=new Uint8Array(i.computeSecret(e));return{secretKey:new Uint8Array(i.getPrivateKey()),sharedKey:a}}async function sT(d,e){let t=Vb.createECDH(d.node);t.generateKeys();let i=new Uint8Array(t.computeSecret(e));return{publicKey:new Uint8Array(t.getPublicKey()),sharedKey:i}}var cT=Object.freeze({__proto__:null,decrypt:_b,encrypt:Wb,validateParams:dT}),pT=Object.freeze({__proto__:null,CurveWithOID:it,ecdh:cT,ecdhX:Vv,ecdsa:$v,eddsa:Cv,eddsaLegacy:Zv,generate:Mn,getPreferredHashAlgo:Ob}),Ln=BigInt(0),Ia=BigInt(1);async function uT(d,e,t,i,a,n){let r=BigInt(0);i=$(i),a=$(a),t=$(t),n=$(n);let o,s,c,p;t=ae(t,i),n=ae(n,a);let l=ae($(e.subarray(0,tt(a))),a);for(;;){if(o=Md(Ia,a),s=ae(Le(t,o,i),a),s===r)continue;let m=ae(n*s,a);if(p=ae(l+m,a),c=ae(Bi(o,a)*p,a),c!==r)break}return{r:Te(s,"be",tt(i)),s:Te(c,"be",tt(i))}}async function lT(d,e,t,i,a,n,r,o){if(e=$(e),t=$(t),n=$(n),r=$(r),a=$(a),o=$(o),e<=Ln||e>=r||t<=Ln||t>=r)return S.printDebug("invalid DSA Signature"),!1;let s=ae($(i.subarray(0,tt(r))),r),c=Bi(t,r);if(c===Ln)return S.printDebug("invalid DSA Signature"),!1;a=ae(a,n),o=ae(o,n);let p=ae(s*c,r),l=ae(e*c,r),m=Le(a,p,n),P=Le(o,l,n);return ae(ae(m*P,n),r)===e}async function mT(d,e,t,i,a){if(d=$(d),e=$(e),t=$(t),i=$(i),t<=Ia||t>=d||ae(d-Ia,e)!==Ln||Le(t,e,d)!==Ia)return!1;let n=BigInt($i(e)),r=BigInt(150);if(n<r||!Z4(e,null,32))return!1;a=$(a);let o=BigInt(2),s=Md(o<<n-Ia,o<<n),c=e*s+a;return i===Le(t,c,d)}var Zn=class{constructor(e){e&&(this.data=e)}read(e){if(e.length>=1){let t=e[0];if(e.length>=1+t)return this.data=e.subarray(1,1+t),1+this.data.length}throw new Error("Invalid symmetric key")}write(){return S.concatUint8Array([new Uint8Array([this.data.length]),this.data])}},er=class{constructor(e){if(e){let{hash:t,cipher:i}=e;this.hash=t,this.cipher=i}else this.hash=null,this.cipher=null}read(e){if(e.length<4||e[0]!==3||e[1]!==1)throw new ye("Cannot read KDFParams");return this.hash=e[2],this.cipher=e[3],4}write(){return new Uint8Array([3,1,this.hash,this.cipher])}},tr=class d{static fromObject({wrappedKey:e,algorithm:t}){let i=new d;return i.wrappedKey=e,i.algorithm=t,i}read(e){let t=0,i=e[t++];this.algorithm=i%2?e[t++]:null,i-=i%2,this.wrappedKey=S.readExactSubarray(e,t,t+i),t+=i}write(){return S.concatUint8Array([this.algorithm?new Uint8Array([this.wrappedKey.length+1,this.algorithm]):new Uint8Array([this.wrappedKey.length]),this.wrappedKey])}};async function yT(d,e,t,i,a){switch(d){case u.publicKey.rsaEncrypt:case u.publicKey.rsaEncryptSign:{let{n,e:r}=t;return{c:await VC(i,n,r)}}case u.publicKey.elgamal:{let{p:n,g:r,y:o}=t;return av(i,n,r,o)}case u.publicKey.ecdh:{let{oid:n,Q:r,kdfParams:o}=t,{publicKey:s,wrappedKey:c}=await Wb(n,o,i,r,a);return{V:s,C:new Zn(c)}}case u.publicKey.x25519:case u.publicKey.x448:{if(e&&!S.isAES(e))throw new Error("X25519 and X448 keys can only encrypt AES session keys");let{A:n}=t,{ephemeralPublicKey:r,wrappedKey:o}=await wb(d,i,n),s=tr.fromObject({algorithm:e,wrappedKey:o});return{ephemeralPublicKey:r,C:s}}default:return[]}}async function ST(d,e,t,i,a,n){switch(d){case u.publicKey.rsaEncryptSign:case u.publicKey.rsaEncrypt:{let{c:r}=i,{n:o,e:s}=e,{d:c,p,q:l,u:m}=t;return zC(r,o,s,c,p,l,m,n)}case u.publicKey.elgamal:{let{c1:r,c2:o}=i,s=e.p,c=t.x;return nv(r,o,s,c,n)}case u.publicKey.ecdh:{let{oid:r,Q:o,kdfParams:s}=e,{d:c}=t,{V:p,C:l}=i;return _b(r,s,p,l.data,o,c,a)}case u.publicKey.x25519:case u.publicKey.x448:{let{A:r}=e,{k:o}=t,{ephemeralPublicKey:s,C:c}=i;if(c.algorithm!==null&&!S.isAES(c.algorithm))throw new Error("AES session key expected");return Mb(d,s,c.wrappedKey,r,o)}default:throw new Error("Unknown public key encryption algorithm.")}}function PT(d,e){let t=0;switch(d){case u.publicKey.rsaEncrypt:case u.publicKey.rsaEncryptSign:case u.publicKey.rsaSign:{let i=S.readMPI(e.subarray(t));t+=i.length+2;let a=S.readMPI(e.subarray(t));return t+=a.length+2,{read:t,publicParams:{n:i,e:a}}}case u.publicKey.dsa:{let i=S.readMPI(e.subarray(t));t+=i.length+2;let a=S.readMPI(e.subarray(t));t+=a.length+2;let n=S.readMPI(e.subarray(t));t+=n.length+2;let r=S.readMPI(e.subarray(t));return t+=r.length+2,{read:t,publicParams:{p:i,q:a,g:n,y:r}}}case u.publicKey.elgamal:{let i=S.readMPI(e.subarray(t));t+=i.length+2;let a=S.readMPI(e.subarray(t));t+=a.length+2;let n=S.readMPI(e.subarray(t));return t+=n.length+2,{read:t,publicParams:{p:i,g:a,y:n}}}case u.publicKey.ecdsa:{let i=new dd;t+=i.read(e),go(i);let a=S.readMPI(e.subarray(t));return t+=a.length+2,{read:t,publicParams:{oid:i,Q:a}}}case u.publicKey.eddsaLegacy:{let i=new dd;if(t+=i.read(e),go(i),i.getName()!==u.curve.ed25519Legacy)throw new Error("Unexpected OID for eddsaLegacy");let a=S.readMPI(e.subarray(t));return t+=a.length+2,a=S.leftPad(a,33),{read:t,publicParams:{oid:i,Q:a}}}case u.publicKey.ecdh:{let i=new dd;t+=i.read(e),go(i);let a=S.readMPI(e.subarray(t));t+=a.length+2;let n=new er;return t+=n.read(e.subarray(t)),{read:t,publicParams:{oid:i,Q:a,kdfParams:n}}}case u.publicKey.ed25519:case u.publicKey.ed448:case u.publicKey.x25519:case u.publicKey.x448:{let i=S.readExactSubarray(e,t,t+Li(d));return t+=i.length,{read:t,publicParams:{A:i}}}default:throw new ye("Unknown public key encryption algorithm.")}}function t4(d,e,t){let i=0;switch(d){case u.publicKey.rsaEncrypt:case u.publicKey.rsaEncryptSign:case u.publicKey.rsaSign:{let a=S.readMPI(e.subarray(i));i+=a.length+2;let n=S.readMPI(e.subarray(i));i+=n.length+2;let r=S.readMPI(e.subarray(i));i+=r.length+2;let o=S.readMPI(e.subarray(i));return i+=o.length+2,{read:i,privateParams:{d:a,p:n,q:r,u:o}}}case u.publicKey.dsa:case u.publicKey.elgamal:{let a=S.readMPI(e.subarray(i));return i+=a.length+2,{read:i,privateParams:{x:a}}}case u.publicKey.ecdsa:case u.publicKey.ecdh:{let a=Li(d,t.oid),n=S.readMPI(e.subarray(i));return i+=n.length+2,n=S.leftPad(n,a),{read:i,privateParams:{d:n}}}case u.publicKey.eddsaLegacy:{let a=Li(d,t.oid);if(t.oid.getName()!==u.curve.ed25519Legacy)throw new Error("Unexpected OID for eddsaLegacy");let n=S.readMPI(e.subarray(i));return i+=n.length+2,n=S.leftPad(n,a),{read:i,privateParams:{seed:n}}}case u.publicKey.ed25519:case u.publicKey.ed448:{let a=Li(d),n=S.readExactSubarray(e,i,i+a);return i+=n.length,{read:i,privateParams:{seed:n}}}case u.publicKey.x25519:case u.publicKey.x448:{let a=Li(d),n=S.readExactSubarray(e,i,i+a);return i+=n.length,{read:i,privateParams:{k:n}}}default:throw new ye("Unknown public key encryption algorithm.")}}function fT(d,e){let t=0;switch(d){case u.publicKey.rsaEncrypt:case u.publicKey.rsaEncryptSign:return{c:S.readMPI(e.subarray(t))};case u.publicKey.elgamal:{let i=S.readMPI(e.subarray(t));t+=i.length+2;let a=S.readMPI(e.subarray(t));return{c1:i,c2:a}}case u.publicKey.ecdh:{let i=S.readMPI(e.subarray(t));t+=i.length+2;let a=new Zn;return a.read(e.subarray(t)),{V:i,C:a}}case u.publicKey.x25519:case u.publicKey.x448:{let i=Li(d),a=S.readExactSubarray(e,t,t+i);t+=a.length;let n=new tr;return n.read(e.subarray(t)),{ephemeralPublicKey:a,C:n}}default:throw new ye("Unknown public key encryption algorithm.")}}function Gi(d,e){let t=new Set([u.publicKey.ed25519,u.publicKey.x25519,u.publicKey.ed448,u.publicKey.x448]),i=Object.keys(e).map(a=>{let n=e[a];return S.isUint8Array(n)?t.has(d)?n:S.uint8ArrayToMPI(n):n.write()});return S.concatUint8Array(i)}function gT(d,e,t){switch(d){case u.publicKey.rsaEncrypt:case u.publicKey.rsaEncryptSign:case u.publicKey.rsaSign:return HC(e,65537).then(({n:i,e:a,d:n,p:r,q:o,u:s})=>({privateParams:{d:n,p:r,q:o,u:s},publicParams:{n:i,e:a}}));case u.publicKey.ecdsa:return Mn(t).then(({oid:i,Q:a,secret:n})=>({privateParams:{d:n},publicParams:{oid:new dd(i),Q:a}}));case u.publicKey.eddsaLegacy:return Mn(t).then(({oid:i,Q:a,secret:n})=>({privateParams:{seed:n},publicParams:{oid:new dd(i),Q:a}}));case u.publicKey.ecdh:return Mn(t).then(({oid:i,Q:a,secret:n,hash:r,cipher:o})=>({privateParams:{d:n},publicParams:{oid:new dd(i),Q:a,kdfParams:new er({hash:r,cipher:o})}}));case u.publicKey.ed25519:case u.publicKey.ed448:return Ns(d).then(({A:i,seed:a})=>({privateParams:{seed:a},publicParams:{A:i}}));case u.publicKey.x25519:case u.publicKey.x448:return Bs(d).then(({A:i,k:a})=>({privateParams:{k:a},publicParams:{A:i}}));case u.publicKey.dsa:case u.publicKey.elgamal:throw new Error("Unsupported algorithm for key generation.");default:throw new Error("Unknown public key algorithm.")}}async function hT(d,e,t){if(!e||!t)throw new Error("Missing key parameters");switch(d){case u.publicKey.rsaEncrypt:case u.publicKey.rsaEncryptSign:case u.publicKey.rsaSign:{let{n:i,e:a}=e,{d:n,p:r,q:o,u:s}=t;return WC(i,a,n,r,o,s)}case u.publicKey.dsa:{let{p:i,q:a,g:n,y:r}=e,{x:o}=t;return mT(i,a,n,r,o)}case u.publicKey.elgamal:{let{p:i,g:a,y:n}=e,{x:r}=t;return rv(i,a,n,r)}case u.publicKey.ecdsa:case u.publicKey.ecdh:{let i=pT[u.read(u.publicKey,d)],{oid:a,Q:n}=e,{d:r}=t;return i.validateParams(a,n,r)}case u.publicKey.eddsaLegacy:{let{Q:i,oid:a}=e,{seed:n}=t;return Qb(a,i,n)}case u.publicKey.ed25519:case u.publicKey.ed448:{let{A:i}=e,{seed:a}=t;return Pb(d,i,a)}case u.publicKey.x25519:case u.publicKey.x448:{let{A:i}=e,{k:a}=t;return Ab(d,i,a)}default:throw new Error("Unknown public key algorithm.")}}function Wo(d){let{keySize:e}=Pe(d);return qe(e)}function go(d){try{d.getName()}catch{throw new ye("Unknown curve OID")}}function Li(d,e){switch(d){case u.publicKey.ecdsa:case u.publicKey.ecdh:case u.publicKey.eddsaLegacy:return new it(e).payloadSize;case u.publicKey.ed25519:case u.publicKey.ed448:return Tr(d);case u.publicKey.x25519:case u.publicKey.x448:return js(d);default:throw new Error("Unknown elliptic algo")}}function IT(d,e){switch(d){case u.publicKey.ecdsa:case u.publicKey.eddsaLegacy:return Ob(e);case u.publicKey.ed25519:case u.publicKey.ed448:return Xr(d);default:throw new Error("Unknown elliptic signing algo")}}var On=S.getWebCrypto(),Da=S.getNodeCrypto(),Hd=Da?Da.getCiphers():[],Nr={idea:Hd.includes("idea-cfb")?"idea-cfb":void 0,tripledes:Hd.includes("des-ede3-cfb")?"des-ede3-cfb":void 0,cast5:Hd.includes("cast5-cfb")?"cast5-cfb":void 0,blowfish:Hd.includes("bf-cfb")?"bf-cfb":void 0,aes128:Hd.includes("aes-128-cfb")?"aes-128-cfb":void 0,aes192:Hd.includes("aes-192-cfb")?"aes-192-cfb":void 0,aes256:Hd.includes("aes-256-cfb")?"aes-256-cfb":void 0};async function bT(d){let{blockSize:e}=Pe(d),t=await qe(e),i=new Uint8Array([t[t.length-2],t[t.length-1]]);return S.concat([t,i])}async function Hs(d,e,t,i,a){let n=u.read(u.symmetric,d);if(S.getNodeCrypto()&&Nr[n])return CT(d,e,t,i);if(S.isAES(d))return FT(d,e,t,i);let r=await Nb(d),o=new r(e),s=o.blockSize,c=i.slice(),p=new Uint8Array,l=m=>{m&&(p=S.concatUint8Array([p,m]));let P=new Uint8Array(p.length),g,y=0;for(;m?p.length>=s:p.length;){let f=o.encrypt(c);for(g=0;g<s;g++)c[g]=p[g]^f[g],P[y++]=c[g];p=p.subarray(s)}return P.subarray(0,y)};return Ce(t,l,l)}async function Ws(d,e,t,i){let a=u.read(u.symmetric,d);if(Da&&Nr[a])return vT(d,e,t,i);if(S.isAES(d))return ET(d,e,t,i);let n=await Nb(d),r=new n(e),o=r.blockSize,s=i,c=new Uint8Array,p=l=>{l&&(c=S.concatUint8Array([c,l]));let m=new Uint8Array(c.length),P,g=0;for(;l?c.length>=o:c.length;){let y=r.encrypt(s);for(s=c.subarray(0,o),P=0;P<o;P++)m[g++]=s[P]^y[P];c=c.subarray(o)}return m.subarray(0,g)};return Ce(t,p,p)}var dr=class{constructor(e,t,i){let{blockSize:a}=Pe(e);this.key=t,this.prevBlock=i,this.nextBlock=new Uint8Array(a),this.i=0,this.blockSize=a,this.zeroBlock=new Uint8Array(this.blockSize)}static async isSupported(e){let{keySize:t}=Pe(e);return On.importKey("raw",new Uint8Array(t),"aes-cbc",!1,["encrypt"]).then(()=>!0,()=>!1)}async _runCBC(e,t){let i="AES-CBC";this.keyRef=this.keyRef||await On.importKey("raw",this.key,i,!1,["encrypt"]);let a=await On.encrypt({name:i,iv:t||this.zeroBlock},this.keyRef,e);return new Uint8Array(a).subarray(0,e.length)}async encryptChunk(e){let t=this.nextBlock.length-this.i,i=e.subarray(0,t);if(this.nextBlock.set(i,this.i),this.i+e.length>=2*this.blockSize){let n=(e.length-t)%this.blockSize,r=S.concatUint8Array([this.nextBlock,e.subarray(t,e.length-n)]),o=S.concatUint8Array([this.prevBlock,r.subarray(0,r.length-this.blockSize)]),s=await this._runCBC(o);return En(s,r),this.prevBlock=s.slice(-this.blockSize),n>0&&this.nextBlock.set(e.subarray(-n)),this.i=n,s}this.i+=i.length;let a;if(this.i===this.nextBlock.length){let n=this.nextBlock;a=await this._runCBC(this.prevBlock),En(a,n),this.prevBlock=a.slice(),this.i=0;let r=e.subarray(i.length);this.nextBlock.set(r,this.i),this.i+=r.length}else a=new Uint8Array;return a}async finish(){let e;if(this.i===0)e=new Uint8Array;else{this.nextBlock=this.nextBlock.subarray(0,this.i);let t=this.nextBlock,i=await this._runCBC(this.prevBlock);En(i,t),e=i.subarray(0,t.length)}return this.clearSensitiveData(),e}clearSensitiveData(){this.nextBlock.fill(0),this.prevBlock.fill(0),this.keyRef=null,this.key=null}async encrypt(e){let i=(await this._runCBC(S.concatUint8Array([new Uint8Array(this.blockSize),e]),this.iv)).subarray(0,e.length);return En(i,e),this.clearSensitiveData(),i}},ir=class{constructor(e,t,i,a){this.forEncryption=e;let{blockSize:n}=Pe(t);this.key=KI.expandKeyLE(i),a.byteOffset%4!==0&&(a=a.slice()),this.prevBlock=ho(a),this.nextBlock=new Uint8Array(n),this.i=0,this.blockSize=n}_runCFB(e){let t=ho(e),i=new Uint8Array(e.length),a=ho(i);for(let n=0;n+4<=a.length;n+=4){let{s0:r,s1:o,s2:s,s3:c}=KI.encrypt(this.key,this.prevBlock[0],this.prevBlock[1],this.prevBlock[2],this.prevBlock[3]);a[n+0]=t[n+0]^r,a[n+1]=t[n+1]^o,a[n+2]=t[n+2]^s,a[n+3]=t[n+3]^c,this.prevBlock=(this.forEncryption?a:t).slice(n,n+4)}return i}async processChunk(e){let t=this.nextBlock.length-this.i,i=e.subarray(0,t);if(this.nextBlock.set(i,this.i),this.i+e.length>=2*this.blockSize){let n=(e.length-t)%this.blockSize,r=S.concatUint8Array([this.nextBlock,e.subarray(t,e.length-n)]),o=this._runCFB(r);return n>0&&this.nextBlock.set(e.subarray(-n)),this.i=n,o}this.i+=i.length;let a;if(this.i===this.nextBlock.length){a=this._runCFB(this.nextBlock),this.i=0;let n=e.subarray(i.length);this.nextBlock.set(n,this.i),this.i+=n.length}else a=new Uint8Array;return a}async finish(){let e;return this.i===0?e=new Uint8Array:e=this._runCFB(this.nextBlock).subarray(0,this.i),this.clearSensitiveData(),e}clearSensitiveData(){this.nextBlock.fill(0),this.prevBlock.fill(0),this.key.fill(0)}};async function FT(d,e,t,i){if(On&&await dr.isSupported(d)){let a=new dr(d,e,i);return S.isStream(t)?Ce(t,n=>a.encryptChunk(n),()=>a.finish()):a.encrypt(t)}else if(S.isStream(t)){let a=new ir(!0,d,e,i);return Ce(t,n=>a.processChunk(n),()=>a.finish())}return Tb(e,i).encrypt(t)}async function ET(d,e,t,i){if(S.isStream(t)){let a=new ir(!1,d,e,i);return Ce(t,n=>a.processChunk(n),()=>a.finish())}return Tb(e,i).decrypt(t)}function En(d,e){let t=Math.min(d.length,e.length);for(let i=0;i<t;i++)d[i]=d[i]^e[i]}var ho=d=>new Uint32Array(d.buffer,d.byteOffset,Math.floor(d.byteLength/4));function CT(d,e,t,i){let a=u.read(u.symmetric,d),n=new Da.createCipheriv(Nr[a],e,i);return Ce(t,r=>new Uint8Array(n.update(r)))}function vT(d,e,t,i){let a=u.read(u.symmetric,d),n=new Da.createDecipheriv(Nr[a],e,i);return Ce(t,r=>new Uint8Array(n.update(r)))}var d4=S.getWebCrypto(),TT=S.getNodeCrypto(),id=16;function i4(d,e){let t=d.length-id;for(let i=0;i<id;i++)d[i+t]^=e[i];return d}function XT(d,e,t){if(d.length&&d.length%id===0)return i4(d,e);let i=new Uint8Array(d.length+(id-d.length%id));return i.set(d),i[d.length]=128,i4(i,t)}var kn=new Uint8Array(id);async function DT(d){let e=await RT(d),t=S.double(await e(kn)),i=S.double(t);return async function(a){return(await e(XT(a,t,i))).subarray(-id)}}async function RT(d){if(S.getNodeCrypto())return async function(e){let i=new TT.createCipheriv("aes-"+d.length*8+"-cbc",d,kn).update(e);return new Uint8Array(i)};if(S.getWebCrypto())try{return d=await d4.importKey("raw",d,{name:"AES-CBC",length:d.length*8},!1,["encrypt"]),async function(e){let t=await d4.encrypt({name:"AES-CBC",iv:kn,length:id*8},d,e);return new Uint8Array(t).subarray(0,t.byteLength-id)}}catch(e){if(e.name!=="NotSupportedError"&&!(d.length===24&&e.name==="OperationError"))throw e;S.printDebugError("Browser did not support operation: "+e.message)}return async function(e){return vb(d,kn,{disablePadding:!0}).encrypt(e)}}var a4=S.getWebCrypto(),xT=S.getNodeCrypto(),NT=S.getNodeBuffer(),pd=16,AT=pd,Ni=pd,n4=new Uint8Array(pd),_o=new Uint8Array(pd);_o[pd-1]=1;var Ko=new Uint8Array(pd);Ko[pd-1]=2;async function wT(d){let e=await DT(d);return function(t,i){return e(S.concatUint8Array([t,i]))}}async function MT(d){if(S.getNodeCrypto())return async function(e,t){let i=new xT.createCipheriv("aes-"+d.length*8+"-ctr",d,t),a=NT.concat([i.update(e),i.final()]);return new Uint8Array(a)};if(S.getWebCrypto())try{let e=await a4.importKey("raw",d,{name:"AES-CTR",length:d.length*8},!1,["encrypt"]);return async function(t,i){let a=await a4.encrypt({name:"AES-CTR",counter:i,length:pd*8},e,t);return new Uint8Array(a)}}catch(e){if(e.name!=="NotSupportedError"&&!(d.length===24&&e.name==="OperationError"))throw e;S.printDebugError("Browser did not support operation: "+e.message)}return async function(e,t){return Ov(d,t).encrypt(e)}}async function Va(d,e){if(d!==u.symmetric.aes128&&d!==u.symmetric.aes192&&d!==u.symmetric.aes256)throw new Error("EAX mode supports only AES cipher");let[t,i]=await Promise.all([wT(e),MT(e)]);return{encrypt:async function(a,n,r){let[o,s]=await Promise.all([t(n4,n),t(_o,r)]),c=await i(a,o),l=await t(Ko,c);for(let m=0;m<Ni;m++)l[m]^=s[m]^o[m];return S.concatUint8Array([c,l])},decrypt:async function(a,n,r){if(a.length<Ni)throw new Error("Invalid EAX ciphertext");let o=a.subarray(0,-Ni),s=a.subarray(-Ni),[c,p,l]=await Promise.all([t(n4,n),t(_o,r),t(Ko,o)]),m=l;for(let g=0;g<Ni;g++)m[g]^=p[g]^c[g];if(!S.equalsUint8Array(s,m))throw new Error("Authentication tag mismatch");return await i(o,c)}}}Va.getNonce=function(d,e){let t=d.slice();for(let i=0;i<e.length;i++)t[8+i]^=e[i];return t};Va.blockLength=pd;Va.ivLength=AT;Va.tagLength=Ni;var Ve=16,Kb=15,bd=16;function r4(d){let e=0;for(let t=1;(d&t)===0;t<<=1)e++;return e}function Ke(d,e){for(let t=0;t<d.length;t++)d[t]^=e[t];return d}function Cn(d,e){return Ke(d.slice(),e)}var vn=new Uint8Array(Ve),LT=new Uint8Array([1]);async function za(d,e){let{keySize:t}=Pe(d);if(!S.isAES(d)||e.length!==t)throw new Error("Unexpected algorithm or key size");let i=0,a=vb(e,vn,{disablePadding:!0}),n=m=>a.encrypt(m),r=m=>a.decrypt(m),o;s();function s(){let m=n(vn),P=S.double(m);o=[],o[0]=S.double(P),o.x=m,o.$=P}function c(m,P){let g=S.nbits(Math.max(m.length,P.length)/Ve|0)-1;for(let y=i+1;y<=g;y++)o[y]=S.double(o[y-1]);i=g}function p(m){if(!m.length)return vn;let P=m.length/Ve|0,g=new Uint8Array(Ve),y=new Uint8Array(Ve);for(let f=0;f<P;f++)Ke(g,o[r4(f+1)]),Ke(y,n(Cn(g,m))),m=m.subarray(Ve);if(m.length){Ke(g,o.x);let f=new Uint8Array(Ve);f.set(m,0),f[m.length]=128,Ke(f,g),Ke(y,n(f))}return y}function l(m,P,g,y){let f=P.length/Ve|0;c(P,y);let h=S.concatUint8Array([vn.subarray(0,Kb-g.length),LT,g]),I=h[Ve-1]&63;h[Ve-1]&=192;let b=n(h),F=S.concatUint8Array([b,Cn(b.subarray(0,8),b.subarray(1,9))]),X=S.shiftRight(F.subarray(0+(I>>3),17+(I>>3)),8-(I&7)).subarray(1),T=new Uint8Array(Ve),x=new Uint8Array(P.length+bd),E,D=0;for(E=0;E<f;E++)Ke(X,o[r4(E+1)]),x.set(Ke(m(Cn(X,P)),X),D),Ke(T,m===n?P:x.subarray(D)),P=P.subarray(Ve),D+=Ve;if(P.length){Ke(X,o.x);let C=n(X);x.set(Cn(P,C),D);let M=new Uint8Array(Ve);M.set(m===n?P:x.subarray(D,-bd),0),M[P.length]=128,Ke(T,M),D+=P.length}let v=Ke(n(Ke(Ke(T,X),o.$)),p(y));return x.set(v,D),x}return{encrypt:async function(m,P,g){return l(n,m,P,g)},decrypt:async function(m,P,g){if(m.length<bd)throw new Error("Invalid OCB ciphertext");let y=m.subarray(-bd);m=m.subarray(0,-bd);let f=l(r,m,P,g);if(S.equalsUint8Array(y,f.subarray(-bd)))return f.subarray(0,-bd);throw new Error("Authentication tag mismatch")}}}za.getNonce=function(d,e){let t=d.slice();for(let i=0;i<e.length;i++)t[7+i]^=e[i];return t};za.blockLength=Ve;za.ivLength=Kb;za.tagLength=bd;var Io=S.getWebCrypto(),o4=S.getNodeCrypto(),s4=S.getNodeBuffer(),OT=16,kT=12,Ai=16,bo="AES-GCM";async function Qi(d,e){if(d!==u.symmetric.aes128&&d!==u.symmetric.aes192&&d!==u.symmetric.aes256)throw new Error("GCM mode supports only AES cipher");if(S.getNodeCrypto())return{encrypt:async function(t,i,a=new Uint8Array){let n=new o4.createCipheriv("aes-"+e.length*8+"-gcm",e,i);n.setAAD(a);let r=s4.concat([n.update(t),n.final(),n.getAuthTag()]);return new Uint8Array(r)},decrypt:async function(t,i,a=new Uint8Array){let n=new o4.createDecipheriv("aes-"+e.length*8+"-gcm",e,i);n.setAAD(a),n.setAuthTag(t.slice(t.length-Ai,t.length));let r=s4.concat([n.update(t.slice(0,t.length-Ai)),n.final()]);return new Uint8Array(r)}};if(S.getWebCrypto())try{let t=await Io.importKey("raw",e,{name:bo},!1,["encrypt","decrypt"]),i=navigator.userAgent.match(/Version\/13\.\d(\.\d)* Safari/)||navigator.userAgent.match(/Version\/(13|14)\.\d(\.\d)* Mobile\/\S* Safari/);return{encrypt:async function(a,n,r=new Uint8Array){if(i&&!a.length)return Fn(e,n,r).encrypt(a);let o=await Io.encrypt({name:bo,iv:n,additionalData:r,tagLength:Ai*8},t,a);return new Uint8Array(o)},decrypt:async function(a,n,r=new Uint8Array){if(i&&a.length===Ai)return Fn(e,n,r).decrypt(a);try{let o=await Io.decrypt({name:bo,iv:n,additionalData:r,tagLength:Ai*8},t,a);return new Uint8Array(o)}catch(o){if(o.name==="OperationError")throw new Error("Authentication tag mismatch")}}}}catch(t){if(t.name!=="NotSupportedError"&&!(e.length===24&&t.name==="OperationError"))throw t;S.printDebugError("Browser did not support operation: "+t.message)}return{encrypt:async function(t,i,a){return Fn(e,i,a).encrypt(t)},decrypt:async function(t,i,a){return Fn(e,i,a).decrypt(t)}}}Qi.getNonce=function(d,e){let t=d.slice();for(let i=0;i<e.length;i++)t[4+i]^=e[i];return t};Qi.blockLength=OT;Qi.ivLength=kT;Qi.tagLength=Ai;function Jd(d,e=!1){switch(d){case u.aead.eax:return Va;case u.aead.ocb:return za;case u.aead.gcm:return Qi;case u.aead.experimentalGCM:if(!e)throw new Error("Unexpected non-standard `experimentalGCM` AEAD algorithm provided in `config.preferredAEADAlgorithm`: use `gcm` instead");return Qi;default:throw new Error("Unsupported AEAD mode")}}function UT(d,e){let t=0;switch(d){case u.publicKey.rsaEncryptSign:case u.publicKey.rsaEncrypt:case u.publicKey.rsaSign:{let i=S.readMPI(e.subarray(t));return t+=i.length+2,{read:t,signatureParams:{s:i}}}case u.publicKey.dsa:case u.publicKey.ecdsa:{let i=S.readMPI(e.subarray(t));t+=i.length+2;let a=S.readMPI(e.subarray(t));return t+=a.length+2,{read:t,signatureParams:{r:i,s:a}}}case u.publicKey.eddsaLegacy:{let i=S.readMPI(e.subarray(t));t+=i.length+2;let a=S.readMPI(e.subarray(t));return t+=a.length+2,{read:t,signatureParams:{r:i,s:a}}}case u.publicKey.ed25519:case u.publicKey.ed448:{let i=2*Tr(d),a=S.readExactSubarray(e,t,t+i);return t+=a.length,{read:t,signatureParams:{RS:a}}}default:throw new ye("Unknown signature algorithm.")}}async function qT(d,e,t,i,a,n){switch(d){case u.publicKey.rsaEncryptSign:case u.publicKey.rsaEncrypt:case u.publicKey.rsaSign:{let{n:r,e:o}=i,s=S.leftPad(t.s,r.length);return QC(e,a,s,r,o,n)}case u.publicKey.dsa:{let{g:r,p:o,q:s,y:c}=i,{r:p,s:l}=t;return lT(e,p,l,n,r,o,s,c)}case u.publicKey.ecdsa:{let{oid:r,Q:o}=i,s=new it(r).payloadSize,c=S.leftPad(t.r,s),p=S.leftPad(t.s,s);return zs(r,e,{r:c,s:p},a,o,n)}case u.publicKey.eddsaLegacy:{let{oid:r,Q:o}=i,s=new it(r).payloadSize,c=S.leftPad(t.r,s),p=S.leftPad(t.s,s);return Gb(r,e,{r:c,s:p},a,o,n)}case u.publicKey.ed25519:case u.publicKey.ed448:{let{A:r}=i;return ws(d,e,t,a,r,n)}default:throw new Error("Unknown signature algorithm.")}}async function BT(d,e,t,i,a,n){if(!t||!i)throw new Error("Missing key parameters");switch(d){case u.publicKey.rsaEncryptSign:case u.publicKey.rsaEncrypt:case u.publicKey.rsaSign:{let{n:r,e:o}=t,{d:s,p:c,q:p,u:l}=i;return{s:await GC(e,a,r,o,s,c,p,l,n)}}case u.publicKey.dsa:{let{g:r,p:o,q:s}=t,{x:c}=i;return uT(e,n,r,o,s,c)}case u.publicKey.elgamal:throw new Error("Signing with Elgamal is not defined in the OpenPGP standard.");case u.publicKey.ecdsa:{let{oid:r,Q:o}=t,{d:s}=i;return Vs(r,e,a,o,s,n)}case u.publicKey.eddsaLegacy:{let{oid:r,Q:o}=t,{seed:s}=i;return jb(r,e,a,o,s,n)}case u.publicKey.ed25519:case u.publicKey.ed448:{let{A:r}=t,{seed:o}=i;return As(d,e,a,r,o,n)}default:throw new Error("Unknown signature algorithm.")}}var jT=2,GT=19,QT=16,ar=class d extends Error{constructor(...e){super(...e),Error.captureStackTrace&&Error.captureStackTrace(this,d),this.name="Argon2OutOfMemoryError"}},Tn,ua,VT=2<<19,Yo=class{constructor(e=V){let{passes:t,parallelism:i,memoryExponent:a}=e.s2kArgon2Params;this.type="argon2",this.salt=null,this.t=t,this.p=i,this.encodedM=a}generateSalt(){this.salt=qe(QT)}read(e){let t=0;return this.salt=e.subarray(t,t+16),t+=16,this.t=e[t++],this.p=e[t++],this.encodedM=e[t++],t}write(){let e=[new Uint8Array([u.write(u.s2k,this.type)]),this.salt,new Uint8Array([this.t,this.p,this.encodedM])];return S.concatUint8Array(e)}async produceKey(e,t){let i=2<<this.encodedM-1;try{Tn=Tn||(await Promise.resolve().then(function(){return PD})).default,ua=ua||Tn();let a=await ua,n=S.encodeUTF8(e),r=a({version:GT,type:jT,password:n,salt:this.salt,tagLength:t,memorySize:i,parallelism:this.p,passes:this.t});return i>VT&&(ua=Tn(),ua.catch(()=>{})),r}catch(a){throw a.message&&(a.message.includes("Unable to grow instance memory")||a.message.includes("failed to grow memory")||a.message.includes("WebAssembly.Memory.grow")||a.message.includes("Out of memory"))?new ar("Could not allocate required memory for Argon2"):a}}},Jo=class{constructor(e,t=V){this.algorithm=u.hash.sha256,this.type=u.read(u.s2k,e),this.c=t.s2kIterationCountByte,this.salt=null}generateSalt(){switch(this.type){case"salted":case"iterated":this.salt=qe(8)}}getCount(){return 16+(this.c&15)<<(this.c>>4)+6}read(e){let t=0;switch(this.algorithm=e[t++],this.type){case"simple":break;case"salted":this.salt=e.subarray(t,t+8),t+=8;break;case"iterated":this.salt=e.subarray(t,t+8),t+=8,this.c=e[t++];break;case"gnu":if(S.uint8ArrayToString(e.subarray(t,t+3))==="GNU")if(t+=3,1e3+e[t++]===1001)this.type="gnu-dummy";else throw new ye("Unknown s2k gnu protection mode.");else throw new ye("Unknown s2k type.");break;default:throw new ye("Unknown s2k type.")}return t}write(){if(this.type==="gnu-dummy")return new Uint8Array([101,0,...S.stringToUint8Array("GNU"),1]);let e=[new Uint8Array([u.write(u.s2k,this.type),this.algorithm])];switch(this.type){case"simple":break;case"salted":e.push(this.salt);break;case"iterated":e.push(this.salt),e.push(new Uint8Array([this.c]));break;case"gnu":throw new Error("GNU s2k type not supported.");default:throw new Error("Unknown s2k type.")}return S.concatUint8Array(e)}async produceKey(e,t){e=S.encodeUTF8(e);let i=[],a=0,n=0;for(;a<t;){let r;switch(this.type){case"simple":r=S.concatUint8Array([new Uint8Array(n),e]);break;case"salted":r=S.concatUint8Array([new Uint8Array(n),this.salt,e]);break;case"iterated":{let s=S.concatUint8Array([this.salt,e]),c=s.length,p=Math.max(this.getCount(),c);r=new Uint8Array(n+p),r.set(s,n);for(let l=n+c;l<p;l+=c,c*=2)r.copyWithin(l,n,l);break}case"gnu":throw new Error("GNU s2k type not supported.");default:throw new Error("Unknown s2k type.")}let o=await Ot(this.algorithm,r);i.push(o),a+=o.length,n++}return S.concatUint8Array(i).subarray(0,t)}},zT=new Set([u.s2k.argon2,u.s2k.iterated]);function nr(d,e=V){switch(d){case u.s2k.argon2:return new Yo(e);case u.s2k.iterated:case u.s2k.gnu:case u.s2k.salted:case u.s2k.simple:return new Jo(d,e);default:throw new ye("Unsupported S2K type")}}function Yb(d){let{s2kType:e}=d;if(!zT.has(e))throw new Error("The provided `config.s2kType` value is not allowed");return nr(e,d)}var Ue=Uint8Array,$e=Uint16Array,Ar=Uint32Array,wr=new Ue([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),Mr=new Ue([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),$o=new Ue([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Jb=function(d,e){for(var t=new $e(31),i=0;i<31;++i)t[i]=e+=1<<d[i-1];for(var a=new Ar(t[30]),i=1;i<30;++i)for(var n=t[i];n<t[i+1];++n)a[n]=n-t[i]<<5|i;return[t,a]},$b=Jb(wr,2),Zb=$b[0],Zo=$b[1];Zb[28]=258,Zo[258]=28;var e5=Jb(Mr,0),HT=e5[0],c4=e5[1],es=new $e(32768);for(re=0;re<32768;++re)Wt=(re&43690)>>>1|(re&21845)<<1,Wt=(Wt&52428)>>>2|(Wt&13107)<<2,Wt=(Wt&61680)>>>4|(Wt&3855)<<4,es[re]=((Wt&65280)>>>8|(Wt&255)<<8)>>>1;var Wt,re,Lt=function(d,e,t){for(var i=d.length,a=0,n=new $e(e);a<i;++a)d[a]&&++n[d[a]-1];var r=new $e(e);for(a=0;a<e;++a)r[a]=r[a-1]+n[a-1]<<1;var o;if(t){o=new $e(1<<e);var s=15-e;for(a=0;a<i;++a)if(d[a])for(var c=a<<4|d[a],p=e-d[a],l=r[d[a]-1]++<<p,m=l|(1<<p)-1;l<=m;++l)o[es[l]>>>s]=c}else for(o=new $e(i),a=0;a<i;++a)d[a]&&(o[a]=es[r[d[a]-1]++]>>>15-d[a]);return o},Nd=new Ue(288);for(re=0;re<144;++re)Nd[re]=8;var re;for(re=144;re<256;++re)Nd[re]=9;var re;for(re=256;re<280;++re)Nd[re]=7;var re;for(re=280;re<288;++re)Nd[re]=8;var re,Ra=new Ue(32);for(re=0;re<32;++re)Ra[re]=5;var re,WT=Lt(Nd,9,0),_T=Lt(Nd,9,1),KT=Lt(Ra,5,0),YT=Lt(Ra,5,1),Fo=function(d){for(var e=d[0],t=1;t<d.length;++t)d[t]>e&&(e=d[t]);return e},ft=function(d,e,t){var i=e/8|0;return(d[i]|d[i+1]<<8)>>(e&7)&t},Eo=function(d,e){var t=e/8|0;return(d[t]|d[t+1]<<8|d[t+2]<<16)>>(e&7)},_s=function(d){return(d+7)/8|0},Ea=function(d,e,t){(e==null||e<0)&&(e=0),(t==null||t>d.length)&&(t=d.length);var i=new(d.BYTES_PER_ELEMENT==2?$e:d.BYTES_PER_ELEMENT==4?Ar:Ue)(t-e);return i.set(d.subarray(e,t)),i},JT=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],st=function(d,e,t){var i=new Error(e||JT[d]);if(i.code=d,Error.captureStackTrace&&Error.captureStackTrace(i,st),!t)throw i;return i},$T=function(d,e,t){var i=d.length;if(!i||t&&t.f&&!t.l)return e||new Ue(0);var a=!e||t,n=!t||t.i;t||(t={}),e||(e=new Ue(i*3));var r=function(Q){var K=e.length;if(Q>K){var W=new Ue(Math.max(K*2,Q));W.set(e),e=W}},o=t.f||0,s=t.p||0,c=t.b||0,p=t.l,l=t.d,m=t.m,P=t.n,g=i*8;do{if(!p){o=ft(d,s,1);var y=ft(d,s+1,3);if(s+=3,y)if(y==1)p=_T,l=YT,m=9,P=5;else if(y==2){var b=ft(d,s,31)+257,F=ft(d,s+10,15)+4,X=b+ft(d,s+5,31)+1;s+=14;for(var T=new Ue(X),x=new Ue(19),E=0;E<F;++E)x[$o[E]]=ft(d,s+E*3,7);s+=F*3;for(var D=Fo(x),v=(1<<D)-1,C=Lt(x,D,1),E=0;E<X;){var M=C[ft(d,s,v)];s+=M&15;var f=M>>>4;if(f<16)T[E++]=f;else{var O=0,R=0;for(f==16?(R=3+ft(d,s,3),s+=2,O=T[E-1]):f==17?(R=3+ft(d,s,7),s+=3):f==18&&(R=11+ft(d,s,127),s+=7);R--;)T[E++]=O}}var w=T.subarray(0,b),N=T.subarray(b);m=Fo(w),P=Fo(N),p=Lt(w,m,1),l=Lt(N,P,1)}else st(1);else{var f=_s(s)+4,h=d[f-4]|d[f-3]<<8,I=f+h;if(I>i){n&&st(0);break}a&&r(c+h),e.set(d.subarray(f,I),c),t.b=c+=h,t.p=s=I*8,t.f=o;continue}if(s>g){n&&st(0);break}}a&&r(c+131072);for(var A=(1<<m)-1,L=(1<<P)-1,U=s;;U=s){var O=p[Eo(d,s)&A],q=O>>>4;if(s+=O&15,s>g){n&&st(0);break}if(O||st(2),q<256)e[c++]=q;else if(q==256){U=s,p=null;break}else{var j=q-254;if(q>264){var E=q-257,z=wr[E];j=ft(d,s,(1<<z)-1)+Zb[E],s+=z}var H=l[Eo(d,s)&L],G=H>>>4;H||st(3),s+=H&15;var N=HT[G];if(G>3){var z=Mr[G];N+=Eo(d,s)&(1<<z)-1,s+=z}if(s>g){n&&st(0);break}a&&r(c+131072);for(var B=c+j;c<B;c+=4)e[c]=e[c-N],e[c+1]=e[c+1-N],e[c+2]=e[c+2-N],e[c+3]=e[c+3-N];c=B}}t.l=p,t.p=U,t.b=c,t.f=o,p&&(o=1,t.m=m,t.d=l,t.n=P)}while(!o);return c==e.length?e:Ea(e,0,c)},_t=function(d,e,t){t<<=e&7;var i=e/8|0;d[i]|=t,d[i+1]|=t>>>8},la=function(d,e,t){t<<=e&7;var i=e/8|0;d[i]|=t,d[i+1]|=t>>>8,d[i+2]|=t>>>16},Co=function(d,e){for(var t=[],i=0;i<d.length;++i)d[i]&&t.push({s:i,f:d[i]});var a=t.length,n=t.slice();if(!a)return[Ks,0];if(a==1){var r=new Ue(t[0].s+1);return r[t[0].s]=1,[r,1]}t.sort(function(X,T){return X.f-T.f}),t.push({s:-1,f:25001});var o=t[0],s=t[1],c=0,p=1,l=2;for(t[0]={s:-1,f:o.f+s.f,l:o,r:s};p!=a-1;)o=t[t[c].f<t[l].f?c++:l++],s=t[c!=p&&t[c].f<t[l].f?c++:l++],t[p++]={s:-1,f:o.f+s.f,l:o,r:s};for(var m=n[0].s,i=1;i<a;++i)n[i].s>m&&(m=n[i].s);var P=new $e(m+1),g=ts(t[p-1],P,0);if(g>e){var i=0,y=0,f=g-e,h=1<<f;for(n.sort(function(T,x){return P[x.s]-P[T.s]||T.f-x.f});i<a;++i){var I=n[i].s;if(P[I]>e)y+=h-(1<<g-P[I]),P[I]=e;else break}for(y>>>=f;y>0;){var b=n[i].s;P[b]<e?y-=1<<e-P[b]++-1:++i}for(;i>=0&&y;--i){var F=n[i].s;P[F]==e&&(--P[F],++y)}g=e}return[new Ue(P),g]},ts=function(d,e,t){return d.s==-1?Math.max(ts(d.l,e,t+1),ts(d.r,e,t+1)):e[d.s]=t},p4=function(d){for(var e=d.length;e&&!d[--e];);for(var t=new $e(++e),i=0,a=d[0],n=1,r=function(s){t[i++]=s},o=1;o<=e;++o)if(d[o]==a&&o!=e)++n;else{if(!a&&n>2){for(;n>138;n-=138)r(32754);n>2&&(r(n>10?n-11<<5|28690:n-3<<5|12305),n=0)}else if(n>3){for(r(a),--n;n>6;n-=6)r(8304);n>2&&(r(n-3<<5|8208),n=0)}for(;n--;)r(a);n=1,a=d[o]}return[t.subarray(0,i),e]},ma=function(d,e){for(var t=0,i=0;i<e.length;++i)t+=d[i]*e[i];return t},ds=function(d,e,t){var i=t.length,a=_s(e+2);d[a]=i&255,d[a+1]=i>>>8,d[a+2]=d[a]^255,d[a+3]=d[a+1]^255;for(var n=0;n<i;++n)d[a+n+4]=t[n];return(a+4+i)*8},u4=function(d,e,t,i,a,n,r,o,s,c,p){_t(e,p++,t),++a[256];for(var l=Co(a,15),m=l[0],P=l[1],g=Co(n,15),y=g[0],f=g[1],h=p4(m),I=h[0],b=h[1],F=p4(y),X=F[0],T=F[1],x=new $e(19),E=0;E<I.length;++E)x[I[E]&31]++;for(var E=0;E<X.length;++E)x[X[E]&31]++;for(var D=Co(x,7),v=D[0],C=D[1],M=19;M>4&&!v[$o[M-1]];--M);var O=c+5<<3,R=ma(a,Nd)+ma(n,Ra)+r,w=ma(a,m)+ma(n,y)+r+14+3*M+ma(x,v)+(2*x[16]+3*x[17]+7*x[18]);if(O<=R&&O<=w)return ds(e,p,d.subarray(s,s+c));var N,A,L,U;if(_t(e,p,1+(w<R)),p+=2,w<R){N=Lt(m,P,0),A=m,L=Lt(y,f,0),U=y;var q=Lt(v,C,0);_t(e,p,b-257),_t(e,p+5,T-1),_t(e,p+10,M-4),p+=14;for(var E=0;E<M;++E)_t(e,p+3*E,v[$o[E]]);p+=3*M;for(var j=[I,X],z=0;z<2;++z)for(var H=j[z],E=0;E<H.length;++E){var G=H[E]&31;_t(e,p,q[G]),p+=v[G],G>15&&(_t(e,p,H[E]>>>5&127),p+=H[E]>>>12)}}else N=WT,A=Nd,L=KT,U=Ra;for(var E=0;E<o;++E)if(i[E]>255){var G=i[E]>>>18&31;la(e,p,N[G+257]),p+=A[G+257],G>7&&(_t(e,p,i[E]>>>23&31),p+=wr[G]);var B=i[E]&31;la(e,p,L[B]),p+=U[B],B>3&&(la(e,p,i[E]>>>5&8191),p+=Mr[B])}else la(e,p,N[i[E]]),p+=A[i[E]];return la(e,p,N[256]),p+A[256]},ZT=new Ar([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Ks=new Ue(0),eX=function(d,e,t,i,a,n){var r=d.length,o=new Ue(i+r+5*(1+Math.ceil(r/7e3))+a),s=o.subarray(i,o.length-a),c=0;if(!e||r<8)for(var p=0;p<=r;p+=65535){var l=p+65535;l>=r&&(s[c>>3]=n),c=ds(s,c+1,d.subarray(p,l))}else{for(var m=ZT[e-1],P=m>>>13,g=m&8191,y=(1<<t)-1,f=new $e(32768),h=new $e(y+1),I=Math.ceil(t/3),b=2*I,F=function(ue){return(d[ue]^d[ue+1]<<I^d[ue+2]<<b)&y},X=new Ar(25e3),T=new $e(288),x=new $e(32),E=0,D=0,p=0,v=0,C=0,M=0;p<r;++p){var O=F(p),R=p&32767,w=h[O];if(f[R]=w,h[O]=R,C<=p){var N=r-p;if((E>7e3||v>24576)&&N>423){c=u4(d,s,0,X,T,x,D,v,M,p-M,c),v=E=D=0,M=p;for(var A=0;A<286;++A)T[A]=0;for(var A=0;A<30;++A)x[A]=0}var L=2,U=0,q=g,j=R-w&32767;if(N>2&&O==F(p-j))for(var z=Math.min(P,N)-1,H=Math.min(32767,p),G=Math.min(258,N);j<=H&&--q&&R!=w;){if(d[p+L]==d[p+L-j]){for(var B=0;B<G&&d[p+B]==d[p+B-j];++B);if(B>L){if(L=B,U=j,B>z)break;for(var Q=Math.min(j,B-2),K=0,A=0;A<Q;++A){var W=p-j+A+32768&32767,Y=f[W],Z=W-Y+32768&32767;Z>K&&(K=Z,w=W)}}}R=w,w=f[R],j+=R-w+32768&32767}if(U){X[v++]=268435456|Zo[L]<<18|c4[U];var ee=Zo[L]&31,ie=c4[U]&31;D+=wr[ee]+Mr[ie],++T[257+ee],++x[ie],C=p+L,++E}else X[v++]=d[p],++T[d[p]]}}c=u4(d,s,n,X,T,x,D,v,M,p-M,c),!n&&c&7&&(c=ds(s,c+1,Ks))}return Ea(o,0,i+_s(c)+a)},tX=function(){var d=1,e=0;return{p:function(t){for(var i=d,a=e,n=t.length|0,r=0;r!=n;){for(var o=Math.min(r+2655,n);r<o;++r)a+=i+=t[r];i=(i&65535)+15*(i>>16),a=(a&65535)+15*(a>>16)}d=i,e=a},d:function(){return d%=65521,e%=65521,(d&255)<<24|d>>>8<<16|(e&255)<<8|e>>>8}}},t5=function(d,e,t,i,a){return eX(d,e.level==null?6:e.level,e.mem==null?Math.ceil(Math.max(8,Math.min(13,Math.log(d.length)))*1.5):12+e.mem,t,i,!a)},dX=function(d,e,t){for(;t;++e)d[e]=t,t>>>=8},iX=function(d,e){var t=e.level,i=t==0?0:t<6?1:t==9?3:2;d[0]=120,d[1]=i<<6|(i?32-2*i:1)},is=function(){function d(e,t){!t&&typeof e=="function"&&(t=e,e={}),this.ondata=t,this.o=e||{}}return d.prototype.p=function(e,t){this.ondata(t5(e,this.o,0,0,!t),t)},d.prototype.push=function(e,t){this.ondata||st(5),this.d&&st(4),this.d=t,this.p(e,t||!1)},d}(),Un=function(){function d(e){this.s={},this.p=new Ue(0),this.ondata=e}return d.prototype.e=function(e){this.ondata||st(5),this.d&&st(4);var t=this.p.length,i=new Ue(t+e.length);i.set(this.p),i.set(e,t),this.p=i},d.prototype.c=function(e){this.d=this.s.i=e||!1;var t=this.s.b,i=$T(this.p,this.o,this.s);this.ondata(Ea(i,t,this.s.b),this.d),this.o=Ea(i,this.s.b-32768),this.s.b=this.o.length,this.p=Ea(this.p,this.s.p/8|0),this.s.p&=7},d.prototype.push=function(e,t){this.e(e),this.c(t)},d}(),aX=function(){function d(e,t){this.c=tX(),this.v=1,is.call(this,e,t)}return d.prototype.push=function(e,t){is.prototype.push.call(this,e,t)},d.prototype.p=function(e,t){this.c.p(e);var i=t5(e,this.o,this.v&&2,t&&4,!t);this.v&&(iX(i,this.o),this.v=0),t&&dX(i,i.length-4,this.c.d()),this.ondata(i,t)},d}(),nX=function(){function d(e){this.v=1,Un.call(this,e)}return d.prototype.push=function(e,t){if(Un.prototype.e.call(this,e),this.v){if(this.p.length<2&&!t)return;this.p=this.p.subarray(2),this.v=0}t&&(this.p.length<4&&st(6,"invalid zlib data"),this.p=this.p.subarray(0,-4)),Un.prototype.c.call(this,t)},d}(),rX=typeof TextDecoder<"u"&&new TextDecoder,oX=0;try{rX.decode(Ks,{stream:!0}),oX=1}catch{}var Vi=class{static get tag(){return u.packet.literalData}constructor(e=new Date){this.format=u.literal.utf8,this.date=S.normalizeDate(e),this.text=null,this.data=null,this.filename=""}setText(e,t=u.literal.utf8){this.format=t,this.text=e,this.data=null}getText(e=!1){return(this.text===null||S.isStream(this.text))&&(this.text=S.decodeUTF8(S.nativeEOL(this.getBytes(e)))),this.text}setBytes(e,t){this.format=t,this.data=e,this.text=null}getBytes(e=!1){return this.data===null&&(this.data=S.canonicalizeEOL(S.encodeUTF8(this.text))),e?ba(this.data):this.data}setFilename(e){this.filename=e}getFilename(){return this.filename}async read(e){await vs(e,async t=>{let i=await t.readByte(),a=await t.readByte();this.filename=S.decodeUTF8(await t.readBytes(a)),this.date=S.readDate(await t.readBytes(4));let n=t.remainder();De(n)&&(n=await Ae(n)),this.setBytes(n,i)})}writeHeader(){let e=S.encodeUTF8(this.filename),t=new Uint8Array([e.length]),i=new Uint8Array([this.format]),a=S.writeDate(this.date);return S.concatUint8Array([i,t,e,a])}write(){let e=this.writeHeader(),t=this.getBytes();return S.concat([e,t])}},ad=class d{constructor(){this.bytes=""}read(e){return this.bytes=S.uint8ArrayToString(e.subarray(0,8)),this.bytes.length}write(){return S.stringToUint8Array(this.bytes)}toHex(){return S.uint8ArrayToHex(S.stringToUint8Array(this.bytes))}equals(e,t=!1){return t&&(e.isWildcard()||this.isWildcard())||this.bytes===e.bytes}isNull(){return this.bytes===""}isWildcard(){return/^0+$/.test(this.toHex())}static mapToHex(e){return e.toHex()}static fromID(e){let t=new d;return t.read(S.hexToUint8Array(e)),t}static wildcard(){let e=new d;return e.read(new Uint8Array(8)),e}},ya=Symbol("verified"),l4="salt@notations.openpgpjs.org",sX=new Set([u.signatureSubpacket.issuerKeyID,u.signatureSubpacket.issuerFingerprint,u.signatureSubpacket.embeddedSignature]),We=class d{static get tag(){return u.packet.signature}constructor(){this.version=null,this.signatureType=null,this.hashAlgorithm=null,this.publicKeyAlgorithm=null,this.signatureData=null,this.unhashedSubpackets=[],this.unknownSubpackets=[],this.signedHashValue=null,this.salt=null,this.created=null,this.signatureExpirationTime=null,this.signatureNeverExpires=!0,this.exportable=null,this.trustLevel=null,this.trustAmount=null,this.regularExpression=null,this.revocable=null,this.keyExpirationTime=null,this.keyNeverExpires=null,this.preferredSymmetricAlgorithms=null,this.revocationKeyClass=null,this.revocationKeyAlgorithm=null,this.revocationKeyFingerprint=null,this.issuerKeyID=new ad,this.rawNotations=[],this.notations={},this.preferredHashAlgorithms=null,this.preferredCompressionAlgorithms=null,this.keyServerPreferences=null,this.preferredKeyServer=null,this.isPrimaryUserID=null,this.policyURI=null,this.keyFlags=null,this.signersUserID=null,this.reasonForRevocationFlag=null,this.reasonForRevocationString=null,this.features=null,this.signatureTargetPublicKeyAlgorithm=null,this.signatureTargetHashAlgorithm=null,this.signatureTargetHash=null,this.embeddedSignature=null,this.issuerKeyVersion=null,this.issuerFingerprint=null,this.preferredAEADAlgorithms=null,this.preferredCipherSuites=null,this.revoked=null,this[ya]=null}read(e,t=V){let i=0;if(this.version=e[i++],this.version===5&&!t.enableParsingV5Entities)throw new ye("Support for v5 entities is disabled; turn on `config.enableParsingV5Entities` if needed");if(this.version!==4&&this.version!==5&&this.version!==6)throw new ye(`Version ${this.version} of the signature packet is unsupported.`);if(this.signatureType=e[i++],this.publicKeyAlgorithm=e[i++],this.hashAlgorithm=e[i++],i+=this.readSubPackets(e.subarray(i,e.length),!0),!this.created)throw new Error("Missing signature creation time subpacket.");if(this.signatureData=e.subarray(0,i),i+=this.readSubPackets(e.subarray(i,e.length),!1),this.signedHashValue=e.subarray(i,i+2),i+=2,this.version===6){let o=e[i++];this.salt=e.subarray(i,i+o),i+=o}let a=e.subarray(i,e.length),{read:n,signatureParams:r}=UT(this.publicKeyAlgorithm,a);if(n<a.length)throw new Error("Error reading MPIs");this.params=r}writeParams(){return this.params instanceof Promise?wd(async()=>Gi(this.publicKeyAlgorithm,await this.params)):Gi(this.publicKeyAlgorithm,this.params)}write(){let e=[];return e.push(this.signatureData),e.push(this.writeUnhashedSubPackets()),e.push(this.signedHashValue),this.version===6&&(e.push(new Uint8Array([this.salt.length])),e.push(this.salt)),e.push(this.writeParams()),S.concat(e)}async sign(e,t,i=new Date,a=!1,n){this.version=e.version,this.created=S.normalizeDate(i),this.issuerKeyVersion=e.version,this.issuerFingerprint=e.getFingerprintBytes(),this.issuerKeyID=e.getKeyID();let r=[new Uint8Array([this.version,this.signatureType,this.publicKeyAlgorithm,this.hashAlgorithm])];if(this.version===6){let p=vo(this.hashAlgorithm);if(this.salt===null)this.salt=qe(p);else if(p!==this.salt.length)throw new Error("Provided salt does not have the required length")}else if(n.nonDeterministicSignaturesViaNotation)if(this.rawNotations.filter(({name:l})=>l===l4).length===0){let l=qe(vo(this.hashAlgorithm));this.rawNotations.push({name:l4,value:l,humanReadable:!1,critical:!1})}else throw new Error("Unexpected existing salt notation");r.push(this.writeHashedSubPackets()),this.unhashedSubpackets=[],this.signatureData=S.concat(r);let o=this.toHash(this.signatureType,t,a),s=await this.hash(this.signatureType,t,o,a);this.signedHashValue=ke(Ca(s),0,2);let c=async()=>BT(this.publicKeyAlgorithm,this.hashAlgorithm,e.publicParams,e.privateParams,o,await Ae(s));S.isStream(s)?this.params=c():(this.params=await c(),this[ya]=!0)}writeHashedSubPackets(){let e=u.signatureSubpacket,t=[],i;if(this.created===null)throw new Error("Missing signature creation time");t.push(ce(e.signatureCreationTime,!0,S.writeDate(this.created))),this.signatureExpirationTime!==null&&t.push(ce(e.signatureExpirationTime,!0,S.writeNumber(this.signatureExpirationTime,4))),this.exportable!==null&&t.push(ce(e.exportableCertification,!0,new Uint8Array([this.exportable?1:0]))),this.trustLevel!==null&&(i=new Uint8Array([this.trustLevel,this.trustAmount]),t.push(ce(e.trustSignature,!0,i))),this.regularExpression!==null&&t.push(ce(e.regularExpression,!0,this.regularExpression)),this.revocable!==null&&t.push(ce(e.revocable,!0,new Uint8Array([this.revocable?1:0]))),this.keyExpirationTime!==null&&t.push(ce(e.keyExpirationTime,!0,S.writeNumber(this.keyExpirationTime,4))),this.preferredSymmetricAlgorithms!==null&&(i=S.stringToUint8Array(S.uint8ArrayToString(this.preferredSymmetricAlgorithms)),t.push(ce(e.preferredSymmetricAlgorithms,!1,i))),this.revocationKeyClass!==null&&(i=new Uint8Array([this.revocationKeyClass,this.revocationKeyAlgorithm]),i=S.concat([i,this.revocationKeyFingerprint]),t.push(ce(e.revocationKey,!1,i))),!this.issuerKeyID.isNull()&&this.issuerKeyVersion<5&&t.push(ce(e.issuerKeyID,!0,this.issuerKeyID.write())),this.rawNotations.forEach(({name:r,value:o,humanReadable:s,critical:c})=>{i=[new Uint8Array([s?128:0,0,0,0])];let p=S.encodeUTF8(r);i.push(S.writeNumber(p.length,2)),i.push(S.writeNumber(o.length,2)),i.push(p),i.push(o),i=S.concat(i),t.push(ce(e.notationData,c,i))}),this.preferredHashAlgorithms!==null&&(i=S.stringToUint8Array(S.uint8ArrayToString(this.preferredHashAlgorithms)),t.push(ce(e.preferredHashAlgorithms,!1,i))),this.preferredCompressionAlgorithms!==null&&(i=S.stringToUint8Array(S.uint8ArrayToString(this.preferredCompressionAlgorithms)),t.push(ce(e.preferredCompressionAlgorithms,!1,i))),this.keyServerPreferences!==null&&(i=S.stringToUint8Array(S.uint8ArrayToString(this.keyServerPreferences)),t.push(ce(e.keyServerPreferences,!1,i))),this.preferredKeyServer!==null&&t.push(ce(e.preferredKeyServer,!1,S.encodeUTF8(this.preferredKeyServer))),this.isPrimaryUserID!==null&&t.push(ce(e.primaryUserID,!1,new Uint8Array([this.isPrimaryUserID?1:0]))),this.policyURI!==null&&t.push(ce(e.policyURI,!1,S.encodeUTF8(this.policyURI))),this.keyFlags!==null&&(i=S.stringToUint8Array(S.uint8ArrayToString(this.keyFlags)),t.push(ce(e.keyFlags,!0,i))),this.signersUserID!==null&&t.push(ce(e.signersUserID,!1,S.encodeUTF8(this.signersUserID))),this.reasonForRevocationFlag!==null&&(i=S.stringToUint8Array(String.fromCharCode(this.reasonForRevocationFlag)+this.reasonForRevocationString),t.push(ce(e.reasonForRevocation,!0,i))),this.features!==null&&(i=S.stringToUint8Array(S.uint8ArrayToString(this.features)),t.push(ce(e.features,!1,i))),this.signatureTargetPublicKeyAlgorithm!==null&&(i=[new Uint8Array([this.signatureTargetPublicKeyAlgorithm,this.signatureTargetHashAlgorithm])],i.push(S.stringToUint8Array(this.signatureTargetHash)),i=S.concat(i),t.push(ce(e.signatureTarget,!0,i))),this.embeddedSignature!==null&&t.push(ce(e.embeddedSignature,!0,this.embeddedSignature.write())),this.issuerFingerprint!==null&&(i=[new Uint8Array([this.issuerKeyVersion]),this.issuerFingerprint],i=S.concat(i),t.push(ce(e.issuerFingerprint,this.version>=5,i))),this.preferredAEADAlgorithms!==null&&(i=S.stringToUint8Array(S.uint8ArrayToString(this.preferredAEADAlgorithms)),t.push(ce(e.preferredAEADAlgorithms,!1,i))),this.preferredCipherSuites!==null&&(i=new Uint8Array([].concat(...this.preferredCipherSuites)),t.push(ce(e.preferredCipherSuites,!1,i)));let a=S.concat(t),n=S.writeNumber(a.length,this.version===6?4:2);return S.concat([n,a])}writeUnhashedSubPackets(){let e=this.unhashedSubpackets.map(({type:a,critical:n,body:r})=>ce(a,n,r)),t=S.concat(e),i=S.writeNumber(t.length,this.version===6?4:2);return S.concat([i,t])}readSubPacket(e,t=!0){let i=0,a=!!(e[i]&128),n=e[i]&127;if(i++,!(!t&&(this.unhashedSubpackets.push({type:n,critical:a,body:e.subarray(i,e.length)}),!sX.has(n))))switch(n){case u.signatureSubpacket.signatureCreationTime:this.created=S.readDate(e.subarray(i,e.length));break;case u.signatureSubpacket.signatureExpirationTime:{let r=S.readNumber(e.subarray(i,e.length));this.signatureNeverExpires=r===0,this.signatureExpirationTime=r;break}case u.signatureSubpacket.exportableCertification:this.exportable=e[i++]===1;break;case u.signatureSubpacket.trustSignature:this.trustLevel=e[i++],this.trustAmount=e[i++];break;case u.signatureSubpacket.regularExpression:this.regularExpression=e[i];break;case u.signatureSubpacket.revocable:this.revocable=e[i++]===1;break;case u.signatureSubpacket.keyExpirationTime:{let r=S.readNumber(e.subarray(i,e.length));this.keyExpirationTime=r,this.keyNeverExpires=r===0;break}case u.signatureSubpacket.preferredSymmetricAlgorithms:this.preferredSymmetricAlgorithms=[...e.subarray(i,e.length)];break;case u.signatureSubpacket.revocationKey:this.revocationKeyClass=e[i++],this.revocationKeyAlgorithm=e[i++],this.revocationKeyFingerprint=e.subarray(i,i+20);break;case u.signatureSubpacket.issuerKeyID:if(this.version===4)this.issuerKeyID.read(e.subarray(i,e.length));else if(t)throw new Error("Unexpected Issuer Key ID subpacket");break;case u.signatureSubpacket.notationData:{let r=!!(e[i]&128);i+=4;let o=S.readNumber(e.subarray(i,i+2));i+=2;let s=S.readNumber(e.subarray(i,i+2));i+=2;let c=S.decodeUTF8(e.subarray(i,i+o)),p=e.subarray(i+o,i+o+s);this.rawNotations.push({name:c,humanReadable:r,value:p,critical:a}),r&&(this.notations[c]=S.decodeUTF8(p));break}case u.signatureSubpacket.preferredHashAlgorithms:this.preferredHashAlgorithms=[...e.subarray(i,e.length)];break;case u.signatureSubpacket.preferredCompressionAlgorithms:this.preferredCompressionAlgorithms=[...e.subarray(i,e.length)];break;case u.signatureSubpacket.keyServerPreferences:this.keyServerPreferences=[...e.subarray(i,e.length)];break;case u.signatureSubpacket.preferredKeyServer:this.preferredKeyServer=S.decodeUTF8(e.subarray(i,e.length));break;case u.signatureSubpacket.primaryUserID:this.isPrimaryUserID=e[i++]!==0;break;case u.signatureSubpacket.policyURI:this.policyURI=S.decodeUTF8(e.subarray(i,e.length));break;case u.signatureSubpacket.keyFlags:this.keyFlags=[...e.subarray(i,e.length)];break;case u.signatureSubpacket.signersUserID:this.signersUserID=S.decodeUTF8(e.subarray(i,e.length));break;case u.signatureSubpacket.reasonForRevocation:this.reasonForRevocationFlag=e[i++],this.reasonForRevocationString=S.decodeUTF8(e.subarray(i,e.length));break;case u.signatureSubpacket.features:this.features=[...e.subarray(i,e.length)];break;case u.signatureSubpacket.signatureTarget:{this.signatureTargetPublicKeyAlgorithm=e[i++],this.signatureTargetHashAlgorithm=e[i++];let r=Re(this.signatureTargetHashAlgorithm);this.signatureTargetHash=S.uint8ArrayToString(e.subarray(i,i+r));break}case u.signatureSubpacket.embeddedSignature:this.embeddedSignature=new d,this.embeddedSignature.read(e.subarray(i,e.length));break;case u.signatureSubpacket.issuerFingerprint:this.issuerKeyVersion=e[i++],this.issuerFingerprint=e.subarray(i,e.length),this.issuerKeyVersion>=5?this.issuerKeyID.read(this.issuerFingerprint):this.issuerKeyID.read(this.issuerFingerprint.subarray(-8));break;case u.signatureSubpacket.preferredAEADAlgorithms:this.preferredAEADAlgorithms=[...e.subarray(i,e.length)];break;case u.signatureSubpacket.preferredCipherSuites:this.preferredCipherSuites=[];for(let r=i;r<e.length;r+=2)this.preferredCipherSuites.push([e[r],e[r+1]]);break;default:this.unknownSubpackets.push({type:n,critical:a,body:e.subarray(i,e.length)});break}}readSubPackets(e,t=!0,i){let a=this.version===6?4:2,n=S.readNumber(e.subarray(0,a)),r=a;for(;r<2+n;){let o=Sb(e.subarray(r,e.length));r+=o.offset,this.readSubPacket(e.subarray(r,r+o.len),t,i),r+=o.len}return r}toSign(e,t){let i=u.signature;switch(e){case i.binary:return t.text!==null?S.encodeUTF8(t.getText(!0)):t.getBytes(!0);case i.text:{let a=t.getBytes(!0);return S.canonicalizeEOL(a)}case i.standalone:return new Uint8Array(0);case i.certGeneric:case i.certPersona:case i.certCasual:case i.certPositive:case i.certRevocation:{let a,n;if(t.userID)n=180,a=t.userID;else if(t.userAttribute)n=209,a=t.userAttribute;else throw new Error("Either a userID or userAttribute packet needs to be supplied for certification.");let r=a.write();return S.concat([this.toSign(i.key,t),new Uint8Array([n]),S.writeNumber(r.length,4),r])}case i.subkeyBinding:case i.subkeyRevocation:case i.keyBinding:return S.concat([this.toSign(i.key,t),this.toSign(i.key,{key:t.bind})]);case i.key:if(t.key===void 0)throw new Error("Key packet is required for this signature.");return t.key.writeForHash(this.version);case i.keyRevocation:return this.toSign(i.key,t);case i.timestamp:return new Uint8Array(0);case i.thirdParty:throw new Error("Not implemented");default:throw new Error("Unknown signature type.")}}calculateTrailer(e,t){let i=0;return Ce(Ca(this.signatureData),a=>{i+=a.length},()=>{let a=[];return this.version===5&&(this.signatureType===u.signature.binary||this.signatureType===u.signature.text)&&(t?a.push(new Uint8Array(6)):a.push(e.writeHeader())),a.push(new Uint8Array([this.version,255])),this.version===5&&a.push(new Uint8Array(4)),a.push(S.writeNumber(i,4)),S.concat(a)})}toHash(e,t,i=!1){let a=this.toSign(e,t);return S.concat([this.salt||new Uint8Array,a,this.signatureData,this.calculateTrailer(t,i)])}async hash(e,t,i,a=!1){if(this.version===6&&this.salt.length!==vo(this.hashAlgorithm))throw new Error("Signature salt does not have the expected length");return i||(i=this.toHash(e,t,a)),Ot(this.hashAlgorithm,i)}async verify(e,t,i,a=new Date,n=!1,r=V){if(!this.issuerKeyID.equals(e.getKeyID()))throw new Error("Signature was not issued by the given public key");if(this.publicKeyAlgorithm!==e.algorithm)throw new Error("Public key algorithm used to sign signature does not match issuer key algorithm.");let o=t===u.signature.binary||t===u.signature.text;if(!(this[ya]&&!o)){let p,l;if(this.hashed?l=await this.hashed:(p=this.toHash(t,i,n),l=await this.hash(t,i,p)),l=await Ae(l),this.signedHashValue[0]!==l[0]||this.signedHashValue[1]!==l[1])throw new Error("Signed digest did not match");if(this.params=await this.params,this[ya]=await qT(this.publicKeyAlgorithm,this.hashAlgorithm,this.params,e.publicParams,p,l),!this[ya])throw new Error("Signature verification failed")}let c=S.normalizeDate(a);if(c&&this.created>c)throw new Error("Signature creation time is in the future");if(c&&c>=this.getExpirationTime())throw new Error("Signature is expired");if(r.rejectHashAlgorithms.has(this.hashAlgorithm))throw new Error("Insecure hash algorithm: "+u.read(u.hash,this.hashAlgorithm).toUpperCase());if(r.rejectMessageHashAlgorithms.has(this.hashAlgorithm)&&[u.signature.binary,u.signature.text].includes(this.signatureType))throw new Error("Insecure message hash algorithm: "+u.read(u.hash,this.hashAlgorithm).toUpperCase());if(this.unknownSubpackets.forEach(({type:p,critical:l})=>{if(l)throw new Error(`Unknown critical signature subpacket type ${p}`)}),this.rawNotations.forEach(({name:p,critical:l})=>{if(l&&r.knownNotations.indexOf(p)<0)throw new Error(`Unknown critical notation: ${p}`)}),this.revocationKeyClass!==null)throw new Error("This key is intended to be revoked with an authorized key, which OpenPGP.js does not support.")}isExpired(e=new Date){let t=S.normalizeDate(e);return t!==null?!(this.created<=t&&t<this.getExpirationTime()):!1}getExpirationTime(){return this.signatureNeverExpires?1/0:new Date(this.created.getTime()+this.signatureExpirationTime*1e3)}};function ce(d,e,t){let i=[];return i.push(vr(t.length+1)),i.push(new Uint8Array([(e?128:0)|d])),i.push(t),S.concat(i)}function vo(d){switch(d){case u.hash.sha256:return 16;case u.hash.sha384:return 24;case u.hash.sha512:return 32;case u.hash.sha224:return 16;case u.hash.sha3_256:return 16;case u.hash.sha3_512:return 32;default:throw new Error("Unsupported hash function")}}var rd=class d{static get tag(){return u.packet.onePassSignature}static fromSignaturePacket(e,t){let i=new d;return i.version=e.version===6?6:3,i.signatureType=e.signatureType,i.hashAlgorithm=e.hashAlgorithm,i.publicKeyAlgorithm=e.publicKeyAlgorithm,i.issuerKeyID=e.issuerKeyID,i.salt=e.salt,i.issuerFingerprint=e.issuerFingerprint,i.flags=t?1:0,i}constructor(){this.version=null,this.signatureType=null,this.hashAlgorithm=null,this.publicKeyAlgorithm=null,this.salt=null,this.issuerKeyID=null,this.issuerFingerprint=null,this.flags=null}read(e){let t=0;if(this.version=e[t++],this.version!==3&&this.version!==6)throw new ye(`Version ${this.version} of the one-pass signature packet is unsupported.`);if(this.signatureType=e[t++],this.hashAlgorithm=e[t++],this.publicKeyAlgorithm=e[t++],this.version===6){let i=e[t++];this.salt=e.subarray(t,t+i),t+=i,this.issuerFingerprint=e.subarray(t,t+32),t+=32,this.issuerKeyID=new ad,this.issuerKeyID.read(this.issuerFingerprint)}else this.issuerKeyID=new ad,this.issuerKeyID.read(e.subarray(t,t+8)),t+=8;return this.flags=e[t++],this}write(){let e=[new Uint8Array([this.version,this.signatureType,this.hashAlgorithm,this.publicKeyAlgorithm])];return this.version===6?e.push(new Uint8Array([this.salt.length]),this.salt,this.issuerFingerprint):e.push(this.issuerKeyID.write()),e.push(new Uint8Array([this.flags])),S.concatUint8Array(e)}calculateTrailer(...e){return wd(async()=>We.prototype.calculateTrailer.apply(await this.correspondingSig,e))}async verify(){let e=await this.correspondingSig;if(!e||e.constructor.tag!==u.packet.signature)throw new Error("Corresponding signature packet missing");if(e.signatureType!==this.signatureType||e.hashAlgorithm!==this.hashAlgorithm||e.publicKeyAlgorithm!==this.publicKeyAlgorithm||!e.issuerKeyID.equals(this.issuerKeyID)||this.version===3&&e.version===6||this.version===6&&e.version!==6||this.version===6&&!S.equalsUint8Array(e.issuerFingerprint,this.issuerFingerprint)||this.version===6&&!S.equalsUint8Array(e.salt,this.salt))throw new Error("Corresponding signature packet does not match one-pass signature packet");return e.hashed=this.hashed,e.verify.apply(e,arguments)}};rd.prototype.hash=We.prototype.hash;rd.prototype.toHash=We.prototype.toHash;rd.prototype.toSign=We.prototype.toSign;function cX(d,e){if(!e[d]){let t;try{t=u.read(u.packet,d)}catch{throw new Hn(`Unknown packet type with tag: ${d}`)}throw new Error(`Packet not allowed in this context: ${t}`)}return new e[d]}var be=class d extends Array{static async fromBinary(e,t,i=V){let a=new d;return await a.read(e,t,i),a}async read(e,t,i=V){i.additionalAllowedPackets.length&&(t={...t,...S.constructAllowedPackets(i.additionalAllowedPackets)}),this.stream=Ad(e,async(n,r)=>{let o=ct(r);try{for(;;)if(await o.ready,await Fv(n,async c=>{try{if(c.tag===u.packet.marker||c.tag===u.packet.trust||c.tag===u.packet.padding)return;let p=cX(c.tag,t);p.packets=new d,p.fromStream=S.isStream(c.packet),await p.read(c.packet,i),await o.write(p)}catch(p){if(p instanceof Hn)if(c.tag<=39)await o.abort(p);else return;let l=!i.ignoreUnsupportedPackets&&p instanceof ye,m=!i.ignoreMalformedPackets&&!(p instanceof ye);if(l||m||wn(c.tag))await o.abort(p);else{let P=new Ta(c.tag,c.packet);await o.write(P)}S.printDebugError(p)}})){await o.ready,await o.close();return}}catch(s){await o.abort(s)}});let a=od(this.stream);for(;;){let{done:n,value:r}=await a.read();if(n?this.stream=null:this.push(r),n||wn(r.constructor.tag))break}a.releaseLock()}write(){let e=[];for(let t=0;t<this.length;t++){let i=this[t]instanceof Ta?this[t].tag:this[t].constructor.tag,a=this[t].write();if(S.isStream(a)&&wn(this[t].constructor.tag)){let n=[],r=0,o=512;e.push(zn(i)),e.push(Ce(a,s=>{if(n.push(s),r+=s.length,r>=o){let c=Math.min(Math.log(r)/Math.LN2|0,30),p=2**c,l=S.concat([bv(c)].concat(n));return n=[l.subarray(1+p)],r=n[0].length,l.subarray(0,1+p)}},()=>S.concat([vr(r)].concat(n))))}else{if(S.isStream(a)){let n=0;e.push(Ce(Ca(a),r=>{n+=r.length},()=>VI(i,n)))}else e.push(VI(i,a.length));e.push(a)}}return S.concat(e)}filterByTag(...e){let t=new d,i=a=>n=>a===n;for(let a=0;a<this.length;a++)e.some(i(this[a].constructor.tag))&&t.push(this[a]);return t}findPacket(e){return this.find(t=>t.constructor.tag===e)}indexOfTag(...e){let t=[],i=this,a=n=>r=>n===r;for(let n=0;n<this.length;n++)e.some(a(i[n].constructor.tag))&&t.push(n);return t}},pX=S.constructAllowedPackets([Vi,rd,We]),rr=class{static get tag(){return u.packet.compressedData}constructor(e=V){this.packets=null,this.algorithm=e.preferredCompressionAlgorithm,this.compressed=null}async read(e,t=V){await vs(e,async i=>{this.algorithm=await i.readByte(),this.compressed=i.remainder(),await this.decompress(t)})}write(){return this.compressed===null&&this.compress(),S.concat([new Uint8Array([this.algorithm]),this.compressed])}async decompress(e=V){let t=u.read(u.compression,this.algorithm),i=mX[t];if(!i)throw new Error(`${t} decompression not supported`);this.packets=await be.fromBinary(await i(this.compressed),pX,e)}compress(){let e=u.read(u.compression,this.algorithm),t=lX[e];if(!t)throw new Error(`${e} compression not supported`);this.compressed=t(this.packets.write())}};function or(d,e){return t=>{if(!S.isStream(t)||De(t))return wd(()=>Ae(t).then(n=>new Promise((r,o)=>{let s=new e;s.ondata=c=>{r(c)};try{s.push(n,!0)}catch(c){o(c)}})));if(d)try{let n=d();return t.pipeThrough(n)}catch(n){if(n.name!=="TypeError")throw n}let i=t.getReader(),a=new e;return new ReadableStream({async start(n){for(a.ondata=async(r,o)=>{n.enqueue(r),o&&n.close()};;){let{done:r,value:o}=await i.read();if(r){a.push(new Uint8Array,!0);return}else o.length&&a.push(o)}}})}}function uX(){return async function(d){let{decode:e}=await Promise.resolve().then(function(){return AD});return wd(async()=>e(await Ae(d)))}}var sr=d=>({compressor:typeof CompressionStream<"u"&&(()=>new CompressionStream(d)),decompressor:typeof DecompressionStream<"u"&&(()=>new DecompressionStream(d))}),lX={zip:or(sr("deflate-raw").compressor,is),zlib:or(sr("deflate").compressor,aX)},mX={uncompressed:d=>d,zip:or(sr("deflate-raw").decompressor,Un),zlib:or(sr("deflate").decompressor,nX),bzip2:uX()},yX=S.constructAllowedPackets([Vi,rr,rd,We]),xa=class d{static get tag(){return u.packet.symEncryptedIntegrityProtectedData}static fromObject({version:e,aeadAlgorithm:t}){if(e!==1&&e!==2)throw new Error("Unsupported SEIPD version");let i=new d;return i.version=e,e===2&&(i.aeadAlgorithm=t),i}constructor(){this.version=null,this.cipherAlgorithm=null,this.aeadAlgorithm=null,this.chunkSizeByte=null,this.salt=null,this.encrypted=null,this.packets=null}async read(e){await vs(e,async t=>{if(this.version=await t.readByte(),this.version!==1&&this.version!==2)throw new ye(`Version ${this.version} of the SEIP packet is unsupported.`);this.version===2&&(this.cipherAlgorithm=await t.readByte(),this.aeadAlgorithm=await t.readByte(),this.chunkSizeByte=await t.readByte(),this.salt=await t.readBytes(32)),this.encrypted=t.remainder()})}write(){return this.version===2?S.concat([new Uint8Array([this.version,this.cipherAlgorithm,this.aeadAlgorithm,this.chunkSizeByte]),this.salt,this.encrypted]):S.concat([new Uint8Array([this.version]),this.encrypted])}async encrypt(e,t,i=V){let{blockSize:a,keySize:n}=Pe(e);if(t.length!==n)throw new Error("Unexpected session key size");let r=this.packets.write();if(De(r)&&(r=await Ae(r)),this.version===2)this.cipherAlgorithm=e,this.salt=qe(32),this.chunkSizeByte=i.aeadChunkSizeByte,this.encrypted=await m4(this,"encrypt",t,r);else{let o=await bT(e),s=new Uint8Array([211,20]),c=S.concat([o,r,s]),p=await Ot(u.hash.sha1,ba(c)),l=S.concat([c,p]);this.encrypted=await Hs(e,t,l,new Uint8Array(a))}return!0}async decrypt(e,t,i=V){if(t.length!==Pe(e).keySize)throw new Error("Unexpected session key size");let a=Ca(this.encrypted);De(a)&&(a=await Ae(a));let n;if(this.version===2){if(this.cipherAlgorithm!==e)throw new Error("Unexpected session key algorithm");n=await m4(this,"decrypt",t,a)}else{let{blockSize:r}=Pe(e),o=await Ws(e,t,a,new Uint8Array(r)),s=ke(ba(o),-20),c=ke(o,0,-20),p=Promise.all([Ae(await Ot(u.hash.sha1,ba(c))),Ae(s)]).then(([m,P])=>{if(!S.equalsUint8Array(m,P))throw new Error("Modification detected.");return new Uint8Array}),l=ke(c,r+2);n=ke(l,0,-2),n=Ze([n,wd(()=>p)]),(!S.isStream(a)||!i.allowUnauthenticatedStream)&&(n=await Ae(n))}return this.packets=await be.fromBinary(n,yX,i),!0}};async function m4(d,e,t,i){let a=d instanceof xa&&d.version===2,n=!a&&d.constructor.tag===u.packet.aeadEncryptedData;if(!a&&!n)throw new Error("Unexpected packet type");let r=Jd(d.aeadAlgorithm,n),o=e==="decrypt"?r.tagLength:0,s=e==="encrypt"?r.tagLength:0,c=2**(d.chunkSizeByte+6)+o,p=n?8:0,l=new ArrayBuffer(13+p),m=new Uint8Array(l,0,5+p),P=new Uint8Array(l),g=new DataView(l),y=new Uint8Array(l,5,8);m.set([192|d.constructor.tag,d.version,d.cipherAlgorithm,d.aeadAlgorithm,d.chunkSizeByte],0);let f=0,h=Promise.resolve(),I=0,b=0,F,X;if(a){let{keySize:x}=Pe(d.cipherAlgorithm),{ivLength:E}=r,D=new Uint8Array(l,0,5),v=await xd(u.hash.sha256,t,d.salt,D,x+E);t=v.subarray(0,x),F=v.subarray(x),F.fill(0,F.length-8),X=new DataView(F.buffer,F.byteOffset,F.byteLength)}else F=d.iv;let T=await r(d.cipherAlgorithm,t);return Ad(i,async(x,E)=>{if(S.isStream(x)!=="array"){let C=new TransformStream({},{highWaterMark:S.getHardwareConcurrency()*2**(d.chunkSizeByte+6),size:M=>M.length});oi(C.readable,E),E=C.writable}let D=od(x),v=ct(E);try{for(;;){let C=await D.readBytes(c+o)||new Uint8Array,M=C.subarray(C.length-o);C=C.subarray(0,C.length-o);let O,R,w;if(a)w=F;else{w=F.slice();for(let N=0;N<8;N++)w[F.length-8+N]^=y[N]}if(!f||C.length?(D.unshift(M),O=T[e](C,w,m),O.catch(()=>{}),b+=C.length-o+s):(g.setInt32(5+p+4,I),O=T[e](M,w,P),O.catch(()=>{}),b+=s,R=!0),I+=C.length-o,h=h.then(()=>O).then(async N=>{await v.ready,await v.write(N),b-=N.length}).catch(N=>v.abort(N)),(R||b>v.desiredSize)&&await h,!R)a?X.setInt32(F.length-4,++f):g.setInt32(9,++f);else{await v.close();break}}}catch(C){await v.ready.catch(()=>{}),await v.abort(C)}})}var cr=class d{static get tag(){return u.packet.publicKeyEncryptedSessionKey}constructor(){this.version=null,this.publicKeyID=new ad,this.publicKeyVersion=null,this.publicKeyFingerprint=null,this.publicKeyAlgorithm=null,this.sessionKey=null,this.sessionKeyAlgorithm=null,this.encrypted={}}static fromObject({version:e,encryptionKeyPacket:t,anonymousRecipient:i,sessionKey:a,sessionKeyAlgorithm:n}){let r=new d;if(e!==3&&e!==6)throw new Error("Unsupported PKESK version");return r.version=e,e===6&&(r.publicKeyVersion=i?null:t.version,r.publicKeyFingerprint=i?null:t.getFingerprintBytes()),r.publicKeyID=i?ad.wildcard():t.getKeyID(),r.publicKeyAlgorithm=t.algorithm,r.sessionKey=a,r.sessionKeyAlgorithm=n,r}read(e){let t=0;if(this.version=e[t++],this.version!==3&&this.version!==6)throw new ye(`Version ${this.version} of the PKESK packet is unsupported.`);if(this.version===6){let i=e[t++];if(i){this.publicKeyVersion=e[t++];let a=i-1;this.publicKeyFingerprint=e.subarray(t,t+a),t+=a,this.publicKeyVersion>=5?this.publicKeyID.read(this.publicKeyFingerprint):this.publicKeyID.read(this.publicKeyFingerprint.subarray(-8))}else this.publicKeyID=ad.wildcard()}else t+=this.publicKeyID.read(e.subarray(t,t+8));if(this.publicKeyAlgorithm=e[t++],this.encrypted=fT(this.publicKeyAlgorithm,e.subarray(t)),this.publicKeyAlgorithm===u.publicKey.x25519||this.publicKeyAlgorithm===u.publicKey.x448){if(this.version===3)this.sessionKeyAlgorithm=u.write(u.symmetric,this.encrypted.C.algorithm);else if(this.encrypted.C.algorithm!==null)throw new Error("Unexpected cleartext symmetric algorithm")}}write(){let e=[new Uint8Array([this.version])];return this.version===6?this.publicKeyFingerprint!==null?(e.push(new Uint8Array([this.publicKeyFingerprint.length+1,this.publicKeyVersion])),e.push(this.publicKeyFingerprint)):e.push(new Uint8Array([0])):e.push(this.publicKeyID.write()),e.push(new Uint8Array([this.publicKeyAlgorithm]),Gi(this.publicKeyAlgorithm,this.encrypted)),S.concatUint8Array(e)}async encrypt(e){let t=u.write(u.publicKey,this.publicKeyAlgorithm),i=this.version===3?this.sessionKeyAlgorithm:null,a=e.version===5?e.getFingerprintBytes().subarray(0,20):e.getFingerprintBytes(),n=y4(this.version,t,i,this.sessionKey);this.encrypted=await yT(t,i,e.publicParams,n,a)}async decrypt(e,t){if(this.publicKeyAlgorithm!==e.algorithm)throw new Error("Decryption error");let i=t?y4(this.version,this.publicKeyAlgorithm,t.sessionKeyAlgorithm,t.sessionKey):null,a=e.version===5?e.getFingerprintBytes().subarray(0,20):e.getFingerprintBytes(),n=await ST(this.publicKeyAlgorithm,e.publicParams,e.privateParams,this.encrypted,a,i),{sessionKey:r,sessionKeyAlgorithm:o}=SX(this.version,this.publicKeyAlgorithm,n,t);if(this.version===3){let s=this.publicKeyAlgorithm!==u.publicKey.x25519&&this.publicKeyAlgorithm!==u.publicKey.x448;if(this.sessionKeyAlgorithm=s?o:this.sessionKeyAlgorithm,r.length!==Pe(this.sessionKeyAlgorithm).keySize)throw new Error("Unexpected session key size")}this.sessionKey=r}};function y4(d,e,t,i){switch(e){case u.publicKey.rsaEncrypt:case u.publicKey.rsaEncryptSign:case u.publicKey.elgamal:case u.publicKey.ecdh:return S.concatUint8Array([new Uint8Array(d===6?[]:[t]),i,S.writeChecksum(i.subarray(i.length%8))]);case u.publicKey.x25519:case u.publicKey.x448:return i;default:throw new Error("Unsupported public key algorithm")}}function SX(d,e,t,i){switch(e){case u.publicKey.rsaEncrypt:case u.publicKey.rsaEncryptSign:case u.publicKey.elgamal:case u.publicKey.ecdh:{let a=t.subarray(0,t.length-2),n=t.subarray(t.length-2),r=S.writeChecksum(a.subarray(a.length%8)),o=r[0]===n[0]&r[1]===n[1],s=d===6?{sessionKeyAlgorithm:null,sessionKey:a}:{sessionKeyAlgorithm:a[0],sessionKey:a.subarray(1)};if(i){let c=o&s.sessionKeyAlgorithm===i.sessionKeyAlgorithm&s.sessionKey.length===i.sessionKey.length;return{sessionKey:S.selectUint8Array(c,s.sessionKey,i.sessionKey),sessionKeyAlgorithm:d===6?null:S.selectUint8(c,s.sessionKeyAlgorithm,i.sessionKeyAlgorithm)}}else{if(o&&(d===6||u.read(u.symmetric,s.sessionKeyAlgorithm)))return s;throw new Error("Decryption error")}}case u.publicKey.x25519:case u.publicKey.x448:return{sessionKeyAlgorithm:null,sessionKey:t};default:throw new Error("Unsupported public key algorithm")}}var pr=class d{static get tag(){return u.packet.symEncryptedSessionKey}constructor(e=V){this.version=e.aeadProtect?6:4,this.sessionKey=null,this.sessionKeyEncryptionAlgorithm=null,this.sessionKeyAlgorithm=null,this.aeadAlgorithm=u.write(u.aead,e.preferredAEADAlgorithm),this.encrypted=null,this.s2k=null,this.iv=null}read(e){let t=0;if(this.version=e[t++],this.version!==4&&this.version!==5&&this.version!==6)throw new ye(`Version ${this.version} of the SKESK packet is unsupported.`);this.version===6&&t++;let i=e[t++];this.version>=5&&(this.aeadAlgorithm=e[t++],this.version===6&&t++);let a=e[t++];if(this.s2k=nr(a),t+=this.s2k.read(e.subarray(t,e.length)),this.version>=5){let n=Jd(this.aeadAlgorithm,!0);this.iv=e.subarray(t,t+=n.ivLength)}this.version>=5||t<e.length?(this.encrypted=e.subarray(t,e.length),this.sessionKeyEncryptionAlgorithm=i):this.sessionKeyAlgorithm=i}write(){let e=this.encrypted===null?this.sessionKeyAlgorithm:this.sessionKeyEncryptionAlgorithm,t,i=this.s2k.write();if(this.version===6){let a=i.length,n=3+a+this.iv.length;t=S.concatUint8Array([new Uint8Array([this.version,n,e,this.aeadAlgorithm,a]),i,this.iv,this.encrypted])}else this.version===5?t=S.concatUint8Array([new Uint8Array([this.version,e,this.aeadAlgorithm]),i,this.iv,this.encrypted]):(t=S.concatUint8Array([new Uint8Array([this.version,e]),i]),this.encrypted!==null&&(t=S.concatUint8Array([t,this.encrypted])));return t}async decrypt(e){let t=this.sessionKeyEncryptionAlgorithm!==null?this.sessionKeyEncryptionAlgorithm:this.sessionKeyAlgorithm,{blockSize:i,keySize:a}=Pe(t),n=await this.s2k.produceKey(e,a);if(this.version>=5){let r=Jd(this.aeadAlgorithm,!0),o=new Uint8Array([192|d.tag,this.version,this.sessionKeyEncryptionAlgorithm,this.aeadAlgorithm]),s=this.version===6?await xd(u.hash.sha256,n,new Uint8Array,o,a):n,c=await r(t,s);this.sessionKey=await c.decrypt(this.encrypted,this.iv,o)}else if(this.encrypted!==null){let r=await Ws(t,n,this.encrypted,new Uint8Array(i));if(this.sessionKeyAlgorithm=u.write(u.symmetric,r[0]),this.sessionKey=r.subarray(1,r.length),this.sessionKey.length!==Pe(this.sessionKeyAlgorithm).keySize)throw new Error("Unexpected session key size")}else this.sessionKey=n}async encrypt(e,t=V){let i=this.sessionKeyEncryptionAlgorithm!==null?this.sessionKeyEncryptionAlgorithm:this.sessionKeyAlgorithm;this.sessionKeyEncryptionAlgorithm=i,this.s2k=Yb(t),this.s2k.generateSalt();let{blockSize:a,keySize:n}=Pe(i),r=await this.s2k.produceKey(e,n);if(this.sessionKey===null&&(this.sessionKey=Wo(this.sessionKeyAlgorithm)),this.version>=5){let o=Jd(this.aeadAlgorithm);this.iv=qe(o.ivLength);let s=new Uint8Array([192|d.tag,this.version,this.sessionKeyEncryptionAlgorithm,this.aeadAlgorithm]),c=this.version===6?await xd(u.hash.sha256,r,new Uint8Array,s,n):r,p=await o(i,c);this.encrypted=await p.encrypt(this.sessionKey,this.iv,s)}else{let o=S.concatUint8Array([new Uint8Array([this.sessionKeyAlgorithm]),this.sessionKey]);this.encrypted=await Hs(i,r,o,new Uint8Array(a))}}},kt=class d{static get tag(){return u.packet.publicKey}constructor(e=new Date,t=V){this.version=t.v6Keys?6:4,this.created=S.normalizeDate(e),this.algorithm=null,this.publicParams=null,this.expirationTimeV3=0,this.fingerprint=null,this.keyID=null}static fromSecretKeyPacket(e){let t=new d,{version:i,created:a,algorithm:n,publicParams:r,keyID:o,fingerprint:s}=e;return t.version=i,t.created=a,t.algorithm=n,t.publicParams=r,t.keyID=o,t.fingerprint=s,t}async read(e,t=V){let i=0;if(this.version=e[i++],this.version===5&&!t.enableParsingV5Entities)throw new ye("Support for parsing v5 entities is disabled; turn on `config.enableParsingV5Entities` if needed");if(this.version===4||this.version===5||this.version===6){this.created=S.readDate(e.subarray(i,i+4)),i+=4,this.algorithm=e[i++],this.version>=5&&(i+=4);let{read:a,publicParams:n}=PT(this.algorithm,e.subarray(i));if(this.version===6&&n.oid&&(n.oid.getName()===u.curve.curve25519Legacy||n.oid.getName()===u.curve.ed25519Legacy))throw new Error("Legacy curve25519 cannot be used with v6 keys");return this.publicParams=n,i+=a,await this.computeFingerprintAndKeyID(),i}throw new ye(`Version ${this.version} of the key packet is unsupported.`)}write(){let e=[];e.push(new Uint8Array([this.version])),e.push(S.writeDate(this.created)),e.push(new Uint8Array([this.algorithm]));let t=Gi(this.algorithm,this.publicParams);return this.version>=5&&e.push(S.writeNumber(t.length,4)),e.push(t),S.concatUint8Array(e)}writeForHash(e){let t=this.writePublicKey(),i=149+e,a=e>=5?4:2;return S.concatUint8Array([new Uint8Array([i]),S.writeNumber(t.length,a),t])}isDecrypted(){return null}getCreationTime(){return this.created}getKeyID(){return this.keyID}async computeFingerprintAndKeyID(){if(await this.computeFingerprint(),this.keyID=new ad,this.version>=5)this.keyID.read(this.fingerprint.subarray(0,8));else if(this.version===4)this.keyID.read(this.fingerprint.subarray(12,20));else throw new Error("Unsupported key version")}async computeFingerprint(){let e=this.writeForHash(this.version);if(this.version>=5)this.fingerprint=await Ot(u.hash.sha256,e);else if(this.version===4)this.fingerprint=await Ot(u.hash.sha1,e);else throw new Error("Unsupported key version")}getFingerprintBytes(){return this.fingerprint}getFingerprint(){return S.uint8ArrayToHex(this.getFingerprintBytes())}hasSameFingerprintAs(e){return this.version===e.version&&S.equalsUint8Array(this.writePublicKey(),e.writePublicKey())}getAlgorithmInfo(){let e={};e.algorithm=u.read(u.publicKey,this.algorithm);let t=this.publicParams.n||this.publicParams.p;return t?e.bits=S.uint8ArrayBitLength(t):this.publicParams.oid&&(e.curve=this.publicParams.oid.getName()),e}};kt.prototype.readPublicKey=kt.prototype.read;kt.prototype.writePublicKey=kt.prototype.write;var ur=class d extends kt{static get tag(){return u.packet.publicSubkey}constructor(e,t){super(e,t)}static fromSecretSubkeyPacket(e){let t=new d,{version:i,created:a,algorithm:n,publicParams:r,keyID:o,fingerprint:s}=e;return t.version=i,t.created=a,t.algorithm=n,t.publicParams=r,t.keyID=o,t.fingerprint=s,t}},as=class d{static get tag(){return u.packet.userAttribute}constructor(){this.attributes=[]}read(e){let t=0;for(;t<e.length;){let i=Sb(e.subarray(t,e.length));t+=i.offset,this.attributes.push(S.uint8ArrayToString(e.subarray(t,t+i.len))),t+=i.len}}write(){let e=[];for(let t=0;t<this.attributes.length;t++)e.push(vr(this.attributes[t].length)),e.push(S.stringToUint8Array(this.attributes[t]));return S.concatUint8Array(e)}equals(e){return!e||!(e instanceof d)?!1:this.attributes.every(function(t,i){return t===e.attributes[i]})}},lr=class extends kt{static get tag(){return u.packet.secretKey}constructor(e=new Date,t=V){super(e,t),this.keyMaterial=null,this.isEncrypted=null,this.s2kUsage=0,this.s2k=null,this.symmetric=null,this.aead=null,this.isLegacyAEAD=null,this.privateParams=null,this.usedModernAEAD=null}async read(e,t=V){let i=await this.readPublicKey(e,t),a=i;this.s2kUsage=e[i++],this.version===5&&i++,this.version===6&&this.s2kUsage&&i++;try{if(this.s2kUsage===255||this.s2kUsage===254||this.s2kUsage===253){this.symmetric=e[i++],this.s2kUsage===253&&(this.aead=e[i++]),this.version===6&&i++;let n=e[i++];if(this.s2k=nr(n),i+=this.s2k.read(e.subarray(i,e.length)),this.s2k.type==="gnu-dummy")return}else this.s2kUsage&&(this.symmetric=this.s2kUsage);this.s2kUsage&&(this.isLegacyAEAD=this.s2kUsage===253&&(this.version===5||this.version===4&&t.parseAEADEncryptedV4KeysAsLegacy),this.s2kUsage!==253||this.isLegacyAEAD?(this.iv=e.subarray(i,i+Pe(this.symmetric).blockSize),this.usedModernAEAD=!1):(this.iv=e.subarray(i,i+Jd(this.aead).ivLength),this.usedModernAEAD=!0),i+=this.iv.length)}catch(n){if(!this.s2kUsage)throw n;this.unparseableKeyMaterial=e.subarray(a),this.isEncrypted=!0}if(this.version===5&&(i+=4),this.keyMaterial=e.subarray(i),this.isEncrypted=!!this.s2kUsage,!this.isEncrypted){let n;if(this.version===6)n=this.keyMaterial;else if(n=this.keyMaterial.subarray(0,-2),!S.equalsUint8Array(S.writeChecksum(n),this.keyMaterial.subarray(-2)))throw new Error("Key checksum mismatch");try{let{read:r,privateParams:o}=t4(this.algorithm,n,this.publicParams);if(r<n.length)throw new Error("Error reading MPIs");this.privateParams=o}catch(r){throw r instanceof ye?r:new Error("Error reading MPIs")}}}write(){let e=this.writePublicKey();if(this.unparseableKeyMaterial)return S.concatUint8Array([e,this.unparseableKeyMaterial]);let t=[e];t.push(new Uint8Array([this.s2kUsage]));let i=[];if(this.s2kUsage===255||this.s2kUsage===254||this.s2kUsage===253){i.push(this.symmetric),this.s2kUsage===253&&i.push(this.aead);let a=this.s2k.write();this.version===6&&i.push(a.length),i.push(...a)}return this.s2kUsage&&this.s2k.type!=="gnu-dummy"&&i.push(...this.iv),(this.version===5||this.version===6&&this.s2kUsage)&&t.push(new Uint8Array([i.length])),t.push(new Uint8Array(i)),this.isDummy()||(this.s2kUsage||(this.keyMaterial=Gi(this.algorithm,this.privateParams)),this.version===5&&t.push(S.writeNumber(this.keyMaterial.length,4)),t.push(this.keyMaterial),!this.s2kUsage&&this.version!==6&&t.push(S.writeChecksum(this.keyMaterial))),S.concatUint8Array(t)}isDecrypted(){return this.isEncrypted===!1}isMissingSecretKeyMaterial(){return this.unparseableKeyMaterial!==void 0||this.isDummy()}isDummy(){return!!(this.s2k&&this.s2k.type==="gnu-dummy")}makeDummy(e=V){this.isDummy()||(this.isDecrypted()&&this.clearPrivateParams(),delete this.unparseableKeyMaterial,this.isEncrypted=null,this.keyMaterial=null,this.s2k=nr(u.s2k.gnu,e),this.s2k.algorithm=0,this.s2k.c=0,this.s2k.type="gnu-dummy",this.s2kUsage=254,this.symmetric=u.symmetric.aes256,this.isLegacyAEAD=null,this.usedModernAEAD=null)}async encrypt(e,t=V){if(this.isDummy())return;if(!this.isDecrypted())throw new Error("Key packet is already encrypted");if(!e)throw new Error("A non-empty passphrase is required for key encryption.");this.s2k=Yb(t),this.s2k.generateSalt();let i=Gi(this.algorithm,this.privateParams);this.symmetric=u.symmetric.aes256;let{blockSize:a}=Pe(this.symmetric);if(t.aeadProtect){this.s2kUsage=253,this.aead=t.preferredAEADAlgorithm;let n=Jd(this.aead);this.isLegacyAEAD=this.version===5,this.usedModernAEAD=!this.isLegacyAEAD;let r=zn(this.constructor.tag),o=await To(this.version,this.s2k,e,this.symmetric,this.aead,r,this.isLegacyAEAD),s=await n(this.symmetric,o);this.iv=this.isLegacyAEAD?qe(a):qe(n.ivLength);let c=this.isLegacyAEAD?new Uint8Array:S.concatUint8Array([r,this.writePublicKey()]);this.keyMaterial=await s.encrypt(i,this.iv.subarray(0,n.ivLength),c)}else{this.s2kUsage=254,this.usedModernAEAD=!1;let n=await To(this.version,this.s2k,e,this.symmetric);this.iv=qe(a),this.keyMaterial=await Hs(this.symmetric,n,S.concatUint8Array([i,await Ot(u.hash.sha1,i)]),this.iv)}}async decrypt(e){if(this.isDummy())return!1;if(this.unparseableKeyMaterial)throw new Error("Key packet cannot be decrypted: unsupported S2K or cipher algo");if(this.isDecrypted())throw new Error("Key packet is already decrypted.");let t,i=zn(this.constructor.tag);if(this.s2kUsage===254||this.s2kUsage===253)t=await To(this.version,this.s2k,e,this.symmetric,this.aead,i,this.isLegacyAEAD);else throw this.s2kUsage===255?new Error("Encrypted private key is authenticated using an insecure two-byte hash"):new Error("Private key is encrypted using an insecure S2K function: unsalted MD5");let a;if(this.s2kUsage===253){let n=Jd(this.aead,!0),r=await n(this.symmetric,t);try{let o=this.isLegacyAEAD?new Uint8Array:S.concatUint8Array([i,this.writePublicKey()]);a=await r.decrypt(this.keyMaterial,this.iv.subarray(0,n.ivLength),o)}catch(o){throw o.message==="Authentication tag mismatch"?new Error("Incorrect key passphrase: "+o.message):o}}else{let n=await Ws(this.symmetric,t,this.keyMaterial,this.iv);a=n.subarray(0,-20);let r=await Ot(u.hash.sha1,a);if(!S.equalsUint8Array(r,n.subarray(-20)))throw new Error("Incorrect key passphrase")}try{let{privateParams:n}=t4(this.algorithm,a,this.publicParams);this.privateParams=n}catch{throw new Error("Error reading MPIs")}this.isEncrypted=!1,this.keyMaterial=null,this.s2kUsage=0,this.aead=null,this.symmetric=null,this.isLegacyAEAD=null}async validate(){if(this.isDummy())return;if(!this.isDecrypted())throw new Error("Key is not decrypted");if(this.usedModernAEAD)return;let e;try{e=await hT(this.algorithm,this.publicParams,this.privateParams)}catch{e=!1}if(!e)throw new Error("Key is invalid")}async generate(e,t){if(this.version===6&&(this.algorithm===u.publicKey.ecdh&&t===u.curve.curve25519Legacy||this.algorithm===u.publicKey.eddsaLegacy))throw new Error(`Cannot generate v6 keys of type 'ecc' with curve ${t}. Generate a key of type 'curve25519' instead`);let{privateParams:i,publicParams:a}=await gT(this.algorithm,e,t);this.privateParams=i,this.publicParams=a,this.isEncrypted=!1}clearPrivateParams(){this.isMissingSecretKeyMaterial()||(Object.keys(this.privateParams).forEach(e=>{this.privateParams[e].fill(0),delete this.privateParams[e]}),this.privateParams=null,this.isEncrypted=!0)}};async function To(d,e,t,i,a,n,r){if(e.type==="argon2"&&!a)throw new Error("Using Argon2 S2K without AEAD is not allowed");if(e.type==="simple"&&d===6)throw new Error("Using Simple S2K with version 6 keys is not allowed");let{keySize:o}=Pe(i),s=await e.produceKey(t,o);if(!a||d===5||r)return s;let c=S.concatUint8Array([n,new Uint8Array([d,i,a])]);return xd(u.hash.sha256,s,new Uint8Array,c,o)}var ns=class d{static get tag(){return u.packet.userID}constructor(){this.userID="",this.name="",this.email="",this.comment=""}static fromObject(e){if(S.isString(e)||e.name&&!S.isString(e.name)||e.email&&!S.isEmailAddress(e.email)||e.comment&&!S.isString(e.comment))throw new Error("Invalid user ID format");let t=new d;Object.assign(t,e);let i=[];return t.name&&i.push(t.name),t.comment&&i.push(`(${t.comment})`),t.email&&i.push(`<${t.email}>`),t.userID=i.join(" "),t}read(e,t=V){let i=S.decodeUTF8(e);if(i.length>t.maxUserIDLength)throw new Error("User ID string is too long");let n=/^(?<name>[^()]+\s+)?(?<comment>\([^()]+\)\s+)?(?<email><\S+@\S+>)$/.exec(i);if(n!==null){let{name:r,comment:o,email:s}=n.groups;this.comment=o?.replace(/^\(|\)|\s$/g,"").trim()||"",this.name=r?.trim()||"",this.email=s.substring(1,s.length-1)}else/^[^\s@]+@[^\s@]+$/.test(i)&&(this.email=i);this.userID=i}write(){return S.encodeUTF8(this.userID)}equals(e){return e&&e.userID===this.userID}},mr=class extends lr{static get tag(){return u.packet.secretSubkey}constructor(e=new Date,t=V){super(e,t)}};var Xd=class{constructor(e){this.packets=e||new be}write(){return this.packets.write()}armor(e=V){let t=this.packets.some(i=>i.constructor.tag===We.tag&&i.version!==6);return Ji(u.armor.signature,this.write(),void 0,void 0,void 0,t,e)}getSigningKeyIDs(){return this.packets.map(e=>e.issuerKeyID)}};async function PX(d,e){let t=new mr(d.date,e);return t.packets=null,t.algorithm=u.write(u.publicKey,d.algorithm),await t.generate(d.rsaBits,d.curve),await t.computeFingerprintAndKeyID(),t}async function ht(d,e,t,i,a=new Date,n){let r,o;for(let s=d.length-1;s>=0;s--)try{(!r||d[s].created>=r.created)&&(await d[s].verify(e,t,i,a,void 0,n),r=d[s])}catch(c){o=c}if(!r)throw S.wrapError(`Could not find valid ${u.read(u.signature,t)} signature in key ${e.getKeyID().toHex()}`.replace("certGeneric ","self-").replace(/([a-z])([A-Z])/g,(s,c,p)=>c+" "+p.toLowerCase()),o);return r}function rs(d,e,t=new Date){let i=S.normalizeDate(t);if(i!==null){let a=yr(d,e);return!(d.created<=i&&i<a)}return!1}async function fX(d,e,t,i){let a={};a.key=e,a.bind=d;let n={signatureType:u.signature.subkeyBinding};return t.sign?(n.keyFlags=[u.keyFlags.signData],n.embeddedSignature=await di(a,[],d,{signatureType:u.signature.keyBinding},t.date,void 0,void 0,void 0,i)):n.keyFlags=[u.keyFlags.encryptCommunication|u.keyFlags.encryptStorage],t.keyExpirationTime>0&&(n.keyExpirationTime=t.keyExpirationTime,n.keyNeverExpires=!1),await di(a,[],e,n,t.date,void 0,void 0,void 0,i)}async function gX(d,e,t=new Date,i=[],a){let n=u.hash.sha256,r=a.preferredHashAlgorithm,o=await Promise.all(d.map(async(m,P)=>(await m.getPrimarySelfSignature(t,i[P],a)).preferredHashAlgorithms||[])),s=new Map;for(let m of o)for(let P of m)try{let g=u.write(u.hash,P);s.set(g,s.has(g)?s.get(g)+1:1)}catch{}let c=m=>d.length===0||s.get(m)===d.length||m===n,p=()=>{if(s.size===0)return n;let P=Array.from(s.keys()).filter(g=>c(g)).sort((g,y)=>Re(g)-Re(y))[0];return Re(P)>=Re(n)?P:n};if(new Set([u.publicKey.ecdsa,u.publicKey.eddsaLegacy,u.publicKey.ed25519,u.publicKey.ed448]).has(e.algorithm)){let m=IT(e.algorithm,e.publicParams.oid),P=c(r),g=Re(r)>=Re(m);if(P&&g)return r;{let y=p();return Re(y)>=Re(m)?y:m}}return c(r)?r:p()}async function hX(d=[],e=new Date,t=[],i=V){let a=await Promise.all(d.map((s,c)=>s.getPrimarySelfSignature(e,t[c],i)));if(d.length?a.every(s=>s.features&&s.features[0]&u.features.seipdv2):i.aeadProtect){let s={symmetricAlgo:u.symmetric.aes128,aeadAlgo:u.aead.ocb},c=[{symmetricAlgo:i.preferredSymmetricAlgorithm,aeadAlgo:i.preferredAEADAlgorithm},{symmetricAlgo:i.preferredSymmetricAlgorithm,aeadAlgo:u.aead.ocb},{symmetricAlgo:u.symmetric.aes128,aeadAlgo:i.preferredAEADAlgorithm}];for(let p of c)if(a.every(l=>l.preferredCipherSuites&&l.preferredCipherSuites.some(m=>m[0]===p.symmetricAlgo&&m[1]===p.aeadAlgo)))return p;return s}let r=u.symmetric.aes128,o=i.preferredSymmetricAlgorithm;return{symmetricAlgo:a.every(s=>s.preferredSymmetricAlgorithms&&s.preferredSymmetricAlgorithms.includes(o))?o:r,aeadAlgo:void 0}}async function di(d,e,t,i,a,n,r=[],o=!1,s){if(t.isDummy())throw new Error("Cannot sign with a gnu-dummy key.");if(!t.isDecrypted())throw new Error("Signing key is not decrypted.");let c=new We;return Object.assign(c,i),c.publicKeyAlgorithm=t.algorithm,c.hashAlgorithm=await gX(e,t,a,n,s),c.rawNotations=[...r],await c.sign(t,d,a,o,s),c}async function $d(d,e,t,i=new Date,a){d=d[t],d&&(e[t].length?await Promise.all(d.map(async function(n){!n.isExpired(i)&&(!a||await a(n))&&!e[t].some(function(r){return S.equalsUint8Array(r.writeParams(),n.writeParams())})&&e[t].push(n)})):e[t]=d)}async function zi(d,e,t,i,a,n,r=new Date,o){n=n||d;let s=[];return await Promise.all(i.map(async function(c){try{if(!a||c.issuerKeyID.equals(a.issuerKeyID)){let p=![u.reasonForRevocation.keyRetired,u.reasonForRevocation.keySuperseded,u.reasonForRevocation.userIDInvalid].includes(c.reasonForRevocationFlag);await c.verify(n,e,t,p?null:r,!1,o),s.push(c.issuerKeyID)}}catch{}})),a?(a.revoked=s.some(c=>c.equals(a.issuerKeyID))?!0:a.revoked||!1,a.revoked):s.length>0}function yr(d,e){let t;return e.keyNeverExpires===!1&&(t=d.created.getTime()+e.keyExpirationTime*1e3),t?new Date(t):1/0}function IX(d,e={}){switch(d.type=d.type||e.type,d.curve=d.curve||e.curve,d.rsaBits=d.rsaBits||e.rsaBits,d.keyExpirationTime=d.keyExpirationTime!==void 0?d.keyExpirationTime:e.keyExpirationTime,d.passphrase=S.isString(d.passphrase)?d.passphrase:e.passphrase,d.date=d.date||e.date,d.sign=d.sign||!1,d.type){case"ecc":try{d.curve=u.write(u.curve,d.curve)}catch{throw new Error("Unknown curve")}(d.curve===u.curve.ed25519Legacy||d.curve===u.curve.curve25519Legacy||d.curve==="ed25519"||d.curve==="curve25519")&&(d.curve=d.sign?u.curve.ed25519Legacy:u.curve.curve25519Legacy),d.sign?d.algorithm=d.curve===u.curve.ed25519Legacy?u.publicKey.eddsaLegacy:u.publicKey.ecdsa:d.algorithm=u.publicKey.ecdh;break;case"curve25519":d.algorithm=d.sign?u.publicKey.ed25519:u.publicKey.x25519;break;case"curve448":d.algorithm=d.sign?u.publicKey.ed448:u.publicKey.x448;break;case"rsa":d.algorithm=u.publicKey.rsaEncryptSign;break;default:throw new Error(`Unsupported key type ${d.type}`)}return d}function S4(d,e,t){switch(d.algorithm){case u.publicKey.rsaEncryptSign:case u.publicKey.rsaSign:case u.publicKey.dsa:case u.publicKey.ecdsa:case u.publicKey.eddsaLegacy:case u.publicKey.ed25519:case u.publicKey.ed448:if(!e.keyFlags&&!t.allowMissingKeyFlags)throw new Error("None of the key flags is set: consider passing `config.allowMissingKeyFlags`");return!e.keyFlags||(e.keyFlags[0]&u.keyFlags.signData)!==0;default:return!1}}function P4(d,e,t){switch(d.algorithm){case u.publicKey.rsaEncryptSign:case u.publicKey.rsaEncrypt:case u.publicKey.elgamal:case u.publicKey.ecdh:case u.publicKey.x25519:case u.publicKey.x448:if(!e.keyFlags&&!t.allowMissingKeyFlags)throw new Error("None of the key flags is set: consider passing `config.allowMissingKeyFlags`");return!e.keyFlags||(e.keyFlags[0]&u.keyFlags.encryptCommunication)!==0||(e.keyFlags[0]&u.keyFlags.encryptStorage)!==0;default:return!1}}function f4(d,e,t){if(!e.keyFlags&&!t.allowMissingKeyFlags)throw new Error("None of the key flags is set: consider passing `config.allowMissingKeyFlags`");switch(d.algorithm){case u.publicKey.rsaEncryptSign:case u.publicKey.rsaEncrypt:case u.publicKey.elgamal:case u.publicKey.ecdh:case u.publicKey.x25519:case u.publicKey.x448:return(!e.keyFlags||(e.keyFlags[0]&u.keyFlags.signData)!==0)&&t.allowInsecureDecryptionWithSigningKeys?!0:!e.keyFlags||(e.keyFlags[0]&u.keyFlags.encryptCommunication)!==0||(e.keyFlags[0]&u.keyFlags.encryptStorage)!==0;default:return!1}}function _d(d,e){let t=u.write(u.publicKey,d.algorithm),i=d.getAlgorithmInfo();if(e.rejectPublicKeyAlgorithms.has(t))throw new Error(`${i.algorithm} keys are considered too weak.`);switch(t){case u.publicKey.rsaEncryptSign:case u.publicKey.rsaSign:case u.publicKey.rsaEncrypt:if(i.bits<e.minRSABits)throw new Error(`RSA keys shorter than ${e.minRSABits} bits are considered too weak.`);break;case u.publicKey.ecdsa:case u.publicKey.eddsaLegacy:case u.publicKey.ecdh:if(e.rejectCurves.has(i.curve))throw new Error(`Support for ${i.algorithm} keys using curve ${i.curve} is disabled.`);break}}var os=class d{constructor(e,t){this.userID=e.constructor.tag===u.packet.userID?e:null,this.userAttribute=e.constructor.tag===u.packet.userAttribute?e:null,this.selfCertifications=[],this.otherCertifications=[],this.revocationSignatures=[],this.mainKey=t}toPacketList(){let e=new be;return e.push(this.userID||this.userAttribute),e.push(...this.revocationSignatures),e.push(...this.selfCertifications),e.push(...this.otherCertifications),e}clone(){let e=new d(this.userID||this.userAttribute,this.mainKey);return e.selfCertifications=[...this.selfCertifications],e.otherCertifications=[...this.otherCertifications],e.revocationSignatures=[...this.revocationSignatures],e}async certify(e,t,i){let a=this.mainKey.keyPacket,n={userID:this.userID,userAttribute:this.userAttribute,key:a},r=new d(n.userID||n.userAttribute,this.mainKey);return r.otherCertifications=await Promise.all(e.map(async function(o){if(!o.isPrivate())throw new Error("Need private key for signing");if(o.hasSameFingerprintAs(a))throw new Error("The user's own key can only be used for self-certifications");let s=await o.getSigningKey(void 0,t,void 0,i);return di(n,[o],s.keyPacket,{signatureType:u.signature.certGeneric,keyFlags:[u.keyFlags.certifyKeys|u.keyFlags.signData]},t,void 0,void 0,void 0,i)})),await r.update(this,t,i),r}async isRevoked(e,t,i=new Date,a=V){let n=this.mainKey.keyPacket;return zi(n,u.signature.certRevocation,{key:n,userID:this.userID,userAttribute:this.userAttribute},this.revocationSignatures,e,t,i,a)}async verifyCertificate(e,t,i=new Date,a){let n=this,r=this.mainKey.keyPacket,o={userID:this.userID,userAttribute:this.userAttribute,key:r},{issuerKeyID:s}=e,c=t.filter(p=>p.getKeys(s).length>0);return c.length===0?null:(await Promise.all(c.map(async p=>{let l=await p.getSigningKey(s,e.created,void 0,a);if(e.revoked||await n.isRevoked(e,l.keyPacket,i,a))throw new Error("User certificate is revoked");try{await e.verify(l.keyPacket,u.signature.certGeneric,o,i,void 0,a)}catch(m){throw S.wrapError("User certificate is invalid",m)}})),!0)}async verifyAllCertifications(e,t=new Date,i){let a=this,n=this.selfCertifications.concat(this.otherCertifications);return Promise.all(n.map(async r=>({keyID:r.issuerKeyID,valid:await a.verifyCertificate(r,e,t,i).catch(()=>!1)})))}async verify(e=new Date,t){if(!this.selfCertifications.length)throw new Error("No self-certifications found");let i=this,a=this.mainKey.keyPacket,n={userID:this.userID,userAttribute:this.userAttribute,key:a},r;for(let o=this.selfCertifications.length-1;o>=0;o--)try{let s=this.selfCertifications[o];if(s.revoked||await i.isRevoked(s,void 0,e,t))throw new Error("Self-certification is revoked");try{await s.verify(a,u.signature.certGeneric,n,e,void 0,t)}catch(c){throw S.wrapError("Self-certification is invalid",c)}return!0}catch(s){r=s}throw r}async update(e,t,i){let a=this.mainKey.keyPacket,n={userID:this.userID,userAttribute:this.userAttribute,key:a};await $d(e,this,"selfCertifications",t,async function(r){try{return await r.verify(a,u.signature.certGeneric,n,t,!1,i),!0}catch{return!1}}),await $d(e,this,"otherCertifications",t),await $d(e,this,"revocationSignatures",t,function(r){return zi(a,u.signature.certRevocation,n,[r],void 0,void 0,t,i)})}async revoke(e,{flag:t=u.reasonForRevocation.noReason,string:i=""}={},a=new Date,n=V){let r={userID:this.userID,userAttribute:this.userAttribute,key:e},o=new d(r.userID||r.userAttribute,this.mainKey);return o.revocationSignatures.push(await di(r,[],e,{signatureType:u.signature.certRevocation,reasonForRevocationFlag:u.write(u.reasonForRevocation,t),reasonForRevocationString:i},a,void 0,void 0,!1,n)),await o.update(this),o}},Na=class d{constructor(e,t){this.keyPacket=e,this.bindingSignatures=[],this.revocationSignatures=[],this.mainKey=t}toPacketList(){let e=new be;return e.push(this.keyPacket),e.push(...this.revocationSignatures),e.push(...this.bindingSignatures),e}clone(){let e=new d(this.keyPacket,this.mainKey);return e.bindingSignatures=[...this.bindingSignatures],e.revocationSignatures=[...this.revocationSignatures],e}async isRevoked(e,t,i=new Date,a=V){let n=this.mainKey.keyPacket;return zi(n,u.signature.subkeyRevocation,{key:n,bind:this.keyPacket},this.revocationSignatures,e,t,i,a)}async verify(e=new Date,t=V){let i=this.mainKey.keyPacket,a={key:i,bind:this.keyPacket},n=await ht(this.bindingSignatures,i,u.signature.subkeyBinding,a,e,t);if(n.revoked||await this.isRevoked(n,null,e,t))throw new Error("Subkey is revoked");if(rs(this.keyPacket,n,e))throw new Error("Subkey is expired");return n}async getExpirationTime(e=new Date,t=V){let i=this.mainKey.keyPacket,a={key:i,bind:this.keyPacket},n;try{n=await ht(this.bindingSignatures,i,u.signature.subkeyBinding,a,e,t)}catch{return null}let r=yr(this.keyPacket,n),o=n.getExpirationTime();return r<o?r:o}async update(e,t=new Date,i=V){let a=this.mainKey.keyPacket;if(!this.hasSameFingerprintAs(e))throw new Error("Subkey update method: fingerprints of subkeys not equal");this.keyPacket.constructor.tag===u.packet.publicSubkey&&e.keyPacket.constructor.tag===u.packet.secretSubkey&&(this.keyPacket=e.keyPacket);let n=this,r={key:a,bind:n.keyPacket};await $d(e,this,"bindingSignatures",t,async function(o){for(let s=0;s<n.bindingSignatures.length;s++)if(n.bindingSignatures[s].issuerKeyID.equals(o.issuerKeyID))return o.created>n.bindingSignatures[s].created&&(n.bindingSignatures[s]=o),!1;try{return await o.verify(a,u.signature.subkeyBinding,r,t,void 0,i),!0}catch{return!1}}),await $d(e,this,"revocationSignatures",t,function(o){return zi(a,u.signature.subkeyRevocation,r,[o],void 0,void 0,t,i)})}async revoke(e,{flag:t=u.reasonForRevocation.noReason,string:i=""}={},a=new Date,n=V){let r={key:e,bind:this.keyPacket},o=new d(this.keyPacket,this.mainKey);return o.revocationSignatures.push(await di(r,[],e,{signatureType:u.signature.subkeyRevocation,reasonForRevocationFlag:u.write(u.reasonForRevocation,t),reasonForRevocationString:i},a,void 0,void 0,!1,n)),await o.update(this),o}hasSameFingerprintAs(e){return this.keyPacket.hasSameFingerprintAs(e.keyPacket||e)}};["getKeyID","getFingerprint","getAlgorithmInfo","getCreationTime","isDecrypted"].forEach(d=>{Na.prototype[d]=function(){return this.keyPacket[d]()}});var bX=S.constructAllowedPackets([We]),g4=new Set([u.packet.publicKey,u.packet.privateKey]),h4=new Set([u.packet.publicKey,u.packet.privateKey,u.packet.publicSubkey,u.packet.privateSubkey]),Sr=class{packetListToStructure(e,t=new Set){let i,a,n,r;for(let o of e){if(o instanceof Ta){h4.has(o.tag)&&!r&&(g4.has(o.tag)?r=g4:r=h4);continue}let s=o.constructor.tag;if(r){if(!r.has(s))continue;r=null}if(t.has(s))throw new Error(`Unexpected packet type: ${s}`);switch(s){case u.packet.publicKey:case u.packet.secretKey:if(this.keyPacket)throw new Error("Key block contains multiple keys");if(this.keyPacket=o,a=this.getKeyID(),!a)throw new Error("Missing Key ID");break;case u.packet.userID:case u.packet.userAttribute:i=new os(o,this),this.users.push(i);break;case u.packet.publicSubkey:case u.packet.secretSubkey:i=null,n=new Na(o,this),this.subkeys.push(n);break;case u.packet.signature:switch(o.signatureType){case u.signature.certGeneric:case u.signature.certPersona:case u.signature.certCasual:case u.signature.certPositive:if(!i){S.printDebug("Dropping certification signatures without preceding user packet");continue}o.issuerKeyID.equals(a)?i.selfCertifications.push(o):i.otherCertifications.push(o);break;case u.signature.certRevocation:i?i.revocationSignatures.push(o):this.directSignatures.push(o);break;case u.signature.key:this.directSignatures.push(o);break;case u.signature.subkeyBinding:if(!n){S.printDebug("Dropping subkey binding signature without preceding subkey packet");continue}n.bindingSignatures.push(o);break;case u.signature.keyRevocation:this.revocationSignatures.push(o);break;case u.signature.subkeyRevocation:if(!n){S.printDebug("Dropping subkey revocation signature without preceding subkey packet");continue}n.revocationSignatures.push(o);break}break}}}toPacketList(){let e=new be;return e.push(this.keyPacket),e.push(...this.revocationSignatures),e.push(...this.directSignatures),this.users.map(t=>e.push(...t.toPacketList())),this.subkeys.map(t=>e.push(...t.toPacketList())),e}clone(e=!1){let t=new this.constructor(this.toPacketList());return e&&t.getKeys().forEach(i=>{if(i.keyPacket=Object.create(Object.getPrototypeOf(i.keyPacket),Object.getOwnPropertyDescriptors(i.keyPacket)),!i.keyPacket.isDecrypted())return;let a={};Object.keys(i.keyPacket.privateParams).forEach(n=>{a[n]=new Uint8Array(i.keyPacket.privateParams[n])}),i.keyPacket.privateParams=a}),t}getSubkeys(e=null){return this.subkeys.filter(i=>!e||i.getKeyID().equals(e,!0))}getKeys(e=null){let t=[];return(!e||this.getKeyID().equals(e,!0))&&t.push(this),t.concat(this.getSubkeys(e))}getKeyIDs(){return this.getKeys().map(e=>e.getKeyID())}getUserIDs(){return this.users.map(e=>e.userID?e.userID.userID:null).filter(e=>e!==null)}write(){return this.toPacketList().write()}async getSigningKey(e=null,t=new Date,i={},a=V){await this.verifyPrimaryKey(t,i,a);let n=this.keyPacket;try{_d(n,a)}catch(s){throw S.wrapError("Could not verify primary key",s)}let r=this.subkeys.slice().sort((s,c)=>c.keyPacket.created-s.keyPacket.created),o;for(let s of r)if(!e||s.getKeyID().equals(e))try{await s.verify(t,a);let c={key:n,bind:s.keyPacket},p=await ht(s.bindingSignatures,n,u.signature.subkeyBinding,c,t,a);if(!S4(s.keyPacket,p,a))continue;if(!p.embeddedSignature)throw new Error("Missing embedded signature");return await ht([p.embeddedSignature],s.keyPacket,u.signature.keyBinding,c,t,a),_d(s.keyPacket,a),s}catch(c){o=c}try{let s=await this.getPrimarySelfSignature(t,i,a);if((!e||n.getKeyID().equals(e))&&S4(n,s,a))return _d(n,a),this}catch(s){o=s}throw S.wrapError("Could not find valid signing key packet in key "+this.getKeyID().toHex(),o)}async getEncryptionKey(e,t=new Date,i={},a=V){await this.verifyPrimaryKey(t,i,a);let n=this.keyPacket;try{_d(n,a)}catch(s){throw S.wrapError("Could not verify primary key",s)}let r=this.subkeys.slice().sort((s,c)=>c.keyPacket.created-s.keyPacket.created),o;for(let s of r)if(!e||s.getKeyID().equals(e))try{await s.verify(t,a);let c={key:n,bind:s.keyPacket},p=await ht(s.bindingSignatures,n,u.signature.subkeyBinding,c,t,a);if(P4(s.keyPacket,p,a))return _d(s.keyPacket,a),s}catch(c){o=c}try{let s=await this.getPrimarySelfSignature(t,i,a);if((!e||n.getKeyID().equals(e))&&P4(n,s,a))return _d(n,a),this}catch(s){o=s}throw S.wrapError("Could not find valid encryption key packet in key "+this.getKeyID().toHex(),o)}async isRevoked(e,t,i=new Date,a=V){return zi(this.keyPacket,u.signature.keyRevocation,{key:this.keyPacket},this.revocationSignatures,e,t,i,a)}async verifyPrimaryKey(e=new Date,t={},i=V){let a=this.keyPacket;if(await this.isRevoked(null,null,e,i))throw new Error("Primary key is revoked");let n=await this.getPrimarySelfSignature(e,t,i);if(rs(a,n,e))throw new Error("Primary key is expired");if(a.version!==6){let r=await ht(this.directSignatures,a,u.signature.key,{key:a},e,i).catch(()=>{});if(r&&rs(a,r,e))throw new Error("Primary key is expired")}}async getExpirationTime(e,t=V){let i;try{let a=await this.getPrimarySelfSignature(null,e,t),n=yr(this.keyPacket,a),r=a.getExpirationTime(),o=this.keyPacket.version!==6&&await ht(this.directSignatures,this.keyPacket,u.signature.key,{key:this.keyPacket},null,t).catch(()=>{});if(o){let s=yr(this.keyPacket,o);i=Math.min(n,r,s)}else i=n<r?n:r}catch{i=null}return S.normalizeDate(i)}async getPrimarySelfSignature(e=new Date,t={},i=V){let a=this.keyPacket;if(a.version===6)return ht(this.directSignatures,a,u.signature.key,{key:a},e,i);let{selfCertification:n}=await this.getPrimaryUser(e,t,i);return n}async getPrimaryUser(e=new Date,t={},i=V){let a=this.keyPacket,n=[],r;for(let p=0;p<this.users.length;p++)try{let l=this.users[p];if(!l.userID)continue;if(t.name!==void 0&&l.userID.name!==t.name||t.email!==void 0&&l.userID.email!==t.email||t.comment!==void 0&&l.userID.comment!==t.comment)throw new Error("Could not find user that matches that user ID");let m={userID:l.userID,key:a},P=await ht(l.selfCertifications,a,u.signature.certGeneric,m,e,i);n.push({index:p,user:l,selfCertification:P})}catch(l){r=l}if(!n.length)throw r||new Error("Could not find primary user");await Promise.all(n.map(async function(p){return p.selfCertification.revoked||p.user.isRevoked(p.selfCertification,null,e,i)}));let o=n.sort(function(p,l){let m=p.selfCertification,P=l.selfCertification;return P.revoked-m.revoked||m.isPrimaryUserID-P.isPrimaryUserID||m.created-P.created}).pop(),{user:s,selfCertification:c}=o;if(c.revoked||await s.isRevoked(c,null,e,i))throw new Error("Primary user is revoked");return o}async update(e,t=new Date,i=V){if(!this.hasSameFingerprintAs(e))throw new Error("Primary key fingerprints must be equal to update the key");if(!this.isPrivate()&&e.isPrivate()){if(!(this.subkeys.length===e.subkeys.length&&this.subkeys.every(r=>e.subkeys.some(o=>r.hasSameFingerprintAs(o)))))throw new Error("Cannot update public key with private key if subkeys mismatch");return e.update(this,i)}let a=this.clone();return await $d(e,a,"revocationSignatures",t,n=>zi(a.keyPacket,u.signature.keyRevocation,a,[n],null,e.keyPacket,t,i)),await $d(e,a,"directSignatures",t),await Promise.all(e.users.map(async n=>{let r=a.users.filter(o=>n.userID&&n.userID.equals(o.userID)||n.userAttribute&&n.userAttribute.equals(o.userAttribute));if(r.length>0)await Promise.all(r.map(o=>o.update(n,t,i)));else{let o=n.clone();o.mainKey=a,a.users.push(o)}})),await Promise.all(e.subkeys.map(async n=>{let r=a.subkeys.filter(o=>o.hasSameFingerprintAs(n));if(r.length>0)await Promise.all(r.map(o=>o.update(n,t,i)));else{let o=n.clone();o.mainKey=a,a.subkeys.push(o)}})),a}async getRevocationCertificate(e=new Date,t=V){let i={key:this.keyPacket},a=await ht(this.revocationSignatures,this.keyPacket,u.signature.keyRevocation,i,e,t),n=new be;n.push(a);let r=this.keyPacket.version!==6;return Ji(u.armor.publicKey,n.write(),null,null,"This is a revocation certificate",r,t)}async applyRevocationCertificate(e,t=new Date,i=V){let a=await Fr(e),r=(await be.fromBinary(a.data,bX,i)).findPacket(u.packet.signature);if(!r||r.signatureType!==u.signature.keyRevocation)throw new Error("Could not find revocation signature packet");if(!r.issuerKeyID.equals(this.getKeyID()))throw new Error("Revocation signature does not match key");try{await r.verify(this.keyPacket,u.signature.keyRevocation,{key:this.keyPacket},t,void 0,i)}catch(s){throw S.wrapError("Could not verify revocation signature",s)}let o=this.clone();return o.revocationSignatures.push(r),o}async signPrimaryUser(e,t,i,a=V){let{index:n,user:r}=await this.getPrimaryUser(t,i,a),o=await r.certify(e,t,a),s=this.clone();return s.users[n]=o,s}async signAllUsers(e,t=new Date,i=V){let a=this.clone();return a.users=await Promise.all(this.users.map(function(n){return n.certify(e,t,i)})),a}async verifyPrimaryUser(e,t=new Date,i,a=V){let n=this.keyPacket,{user:r}=await this.getPrimaryUser(t,i,a);return e?await r.verifyAllCertifications(e,t,a):[{keyID:n.getKeyID(),valid:await r.verify(t,a).catch(()=>!1)}]}async verifyAllUsers(e,t=new Date,i=V){let a=this.keyPacket,n=[];return await Promise.all(this.users.map(async r=>{let o=e?await r.verifyAllCertifications(e,t,i):[{keyID:a.getKeyID(),valid:await r.verify(t,i).catch(()=>!1)}];n.push(...o.map(s=>({userID:r.userID?r.userID.userID:null,userAttribute:r.userAttribute,keyID:s.keyID,valid:s.valid})))})),n}};["getKeyID","getFingerprint","getAlgorithmInfo","getCreationTime","hasSameFingerprintAs"].forEach(d=>{Sr.prototype[d]=Na.prototype[d]});var Aa=class extends Sr{constructor(e){if(super(),this.keyPacket=null,this.revocationSignatures=[],this.directSignatures=[],this.users=[],this.subkeys=[],e&&(this.packetListToStructure(e,new Set([u.packet.secretKey,u.packet.secretSubkey])),!this.keyPacket))throw new Error("Invalid key: missing public-key packet")}isPrivate(){return!1}toPublic(){return this}armor(e=V){let t=this.keyPacket.version!==6;return Ji(u.armor.publicKey,this.toPacketList().write(),void 0,void 0,void 0,t,e)}},ss=class d extends Aa{constructor(e){if(super(),this.packetListToStructure(e,new Set([u.packet.publicKey,u.packet.publicSubkey])),!this.keyPacket)throw new Error("Invalid key: missing private-key packet")}isPrivate(){return!0}toPublic(){let e=new be,t=this.toPacketList();for(let i of t)switch(i.constructor.tag){case u.packet.secretKey:{let a=kt.fromSecretKeyPacket(i);e.push(a);break}case u.packet.secretSubkey:{let a=ur.fromSecretSubkeyPacket(i);e.push(a);break}default:e.push(i)}return new Aa(e)}armor(e=V){let t=this.keyPacket.version!==6;return Ji(u.armor.privateKey,this.toPacketList().write(),void 0,void 0,void 0,t,e)}async getDecryptionKeys(e,t=new Date,i={},a=V){let n=this.keyPacket,r=[],o=null;for(let c=0;c<this.subkeys.length;c++)if(!e||this.subkeys[c].getKeyID().equals(e,!0)){if(this.subkeys[c].keyPacket.isDummy()){o=o||new Error("Gnu-dummy key packets cannot be used for decryption");continue}try{let p={key:n,bind:this.subkeys[c].keyPacket},l=await ht(this.subkeys[c].bindingSignatures,n,u.signature.subkeyBinding,p,t,a);f4(this.subkeys[c].keyPacket,l,a)&&r.push(this.subkeys[c])}catch(p){o=p}}let s=await this.getPrimarySelfSignature(t,i,a);if((!e||n.getKeyID().equals(e,!0))&&f4(n,s,a)&&(n.isDummy()?o=o||new Error("Gnu-dummy key packets cannot be used for decryption"):r.push(this)),r.length===0)throw o||new Error("No decryption key packets found");return r}isDecrypted(){return this.getKeys().some(({keyPacket:e})=>e.isDecrypted())}async validate(e=V){if(!this.isPrivate())throw new Error("Cannot validate a public key");let t;if(!this.keyPacket.isDummy())t=this.keyPacket;else{let i=await this.getSigningKey(null,null,void 0,{...e,rejectPublicKeyAlgorithms:new Set,minRSABits:0});i&&!i.keyPacket.isDummy()&&(t=i.keyPacket)}if(t)return t.validate();{let i=this.getKeys();if(i.map(n=>n.keyPacket.isDummy()).every(Boolean))throw new Error("Cannot validate an all-gnu-dummy key");return Promise.all(i.map(async n=>n.keyPacket.validate()))}}clearPrivateParams(){this.getKeys().forEach(({keyPacket:e})=>{e.isDecrypted()&&e.clearPrivateParams()})}async revoke({flag:e=u.reasonForRevocation.noReason,string:t=""}={},i=new Date,a=V){if(!this.isPrivate())throw new Error("Need private key for revoking");let n={key:this.keyPacket},r=this.clone();return r.revocationSignatures.push(await di(n,[],this.keyPacket,{signatureType:u.signature.keyRevocation,reasonForRevocationFlag:u.write(u.reasonForRevocation,e),reasonForRevocationString:t},i,void 0,void 0,void 0,a)),r}async addSubkey(e={}){let t={...V,...e.config};if(e.passphrase)throw new Error("Subkey could not be encrypted here, please encrypt whole key");if(e.rsaBits<t.minRSABits)throw new Error(`rsaBits should be at least ${t.minRSABits}, got: ${e.rsaBits}`);let i=this.keyPacket;if(i.isDummy())throw new Error("Cannot add subkey to gnu-dummy primary key");if(!i.isDecrypted())throw new Error("Key is not decrypted");let a=i.getAlgorithmInfo();a.type=FX(a.algorithm),a.rsaBits=a.bits||4096,a.curve=a.curve||"curve25519Legacy",e=IX(e,a);let n=await PX(e,{...t,v6Keys:this.keyPacket.version===6});_d(n,t);let r=await fX(n,i,e,t),o=this.toPacketList();return o.push(n,r),new d(o)}};function FX(d){switch(u.write(u.publicKey,d)){case u.publicKey.rsaEncrypt:case u.publicKey.rsaEncryptSign:case u.publicKey.rsaSign:case u.publicKey.dsa:return"rsa";case u.publicKey.ecdsa:case u.publicKey.eddsaLegacy:return"ecc";case u.publicKey.ed25519:return"curve25519";case u.publicKey.ed448:return"curve448";default:throw new Error("Unsupported algorithm")}}var EX=S.constructAllowedPackets([kt,ur,lr,mr,ns,as,We]);function CX(d){for(let e of d)switch(e.constructor.tag){case u.packet.secretKey:return new ss(d);case u.packet.publicKey:return new Aa(d)}throw new Error("No key packet found")}async function d5({armoredKey:d,binaryKey:e,config:t,...i}){if(t={...V,...t},!d&&!e)throw new Error("readKey: must pass options object containing `armoredKey` or `binaryKey`");if(d&&!S.isString(d))throw new Error("readKey: options.armoredKey must be a string");if(e&&!S.isUint8Array(e))throw new Error("readKey: options.binaryKey must be a Uint8Array");let a=Object.keys(i);if(a.length>0)throw new Error(`Unknown option: ${a.join(", ")}`);let n;if(d){let{type:c,data:p}=await Fr(d);if(!(c===u.armor.publicKey||c===u.armor.privateKey))throw new Error("Armored text not of type key");n=p}else n=e;let r=await be.fromBinary(n,EX,t),o=r.indexOfTag(u.packet.publicKey,u.packet.secretKey);if(o.length===0)throw new Error("No key packet found");let s=r.slice(o[0],o[1]);return CX(s)}var vX=S.constructAllowedPackets([pr]),TX=S.constructAllowedPackets([We]),cs=class d{constructor(e){this.packets=e||new be}getEncryptionKeyIDs(){let e=[];return this.packets.filterByTag(u.packet.publicKeyEncryptedSessionKey).forEach(function(i){e.push(i.publicKeyID)}),e}getSigningKeyIDs(){let e=this.unwrapCompressed(),t=e.packets.filterByTag(u.packet.onePassSignature);return t.length>0?t.map(a=>a.issuerKeyID):e.packets.filterByTag(u.packet.signature).map(a=>a.issuerKeyID)}async decrypt(e,t,i,a=new Date,n=V){let r=this.packets.filterByTag(u.packet.symmetricallyEncryptedData,u.packet.symEncryptedIntegrityProtectedData,u.packet.aeadEncryptedData);if(r.length===0)throw new Error("No encrypted data found");let o=r[0],s=o.cipherAlgorithm,c=i||await this.decryptSessionKeys(e,t,s,a,n),p=null,l=Promise.all(c.map(async({algorithm:P,data:g})=>{if(!S.isUint8Array(g)||!o.cipherAlgorithm&&!S.isString(P))throw new Error("Invalid session key for decryption.");try{let y=o.cipherAlgorithm||u.write(u.symmetric,P);await o.decrypt(y,g,n)}catch(y){S.printDebugError(y),p=y}}));if(ko(o.encrypted),o.encrypted=null,await l,!o.packets||!o.packets.length)throw p||new Error("Decryption failed.");let m=new d(o.packets);return o.packets=new be,m}async decryptSessionKeys(e,t,i,a=new Date,n=V){let r=[],o;if(t){let s=this.packets.filterByTag(u.packet.symEncryptedSessionKey);if(s.length===0)throw new Error("No symmetrically encrypted session key packet found.");await Promise.all(t.map(async function(c,p){let l;p?l=await be.fromBinary(s.write(),vX,n):l=s,await Promise.all(l.map(async function(m){try{await m.decrypt(c),r.push(m)}catch(P){S.printDebugError(P),P instanceof ar&&(o=P)}}))}))}else if(e){let s=this.packets.filterByTag(u.packet.publicKeyEncryptedSessionKey);if(s.length===0)throw new Error("No public key encrypted session key packet found.");await Promise.all(s.map(async function(c){await Promise.all(e.map(async function(p){let l;try{l=(await p.getDecryptionKeys(c.publicKeyID,null,void 0,n)).map(P=>P.keyPacket)}catch(P){o=P;return}let m=[u.symmetric.aes256,u.symmetric.aes128,u.symmetric.tripledes,u.symmetric.cast5];try{let P=await p.getPrimarySelfSignature(a,void 0,n);P.preferredSymmetricAlgorithms&&(m=m.concat(P.preferredSymmetricAlgorithms))}catch{}await Promise.all(l.map(async function(P){if(!P.isDecrypted())throw new Error("Decryption key is not decrypted.");if(n.constantTimePKCS1Decryption&&(c.publicKeyAlgorithm===u.publicKey.rsaEncrypt||c.publicKeyAlgorithm===u.publicKey.rsaEncryptSign||c.publicKeyAlgorithm===u.publicKey.rsaSign||c.publicKeyAlgorithm===u.publicKey.elgamal)){let y=c.write();await Promise.all((i?[i]:Array.from(n.constantTimePKCS1DecryptionSupportedSymmetricAlgorithms)).map(async f=>{let h=new cr;h.read(y);let I={sessionKeyAlgorithm:f,sessionKey:Wo(f)};try{await h.decrypt(P,I),r.push(h)}catch(b){S.printDebugError(b),o=b}}))}else try{await c.decrypt(P);let y=i||c.sessionKeyAlgorithm;if(y&&!m.includes(u.write(u.symmetric,y)))throw new Error("A non-preferred symmetric algorithm was used.");r.push(c)}catch(y){S.printDebugError(y),o=y}}))})),ko(c.encrypted),c.encrypted=null}))}else throw new Error("No key or password specified.");if(r.length>0){if(r.length>1){let s=new Set;r=r.filter(c=>{let p=c.sessionKeyAlgorithm+S.uint8ArrayToString(c.sessionKey);return s.has(p)?!1:(s.add(p),!0)})}return r.map(s=>({data:s.sessionKey,algorithm:s.sessionKeyAlgorithm&&u.read(u.symmetric,s.sessionKeyAlgorithm)}))}throw o||new Error("Session key decryption failed.")}getLiteralData(){let t=this.unwrapCompressed().packets.findPacket(u.packet.literalData);return t&&t.getBytes()||null}getFilename(){let t=this.unwrapCompressed().packets.findPacket(u.packet.literalData);return t&&t.getFilename()||null}getText(){let t=this.unwrapCompressed().packets.findPacket(u.packet.literalData);return t?t.getText():null}static async generateSessionKey(e=[],t=new Date,i=[],a=V){let{symmetricAlgo:n,aeadAlgo:r}=await hX(e,t,i,a),o=u.read(u.symmetric,n),s=r?u.read(u.aead,r):void 0;return await Promise.all(e.map(p=>p.getEncryptionKey().catch(()=>null).then(l=>{if(l&&(l.keyPacket.algorithm===u.publicKey.x25519||l.keyPacket.algorithm===u.publicKey.x448)&&!s&&!S.isAES(n))throw new Error("Could not generate a session key compatible with the given `encryptionKeys`: X22519 and X448 keys can only be used to encrypt AES session keys; change `config.preferredSymmetricAlgorithm` accordingly.")}))),{data:Wo(n),algorithm:o,aeadAlgorithm:s}}async encrypt(e,t,i,a=!1,n=[],r=new Date,o=[],s=V){if(i){if(!S.isUint8Array(i.data)||!S.isString(i.algorithm))throw new Error("Invalid session key for encryption.")}else if(e&&e.length)i=await d.generateSessionKey(e,r,o,s);else if(t&&t.length)i=await d.generateSessionKey(void 0,void 0,void 0,s);else throw new Error("No keys, passwords, or session key provided.");let{data:c,algorithm:p,aeadAlgorithm:l}=i,m=await d.encryptSessionKey(c,p,l,e,t,a,n,r,o,s),P=xa.fromObject({version:l?2:1,aeadAlgorithm:l?u.write(u.aead,l):null});P.packets=this.packets;let g=u.write(u.symmetric,p);return await P.encrypt(g,c,s),m.packets.push(P),P.packets=new be,m}static async encryptSessionKey(e,t,i,a,n,r=!1,o=[],s=new Date,c=[],p=V){let l=new be,m=u.write(u.symmetric,t),P=i&&u.write(u.aead,i);if(a){let g=await Promise.all(a.map(async function(y,f){let h=await y.getEncryptionKey(o[f],s,c,p),I=cr.fromObject({version:P?6:3,encryptionKeyPacket:h.keyPacket,anonymousRecipient:r,sessionKey:e,sessionKeyAlgorithm:m});return await I.encrypt(h.keyPacket),delete I.sessionKey,I}));l.push(...g)}if(n){let g=async function(I,b){try{return await I.decrypt(b),1}catch{return 0}},y=(I,b)=>I+b,f=async function(I,b,F,X){let T=new pr(p);return T.sessionKey=I,T.sessionKeyAlgorithm=b,F&&(T.aeadAlgorithm=F),await T.encrypt(X,p),p.passwordCollisionCheck&&(await Promise.all(n.map(E=>g(T,E)))).reduce(y)!==1?f(I,b,X):(delete T.sessionKey,T)},h=await Promise.all(n.map(I=>f(e,m,P,I)));l.push(...h)}return new d(l)}async sign(e=[],t=[],i=null,a=[],n=new Date,r=[],o=[],s=[],c=V){let p=new be,l=this.packets.findPacket(u.packet.literalData);if(!l)throw new Error("No literal data packet to sign.");let m=await ps(l,e,t,i,a,n,r,o,s,!1,c),P=m.map((g,y)=>rd.fromSignaturePacket(g,y===0)).reverse();return p.push(...P),p.push(l),p.push(...m),new d(p)}compress(e,t=V){if(e===u.compression.uncompressed)return this;let i=new rr(t);i.algorithm=e,i.packets=this.packets;let a=new be;return a.push(i),new d(a)}async signDetached(e=[],t=[],i=null,a=[],n=[],r=new Date,o=[],s=[],c=V){let p=this.packets.findPacket(u.packet.literalData);if(!p)throw new Error("No literal data packet to sign.");return new Xd(await ps(p,e,t,i,a,n,r,o,s,!0,c))}async verify(e,t=new Date,i=V){let a=this.unwrapCompressed(),n=a.packets.filterByTag(u.packet.literalData);if(n.length!==1)throw new Error("Can only verify message with one literal data packet.");let r=a.packets;De(r.stream)&&(r=r.concat(await Ae(r.stream,c=>c||[])));let o=r.filterByTag(u.packet.onePassSignature).reverse(),s=r.filterByTag(u.packet.signature);return o.length&&!s.length&&S.isStream(r.stream)&&!De(r.stream)?(await Promise.all(o.map(async c=>{c.correspondingSig=new Promise((p,l)=>{c.correspondingSigResolve=p,c.correspondingSigReject=l}),c.signatureData=wd(async()=>(await c.correspondingSig).signatureData),c.hashed=Ae(await c.hash(c.signatureType,n[0],void 0,!1)),c.hashed.catch(()=>{})})),r.stream=Ad(r.stream,async(c,p)=>{let l=od(c),m=ct(p);try{for(let P=0;P<o.length;P++){let{value:g}=await l.read();o[P].correspondingSigResolve(g)}await l.readToEnd(),await m.ready,await m.close()}catch(P){o.forEach(g=>{g.correspondingSigReject(P)}),await m.abort(P)}}),qn(o,n,e,t,!1,i)):qn(s,n,e,t,!1,i)}verifyDetached(e,t,i=new Date,a=V){let r=this.unwrapCompressed().packets.filterByTag(u.packet.literalData);if(r.length!==1)throw new Error("Can only verify message with one literal data packet.");let o=e.packets.filterByTag(u.packet.signature);return qn(o,r,t,i,!0,a)}unwrapCompressed(){let e=this.packets.filterByTag(u.packet.compressedData);return e.length?new d(e[0].packets):this}async appendSignature(e,t=V){await this.packets.read(S.isUint8Array(e)?e:(await Fr(e)).data,TX,t)}write(){return this.packets.write()}armor(e=V){let t=this.packets[this.packets.length-1],i=t.constructor.tag===xa.tag?t.version!==2:this.packets.some(a=>a.constructor.tag===We.tag&&a.version!==6);return Ji(u.armor.message,this.write(),null,null,null,i,e)}};async function ps(d,e,t=[],i=null,a=[],n=new Date,r=[],o=[],s=[],c=!1,p=V){let l=new be,m=d.text===null?u.signature.binary:u.signature.text;if(await Promise.all(e.map(async(P,g)=>{let y=r[g];if(!P.isPrivate())throw new Error("Need private key for signing");let f=await P.getSigningKey(a[g],n,y,p);return di(d,t.length?t:[P],f.keyPacket,{signatureType:m},n,o,s,c,p)})).then(P=>{l.push(...P)}),i){let P=i.packets.filterByTag(u.packet.signature);l.push(...P)}return l}async function XX(d,e,t,i=new Date,a=!1,n=V){let r,o;for(let l of t){let m=l.getKeys(d.issuerKeyID);if(m.length>0){r=l,o=m[0];break}}let c=d instanceof rd?d.correspondingSig:d,p={keyID:d.issuerKeyID,verified:(async()=>{if(!o)throw new Error(`Could not find signing key with key ID ${d.issuerKeyID.toHex()}`);await d.verify(o.keyPacket,d.signatureType,e[0],i,a,n);let l=await c;if(o.getCreationTime()>l.created)throw new Error("Key is newer than the signature");try{await r.getSigningKey(o.getKeyID(),l.created,void 0,n)}catch(m){if(n.allowInsecureVerificationWithReformattedKeys&&m.message.match(/Signature creation time is in the future/))await r.getSigningKey(o.getKeyID(),i,void 0,n);else throw m}return!0})(),signature:(async()=>{let l=await c,m=new be;return l&&m.push(l),new Xd(m)})()};return p.signature.catch(()=>{}),p.verified.catch(()=>{}),p}async function qn(d,e,t,i=new Date,a=!1,n=V){return Promise.all(d.filter(function(r){return["text","binary"].includes(u.read(u.signature,r.signatureType))}).map(async function(r){return XX(r,e,t,i,a,n)}))}var DX=S.constructAllowedPackets([We]),Hi=class d{constructor(e,t){if(this.text=S.removeTrailingSpaces(e).replace(/\r?\n/g,`\r
9337
9337
  `),t&&!(t instanceof Xd))throw new Error("Invalid signature input");this.signature=t||new Xd(new be)}getSigningKeyIDs(){let e=[];return this.signature.packets.forEach(function(i){e.push(i.issuerKeyID)}),e}async sign(e,t=[],i=null,a=[],n=new Date,r=[],o=[],s=[],c=V){let p=new Vi;p.setText(this.text);let l=new Xd(await ps(p,e,t,i,a,n,r,o,s,!0,c));return new d(this.text,l)}verify(e,t=new Date,i=V){let a=this.signature.packets.filterByTag(u.packet.signature),n=new Vi;return n.setText(this.text),qn(a,[n],e,t,!0,i)}getText(){return this.text.replace(/\r\n/g,`
9338
- `)}armor(e=V){let t=this.signature.packets.some(n=>n.version!==6),a={hash:t?Array.from(new Set(this.signature.packets.map(n=>u.read(u.hash,n.hashAlgorithm).toUpperCase()))).join():null,text:this.text,data:this.signature.packets.write()};return Ji(u.armor.signed,a,void 0,void 0,void 0,t,e)}};async function i5({cleartextMessage:d,config:e,...t}){if(e={...V,...e},!d)throw new Error("readCleartextMessage: must pass options object containing `cleartextMessage`");if(!S.isString(d))throw new Error("readCleartextMessage: options.cleartextMessage must be a string");let i=Object.keys(t);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);let a=await Fr(d);if(a.type!==u.armor.signed)throw new Error("No cleartext signed message.");let n=await be.fromBinary(a.data,DX,e);RX(a.headers,n);let r=new Xd(n);return new Hi(a.text,r)}function RX(d,e){let t=function(a){let n=r=>o=>r.hashAlgorithm===o;for(let r=0;r<e.length;r++)if(e[r].constructor.tag===u.packet.signature&&!a.some(n(e[r])))return!1;return!0},i=[];if(d.forEach(a=>{let n=a.match(/^Hash: (.+)$/);if(n){let r=n[1].replace(/\s/g,"").split(",").map(o=>{try{return u.write(u.hash,o.toLowerCase())}catch{throw new Error("Unknown hash algorithm in armor header: "+o.toLowerCase())}});i.push(...r)}else throw new Error('Only "Hash" header allowed in cleartext signed message')}),i.length&&!t(i))throw new Error("Hash algorithm mismatch in armor header and signature")}async function a5({message:d,verificationKeys:e,expectSigned:t=!1,format:i="utf8",signature:a=null,date:n=new Date,config:r,...o}){if(r={...V,...r},AX(r),xX(d),e=wX(e),o.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.verify, pass `verificationKeys` instead");let s=Object.keys(o);if(s.length>0)throw new Error(`Unknown option: ${s.join(", ")}`);if(d instanceof Hi&&i==="binary")throw new Error("Can't return cleartext message data as binary");if(d instanceof Hi&&a)throw new Error("Can't verify detached cleartext signature");try{let c={};if(a?c.signatures=await d.verifyDetached(a,e,n,r):c.signatures=await d.verify(e,n,r),c.data=i==="binary"?d.getLiteralData():d.getText(),d.fromStream&&!a&&LX(c,d),t){if(c.signatures.length===0)throw new Error("Message is not signed");c.data=Ze([c.data,wd(async()=>(await S.anyPromise(c.signatures.map(p=>p.verified)),i==="binary"?new Uint8Array:""))])}return c.data=await MX(c.data),c}catch(c){throw S.wrapError("Error verifying signed message",c)}}function xX(d){if(!(d instanceof Hi)&&!(d instanceof cs))throw new Error("Parameter [message] needs to be of type Message or CleartextMessage")}var NX=Object.keys(V).length;function AX(d){let e=Object.keys(d);if(e.length!==NX){for(let t of e)if(V[t]===void 0)throw new Error(`Unknown config property: ${t}`)}}function wX(d){return d&&!S.isArray(d)&&(d=[d]),d}async function MX(d){return S.isStream(d)==="array"?Ae(d):d}function LX(d,e){d.data=Ad(e.packets.stream,async(t,i)=>{await oi(d.data,i,{preventClose:!0});let a=ct(i);try{await Ae(t,n=>n),await a.close()}catch(n){await a.abort(n)}})}function Pr(d){if(!Number.isSafeInteger(d)||d<0)throw new Error(`positive integer expected, not ${d}`)}function OX(d){return d instanceof Uint8Array||d!=null&&typeof d=="object"&&d.constructor.name==="Uint8Array"}function Ha(d,...e){if(!OX(d))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(d.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${d.length}`)}function kX(d){if(typeof d!="function"||typeof d.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Pr(d.outputLen),Pr(d.blockLen)}function Wi(d,e=!0){if(d.destroyed)throw new Error("Hash instance has been destroyed");if(e&&d.finished)throw new Error("Hash#digest() has already been called")}function n5(d,e){Ha(d);let t=e.outputLen;if(d.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var Xi=typeof je=="object"&&"crypto"in je?je.crypto:void 0;var UX=d=>new Uint32Array(d.buffer,d.byteOffset,Math.floor(d.byteLength/4)),Xo=d=>new DataView(d.buffer,d.byteOffset,d.byteLength),vt=(d,e)=>d<<32-e|d>>>e,Td=(d,e)=>d<<e|d>>>32-e>>>0,I4=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,qX=d=>d<<24&4278190080|d<<8&16711680|d>>>8&65280|d>>>24&255;function b4(d){for(let e=0;e<d.length;e++)d[e]=qX(d[e])}function r5(d){if(typeof d!="string")throw new Error(`utf8ToBytes expected string, got ${typeof d}`);return new Uint8Array(new TextEncoder().encode(d))}function Wa(d){return typeof d=="string"&&(d=r5(d)),Ha(d),d}function o5(...d){let e=0;for(let i=0;i<d.length;i++){let a=d[i];Ha(a),e+=a.length}let t=new Uint8Array(e);for(let i=0,a=0;i<d.length;i++){let n=d[i];t.set(n,a),a+=n.length}return t}var wa=class{clone(){return this._cloneInto()}};function qt(d){let e=i=>d().update(Wa(i)).digest(),t=d();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>d(),e}function BX(d){let e=(i,a)=>d(a).update(Wa(i)).digest(),t=d({});return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=i=>d(i),e}function Ys(d=32){if(Xi&&typeof Xi.getRandomValues=="function")return Xi.getRandomValues(new Uint8Array(d));if(Xi&&typeof Xi.randomBytes=="function")return Xi.randomBytes(d);throw new Error("crypto.getRandomValues must be defined")}function jX(d,e,t,i){if(typeof d.setBigUint64=="function")return d.setBigUint64(e,t,i);let a=BigInt(32),n=BigInt(4294967295),r=Number(t>>a&n),o=Number(t&n),s=i?4:0,c=i?0:4;d.setUint32(e+s,r,i),d.setUint32(e+c,o,i)}var s5=(d,e,t)=>d&e^~d&t,c5=(d,e,t)=>d&e^d&t^e&t,ii=class extends wa{constructor(e,t,i,a){super(),this.blockLen=e,this.outputLen=t,this.padOffset=i,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Xo(this.buffer)}update(e){Wi(this);let{view:t,buffer:i,blockLen:a}=this;e=Wa(e);let n=e.length;for(let r=0;r<n;){let o=Math.min(a-this.pos,n-r);if(o===a){let s=Xo(e);for(;a<=n-r;r+=a)this.process(s,r);continue}i.set(e.subarray(r,r+o),this.pos),this.pos+=o,r+=o,this.pos===a&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Wi(this),n5(e,this),this.finished=!0;let{buffer:t,view:i,blockLen:a,isLE:n}=this,{pos:r}=this;t[r++]=128,this.buffer.subarray(r).fill(0),this.padOffset>a-r&&(this.process(i,0),r=0);for(let l=r;l<a;l++)t[l]=0;jX(i,a-8,BigInt(this.length*8),n),this.process(i,0);let o=Xo(e),s=this.outputLen;if(s%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let c=s/4,p=this.get();if(c>p.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<c;l++)o.setUint32(4*l,p[l],n)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let i=e.slice(0,t);return this.destroy(),i}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:i,length:a,finished:n,destroyed:r,pos:o}=this;return e.length=a,e.pos=o,e.finished=n,e.destroyed=r,a%t&&e.buffer.set(i),e}},GX=new Uint32Array([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]),yd=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Sd=new Uint32Array(64),fr=class extends ii{constructor(){super(64,32,8,!1),this.A=yd[0]|0,this.B=yd[1]|0,this.C=yd[2]|0,this.D=yd[3]|0,this.E=yd[4]|0,this.F=yd[5]|0,this.G=yd[6]|0,this.H=yd[7]|0}get(){let{A:e,B:t,C:i,D:a,E:n,F:r,G:o,H:s}=this;return[e,t,i,a,n,r,o,s]}set(e,t,i,a,n,r,o,s){this.A=e|0,this.B=t|0,this.C=i|0,this.D=a|0,this.E=n|0,this.F=r|0,this.G=o|0,this.H=s|0}process(e,t){for(let l=0;l<16;l++,t+=4)Sd[l]=e.getUint32(t,!1);for(let l=16;l<64;l++){let m=Sd[l-15],P=Sd[l-2],g=vt(m,7)^vt(m,18)^m>>>3,y=vt(P,17)^vt(P,19)^P>>>10;Sd[l]=y+Sd[l-7]+g+Sd[l-16]|0}let{A:i,B:a,C:n,D:r,E:o,F:s,G:c,H:p}=this;for(let l=0;l<64;l++){let m=vt(o,6)^vt(o,11)^vt(o,25),P=p+m+s5(o,s,c)+GX[l]+Sd[l]|0,y=(vt(i,2)^vt(i,13)^vt(i,22))+c5(i,a,n)|0;p=c,c=s,s=o,o=r+P|0,r=n,n=a,a=i,i=P+y|0}i=i+this.A|0,a=a+this.B|0,n=n+this.C|0,r=r+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,p=p+this.H|0,this.set(i,a,n,r,o,s,c,p)}roundClean(){Sd.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},us=class extends fr{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}},Lr=qt(()=>new fr),QX=qt(()=>new us),gr=class extends wa{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,kX(e);let i=Wa(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let a=this.blockLen,n=new Uint8Array(a);n.set(i.length>a?e.create().update(i).digest():i);for(let r=0;r<n.length;r++)n[r]^=54;this.iHash.update(n),this.oHash=e.create();for(let r=0;r<n.length;r++)n[r]^=106;this.oHash.update(n),n.fill(0)}update(e){return Wi(this),this.iHash.update(e),this}digestInto(e){Wi(this),Ha(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:i,finished:a,destroyed:n,blockLen:r,outputLen:o}=this;return e=e,e.finished=a,e.destroyed=n,e.blockLen=r,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=i._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},p5=(d,e,t)=>new gr(d,e).update(t).digest();p5.create=(d,e)=>new gr(d,e);var Js=BigInt(0),Or=BigInt(1),VX=BigInt(2);function ai(d){return d instanceof Uint8Array||d!=null&&typeof d=="object"&&d.constructor.name==="Uint8Array"}function _a(d){if(!ai(d))throw new Error("Uint8Array expected")}function nd(d,e){if(typeof e!="boolean")throw new Error(`${d} must be valid boolean, got "${e}".`)}var zX=Array.from({length:256},(d,e)=>e.toString(16).padStart(2,"0"));function ni(d){_a(d);let e="";for(let t=0;t<d.length;t++)e+=zX[d[t]];return e}function Oi(d){let e=d.toString(16);return e.length&1?`0${e}`:e}function $s(d){if(typeof d!="string")throw new Error("hex string expected, got "+typeof d);return BigInt(d===""?"0":`0x${d}`)}var Kt={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function F4(d){if(d>=Kt._0&&d<=Kt._9)return d-Kt._0;if(d>=Kt._A&&d<=Kt._F)return d-(Kt._A-10);if(d>=Kt._a&&d<=Kt._f)return d-(Kt._a-10)}function _i(d){if(typeof d!="string")throw new Error("hex string expected, got "+typeof d);let e=d.length,t=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let i=new Uint8Array(t);for(let a=0,n=0;a<t;a++,n+=2){let r=F4(d.charCodeAt(n)),o=F4(d.charCodeAt(n+1));if(r===void 0||o===void 0){let s=d[n]+d[n+1];throw new Error('hex string expected, got non-hex character "'+s+'" at index '+n)}i[a]=r*16+o}return i}function Zd(d){return $s(ni(d))}function Dd(d){return _a(d),$s(ni(Uint8Array.from(d).reverse()))}function Ki(d,e){return _i(d.toString(16).padStart(e*2,"0"))}function Yi(d,e){return Ki(d,e).reverse()}function HX(d){return _i(Oi(d))}function ve(d,e,t){let i;if(typeof e=="string")try{i=_i(e)}catch(n){throw new Error(`${d} must be valid hex string, got "${e}". Cause: ${n}`)}else if(ai(e))i=Uint8Array.from(e);else throw new Error(`${d} must be hex string or Uint8Array`);let a=i.length;if(typeof t=="number"&&a!==t)throw new Error(`${d} expected ${t} bytes, got ${a}`);return i}function ri(...d){let e=0;for(let i=0;i<d.length;i++){let a=d[i];_a(a),e+=a.length}let t=new Uint8Array(e);for(let i=0,a=0;i<d.length;i++){let n=d[i];t.set(n,a),a+=n.length}return t}function WX(d,e){if(d.length!==e.length)return!1;let t=0;for(let i=0;i<d.length;i++)t|=d[i]^e[i];return t===0}function _X(d){if(typeof d!="string")throw new Error(`utf8ToBytes expected string, got ${typeof d}`);return new Uint8Array(new TextEncoder().encode(d))}var Do=d=>typeof d=="bigint"&&Js<=d;function kr(d,e,t){return Do(d)&&Do(e)&&Do(t)&&e<=d&&d<t}function Je(d,e,t,i){if(!kr(e,t,i))throw new Error(`expected valid ${d}: ${t} <= n < ${i}, got ${typeof e} ${e}`)}function u5(d){let e;for(e=0;d>Js;d>>=Or,e+=1);return e}function KX(d,e){return d>>BigInt(e)&Or}function YX(d,e,t){return d|(t?Or:Js)<<BigInt(e)}var Zs=d=>(VX<<BigInt(d-1))-Or,Ro=d=>new Uint8Array(d),E4=d=>Uint8Array.from(d);function l5(d,e,t){if(typeof d!="number"||d<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof t!="function")throw new Error("hmacFn must be a function");let i=Ro(d),a=Ro(d),n=0,r=()=>{i.fill(1),a.fill(0),n=0},o=(...l)=>t(a,i,...l),s=(l=Ro())=>{a=o(E4([0]),l),i=o(),l.length!==0&&(a=o(E4([1]),l),i=o())},c=()=>{if(n++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,m=[];for(;l<e;){i=o();let P=i.slice();m.push(P),l+=i.length}return ri(...m)};return(l,m)=>{r(),s(l);let P;for(;!(P=m(c()));)s();return r(),P}}var JX={bigint:d=>typeof d=="bigint",function:d=>typeof d=="function",boolean:d=>typeof d=="boolean",string:d=>typeof d=="string",stringOrUint8Array:d=>typeof d=="string"||ai(d),isSafeInteger:d=>Number.isSafeInteger(d),array:d=>Array.isArray(d),field:(d,e)=>e.Fp.isValid(d),hash:d=>typeof d=="function"&&Number.isSafeInteger(d.outputLen)};function ci(d,e,t={}){let i=(a,n,r)=>{let o=JX[n];if(typeof o!="function")throw new Error(`Invalid validator "${n}", expected function`);let s=d[a];if(!(r&&s===void 0)&&!o(s,d))throw new Error(`Invalid param ${String(a)}=${s} (${typeof s}), expected ${n}`)};for(let[a,n]of Object.entries(e))i(a,n,!1);for(let[a,n]of Object.entries(t))i(a,n,!0);return d}var $X=()=>{throw new Error("not implemented")};function Ma(d){let e=new WeakMap;return(t,...i)=>{let a=e.get(t);if(a!==void 0)return a;let n=d(t,...i);return e.set(t,n),n}}var ZX=Object.freeze({__proto__:null,aInRange:Je,abool:nd,abytes:_a,bitGet:KX,bitLen:u5,bitMask:Zs,bitSet:YX,bytesToHex:ni,bytesToNumberBE:Zd,bytesToNumberLE:Dd,concatBytes:ri,createHmacDrbg:l5,ensureBytes:ve,equalBytes:WX,hexToBytes:_i,hexToNumber:$s,inRange:kr,isBytes:ai,memoized:Ma,notImplemented:$X,numberToBytesBE:Ki,numberToBytesLE:Yi,numberToHexUnpadded:Oi,numberToVarBytesBE:HX,utf8ToBytes:_X,validateObject:ci});var Me=BigInt(0),Xe=BigInt(1),Yd=BigInt(2),e3=BigInt(3),ls=BigInt(4),C4=BigInt(5),v4=BigInt(8);BigInt(9);BigInt(16);function Fe(d,e){let t=d%e;return t>=Me?t:e+t}function m5(d,e,t){if(t<=Me||e<Me)throw new Error("Expected power/modulo > 0");if(t===Xe)return Me;let i=Xe;for(;e>Me;)e&Xe&&(i=i*d%t),d=d*d%t,e>>=Xe;return i}function he(d,e,t){let i=d;for(;e-- >Me;)i*=i,i%=t;return i}function ms(d,e){if(d===Me||e<=Me)throw new Error(`invert: expected positive integers, got n=${d} mod=${e}`);let t=Fe(d,e),i=e,a=Me,n=Xe;for(;t!==Me;){let o=i/t,s=i%t,c=a-n*o;i=t,t=s,a=n,n=c}if(i!==Xe)throw new Error("invert: does not exist");return Fe(a,e)}function t3(d){let e=(d-Xe)/Yd,t,i,a;for(t=d-Xe,i=0;t%Yd===Me;t/=Yd,i++);for(a=Yd;a<d&&m5(a,e,d)!==d-Xe;a++);if(i===1){let r=(d+Xe)/ls;return function(s,c){let p=s.pow(c,r);if(!s.eql(s.sqr(p),c))throw new Error("Cannot find square root");return p}}let n=(t+Xe)/Yd;return function(o,s){if(o.pow(s,e)===o.neg(o.ONE))throw new Error("Cannot find square root");let c=i,p=o.pow(o.mul(o.ONE,a),t),l=o.pow(s,n),m=o.pow(s,t);for(;!o.eql(m,o.ONE);){if(o.eql(m,o.ZERO))return o.ZERO;let P=1;for(let y=o.sqr(m);P<c&&!o.eql(y,o.ONE);P++)y=o.sqr(y);let g=o.pow(p,Xe<<BigInt(c-P-1));p=o.sqr(g),l=o.mul(l,g),m=o.mul(m,p),c=P}return l}}function d3(d){if(d%ls===e3){let e=(d+Xe)/ls;return function(i,a){let n=i.pow(a,e);if(!i.eql(i.sqr(n),a))throw new Error("Cannot find square root");return n}}if(d%v4===C4){let e=(d-C4)/v4;return function(i,a){let n=i.mul(a,Yd),r=i.pow(n,e),o=i.mul(a,r),s=i.mul(i.mul(o,Yd),r),c=i.mul(o,i.sub(s,i.ONE));if(!i.eql(i.sqr(c),a))throw new Error("Cannot find square root");return c}}return t3(d)}var i3=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function a3(d){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=i3.reduce((i,a)=>(i[a]="function",i),e);return ci(d,t)}function n3(d,e,t){if(t<Me)throw new Error("Expected power > 0");if(t===Me)return d.ONE;if(t===Xe)return e;let i=d.ONE,a=e;for(;t>Me;)t&Xe&&(i=d.mul(i,a)),a=d.sqr(a),t>>=Xe;return i}function r3(d,e){let t=new Array(e.length),i=e.reduce((n,r,o)=>d.is0(r)?n:(t[o]=n,d.mul(n,r)),d.ONE),a=d.inv(i);return e.reduceRight((n,r,o)=>d.is0(r)?n:(t[o]=d.mul(n,t[o]),d.mul(n,r)),a),t}function y5(d,e){let t=e!==void 0?e:d.toString(2).length,i=Math.ceil(t/8);return{nBitLength:t,nByteLength:i}}function Bt(d,e,t=!1,i={}){if(d<=Me)throw new Error(`Expected Field ORDER > 0, got ${d}`);let{nBitLength:a,nByteLength:n}=y5(d,e);if(n>2048)throw new Error("Field lengths over 2048 bytes are not supported");let r=d3(d),o=Object.freeze({ORDER:d,BITS:a,BYTES:n,MASK:Zs(a),ZERO:Me,ONE:Xe,create:s=>Fe(s,d),isValid:s=>{if(typeof s!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof s}`);return Me<=s&&s<d},is0:s=>s===Me,isOdd:s=>(s&Xe)===Xe,neg:s=>Fe(-s,d),eql:(s,c)=>s===c,sqr:s=>Fe(s*s,d),add:(s,c)=>Fe(s+c,d),sub:(s,c)=>Fe(s-c,d),mul:(s,c)=>Fe(s*c,d),pow:(s,c)=>n3(o,s,c),div:(s,c)=>Fe(s*ms(c,d),d),sqrN:s=>s*s,addN:(s,c)=>s+c,subN:(s,c)=>s-c,mulN:(s,c)=>s*c,inv:s=>ms(s,d),sqrt:i.sqrt||(s=>r(o,s)),invertBatch:s=>r3(o,s),cmov:(s,c,p)=>p?c:s,toBytes:s=>t?Yi(s,n):Ki(s,n),fromBytes:s=>{if(s.length!==n)throw new Error(`Fp.fromBytes: expected ${n}, got ${s.length}`);return t?Dd(s):Zd(s)}});return Object.freeze(o)}function S5(d){if(typeof d!="bigint")throw new Error("field order must be bigint");let e=d.toString(2).length;return Math.ceil(e/8)}function P5(d){let e=S5(d);return e+Math.ceil(e/2)}function o3(d,e,t=!1){let i=d.length,a=S5(e),n=P5(e);if(i<16||i<n||i>1024)throw new Error(`expected ${n}-1024 bytes of input, got ${i}`);let r=t?Zd(d):Dd(d),o=Fe(r,e-Xe)+Xe;return t?Yi(o,a):Ki(o,a)}var s3=BigInt(0),xo=BigInt(1),No=new WeakMap,T4=new WeakMap;function f5(d,e){let t=(n,r)=>{let o=r.negate();return n?o:r},i=n=>{if(!Number.isSafeInteger(n)||n<=0||n>e)throw new Error(`Wrong window size=${n}, should be [1..${e}]`)},a=n=>{i(n);let r=Math.ceil(e/n)+1,o=2**(n-1);return{windows:r,windowSize:o}};return{constTimeNegate:t,unsafeLadder(n,r){let o=d.ZERO,s=n;for(;r>s3;)r&xo&&(o=o.add(s)),s=s.double(),r>>=xo;return o},precomputeWindow(n,r){let{windows:o,windowSize:s}=a(r),c=[],p=n,l=p;for(let m=0;m<o;m++){l=p,c.push(l);for(let P=1;P<s;P++)l=l.add(p),c.push(l);p=l.double()}return c},wNAF(n,r,o){let{windows:s,windowSize:c}=a(n),p=d.ZERO,l=d.BASE,m=BigInt(2**n-1),P=2**n,g=BigInt(n);for(let y=0;y<s;y++){let f=y*c,h=Number(o&m);o>>=g,h>c&&(h-=P,o+=xo);let I=f,b=f+Math.abs(h)-1,F=y%2!==0,X=h<0;h===0?l=l.add(t(F,r[I])):p=p.add(t(X,r[b]))}return{p,f:l}},wNAFCached(n,r,o){let s=T4.get(n)||1,c=No.get(n);return c||(c=this.precomputeWindow(n,s),s!==1&&No.set(n,o(c))),this.wNAF(s,c,r)},setWindowSize(n,r){i(r),T4.set(n,r),No.delete(n)}}}function g5(d,e,t,i){if(!Array.isArray(t)||!Array.isArray(i)||i.length!==t.length)throw new Error("arrays of points and scalars must have equal length");i.forEach((p,l)=>{if(!e.isValid(p))throw new Error(`wrong scalar at index ${l}`)}),t.forEach((p,l)=>{if(!(p instanceof d))throw new Error(`wrong point at index ${l}`)});let a=u5(BigInt(t.length)),n=a>12?a-3:a>4?a-2:a?2:1,r=(1<<n)-1,o=new Array(r+1).fill(d.ZERO),s=Math.floor((e.BITS-1)/n)*n,c=d.ZERO;for(let p=s;p>=0;p-=n){o.fill(d.ZERO);for(let m=0;m<i.length;m++){let P=i[m],g=Number(P>>BigInt(p)&BigInt(r));o[g]=o[g].add(t[m])}let l=d.ZERO;for(let m=o.length-1,P=d.ZERO;m>0;m--)P=P.add(o[m]),l=l.add(P);if(c=c.add(l),p!==0)for(let m=0;m<n;m++)c=c.double()}return c}function ec(d){return a3(d.Fp),ci(d,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...y5(d.n,d.nBitLength),...d,p:d.Fp.ORDER})}function X4(d){d.lowS!==void 0&&nd("lowS",d.lowS),d.prehash!==void 0&&nd("prehash",d.prehash)}function c3(d){let e=ec(d);ci(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:t,Fp:i,a}=e;if(t){if(!i.eql(a,i.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof t!="object"||typeof t.beta!="bigint"||typeof t.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:p3,hexToBytes:u3}=ZX,ed={Err:class extends Error{constructor(e=""){super(e)}},_tlv:{encode:(d,e)=>{let{Err:t}=ed;if(d<0||d>256)throw new t("tlv.encode: wrong tag");if(e.length&1)throw new t("tlv.encode: unpadded data");let i=e.length/2,a=Oi(i);if(a.length/2&128)throw new t("tlv.encode: long form length too big");let n=i>127?Oi(a.length/2|128):"";return`${Oi(d)}${n}${a}${e}`},decode(d,e){let{Err:t}=ed,i=0;if(d<0||d>256)throw new t("tlv.encode: wrong tag");if(e.length<2||e[i++]!==d)throw new t("tlv.decode: wrong tlv");let a=e[i++],n=!!(a&128),r=0;if(!n)r=a;else{let s=a&127;if(!s)throw new t("tlv.decode(long): indefinite length not supported");if(s>4)throw new t("tlv.decode(long): byte length is too big");let c=e.subarray(i,i+s);if(c.length!==s)throw new t("tlv.decode: length bytes not complete");if(c[0]===0)throw new t("tlv.decode(long): zero leftmost byte");for(let p of c)r=r<<8|p;if(i+=s,r<128)throw new t("tlv.decode(long): not minimal encoding")}let o=e.subarray(i,i+r);if(o.length!==r)throw new t("tlv.decode: wrong value length");return{v:o,l:e.subarray(i+r)}}},_int:{encode(d){let{Err:e}=ed;if(d<td)throw new e("integer: negative integers are not allowed");let t=Oi(d);if(Number.parseInt(t[0],16)&8&&(t="00"+t),t.length&1)throw new e("unexpected assertion");return t},decode(d){let{Err:e}=ed;if(d[0]&128)throw new e("Invalid signature integer: negative");if(d[0]===0&&!(d[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return p3(d)}},toSig(d){let{Err:e,_int:t,_tlv:i}=ed,a=typeof d=="string"?u3(d):d;_a(a);let{v:n,l:r}=i.decode(48,a);if(r.length)throw new e("Invalid signature: left bytes after parsing");let{v:o,l:s}=i.decode(2,n),{v:c,l:p}=i.decode(2,s);if(p.length)throw new e("Invalid signature: left bytes after parsing");return{r:t.decode(o),s:t.decode(c)}},hexFromSig(d){let{_tlv:e,_int:t}=ed,i=`${e.encode(2,t.encode(d.r))}${e.encode(2,t.encode(d.s))}`;return e.encode(48,i)}},td=BigInt(0),Ne=BigInt(1);BigInt(2);var D4=BigInt(3);BigInt(4);function l3(d){let e=c3(d),{Fp:t}=e,i=Bt(e.n,e.nBitLength),a=e.toBytes||((y,f,h)=>{let I=f.toAffine();return ri(Uint8Array.from([4]),t.toBytes(I.x),t.toBytes(I.y))}),n=e.fromBytes||(y=>{let f=y.subarray(1),h=t.fromBytes(f.subarray(0,t.BYTES)),I=t.fromBytes(f.subarray(t.BYTES,2*t.BYTES));return{x:h,y:I}});function r(y){let{a:f,b:h}=e,I=t.sqr(y),b=t.mul(I,y);return t.add(t.add(b,t.mul(y,f)),h)}if(!t.eql(t.sqr(e.Gy),r(e.Gx)))throw new Error("bad generator point: equation left != right");function o(y){return kr(y,Ne,e.n)}function s(y){let{allowedPrivateKeyLengths:f,nByteLength:h,wrapPrivateKey:I,n:b}=e;if(f&&typeof y!="bigint"){if(ai(y)&&(y=ni(y)),typeof y!="string"||!f.includes(y.length))throw new Error("Invalid key");y=y.padStart(h*2,"0")}let F;try{F=typeof y=="bigint"?y:Zd(ve("private key",y,h))}catch{throw new Error(`private key must be ${h} bytes, hex or bigint, not ${typeof y}`)}return I&&(F=Fe(F,b)),Je("private key",F,Ne,b),F}function c(y){if(!(y instanceof m))throw new Error("ProjectivePoint expected")}let p=Ma((y,f)=>{let{px:h,py:I,pz:b}=y;if(t.eql(b,t.ONE))return{x:h,y:I};let F=y.is0();f==null&&(f=F?t.ONE:t.inv(b));let X=t.mul(h,f),T=t.mul(I,f),x=t.mul(b,f);if(F)return{x:t.ZERO,y:t.ZERO};if(!t.eql(x,t.ONE))throw new Error("invZ was invalid");return{x:X,y:T}}),l=Ma(y=>{if(y.is0()){if(e.allowInfinityPoint&&!t.is0(y.py))return;throw new Error("bad point: ZERO")}let{x:f,y:h}=y.toAffine();if(!t.isValid(f)||!t.isValid(h))throw new Error("bad point: x or y not FE");let I=t.sqr(h),b=r(f);if(!t.eql(I,b))throw new Error("bad point: equation left != right");if(!y.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class m{constructor(f,h,I){if(this.px=f,this.py=h,this.pz=I,f==null||!t.isValid(f))throw new Error("x required");if(h==null||!t.isValid(h))throw new Error("y required");if(I==null||!t.isValid(I))throw new Error("z required");Object.freeze(this)}static fromAffine(f){let{x:h,y:I}=f||{};if(!f||!t.isValid(h)||!t.isValid(I))throw new Error("invalid affine point");if(f instanceof m)throw new Error("projective point not allowed");let b=F=>t.eql(F,t.ZERO);return b(h)&&b(I)?m.ZERO:new m(h,I,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(f){let h=t.invertBatch(f.map(I=>I.pz));return f.map((I,b)=>I.toAffine(h[b])).map(m.fromAffine)}static fromHex(f){let h=m.fromAffine(n(ve("pointHex",f)));return h.assertValidity(),h}static fromPrivateKey(f){return m.BASE.multiply(s(f))}static msm(f,h){return g5(m,i,f,h)}_setWindowSize(f){g.setWindowSize(this,f)}assertValidity(){l(this)}hasEvenY(){let{y:f}=this.toAffine();if(t.isOdd)return!t.isOdd(f);throw new Error("Field doesn't support isOdd")}equals(f){c(f);let{px:h,py:I,pz:b}=this,{px:F,py:X,pz:T}=f,x=t.eql(t.mul(h,T),t.mul(F,b)),E=t.eql(t.mul(I,T),t.mul(X,b));return x&&E}negate(){return new m(this.px,t.neg(this.py),this.pz)}double(){let{a:f,b:h}=e,I=t.mul(h,D4),{px:b,py:F,pz:X}=this,T=t.ZERO,x=t.ZERO,E=t.ZERO,D=t.mul(b,b),v=t.mul(F,F),C=t.mul(X,X),M=t.mul(b,F);return M=t.add(M,M),E=t.mul(b,X),E=t.add(E,E),T=t.mul(f,E),x=t.mul(I,C),x=t.add(T,x),T=t.sub(v,x),x=t.add(v,x),x=t.mul(T,x),T=t.mul(M,T),E=t.mul(I,E),C=t.mul(f,C),M=t.sub(D,C),M=t.mul(f,M),M=t.add(M,E),E=t.add(D,D),D=t.add(E,D),D=t.add(D,C),D=t.mul(D,M),x=t.add(x,D),C=t.mul(F,X),C=t.add(C,C),D=t.mul(C,M),T=t.sub(T,D),E=t.mul(C,v),E=t.add(E,E),E=t.add(E,E),new m(T,x,E)}add(f){c(f);let{px:h,py:I,pz:b}=this,{px:F,py:X,pz:T}=f,x=t.ZERO,E=t.ZERO,D=t.ZERO,v=e.a,C=t.mul(e.b,D4),M=t.mul(h,F),O=t.mul(I,X),R=t.mul(b,T),w=t.add(h,I),N=t.add(F,X);w=t.mul(w,N),N=t.add(M,O),w=t.sub(w,N),N=t.add(h,b);let A=t.add(F,T);return N=t.mul(N,A),A=t.add(M,R),N=t.sub(N,A),A=t.add(I,b),x=t.add(X,T),A=t.mul(A,x),x=t.add(O,R),A=t.sub(A,x),D=t.mul(v,N),x=t.mul(C,R),D=t.add(x,D),x=t.sub(O,D),D=t.add(O,D),E=t.mul(x,D),O=t.add(M,M),O=t.add(O,M),R=t.mul(v,R),N=t.mul(C,N),O=t.add(O,R),R=t.sub(M,R),R=t.mul(v,R),N=t.add(N,R),M=t.mul(O,N),E=t.add(E,M),M=t.mul(A,N),x=t.mul(w,x),x=t.sub(x,M),M=t.mul(w,O),D=t.mul(A,D),D=t.add(D,M),new m(x,E,D)}subtract(f){return this.add(f.negate())}is0(){return this.equals(m.ZERO)}wNAF(f){return g.wNAFCached(this,f,m.normalizeZ)}multiplyUnsafe(f){Je("scalar",f,td,e.n);let h=m.ZERO;if(f===td)return h;if(f===Ne)return this;let{endo:I}=e;if(!I)return g.unsafeLadder(this,f);let{k1neg:b,k1:F,k2neg:X,k2:T}=I.splitScalar(f),x=h,E=h,D=this;for(;F>td||T>td;)F&Ne&&(x=x.add(D)),T&Ne&&(E=E.add(D)),D=D.double(),F>>=Ne,T>>=Ne;return b&&(x=x.negate()),X&&(E=E.negate()),E=new m(t.mul(E.px,I.beta),E.py,E.pz),x.add(E)}multiply(f){let{endo:h,n:I}=e;Je("scalar",f,Ne,I);let b,F;if(h){let{k1neg:X,k1:T,k2neg:x,k2:E}=h.splitScalar(f),{p:D,f:v}=this.wNAF(T),{p:C,f:M}=this.wNAF(E);D=g.constTimeNegate(X,D),C=g.constTimeNegate(x,C),C=new m(t.mul(C.px,h.beta),C.py,C.pz),b=D.add(C),F=v.add(M)}else{let{p:X,f:T}=this.wNAF(f);b=X,F=T}return m.normalizeZ([b,F])[0]}multiplyAndAddUnsafe(f,h,I){let b=m.BASE,F=(T,x)=>x===td||x===Ne||!T.equals(b)?T.multiplyUnsafe(x):T.multiply(x),X=F(this,h).add(F(f,I));return X.is0()?void 0:X}toAffine(f){return p(this,f)}isTorsionFree(){let{h:f,isTorsionFree:h}=e;if(f===Ne)return!0;if(h)return h(m,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:f,clearCofactor:h}=e;return f===Ne?this:h?h(m,this):this.multiplyUnsafe(e.h)}toRawBytes(f=!0){return nd("isCompressed",f),this.assertValidity(),a(m,this,f)}toHex(f=!0){return nd("isCompressed",f),ni(this.toRawBytes(f))}}m.BASE=new m(e.Gx,e.Gy,t.ONE),m.ZERO=new m(t.ZERO,t.ONE,t.ZERO);let P=e.nBitLength,g=f5(m,e.endo?Math.ceil(P/2):P);return{CURVE:e,ProjectivePoint:m,normPrivateKeyToScalar:s,weierstrassEquation:r,isWithinCurveOrder:o}}function m3(d){let e=ec(d);return ci(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function y3(d){let e=m3(d),{Fp:t,n:i}=e,a=t.BYTES+1,n=2*t.BYTES+1;function r(R){return Fe(R,i)}function o(R){return ms(R,i)}let{ProjectivePoint:s,normPrivateKeyToScalar:c,weierstrassEquation:p,isWithinCurveOrder:l}=l3({...e,toBytes(R,w,N){let A=w.toAffine(),L=t.toBytes(A.x),U=ri;return nd("isCompressed",N),N?U(Uint8Array.from([w.hasEvenY()?2:3]),L):U(Uint8Array.from([4]),L,t.toBytes(A.y))},fromBytes(R){let w=R.length,N=R[0],A=R.subarray(1);if(w===a&&(N===2||N===3)){let L=Zd(A);if(!kr(L,Ne,t.ORDER))throw new Error("Point is not on curve");let U=p(L),q;try{q=t.sqrt(U)}catch(H){let G=H instanceof Error?": "+H.message:"";throw new Error("Point is not on curve"+G)}let j=(q&Ne)===Ne;return(N&1)===1!==j&&(q=t.neg(q)),{x:L,y:q}}else if(w===n&&N===4){let L=t.fromBytes(A.subarray(0,t.BYTES)),U=t.fromBytes(A.subarray(t.BYTES,2*t.BYTES));return{x:L,y:U}}else throw new Error(`Point of length ${w} was invalid. Expected ${a} compressed bytes or ${n} uncompressed bytes`)}}),m=R=>ni(Ki(R,e.nByteLength));function P(R){let w=i>>Ne;return R>w}function g(R){return P(R)?r(-R):R}let y=(R,w,N)=>Zd(R.slice(w,N));class f{constructor(w,N,A){this.r=w,this.s=N,this.recovery=A,this.assertValidity()}static fromCompact(w){let N=e.nByteLength;return w=ve("compactSignature",w,N*2),new f(y(w,0,N),y(w,N,2*N))}static fromDER(w){let{r:N,s:A}=ed.toSig(ve("DER",w));return new f(N,A)}assertValidity(){Je("r",this.r,Ne,i),Je("s",this.s,Ne,i)}addRecoveryBit(w){return new f(this.r,this.s,w)}recoverPublicKey(w){let{r:N,s:A,recovery:L}=this,U=T(ve("msgHash",w));if(L==null||![0,1,2,3].includes(L))throw new Error("recovery id invalid");let q=L===2||L===3?N+e.n:N;if(q>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let j=(L&1)===0?"02":"03",z=s.fromHex(j+m(q)),H=o(q),G=r(-U*H),B=r(A*H),Q=s.BASE.multiplyAndAddUnsafe(z,G,B);if(!Q)throw new Error("point at infinify");return Q.assertValidity(),Q}hasHighS(){return P(this.s)}normalizeS(){return this.hasHighS()?new f(this.r,r(-this.s),this.recovery):this}toDERRawBytes(){return _i(this.toDERHex())}toDERHex(){return ed.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return _i(this.toCompactHex())}toCompactHex(){return m(this.r)+m(this.s)}}let h={isValidPrivateKey(R){try{return c(R),!0}catch{return!1}},normPrivateKeyToScalar:c,randomPrivateKey:()=>{let R=P5(e.n);return o3(e.randomBytes(R),e.n)},precompute(R=8,w=s.BASE){return w._setWindowSize(R),w.multiply(BigInt(3)),w}};function I(R,w=!0){return s.fromPrivateKey(R).toRawBytes(w)}function b(R){let w=ai(R),N=typeof R=="string",A=(w||N)&&R.length;return w?A===a||A===n:N?A===2*a||A===2*n:R instanceof s}function F(R,w,N=!0){if(b(R))throw new Error("first arg must be private key");if(!b(w))throw new Error("second arg must be public key");return s.fromHex(w).multiply(c(R)).toRawBytes(N)}let X=e.bits2int||function(R){let w=Zd(R),N=R.length*8-e.nBitLength;return N>0?w>>BigInt(N):w},T=e.bits2int_modN||function(R){return r(X(R))},x=Zs(e.nBitLength);function E(R){return Je(`num < 2^${e.nBitLength}`,R,td,x),Ki(R,e.nByteLength)}function D(R,w,N=v){if(["recovered","canonical"].some(W=>W in N))throw new Error("sign() legacy options not supported");let{hash:A,randomBytes:L}=e,{lowS:U,prehash:q,extraEntropy:j}=N;U==null&&(U=!0),R=ve("msgHash",R),X4(N),q&&(R=ve("prehashed msgHash",A(R)));let z=T(R),H=c(w),G=[E(H),E(z)];if(j!=null&&j!==!1){let W=j===!0?L(t.BYTES):j;G.push(ve("extraEntropy",W))}let B=ri(...G),Q=z;function K(W){let Y=X(W);if(!l(Y))return;let Z=o(Y),ee=s.BASE.multiply(Y).toAffine(),ie=r(ee.x);if(ie===td)return;let pe=r(Z*r(Q+ie*H));if(pe===td)return;let ue=(ee.x===ie?0:2)|Number(ee.y&Ne),Ee=pe;return U&&P(pe)&&(Ee=g(pe),ue^=1),new f(ie,Ee,ue)}return{seed:B,k2sig:K}}let v={lowS:e.lowS,prehash:!1},C={lowS:e.lowS,prehash:!1};function M(R,w,N=v){let{seed:A,k2sig:L}=D(R,w,N),U=e;return l5(U.hash.outputLen,U.nByteLength,U.hmac)(A,L)}s.BASE._setWindowSize(8);function O(R,w,N,A=C){let L=R;if(w=ve("msgHash",w),N=ve("publicKey",N),"strict"in A)throw new Error("options.strict was renamed to lowS");X4(A);let{lowS:U,prehash:q}=A,j,z;try{if(typeof L=="string"||ai(L))try{j=f.fromDER(L)}catch(ee){if(!(ee instanceof ed.Err))throw ee;j=f.fromCompact(L)}else if(typeof L=="object"&&typeof L.r=="bigint"&&typeof L.s=="bigint"){let{r:ee,s:ie}=L;j=new f(ee,ie)}else throw new Error("PARSE");z=s.fromHex(N)}catch(ee){if(ee.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&j.hasHighS())return!1;q&&(w=e.hash(w));let{r:H,s:G}=j,B=T(w),Q=o(G),K=r(B*Q),W=r(H*Q),Y=s.BASE.multiplyAndAddUnsafe(z,K,W)?.toAffine();return Y?r(Y.x)===H:!1}return{CURVE:e,getPublicKey:I,getSharedSecret:F,sign:M,verify:O,ProjectivePoint:s,Signature:f,utils:h}}function S3(d){return{hash:d,hmac:(e,...t)=>p5(d,e,o5(...t)),randomBytes:Ys}}function pi(d,e){let t=i=>y3({...d,...S3(i)});return Object.freeze({...t(e),create:t})}var h5=Bt(BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff")),P3=h5.create(BigInt("-3")),f3=BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),g3=pi({a:P3,b:f3,Fp:h5,n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"),h:BigInt(1),lowS:!1},Lr),Xn=BigInt(2**32-1),ys=BigInt(32);function I5(d,e=!1){return e?{h:Number(d&Xn),l:Number(d>>ys&Xn)}:{h:Number(d>>ys&Xn)|0,l:Number(d&Xn)|0}}function b5(d,e=!1){let t=new Uint32Array(d.length),i=new Uint32Array(d.length);for(let a=0;a<d.length;a++){let{h:n,l:r}=I5(d[a],e);[t[a],i[a]]=[n,r]}return[t,i]}var h3=(d,e)=>BigInt(d>>>0)<<ys|BigInt(e>>>0),I3=(d,e,t)=>d>>>t,b3=(d,e,t)=>d<<32-t|e>>>t,F3=(d,e,t)=>d>>>t|e<<32-t,E3=(d,e,t)=>d<<32-t|e>>>t,C3=(d,e,t)=>d<<64-t|e>>>t-32,v3=(d,e,t)=>d>>>t-32|e<<64-t,T3=(d,e)=>e,X3=(d,e)=>d,F5=(d,e,t)=>d<<t|e>>>32-t,E5=(d,e,t)=>e<<t|d>>>32-t,C5=(d,e,t)=>e<<t-32|d>>>64-t,v5=(d,e,t)=>d<<t-32|e>>>64-t;function D3(d,e,t,i){let a=(e>>>0)+(i>>>0);return{h:d+t+(a/2**32|0)|0,l:a|0}}var R3=(d,e,t)=>(d>>>0)+(e>>>0)+(t>>>0),x3=(d,e,t,i)=>e+t+i+(d/2**32|0)|0,N3=(d,e,t,i)=>(d>>>0)+(e>>>0)+(t>>>0)+(i>>>0),A3=(d,e,t,i,a)=>e+t+i+a+(d/2**32|0)|0,w3=(d,e,t,i,a)=>(d>>>0)+(e>>>0)+(t>>>0)+(i>>>0)+(a>>>0),M3=(d,e,t,i,a,n)=>e+t+i+a+n+(d/2**32|0)|0,de={fromBig:I5,split:b5,toBig:h3,shrSH:I3,shrSL:b3,rotrSH:F3,rotrSL:E3,rotrBH:C3,rotrBL:v3,rotr32H:T3,rotr32L:X3,rotlSH:F5,rotlSL:E5,rotlBH:C5,rotlBL:v5,add:D3,add3L:R3,add3H:x3,add4L:N3,add4H:A3,add5H:M3,add5L:w3},[L3,O3]=de.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(d=>BigInt(d))),Pd=new Uint32Array(80),fd=new Uint32Array(80),hr=class extends ii{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:t,Bh:i,Bl:a,Ch:n,Cl:r,Dh:o,Dl:s,Eh:c,El:p,Fh:l,Fl:m,Gh:P,Gl:g,Hh:y,Hl:f}=this;return[e,t,i,a,n,r,o,s,c,p,l,m,P,g,y,f]}set(e,t,i,a,n,r,o,s,c,p,l,m,P,g,y,f){this.Ah=e|0,this.Al=t|0,this.Bh=i|0,this.Bl=a|0,this.Ch=n|0,this.Cl=r|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=p|0,this.Fh=l|0,this.Fl=m|0,this.Gh=P|0,this.Gl=g|0,this.Hh=y|0,this.Hl=f|0}process(e,t){for(let b=0;b<16;b++,t+=4)Pd[b]=e.getUint32(t),fd[b]=e.getUint32(t+=4);for(let b=16;b<80;b++){let F=Pd[b-15]|0,X=fd[b-15]|0,T=de.rotrSH(F,X,1)^de.rotrSH(F,X,8)^de.shrSH(F,X,7),x=de.rotrSL(F,X,1)^de.rotrSL(F,X,8)^de.shrSL(F,X,7),E=Pd[b-2]|0,D=fd[b-2]|0,v=de.rotrSH(E,D,19)^de.rotrBH(E,D,61)^de.shrSH(E,D,6),C=de.rotrSL(E,D,19)^de.rotrBL(E,D,61)^de.shrSL(E,D,6),M=de.add4L(x,C,fd[b-7],fd[b-16]),O=de.add4H(M,T,v,Pd[b-7],Pd[b-16]);Pd[b]=O|0,fd[b]=M|0}let{Ah:i,Al:a,Bh:n,Bl:r,Ch:o,Cl:s,Dh:c,Dl:p,Eh:l,El:m,Fh:P,Fl:g,Gh:y,Gl:f,Hh:h,Hl:I}=this;for(let b=0;b<80;b++){let F=de.rotrSH(l,m,14)^de.rotrSH(l,m,18)^de.rotrBH(l,m,41),X=de.rotrSL(l,m,14)^de.rotrSL(l,m,18)^de.rotrBL(l,m,41),T=l&P^~l&y,x=m&g^~m&f,E=de.add5L(I,X,x,O3[b],fd[b]),D=de.add5H(E,h,F,T,L3[b],Pd[b]),v=E|0,C=de.rotrSH(i,a,28)^de.rotrBH(i,a,34)^de.rotrBH(i,a,39),M=de.rotrSL(i,a,28)^de.rotrBL(i,a,34)^de.rotrBL(i,a,39),O=i&n^i&o^n&o,R=a&r^a&s^r&s;h=y|0,I=f|0,y=P|0,f=g|0,P=l|0,g=m|0,{h:l,l:m}=de.add(c|0,p|0,D|0,v|0),c=o|0,p=s|0,o=n|0,s=r|0,n=i|0,r=a|0;let w=de.add3L(v,M,R);i=de.add3H(w,D,C,O),a=w|0}({h:i,l:a}=de.add(this.Ah|0,this.Al|0,i|0,a|0)),{h:n,l:r}=de.add(this.Bh|0,this.Bl|0,n|0,r|0),{h:o,l:s}=de.add(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l:p}=de.add(this.Dh|0,this.Dl|0,c|0,p|0),{h:l,l:m}=de.add(this.Eh|0,this.El|0,l|0,m|0),{h:P,l:g}=de.add(this.Fh|0,this.Fl|0,P|0,g|0),{h:y,l:f}=de.add(this.Gh|0,this.Gl|0,y|0,f|0),{h,l:I}=de.add(this.Hh|0,this.Hl|0,h|0,I|0),this.set(i,a,n,r,o,s,c,p,l,m,P,g,y,f,h,I)}roundClean(){Pd.fill(0),fd.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Ss=class extends hr{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}},tc=qt(()=>new hr),dc=qt(()=>new Ss);var k3=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),T5=Bt(k3),U3=T5.create(BigInt("-3")),q3=BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),B3=pi({a:U3,b:q3,Fp:T5,n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f"),h:BigInt(1),lowS:!1},dc);var j3=BigInt("0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),Ps=Bt(j3),Di={a:Ps.create(BigInt("-3")),b:BigInt("0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00"),Fp:Ps,n:BigInt("0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409"),Gx:BigInt("0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66"),Gy:BigInt("0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650"),h:BigInt(1)},G3=pi({a:Di.a,b:Di.b,Fp:Ps,n:Di.n,Gx:Di.Gx,Gy:Di.Gy,h:Di.h,lowS:!1,allowedPrivateKeyLengths:[130,131,132]},tc),X5=[],D5=[],R5=[],Q3=BigInt(0),Sa=BigInt(1),V3=BigInt(2),z3=BigInt(7),H3=BigInt(256),W3=BigInt(113);for(let d=0,e=Sa,t=1,i=0;d<24;d++){[t,i]=[i,(2*t+3*i)%5],X5.push(2*(5*i+t)),D5.push((d+1)*(d+2)/2%64);let a=Q3;for(let n=0;n<7;n++)e=(e<<Sa^(e>>z3)*W3)%H3,e&V3&&(a^=Sa<<(Sa<<BigInt(n))-Sa);R5.push(a)}var[_3,K3]=b5(R5,!0),R4=(d,e,t)=>t>32?C5(d,e,t):F5(d,e,t),x4=(d,e,t)=>t>32?v5(d,e,t):E5(d,e,t);function Y3(d,e=24){let t=new Uint32Array(10);for(let i=24-e;i<24;i++){for(let r=0;r<10;r++)t[r]=d[r]^d[r+10]^d[r+20]^d[r+30]^d[r+40];for(let r=0;r<10;r+=2){let o=(r+8)%10,s=(r+2)%10,c=t[s],p=t[s+1],l=R4(c,p,1)^t[o],m=x4(c,p,1)^t[o+1];for(let P=0;P<50;P+=10)d[r+P]^=l,d[r+P+1]^=m}let a=d[2],n=d[3];for(let r=0;r<24;r++){let o=D5[r],s=R4(a,n,o),c=x4(a,n,o),p=X5[r];a=d[p],n=d[p+1],d[p]=s,d[p+1]=c}for(let r=0;r<50;r+=10){for(let o=0;o<10;o++)t[o]=d[r+o];for(let o=0;o<10;o++)d[r+o]^=~t[(o+2)%10]&t[(o+4)%10]}d[0]^=_3[i],d[1]^=K3[i]}t.fill(0)}var Ir=class d extends wa{constructor(e,t,i,a=!1,n=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=i,this.enableXOF=a,this.rounds=n,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Pr(i),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=UX(this.state)}keccak(){I4||b4(this.state32),Y3(this.state32,this.rounds),I4||b4(this.state32),this.posOut=0,this.pos=0}update(e){Wi(this);let{blockLen:t,state:i}=this;e=Wa(e);let a=e.length;for(let n=0;n<a;){let r=Math.min(t-this.pos,a-n);for(let o=0;o<r;o++)i[this.pos++]^=e[n++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:i,blockLen:a}=this;e[i]^=t,(t&128)!==0&&i===a-1&&this.keccak(),e[a-1]^=128,this.keccak()}writeInto(e){Wi(this,!1),Ha(e),this.finish();let t=this.state,{blockLen:i}=this;for(let a=0,n=e.length;a<n;){this.posOut>=i&&this.keccak();let r=Math.min(i-this.posOut,n-a);e.set(t.subarray(this.posOut,this.posOut+r),a),this.posOut+=r,a+=r}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Pr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(n5(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){let{blockLen:t,suffix:i,outputLen:a,rounds:n,enableXOF:r}=this;return e||(e=new d(t,i,a,r,n)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=n,e.suffix=i,e.outputLen=a,e.enableXOF=r,e.destroyed=this.destroyed,e}},x5=(d,e,t)=>qt(()=>new Ir(e,d,t)),J3=x5(6,136,256/8),$3=x5(6,72,512/8),Z3=(d,e,t)=>BX((i={})=>new Ir(e,d,i.dkLen===void 0?t:i.dkLen,!0)),N5=Z3(31,136,256/8);var gt=BigInt(0),_e=BigInt(1),Dn=BigInt(2),e6=BigInt(8),t6={zip215:!0};function d6(d){let e=ec(d);return ci(d,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function A5(d){let e=d6(d),{Fp:t,n:i,prehash:a,hash:n,randomBytes:r,nByteLength:o,h:s}=e,c=Dn<<BigInt(o*8)-_e,p=t.create,l=Bt(e.n,e.nBitLength),m=e.uvRatio||((N,A)=>{try{return{isValid:!0,value:t.sqrt(N*t.inv(A))}}catch{return{isValid:!1,value:gt}}}),P=e.adjustScalarBytes||(N=>N),g=e.domain||((N,A,L)=>{if(nd("phflag",L),A.length||L)throw new Error("Contexts/pre-hash are not supported");return N});function y(N,A){Je("coordinate "+N,A,gt,c)}function f(N){if(!(N instanceof b))throw new Error("ExtendedPoint expected")}let h=Ma((N,A)=>{let{ex:L,ey:U,ez:q}=N,j=N.is0();A==null&&(A=j?e6:t.inv(q));let z=p(L*A),H=p(U*A),G=p(q*A);if(j)return{x:gt,y:_e};if(G!==_e)throw new Error("invZ was invalid");return{x:z,y:H}}),I=Ma(N=>{let{a:A,d:L}=e;if(N.is0())throw new Error("bad point: ZERO");let{ex:U,ey:q,ez:j,et:z}=N,H=p(U*U),G=p(q*q),B=p(j*j),Q=p(B*B),K=p(H*A),W=p(B*p(K+G)),Y=p(Q+p(L*p(H*G)));if(W!==Y)throw new Error("bad point: equation left != right (1)");let Z=p(U*q),ee=p(j*z);if(Z!==ee)throw new Error("bad point: equation left != right (2)");return!0});class b{constructor(A,L,U,q){this.ex=A,this.ey=L,this.ez=U,this.et=q,y("x",A),y("y",L),y("z",U),y("t",q),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(A){if(A instanceof b)throw new Error("extended point not allowed");let{x:L,y:U}=A||{};return y("x",L),y("y",U),new b(L,U,_e,p(L*U))}static normalizeZ(A){let L=t.invertBatch(A.map(U=>U.ez));return A.map((U,q)=>U.toAffine(L[q])).map(b.fromAffine)}static msm(A,L){return g5(b,l,A,L)}_setWindowSize(A){T.setWindowSize(this,A)}assertValidity(){I(this)}equals(A){f(A);let{ex:L,ey:U,ez:q}=this,{ex:j,ey:z,ez:H}=A,G=p(L*H),B=p(j*q),Q=p(U*H),K=p(z*q);return G===B&&Q===K}is0(){return this.equals(b.ZERO)}negate(){return new b(p(-this.ex),this.ey,this.ez,p(-this.et))}double(){let{a:A}=e,{ex:L,ey:U,ez:q}=this,j=p(L*L),z=p(U*U),H=p(Dn*p(q*q)),G=p(A*j),B=L+U,Q=p(p(B*B)-j-z),K=G+z,W=K-H,Y=G-z,Z=p(Q*W),ee=p(K*Y),ie=p(Q*Y),pe=p(W*K);return new b(Z,ee,pe,ie)}add(A){f(A);let{a:L,d:U}=e,{ex:q,ey:j,ez:z,et:H}=this,{ex:G,ey:B,ez:Q,et:K}=A;if(L===BigInt(-1)){let ch=p((j-q)*(B+G)),ph=p((j+q)*(B-G)),Qr=p(ph-ch);if(Qr===gt)return this.double();let uh=p(z*Dn*K),lh=p(H*Dn*Q),mh=lh+uh,yh=ph+ch,Sh=lh-uh,bF=p(mh*Qr),FF=p(yh*Sh),EF=p(mh*Sh),CF=p(Qr*yh);return new b(bF,FF,CF,EF)}let W=p(q*G),Y=p(j*B),Z=p(H*U*K),ee=p(z*Q),ie=p((q+j)*(G+B)-W-Y),pe=ee-Z,ue=ee+Z,Ee=p(Y-L*W),fF=p(ie*pe),gF=p(ue*Ee),hF=p(ie*Ee),IF=p(pe*ue);return new b(fF,gF,IF,hF)}subtract(A){return this.add(A.negate())}wNAF(A){return T.wNAFCached(this,A,b.normalizeZ)}multiply(A){let L=A;Je("scalar",L,_e,i);let{p:U,f:q}=this.wNAF(L);return b.normalizeZ([U,q])[0]}multiplyUnsafe(A){let L=A;return Je("scalar",L,gt,i),L===gt?X:this.equals(X)||L===_e?this:this.equals(F)?this.wNAF(L).p:T.unsafeLadder(this,L)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}isTorsionFree(){return T.unsafeLadder(this,i).is0()}toAffine(A){return h(this,A)}clearCofactor(){let{h:A}=e;return A===_e?this:this.multiplyUnsafe(A)}static fromHex(A,L=!1){let{d:U,a:q}=e,j=t.BYTES;A=ve("pointHex",A,j),nd("zip215",L);let z=A.slice(),H=A[j-1];z[j-1]=H&-129;let G=Dd(z),B=L?c:t.ORDER;Je("pointHex.y",G,gt,B);let Q=p(G*G),K=p(Q-_e),W=p(U*Q-q),{isValid:Y,value:Z}=m(K,W);if(!Y)throw new Error("Point.fromHex: invalid y coordinate");let ee=(Z&_e)===_e,ie=(H&128)!==0;if(!L&&Z===gt&&ie)throw new Error("Point.fromHex: x=0 and x_0=1");return ie!==ee&&(Z=p(-Z)),b.fromAffine({x:Z,y:G})}static fromPrivateKey(A){return D(A).point}toRawBytes(){let{x:A,y:L}=this.toAffine(),U=Yi(L,t.BYTES);return U[U.length-1]|=A&_e?128:0,U}toHex(){return ni(this.toRawBytes())}}b.BASE=new b(e.Gx,e.Gy,_e,p(e.Gx*e.Gy)),b.ZERO=new b(gt,_e,_e,gt);let{BASE:F,ZERO:X}=b,T=f5(b,o*8);function x(N){return Fe(N,i)}function E(N){return x(Dd(N))}function D(N){let A=o;N=ve("private key",N,A);let L=ve("hashed private key",n(N),2*A),U=P(L.slice(0,A)),q=L.slice(A,2*A),j=E(U),z=F.multiply(j),H=z.toRawBytes();return{head:U,prefix:q,scalar:j,point:z,pointBytes:H}}function v(N){return D(N).pointBytes}function C(N=new Uint8Array,...A){let L=ri(...A);return E(n(g(L,ve("context",N),!!a)))}function M(N,A,L={}){N=ve("message",N),a&&(N=a(N));let{prefix:U,scalar:q,pointBytes:j}=D(A),z=C(L.context,U,N),H=F.multiply(z).toRawBytes(),G=C(L.context,H,j,N),B=x(z+G*q);Je("signature.s",B,gt,i);let Q=ri(H,Yi(B,t.BYTES));return ve("result",Q,o*2)}let O=t6;function R(N,A,L,U=O){let{context:q,zip215:j}=U,z=t.BYTES;N=ve("signature",N,2*z),A=ve("message",A),j!==void 0&&nd("zip215",j),a&&(A=a(A));let H=Dd(N.slice(z,2*z)),G,B,Q;try{G=b.fromHex(L,j),B=b.fromHex(N.slice(0,z),j),Q=F.multiplyUnsafe(H)}catch{return!1}if(!j&&G.isSmallOrder())return!1;let K=C(q,B.toRawBytes(),G.toRawBytes(),A);return B.add(G.multiplyUnsafe(K)).subtract(Q).clearCofactor().equals(b.ZERO)}return F._setWindowSize(8),{CURVE:e,getPublicKey:v,sign:M,verify:R,ExtendedPoint:b,utils:{getExtendedPublicKey:D,randomPrivateKey:()=>r(t.BYTES),precompute(N=8,A=b.BASE){return A._setWindowSize(N),A.multiply(BigInt(3)),A}}}}var Ri=BigInt(0),Ao=BigInt(1);function i6(d){return ci(d,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...d})}function a6(d){let e=i6(d),{P:t}=e,i=I=>Fe(I,t),a=e.montgomeryBits,n=Math.ceil(a/8),r=e.nByteLength,o=e.adjustScalarBytes||(I=>I),s=e.powPminus2||(I=>m5(I,t-BigInt(2),t));function c(I,b,F){let X=i(I*(b-F));return b=i(b-X),F=i(F+X),[b,F]}let p=(e.a-BigInt(2))/BigInt(4);function l(I,b){Je("u",I,Ri,t),Je("scalar",b,Ri,t);let F=b,X=I,T=Ao,x=Ri,E=I,D=Ao,v=Ri,C;for(let O=BigInt(a-1);O>=Ri;O--){let R=F>>O&Ao;v^=R,C=c(v,T,E),T=C[0],E=C[1],C=c(v,x,D),x=C[0],D=C[1],v=R;let w=T+x,N=i(w*w),A=T-x,L=i(A*A),U=N-L,q=E+D,j=E-D,z=i(j*w),H=i(q*A),G=z+H,B=z-H;E=i(G*G),D=i(X*i(B*B)),T=i(N*L),x=i(U*(N+i(p*U)))}C=c(v,T,E),T=C[0],E=C[1],C=c(v,x,D),x=C[0],D=C[1];let M=s(x);return i(T*M)}function m(I){return Yi(i(I),n)}function P(I){let b=ve("u coordinate",I,n);return r===32&&(b[31]&=127),Dd(b)}function g(I){let b=ve("scalar",I),F=b.length;if(F!==n&&F!==r)throw new Error(`Expected ${n} or ${r} bytes, got ${F}`);return Dd(o(b))}function y(I,b){let F=P(b),X=g(I),T=l(F,X);if(T===Ri)throw new Error("Invalid private or public key received");return m(T)}let f=m(e.Gu);function h(I){return y(I,f)}return{scalarMult:y,scalarMultBase:h,getSharedSecret:(I,b)=>y(I,b),getPublicKey:I=>h(I),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:f}}var n6=qt(()=>N5.create({dkLen:114})),r6=qt(()=>N5.create({dkLen:64})),La=BigInt("726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365439"),o6=BigInt(1),N4=BigInt(2),A4=BigInt(3);BigInt(4);var s6=BigInt(11),c6=BigInt(22),w4=BigInt(44),p6=BigInt(88),u6=BigInt(223);function w5(d){let e=La,t=d*d*d%e,i=t*t*d%e,a=he(i,A4,e)*i%e,n=he(a,A4,e)*i%e,r=he(n,N4,e)*t%e,o=he(r,s6,e)*r%e,s=he(o,c6,e)*o%e,c=he(s,w4,e)*s%e,p=he(c,p6,e)*c%e,l=he(p,w4,e)*s%e,m=he(l,N4,e)*t%e,P=he(m,o6,e)*d%e;return he(P,u6,e)*m%e}function M5(d){return d[0]&=252,d[55]|=128,d[56]=0,d}function l6(d,e){let t=La,i=Fe(d*d*e,t),a=Fe(i*d,t),n=Fe(a*i*e,t),r=w5(n),o=Fe(a*r,t),s=Fe(o*o,t);return{isValid:Fe(s*e,t)===d,value:o}}var L5=Bt(La,456,!0),O5={a:BigInt(1),d:BigInt("726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018326358"),Fp:L5,n:BigInt("181709681073901722637330951972001133588410340171829515070372549795146003961539585716195755291692375963310293709091662304773755859649779"),nBitLength:456,h:BigInt(4),Gx:BigInt("224580040295924300187604334099896036246789641632564134246125461686950415467406032909029192869357953282578032075146446173674602635247710"),Gy:BigInt("298819210078481492676017930443930673437544040154080242095928241372331506189835876003536878655418784733982303233503462500531545062832660"),hash:n6,randomBytes:Ys,adjustScalarBytes:M5,domain:(d,e,t)=>{if(e.length>255)throw new Error(`Context is too big: ${e.length}`);return o5(r5("SigEd448"),new Uint8Array([t?1:0,e.length]),e,d)},uvRatio:l6},m6=A5(O5);({...O5});var y6=a6({a:BigInt(156326),montgomeryBits:448,nByteLength:56,P:La,Gu:BigInt(5),powPminus2:d=>{let e=La,t=w5(d),i=he(t,BigInt(2),e);return Fe(i*d,e)},adjustScalarBytes:M5,randomBytes:Ys});(L5.ORDER-BigInt(3))/BigInt(4);BigInt(156326);BigInt("39082");BigInt("78163");BigInt("98944233647732219769177004876929019128417576295529901074099889598043702116001257856802131563896515373927712232092845883226922417596214");BigInt("315019913931389607337177038330951043522456072897266928557328499619017160722351061360252776265186336876723201881398623946864393857820716");BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var k5=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),M4=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),S6=BigInt(1),fs=BigInt(2),L4=(d,e)=>(d+e/fs)/e;function P6(d){let e=k5,t=BigInt(3),i=BigInt(6),a=BigInt(11),n=BigInt(22),r=BigInt(23),o=BigInt(44),s=BigInt(88),c=d*d*d%e,p=c*c*d%e,l=he(p,t,e)*p%e,m=he(l,t,e)*p%e,P=he(m,fs,e)*c%e,g=he(P,a,e)*P%e,y=he(g,n,e)*g%e,f=he(y,o,e)*y%e,h=he(f,s,e)*f%e,I=he(h,o,e)*y%e,b=he(I,t,e)*p%e,F=he(b,r,e)*g%e,X=he(F,i,e)*c%e,T=he(X,fs,e);if(!gs.eql(gs.sqr(T),d))throw new Error("Cannot find square root");return T}var gs=Bt(k5,void 0,void 0,{sqrt:P6}),U5=pi({a:BigInt(0),b:BigInt(7),Fp:gs,n:M4,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:d=>{let e=M4,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),i=-S6*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),a=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),n=t,r=BigInt("0x100000000000000000000000000000000"),o=L4(n*d,e),s=L4(-i*d,e),c=Fe(d-o*t-s*a,e),p=Fe(-o*i-s*n,e),l=c>r,m=p>r;if(l&&(c=e-c),m&&(p=e-p),c>r||p>r)throw new Error("splitScalar: Endomorphism failed, k="+d);return{k1neg:l,k1:c,k2neg:m,k2:p}}}},Lr);BigInt(0);U5.ProjectivePoint;var q5=Bt(BigInt("0xa9fb57dba1eea9bc3e660a909d838d726e3bf623d52620282013481d1f6e5377")),f6=q5.create(BigInt("0x7d5a0975fc2c3057eef67530417affe7fb8055c126dc5c6ce94a4b44f330b5d9")),g6=BigInt("0x26dc5c6ce94a4b44f330b5d9bbd77cbf958416295cf7e1ce6bccdc18ff8c07b6"),h6=pi({a:f6,b:g6,Fp:q5,n:BigInt("0xa9fb57dba1eea9bc3e660a909d838d718c397aa3b561a6f7901e0e82974856a7"),Gx:BigInt("0x8bd2aeb9cb7e57cb2c4b482ffc81b7afb9de27e1e3bd23c23a4453bd9ace3262"),Gy:BigInt("0x547ef835c3dac4fd97f8461a14611dc9c27745132ded8e545c1d54c72f046997"),h:BigInt(1),lowS:!1},Lr),B5=Bt(BigInt("0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53")),I6=B5.create(BigInt("0x7bc382c63d8c150c3c72080ace05afa0c2bea28e4fb22787139165efba91f90f8aa5814a503ad4eb04a8c7dd22ce2826")),b6=BigInt("0x04a8c7dd22ce28268b39b55416f0447c2fb77de107dcd2a62e880ea53eeb62d57cb4390295dbc9943ab78696fa504c11"),F6=pi({a:I6,b:b6,Fp:B5,n:BigInt("0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565"),Gx:BigInt("0x1d1c64f068cf45ffa2a63a81b7c13f6b8847a3e77ef14fe3db7fcafe0cbd10e8e826e03436d646aaef87b2e247d4af1e"),Gy:BigInt("0x8abe1d7520f9c2a45cb1eb8e95cfd55262b70b29feec5864e19c054ff99129280e4646217791811142820341263c5315"),h:BigInt(1),lowS:!1},dc),j5=Bt(BigInt("0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3")),E6=j5.create(BigInt("0x7830a3318b603b89e2327145ac234cc594cbdd8d3df91610a83441caea9863bc2ded5d5aa8253aa10a2ef1c98b9ac8b57f1117a72bf2c7b9e7c1ac4d77fc94ca")),C6=BigInt("0x3df91610a83441caea9863bc2ded5d5aa8253aa10a2ef1c98b9ac8b57f1117a72bf2c7b9e7c1ac4d77fc94cadc083e67984050b75ebae5dd2809bd638016f723"),v6=pi({a:E6,b:C6,Fp:j5,n:BigInt("0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069"),Gx:BigInt("0x81aee4bdd82ed9645a21322e9c4c6a9385ed9f70b5d916c1b43b62eef4d0098eff3b1f78e2d0d48d50d1687b93b97d5f7c6d5047406a5e688b352209bcb9f822"),Gy:BigInt("0x7dde385d566332ecc0eabfa9cf7822fdf209f70024a57b1aa000c55b881f8111b2dcde494a5f485e5bca4bd88a2763aed1ca2b2fa8f0540678cd1e0f3ad80892"),h:BigInt(1),lowS:!1},tc),T6=new Map(Object.entries({nistP256:g3,nistP384:B3,nistP521:G3,brainpoolP256r1:h6,brainpoolP384r1:F6,brainpoolP512r1:v6,secp256k1:U5,x448:y6,ed448:m6})),X6=Object.freeze({__proto__:null,nobleCurves:T6}),Pa=new Uint32Array([1732584193,4023233417,2562383102,271733878,3285377520]),gd=new Uint32Array(80),hs=class extends ii{constructor(){super(64,20,8,!1),this.A=Pa[0]|0,this.B=Pa[1]|0,this.C=Pa[2]|0,this.D=Pa[3]|0,this.E=Pa[4]|0}get(){let{A:e,B:t,C:i,D:a,E:n}=this;return[e,t,i,a,n]}set(e,t,i,a,n){this.A=e|0,this.B=t|0,this.C=i|0,this.D=a|0,this.E=n|0}process(e,t){for(let s=0;s<16;s++,t+=4)gd[s]=e.getUint32(t,!1);for(let s=16;s<80;s++)gd[s]=Td(gd[s-3]^gd[s-8]^gd[s-14]^gd[s-16],1);let{A:i,B:a,C:n,D:r,E:o}=this;for(let s=0;s<80;s++){let c,p;s<20?(c=s5(a,n,r),p=1518500249):s<40?(c=a^n^r,p=1859775393):s<60?(c=c5(a,n,r),p=2400959708):(c=a^n^r,p=3395469782);let l=Td(i,5)+c+o+p+gd[s]|0;o=r,r=n,n=Td(a,30),a=i,i=l}i=i+this.A|0,a=a+this.B|0,n=n+this.C|0,r=r+this.D|0,o=o+this.E|0,this.set(i,a,n,r,o)}roundClean(){gd.fill(0)}destroy(){this.set(0,0,0,0,0),this.buffer.fill(0)}},D6=qt(()=>new hs),R6=new Uint8Array([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),G5=new Uint8Array(new Array(16).fill(0).map((d,e)=>e)),x6=G5.map(d=>(9*d+5)%16),ic=[G5],ac=[x6];for(let d=0;d<4;d++)for(let e of[ic,ac])e.push(e[d].map(t=>R6[t]));var Q5=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(d=>new Uint8Array(d)),N6=ic.map((d,e)=>d.map(t=>Q5[e][t])),A6=ac.map((d,e)=>d.map(t=>Q5[e][t])),w6=new Uint32Array([0,1518500249,1859775393,2400959708,2840853838]),M6=new Uint32Array([1352829926,1548603684,1836072691,2053994217,0]);function O4(d,e,t,i){return d===0?e^t^i:d===1?e&t|~e&i:d===2?(e|~t)^i:d===3?e&i|t&~i:e^(t|~i)}var Rn=new Uint32Array(16),Is=class extends ii{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){let{h0:e,h1:t,h2:i,h3:a,h4:n}=this;return[e,t,i,a,n]}set(e,t,i,a,n){this.h0=e|0,this.h1=t|0,this.h2=i|0,this.h3=a|0,this.h4=n|0}process(e,t){for(let P=0;P<16;P++,t+=4)Rn[P]=e.getUint32(t,!0);let i=this.h0|0,a=i,n=this.h1|0,r=n,o=this.h2|0,s=o,c=this.h3|0,p=c,l=this.h4|0,m=l;for(let P=0;P<5;P++){let g=4-P,y=w6[P],f=M6[P],h=ic[P],I=ac[P],b=N6[P],F=A6[P];for(let X=0;X<16;X++){let T=Td(i+O4(P,n,o,c)+Rn[h[X]]+y,b[X])+l|0;i=l,l=c,c=Td(o,10)|0,o=n,n=T}for(let X=0;X<16;X++){let T=Td(a+O4(g,r,s,p)+Rn[I[X]]+f,F[X])+m|0;a=m,m=p,p=Td(s,10)|0,s=r,r=T}}this.set(this.h1+o+p|0,this.h2+c+m|0,this.h3+l+a|0,this.h4+i+r|0,this.h0+n+s|0)}roundClean(){Rn.fill(0)}destroy(){this.destroyed=!0,this.buffer.fill(0),this.set(0,0,0,0,0)}},L6=qt(()=>new Is),O6=Array.from({length:64},(d,e)=>Math.floor(2**32*Math.abs(Math.sin(e+1)))),k4=(d,e,t)=>d&e^~d&t,xn=new Uint32Array([1732584193,4023233417,2562383102,271733878]),wo=new Uint32Array(16),bs=class extends ii{constructor(){super(64,16,8,!0),this.A=xn[0]|0,this.B=xn[1]|0,this.C=xn[2]|0,this.D=xn[3]|0}get(){let{A:e,B:t,C:i,D:a}=this;return[e,t,i,a]}set(e,t,i,a){this.A=e|0,this.B=t|0,this.C=i|0,this.D=a|0}process(e,t){for(let o=0;o<16;o++,t+=4)wo[o]=e.getUint32(t,!0);let{A:i,B:a,C:n,D:r}=this;for(let o=0;o<64;o++){let s,c,p;o<16?(s=k4(a,n,r),c=o,p=[7,12,17,22]):o<32?(s=k4(r,a,n),c=(5*o+1)%16,p=[5,9,14,20]):o<48?(s=a^n^r,c=(3*o+5)%16,p=[4,11,16,23]):(s=n^(a|~r),c=7*o%16,p=[6,10,15,21]),s=s+i+O6[o]+wo[c],i=r,r=n,n=a,a=a+Td(s,p[o%4])}i=i+this.A|0,a=a+this.B|0,n=n+this.C|0,r=r+this.D|0,this.set(i,a,n,r)}roundClean(){wo.fill(0)}destroy(){this.set(0,0,0,0),this.buffer.fill(0)}},k6=qt(()=>new bs),U6=new Map(Object.entries({md5:k6,sha1:D6,sha224:QX,sha256:Lr,sha384:dc,sha512:tc,sha3_256:J3,sha3_512:$3,ripemd160:L6})),q6=Object.freeze({__proto__:null,nobleHashes:U6});function Mo(d,e,t,i,a,n){let r=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],o=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],s=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],c=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],p=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],l=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],m=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],P=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696],g=0,y,f,h,I,b,F,X,T,x,E,D=e.length,v=d.length===32?3:9;v===3?T=t?[0,32,2]:[30,-2,-2]:T=t?[0,32,2,62,30,-2,64,96,2]:[94,62,-2,32,64,2,30,-2,-2],t&&(e=B6(e),D=e.length);let C=new Uint8Array(D),M=0;for(;g<D;){for(F=e[g++]<<24|e[g++]<<16|e[g++]<<8|e[g++],X=e[g++]<<24|e[g++]<<16|e[g++]<<8|e[g++],h=(F>>>4^X)&252645135,X^=h,F^=h<<4,h=(F>>>16^X)&65535,X^=h,F^=h<<16,h=(X>>>2^F)&858993459,F^=h,X^=h<<2,h=(X>>>8^F)&16711935,F^=h,X^=h<<8,h=(F>>>1^X)&1431655765,X^=h,F^=h<<1,F=F<<1|F>>>31,X=X<<1|X>>>31,f=0;f<v;f+=3){for(x=T[f+1],E=T[f+2],y=T[f];y!==x;y+=E)I=X^d[y],b=(X>>>4|X<<28)^d[y+1],h=F,F=X,X=h^(o[I>>>24&63]|c[I>>>16&63]|l[I>>>8&63]|P[I&63]|r[b>>>24&63]|s[b>>>16&63]|p[b>>>8&63]|m[b&63]);h=F,F=X,X=h}F=F>>>1|F<<31,X=X>>>1|X<<31,h=(F>>>1^X)&1431655765,X^=h,F^=h<<1,h=(X>>>8^F)&16711935,F^=h,X^=h<<8,h=(X>>>2^F)&858993459,F^=h,X^=h<<2,h=(F>>>16^X)&65535,X^=h,F^=h<<16,h=(F>>>4^X)&252645135,X^=h,F^=h<<4,C[M++]=F>>>24,C[M++]=F>>>16&255,C[M++]=F>>>8&255,C[M++]=F&255,C[M++]=X>>>24,C[M++]=X>>>16&255,C[M++]=X>>>8&255,C[M++]=X&255}return t||(C=j6(C)),C}function Lo(d){let e=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],t=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],i=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],a=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],n=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],r=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],o=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],s=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],c=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],p=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],m=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],P=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],g=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],y=d.length>8?3:1,f=new Array(32*y),h=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],I,b,F=0,X=0,T;for(let x=0;x<y;x++){let E=d[F++]<<24|d[F++]<<16|d[F++]<<8|d[F++],D=d[F++]<<24|d[F++]<<16|d[F++]<<8|d[F++];T=(E>>>4^D)&252645135,D^=T,E^=T<<4,T=(D>>>-16^E)&65535,E^=T,D^=T<<-16,T=(E>>>2^D)&858993459,D^=T,E^=T<<2,T=(D>>>-16^E)&65535,E^=T,D^=T<<-16,T=(E>>>1^D)&1431655765,D^=T,E^=T<<1,T=(D>>>8^E)&16711935,E^=T,D^=T<<8,T=(E>>>1^D)&1431655765,D^=T,E^=T<<1,T=E<<8|D>>>20&240,E=D<<24|D<<8&16711680|D>>>8&65280|D>>>24&240,D=T;for(let v=0;v<h.length;v++)h[v]?(E=E<<2|E>>>26,D=D<<2|D>>>26):(E=E<<1|E>>>27,D=D<<1|D>>>27),E&=-15,D&=-15,I=e[E>>>28]|t[E>>>24&15]|i[E>>>20&15]|a[E>>>16&15]|n[E>>>12&15]|r[E>>>8&15]|o[E>>>4&15],b=s[D>>>28]|c[D>>>24&15]|p[D>>>20&15]|l[D>>>16&15]|m[D>>>12&15]|P[D>>>8&15]|g[D>>>4&15],T=(b>>>16^I)&65535,f[X++]=I^T,f[X++]=b^T<<16}return f}function B6(d,e){let t=8-d.length%8,i;if(t<8)i=0;else{if(t===8)return d;throw new Error("des: invalid padding")}let a=new Uint8Array(d.length+t);for(let n=0;n<d.length;n++)a[n]=d[n];for(let n=0;n<t;n++)a[d.length+n]=i;return a}function j6(d,e){let t=null,i;if(i=0,!t){for(t=1;d[d.length-t]===i;)t++;t--}return d.subarray(0,d.length-t)}function Oa(d){this.key=[];for(let e=0;e<3;e++)this.key.push(new Uint8Array(d.subarray(e*8,e*8+8)));this.encrypt=function(e){return Mo(Lo(this.key[2]),Mo(Lo(this.key[1]),Mo(Lo(this.key[0]),e,!0,0,null,null),!1,0,null,null),!0)}}Oa.keySize=Oa.prototype.keySize=24;Oa.blockSize=Oa.prototype.blockSize=8;function G6(){this.BlockSize=8,this.KeySize=16,this.setKey=function(r){if(this.masking=new Array(16),this.rotate=new Array(16),this.reset(),r.length===this.KeySize)this.keySchedule(r);else throw new Error("CAST-128: keys must be 16 bytes");return!0},this.reset=function(){for(let r=0;r<16;r++)this.masking[r]=0,this.rotate[r]=0},this.getBlockSize=function(){return this.BlockSize},this.encrypt=function(r){let o=new Array(r.length);for(let s=0;s<r.length;s+=8){let c=r[s]<<24|r[s+1]<<16|r[s+2]<<8|r[s+3],p=r[s+4]<<24|r[s+5]<<16|r[s+6]<<8|r[s+7],l;l=p,p=c^t(p,this.masking[0],this.rotate[0]),c=l,l=p,p=c^i(p,this.masking[1],this.rotate[1]),c=l,l=p,p=c^a(p,this.masking[2],this.rotate[2]),c=l,l=p,p=c^t(p,this.masking[3],this.rotate[3]),c=l,l=p,p=c^i(p,this.masking[4],this.rotate[4]),c=l,l=p,p=c^a(p,this.masking[5],this.rotate[5]),c=l,l=p,p=c^t(p,this.masking[6],this.rotate[6]),c=l,l=p,p=c^i(p,this.masking[7],this.rotate[7]),c=l,l=p,p=c^a(p,this.masking[8],this.rotate[8]),c=l,l=p,p=c^t(p,this.masking[9],this.rotate[9]),c=l,l=p,p=c^i(p,this.masking[10],this.rotate[10]),c=l,l=p,p=c^a(p,this.masking[11],this.rotate[11]),c=l,l=p,p=c^t(p,this.masking[12],this.rotate[12]),c=l,l=p,p=c^i(p,this.masking[13],this.rotate[13]),c=l,l=p,p=c^a(p,this.masking[14],this.rotate[14]),c=l,l=p,p=c^t(p,this.masking[15],this.rotate[15]),c=l,o[s]=p>>>24&255,o[s+1]=p>>>16&255,o[s+2]=p>>>8&255,o[s+3]=p&255,o[s+4]=c>>>24&255,o[s+5]=c>>>16&255,o[s+6]=c>>>8&255,o[s+7]=c&255}return o},this.decrypt=function(r){let o=new Array(r.length);for(let s=0;s<r.length;s+=8){let c=r[s]<<24|r[s+1]<<16|r[s+2]<<8|r[s+3],p=r[s+4]<<24|r[s+5]<<16|r[s+6]<<8|r[s+7],l;l=p,p=c^t(p,this.masking[15],this.rotate[15]),c=l,l=p,p=c^a(p,this.masking[14],this.rotate[14]),c=l,l=p,p=c^i(p,this.masking[13],this.rotate[13]),c=l,l=p,p=c^t(p,this.masking[12],this.rotate[12]),c=l,l=p,p=c^a(p,this.masking[11],this.rotate[11]),c=l,l=p,p=c^i(p,this.masking[10],this.rotate[10]),c=l,l=p,p=c^t(p,this.masking[9],this.rotate[9]),c=l,l=p,p=c^a(p,this.masking[8],this.rotate[8]),c=l,l=p,p=c^i(p,this.masking[7],this.rotate[7]),c=l,l=p,p=c^t(p,this.masking[6],this.rotate[6]),c=l,l=p,p=c^a(p,this.masking[5],this.rotate[5]),c=l,l=p,p=c^i(p,this.masking[4],this.rotate[4]),c=l,l=p,p=c^t(p,this.masking[3],this.rotate[3]),c=l,l=p,p=c^a(p,this.masking[2],this.rotate[2]),c=l,l=p,p=c^i(p,this.masking[1],this.rotate[1]),c=l,l=p,p=c^t(p,this.masking[0],this.rotate[0]),c=l,o[s]=p>>>24&255,o[s+1]=p>>>16&255,o[s+2]=p>>>8&255,o[s+3]=p&255,o[s+4]=c>>>24&255,o[s+5]=c>>16&255,o[s+6]=c>>8&255,o[s+7]=c&255}return o};let d=new Array(4);d[0]=new Array(4),d[0][0]=[4,0,13,15,12,14,8],d[0][1]=[5,2,16,18,17,19,10],d[0][2]=[6,3,23,22,21,20,9],d[0][3]=[7,1,26,25,27,24,11],d[1]=new Array(4),d[1][0]=[0,6,21,23,20,22,16],d[1][1]=[1,4,0,2,1,3,18],d[1][2]=[2,5,7,6,5,4,17],d[1][3]=[3,7,10,9,11,8,19],d[2]=new Array(4),d[2][0]=[4,0,13,15,12,14,8],d[2][1]=[5,2,16,18,17,19,10],d[2][2]=[6,3,23,22,21,20,9],d[2][3]=[7,1,26,25,27,24,11],d[3]=new Array(4),d[3][0]=[0,6,21,23,20,22,16],d[3][1]=[1,4,0,2,1,3,18],d[3][2]=[2,5,7,6,5,4,17],d[3][3]=[3,7,10,9,11,8,19];let e=new Array(4);e[0]=new Array(4),e[0][0]=[24,25,23,22,18],e[0][1]=[26,27,21,20,22],e[0][2]=[28,29,19,18,25],e[0][3]=[30,31,17,16,28],e[1]=new Array(4),e[1][0]=[3,2,12,13,8],e[1][1]=[1,0,14,15,13],e[1][2]=[7,6,8,9,3],e[1][3]=[5,4,10,11,7],e[2]=new Array(4),e[2][0]=[19,18,28,29,25],e[2][1]=[17,16,30,31,28],e[2][2]=[23,22,24,25,18],e[2][3]=[21,20,26,27,22],e[3]=new Array(4),e[3][0]=[8,9,7,6,3],e[3][1]=[10,11,5,4,7],e[3][2]=[12,13,3,2,8],e[3][3]=[14,15,1,0,13],this.keySchedule=function(r){let o=new Array(8),s=new Array(32),c;for(let P=0;P<4;P++)c=P*4,o[P]=r[c]<<24|r[c+1]<<16|r[c+2]<<8|r[c+3];let p=[6,7,4,5],l=0,m;for(let P=0;P<2;P++)for(let g=0;g<4;g++){for(c=0;c<4;c++){let y=d[g][c];m=o[y[1]],m^=n[4][o[y[2]>>>2]>>>24-8*(y[2]&3)&255],m^=n[5][o[y[3]>>>2]>>>24-8*(y[3]&3)&255],m^=n[6][o[y[4]>>>2]>>>24-8*(y[4]&3)&255],m^=n[7][o[y[5]>>>2]>>>24-8*(y[5]&3)&255],m^=n[p[c]][o[y[6]>>>2]>>>24-8*(y[6]&3)&255],o[y[0]]=m}for(c=0;c<4;c++){let y=e[g][c];m=n[4][o[y[0]>>>2]>>>24-8*(y[0]&3)&255],m^=n[5][o[y[1]>>>2]>>>24-8*(y[1]&3)&255],m^=n[6][o[y[2]>>>2]>>>24-8*(y[2]&3)&255],m^=n[7][o[y[3]>>>2]>>>24-8*(y[3]&3)&255],m^=n[4+c][o[y[4]>>>2]>>>24-8*(y[4]&3)&255],s[l]=m,l++}}for(let P=0;P<16;P++)this.masking[P]=s[P],this.rotate[P]=s[16+P]&31};function t(r,o,s){let c=o+r,p=c<<s|c>>>32-s;return(n[0][p>>>24]^n[1][p>>>16&255])-n[2][p>>>8&255]+n[3][p&255]}function i(r,o,s){let c=o^r,p=c<<s|c>>>32-s;return n[0][p>>>24]-n[1][p>>>16&255]+n[2][p>>>8&255]^n[3][p&255]}function a(r,o,s){let c=o-r,p=c<<s|c>>>32-s;return(n[0][p>>>24]+n[1][p>>>16&255]^n[2][p>>>8&255])-n[3][p&255]}let n=new Array(8);n[0]=[821772500,2678128395,1810681135,1059425402,505495343,2617265619,1610868032,3483355465,3218386727,2294005173,3791863952,2563806837,1852023008,365126098,3269944861,584384398,677919599,3229601881,4280515016,2002735330,1136869587,3744433750,2289869850,2731719981,2714362070,879511577,1639411079,575934255,717107937,2857637483,576097850,2731753936,1725645e3,2810460463,5111599,767152862,2543075244,1251459544,1383482551,3052681127,3089939183,3612463449,1878520045,1510570527,2189125840,2431448366,582008916,3163445557,1265446783,1354458274,3529918736,3202711853,3073581712,3912963487,3029263377,1275016285,4249207360,2905708351,3304509486,1442611557,3585198765,2712415662,2731849581,3248163920,2283946226,208555832,2766454743,1331405426,1447828783,3315356441,3108627284,2957404670,2981538698,3339933917,1669711173,286233437,1465092821,1782121619,3862771680,710211251,980974943,1651941557,430374111,2051154026,704238805,4128970897,3144820574,2857402727,948965521,3333752299,2227686284,718756367,2269778983,2731643755,718440111,2857816721,3616097120,1113355533,2478022182,410092745,1811985197,1944238868,2696854588,1415722873,1682284203,1060277122,1998114690,1503841958,82706478,2315155686,1068173648,845149890,2167947013,1768146376,1993038550,3566826697,3390574031,940016341,3355073782,2328040721,904371731,1205506512,4094660742,2816623006,825647681,85914773,2857843460,1249926541,1417871568,3287612,3211054559,3126306446,1975924523,1353700161,2814456437,2438597621,1800716203,722146342,2873936343,1151126914,4160483941,2877670899,458611604,2866078500,3483680063,770352098,2652916994,3367839148,3940505011,3585973912,3809620402,718646636,2504206814,2914927912,3631288169,2857486607,2860018678,575749918,2857478043,718488780,2069512688,3548183469,453416197,1106044049,3032691430,52586708,3378514636,3459808877,3211506028,1785789304,218356169,3571399134,3759170522,1194783844,1523787992,3007827094,1975193539,2555452411,1341901877,3045838698,3776907964,3217423946,2802510864,2889438986,1057244207,1636348243,3761863214,1462225785,2632663439,481089165,718503062,24497053,3332243209,3344655856,3655024856,3960371065,1195698900,2971415156,3710176158,2115785917,4027663609,3525578417,2524296189,2745972565,3564906415,1372086093,1452307862,2780501478,1476592880,3389271281,18495466,2378148571,901398090,891748256,3279637769,3157290713,2560960102,1447622437,4284372637,216884176,2086908623,1879786977,3588903153,2242455666,2938092967,3559082096,2810645491,758861177,1121993112,215018983,642190776,4169236812,1196255959,2081185372,3508738393,941322904,4124243163,2877523539,1848581667,2205260958,3180453958,2589345134,3694731276,550028657,2519456284,3789985535,2973870856,2093648313,443148163,46942275,2734146937,1117713533,1115362972,1523183689,3717140224,1551984063],n[1]=[522195092,4010518363,1776537470,960447360,4267822970,4005896314,1435016340,1929119313,2913464185,1310552629,3579470798,3724818106,2579771631,1594623892,417127293,2715217907,2696228731,1508390405,3994398868,3925858569,3695444102,4019471449,3129199795,3770928635,3520741761,990456497,4187484609,2783367035,21106139,3840405339,631373633,3783325702,532942976,396095098,3548038825,4267192484,2564721535,2011709262,2039648873,620404603,3776170075,2898526339,3612357925,4159332703,1645490516,223693667,1567101217,3362177881,1029951347,3470931136,3570957959,1550265121,119497089,972513919,907948164,3840628539,1613718692,3594177948,465323573,2659255085,654439692,2575596212,2699288441,3127702412,277098644,624404830,4100943870,2717858591,546110314,2403699828,3655377447,1321679412,4236791657,1045293279,4010672264,895050893,2319792268,494945126,1914543101,2777056443,3894764339,2219737618,311263384,4275257268,3458730721,669096869,3584475730,3835122877,3319158237,3949359204,2005142349,2713102337,2228954793,3769984788,569394103,3855636576,1425027204,108000370,2736431443,3671869269,3043122623,1750473702,2211081108,762237499,3972989403,2798899386,3061857628,2943854345,867476300,964413654,1591880597,1594774276,2179821409,552026980,3026064248,3726140315,2283577634,3110545105,2152310760,582474363,1582640421,1383256631,2043843868,3322775884,1217180674,463797851,2763038571,480777679,2718707717,2289164131,3118346187,214354409,200212307,3810608407,3025414197,2674075964,3997296425,1847405948,1342460550,510035443,4080271814,815934613,833030224,1620250387,1945732119,2703661145,3966000196,1388869545,3456054182,2687178561,2092620194,562037615,1356438536,3409922145,3261847397,1688467115,2150901366,631725691,3840332284,549916902,3455104640,394546491,837744717,2114462948,751520235,2221554606,2415360136,3999097078,2063029875,803036379,2702586305,821456707,3019566164,360699898,4018502092,3511869016,3677355358,2402471449,812317050,49299192,2570164949,3259169295,2816732080,3331213574,3101303564,2156015656,3705598920,3546263921,143268808,3200304480,1638124008,3165189453,3341807610,578956953,2193977524,3638120073,2333881532,807278310,658237817,2969561766,1641658566,11683945,3086995007,148645947,1138423386,4158756760,1981396783,2401016740,3699783584,380097457,2680394679,2803068651,3334260286,441530178,4016580796,1375954390,761952171,891809099,2183123478,157052462,3683840763,1592404427,341349109,2438483839,1417898363,644327628,2233032776,2353769706,2201510100,220455161,1815641738,182899273,2995019788,3627381533,3702638151,2890684138,1052606899,588164016,1681439879,4038439418,2405343923,4229449282,167996282,1336969661,1688053129,2739224926,1543734051,1046297529,1138201970,2121126012,115334942,1819067631,1902159161,1941945968,2206692869,1159982321],n[2]=[2381300288,637164959,3952098751,3893414151,1197506559,916448331,2350892612,2932787856,3199334847,4009478890,3905886544,1373570990,2450425862,4037870920,3778841987,2456817877,286293407,124026297,3001279700,1028597854,3115296800,4208886496,2691114635,2188540206,1430237888,1218109995,3572471700,308166588,570424558,2187009021,2455094765,307733056,1310360322,3135275007,1384269543,2388071438,863238079,2359263624,2801553128,3380786597,2831162807,1470087780,1728663345,4072488799,1090516929,532123132,2389430977,1132193179,2578464191,3051079243,1670234342,1434557849,2711078940,1241591150,3314043432,3435360113,3091448339,1812415473,2198440252,267246943,796911696,3619716990,38830015,1526438404,2806502096,374413614,2943401790,1489179520,1603809326,1920779204,168801282,260042626,2358705581,1563175598,2397674057,1356499128,2217211040,514611088,2037363785,2186468373,4022173083,2792511869,2913485016,1173701892,4200428547,3896427269,1334932762,2455136706,602925377,2835607854,1613172210,41346230,2499634548,2457437618,2188827595,41386358,4172255629,1313404830,2405527007,3801973774,2217704835,873260488,2528884354,2478092616,4012915883,2555359016,2006953883,2463913485,575479328,2218240648,2099895446,660001756,2341502190,3038761536,3888151779,3848713377,3286851934,1022894237,1620365795,3449594689,1551255054,15374395,3570825345,4249311020,4151111129,3181912732,310226346,1133119310,530038928,136043402,2476768958,3107506709,2544909567,1036173560,2367337196,1681395281,1758231547,3641649032,306774401,1575354324,3716085866,1990386196,3114533736,2455606671,1262092282,3124342505,2768229131,4210529083,1833535011,423410938,660763973,2187129978,1639812e3,3508421329,3467445492,310289298,272797111,2188552562,2456863912,310240523,677093832,1013118031,901835429,3892695601,1116285435,3036471170,1337354835,243122523,520626091,277223598,4244441197,4194248841,1766575121,594173102,316590669,742362309,3536858622,4176435350,3838792410,2501204839,1229605004,3115755532,1552908988,2312334149,979407927,3959474601,1148277331,176638793,3614686272,2083809052,40992502,1340822838,2731552767,3535757508,3560899520,1354035053,122129617,7215240,2732932949,3118912700,2718203926,2539075635,3609230695,3725561661,1928887091,2882293555,1988674909,2063640240,2491088897,1459647954,4189817080,2302804382,1113892351,2237858528,1927010603,4002880361,1856122846,1594404395,2944033133,3855189863,3474975698,1643104450,4054590833,3431086530,1730235576,2984608721,3084664418,2131803598,4178205752,267404349,1617849798,1616132681,1462223176,736725533,2327058232,551665188,2945899023,1749386277,2575514597,1611482493,674206544,2201269090,3642560800,728599968,1680547377,2620414464,1388111496,453204106,4156223445,1094905244,2754698257,2201108165,3757000246,2704524545,3922940700,3996465027],n[3]=[2645754912,532081118,2814278639,3530793624,1246723035,1689095255,2236679235,4194438865,2116582143,3859789411,157234593,2045505824,4245003587,1687664561,4083425123,605965023,672431967,1336064205,3376611392,214114848,4258466608,3232053071,489488601,605322005,3998028058,264917351,1912574028,756637694,436560991,202637054,135989450,85393697,2152923392,3896401662,2895836408,2145855233,3535335007,115294817,3147733898,1922296357,3464822751,4117858305,1037454084,2725193275,2127856640,1417604070,1148013728,1827919605,642362335,2929772533,909348033,1346338451,3547799649,297154785,1917849091,4161712827,2883604526,3968694238,1469521537,3780077382,3375584256,1763717519,136166297,4290970789,1295325189,2134727907,2798151366,1566297257,3672928234,2677174161,2672173615,965822077,2780786062,289653839,1133871874,3491843819,35685304,1068898316,418943774,672553190,642281022,2346158704,1954014401,3037126780,4079815205,2030668546,3840588673,672283427,1776201016,359975446,3750173538,555499703,2769985273,1324923,69110472,152125443,3176785106,3822147285,1340634837,798073664,1434183902,15393959,216384236,1303690150,3881221631,3711134124,3960975413,106373927,2578434224,1455997841,1801814300,1578393881,1854262133,3188178946,3258078583,2302670060,1539295533,3505142565,3078625975,2372746020,549938159,3278284284,2620926080,181285381,2865321098,3970029511,68876850,488006234,1728155692,2608167508,836007927,2435231793,919367643,3339422534,3655756360,1457871481,40520939,1380155135,797931188,234455205,2255801827,3990488299,397000196,739833055,3077865373,2871719860,4022553888,772369276,390177364,3853951029,557662966,740064294,1640166671,1699928825,3535942136,622006121,3625353122,68743880,1742502,219489963,1664179233,1577743084,1236991741,410585305,2366487942,823226535,1050371084,3426619607,3586839478,212779912,4147118561,1819446015,1911218849,530248558,3486241071,3252585495,2886188651,3410272728,2342195030,20547779,2982490058,3032363469,3631753222,312714466,1870521650,1493008054,3491686656,615382978,4103671749,2534517445,1932181,2196105170,278426614,6369430,3274544417,2913018367,697336853,2143000447,2946413531,701099306,1558357093,2805003052,3500818408,2321334417,3567135975,216290473,3591032198,23009561,1996984579,3735042806,2024298078,3739440863,569400510,2339758983,3016033873,3097871343,3639523026,3844324983,3256173865,795471839,2951117563,4101031090,4091603803,3603732598,971261452,534414648,428311343,3389027175,2844869880,694888862,1227866773,2456207019,3043454569,2614353370,3749578031,3676663836,459166190,4132644070,1794958188,51825668,2252611902,3084671440,2036672799,3436641603,1099053433,2469121526,3059204941,1323291266,2061838604,1018778475,2233344254,2553501054,334295216,3556750194,1065731521,183467730],n[4]=[2127105028,745436345,2601412319,2788391185,3093987327,500390133,1155374404,389092991,150729210,3891597772,3523549952,1935325696,716645080,946045387,2901812282,1774124410,3869435775,4039581901,3293136918,3438657920,948246080,363898952,3867875531,1286266623,1598556673,68334250,630723836,1104211938,1312863373,613332731,2377784574,1101634306,441780740,3129959883,1917973735,2510624549,3238456535,2544211978,3308894634,1299840618,4076074851,1756332096,3977027158,297047435,3790297736,2265573040,3621810518,1311375015,1667687725,47300608,3299642885,2474112369,201668394,1468347890,576830978,3594690761,3742605952,1958042578,1747032512,3558991340,1408974056,3366841779,682131401,1033214337,1545599232,4265137049,206503691,103024618,2855227313,1337551222,2428998917,2963842932,4015366655,3852247746,2796956967,3865723491,3747938335,247794022,3755824572,702416469,2434691994,397379957,851939612,2314769512,218229120,1380406772,62274761,214451378,3170103466,2276210409,3845813286,28563499,446592073,1693330814,3453727194,29968656,3093872512,220656637,2470637031,77972100,1667708854,1358280214,4064765667,2395616961,325977563,4277240721,4220025399,3605526484,3355147721,811859167,3069544926,3962126810,652502677,3075892249,4132761541,3498924215,1217549313,3250244479,3858715919,3053989961,1538642152,2279026266,2875879137,574252750,3324769229,2651358713,1758150215,141295887,2719868960,3515574750,4093007735,4194485238,1082055363,3417560400,395511885,2966884026,179534037,3646028556,3738688086,1092926436,2496269142,257381841,3772900718,1636087230,1477059743,2499234752,3811018894,2675660129,3285975680,90732309,1684827095,1150307763,1723134115,3237045386,1769919919,1240018934,815675215,750138730,2239792499,1234303040,1995484674,138143821,675421338,1145607174,1936608440,3238603024,2345230278,2105974004,323969391,779555213,3004902369,2861610098,1017501463,2098600890,2628620304,2940611490,2682542546,1171473753,3656571411,3687208071,4091869518,393037935,159126506,1662887367,1147106178,391545844,3452332695,1891500680,3016609650,1851642611,546529401,1167818917,3194020571,2848076033,3953471836,575554290,475796850,4134673196,450035699,2351251534,844027695,1080539133,86184846,1554234488,3692025454,1972511363,2018339607,1491841390,1141460869,1061690759,4244549243,2008416118,2351104703,2868147542,1598468138,722020353,1027143159,212344630,1387219594,1725294528,3745187956,2500153616,458938280,4129215917,1828119673,544571780,3503225445,2297937496,1241802790,267843827,2694610800,1397140384,1558801448,3782667683,1806446719,929573330,2234912681,400817706,616011623,4121520928,3603768725,1761550015,1968522284,4053731006,4192232858,4005120285,872482584,3140537016,3894607381,2287405443,1963876937,3663887957,1584857e3,2975024454,1833426440,4025083860],n[5]=[4143615901,749497569,1285769319,3795025788,2514159847,23610292,3974978748,844452780,3214870880,3751928557,2213566365,1676510905,448177848,3730751033,4086298418,2307502392,871450977,3222878141,4110862042,3831651966,2735270553,1310974780,2043402188,1218528103,2736035353,4274605013,2702448458,3936360550,2693061421,162023535,2827510090,687910808,23484817,3784910947,3371371616,779677500,3503626546,3473927188,4157212626,3500679282,4248902014,2466621104,3899384794,1958663117,925738300,1283408968,3669349440,1840910019,137959847,2679828185,1239142320,1315376211,1547541505,1690155329,739140458,3128809933,3933172616,3876308834,905091803,1548541325,4040461708,3095483362,144808038,451078856,676114313,2861728291,2469707347,993665471,373509091,2599041286,4025009006,4170239449,2149739950,3275793571,3749616649,2794760199,1534877388,572371878,2590613551,1753320020,3467782511,1405125690,4270405205,633333386,3026356924,3475123903,632057672,2846462855,1404951397,3882875879,3915906424,195638627,2385783745,3902872553,1233155085,3355999740,2380578713,2702246304,2144565621,3663341248,3894384975,2502479241,4248018925,3094885567,1594115437,572884632,3385116731,767645374,1331858858,1475698373,3793881790,3532746431,1321687957,619889600,1121017241,3440213920,2070816767,2833025776,1933951238,4095615791,890643334,3874130214,859025556,360630002,925594799,1764062180,3920222280,4078305929,979562269,2810700344,4087740022,1949714515,546639971,1165388173,3069891591,1495988560,922170659,1291546247,2107952832,1813327274,3406010024,3306028637,4241950635,153207855,2313154747,1608695416,1150242611,1967526857,721801357,1220138373,3691287617,3356069787,2112743302,3281662835,1111556101,1778980689,250857638,2298507990,673216130,2846488510,3207751581,3562756981,3008625920,3417367384,2198807050,529510932,3547516680,3426503187,2364944742,102533054,2294910856,1617093527,1204784762,3066581635,1019391227,1069574518,1317995090,1691889997,3661132003,510022745,3238594800,1362108837,1817929911,2184153760,805817662,1953603311,3699844737,120799444,2118332377,207536705,2282301548,4120041617,145305846,2508124933,3086745533,3261524335,1877257368,2977164480,3160454186,2503252186,4221677074,759945014,254147243,2767453419,3801518371,629083197,2471014217,907280572,3900796746,940896768,2751021123,2625262786,3161476951,3661752313,3260732218,1425318020,2977912069,1496677566,3988592072,2140652971,3126511541,3069632175,977771578,1392695845,1698528874,1411812681,1369733098,1343739227,3620887944,1142123638,67414216,3102056737,3088749194,1626167401,2546293654,3941374235,697522451,33404913,143560186,2595682037,994885535,1247667115,3859094837,2699155541,3547024625,4114935275,2968073508,3199963069,2732024527,1237921620,951448369,1898488916,1211705605,2790989240,2233243581,3598044975],n[6]=[2246066201,858518887,1714274303,3485882003,713916271,2879113490,3730835617,539548191,36158695,1298409750,419087104,1358007170,749914897,2989680476,1261868530,2995193822,2690628854,3443622377,3780124940,3796824509,2976433025,4259637129,1551479e3,512490819,1296650241,951993153,2436689437,2460458047,144139966,3136204276,310820559,3068840729,643875328,1969602020,1680088954,2185813161,3283332454,672358534,198762408,896343282,276269502,3014846926,84060815,197145886,376173866,3943890818,3813173521,3545068822,1316698879,1598252827,2633424951,1233235075,859989710,2358460855,3503838400,3409603720,1203513385,1193654839,2792018475,2060853022,207403770,1144516871,3068631394,1121114134,177607304,3785736302,326409831,1929119770,2983279095,4183308101,3474579288,3200513878,3228482096,119610148,1170376745,3378393471,3163473169,951863017,3337026068,3135789130,2907618374,1183797387,2015970143,4045674555,2182986399,2952138740,3928772205,384012900,2454997643,10178499,2879818989,2596892536,111523738,2995089006,451689641,3196290696,235406569,1441906262,3890558523,3013735005,4158569349,1644036924,376726067,1006849064,3664579700,2041234796,1021632941,1374734338,2566452058,371631263,4007144233,490221539,206551450,3140638584,1053219195,1853335209,3412429660,3562156231,735133835,1623211703,3104214392,2738312436,4096837757,3366392578,3110964274,3956598718,3196820781,2038037254,3877786376,2339753847,300912036,3766732888,2372630639,1516443558,4200396704,1574567987,4069441456,4122592016,2699739776,146372218,2748961456,2043888151,35287437,2596680554,655490400,1132482787,110692520,1031794116,2188192751,1324057718,1217253157,919197030,686247489,3261139658,1028237775,3135486431,3059715558,2460921700,986174950,2661811465,4062904701,2752986992,3709736643,367056889,1353824391,731860949,1650113154,1778481506,784341916,357075625,3608602432,1074092588,2480052770,3811426202,92751289,877911070,3600361838,1231880047,480201094,3756190983,3094495953,434011822,87971354,363687820,1717726236,1901380172,3926403882,2481662265,400339184,1490350766,2661455099,1389319756,2558787174,784598401,1983468483,30828846,3550527752,2716276238,3841122214,1765724805,1955612312,1277890269,1333098070,1564029816,2704417615,1026694237,3287671188,1260819201,3349086767,1016692350,1582273796,1073413053,1995943182,694588404,1025494639,3323872702,3551898420,4146854327,453260480,1316140391,1435673405,3038941953,3486689407,1622062951,403978347,817677117,950059133,4246079218,3278066075,1486738320,1417279718,481875527,2549965225,3933690356,760697757,1452955855,3897451437,1177426808,1702951038,4085348628,2447005172,1084371187,3516436277,3068336338,1073369276,1027665953,3284188590,1230553676,1368340146,2226246512,267243139,2274220762,4070734279,2497715176,2423353163,2504755875],n[7]=[3793104909,3151888380,2817252029,895778965,2005530807,3871412763,237245952,86829237,296341424,3851759377,3974600970,2475086196,709006108,1994621201,2972577594,937287164,3734691505,168608556,3189338153,2225080640,3139713551,3033610191,3025041904,77524477,185966941,1208824168,2344345178,1721625922,3354191921,1066374631,1927223579,1971335949,2483503697,1551748602,2881383779,2856329572,3003241482,48746954,1398218158,2050065058,313056748,4255789917,393167848,1912293076,940740642,3465845460,3091687853,2522601570,2197016661,1727764327,364383054,492521376,1291706479,3264136376,1474851438,1685747964,2575719748,1619776915,1814040067,970743798,1561002147,2925768690,2123093554,1880132620,3151188041,697884420,2550985770,2607674513,2659114323,110200136,1489731079,997519150,1378877361,3527870668,478029773,2766872923,1022481122,431258168,1112503832,897933369,2635587303,669726182,3383752315,918222264,163866573,3246985393,3776823163,114105080,1903216136,761148244,3571337562,1690750982,3166750252,1037045171,1888456500,2010454850,642736655,616092351,365016990,1185228132,4174898510,1043824992,2023083429,2241598885,3863320456,3279669087,3674716684,108438443,2132974366,830746235,606445527,4173263986,2204105912,1844756978,2532684181,4245352700,2969441100,3796921661,1335562986,4061524517,2720232303,2679424040,634407289,885462008,3294724487,3933892248,2094100220,339117932,4048830727,3202280980,1458155303,2689246273,1022871705,2464987878,3714515309,353796843,2822958815,4256850100,4052777845,551748367,618185374,3778635579,4020649912,1904685140,3069366075,2670879810,3407193292,2954511620,4058283405,2219449317,3135758300,1120655984,3447565834,1474845562,3577699062,550456716,3466908712,2043752612,881257467,869518812,2005220179,938474677,3305539448,3850417126,1315485940,3318264702,226533026,965733244,321539988,1136104718,804158748,573969341,3708209826,937399083,3290727049,2901666755,1461057207,4013193437,4066861423,3242773476,2421326174,1581322155,3028952165,786071460,3900391652,3918438532,1485433313,4023619836,3708277595,3678951060,953673138,1467089153,1930354364,1533292819,2492563023,1346121658,1685000834,1965281866,3765933717,4190206607,2052792609,3515332758,690371149,3125873887,2180283551,2903598061,3933952357,436236910,289419410,14314871,1242357089,2904507907,1616633776,2666382180,585885352,3471299210,2699507360,1432659641,277164553,3354103607,770115018,2303809295,3741942315,3177781868,2853364978,2269453327,3774259834,987383833,1290892879,225909803,1741533526,890078084,1496906255,1111072499,916028167,243534141,1252605537,2204162171,531204876,290011180,3916834213,102027703,237315147,209093447,1486785922,220223953,2758195998,4175039106,82940208,3127791296,2569425252,518464269,1353887104,3941492737,2377294467,3935040926]}function ka(d){this.cast5=new G6,this.cast5.setKey(d),this.encrypt=function(e){return this.cast5.encrypt(e)}}ka.blockSize=ka.prototype.blockSize=8;ka.keySize=ka.prototype.keySize=16;var lt=4294967295;function Tt(d,e){return(d<<e|d>>>32-e)&lt}function Yt(d,e){return d[e]|d[e+1]<<8|d[e+2]<<16|d[e+3]<<24}function hd(d,e,t){d.splice(e,4,t&255,t>>>8&255,t>>>16&255,t>>>24&255)}function te(d,e){return d>>>e*8&255}function Q6(){let d=null,e=null,t=-1,i=[],a=[[],[],[],[]];function n(g){d=g;let y,f,h,I,b,F=[],X=[],T=[],x,E=[],D,v,C,M=[[8,1,7,13,6,15,3,2,0,11,5,9,14,12,10,4],[2,8,11,13,15,7,6,14,3,1,9,4,0,10,12,5]],O=[[14,12,11,8,1,2,3,5,15,4,10,6,7,0,9,13],[1,14,2,11,4,12,3,7,6,13,10,5,15,9,0,8]],R=[[11,10,5,14,6,13,9,0,12,8,15,3,2,4,7,1],[4,12,7,5,1,6,9,10,0,14,13,8,2,11,3,15]],w=[[13,7,15,4,1,2,6,14,9,11,3,0,8,5,12,10],[11,9,5,1,12,3,13,14,6,4,7,15,2,0,8,10]],N=[0,8,1,9,2,10,3,11,4,12,5,13,6,14,7,15],A=[0,9,2,11,4,13,6,15,8,1,10,3,12,5,14,7],L=[[],[]],U=[[],[],[],[]];function q(B){return B^B>>2^[0,90,180,238][B&3]}function j(B){return B^B>>1^B>>2^[0,238,180,90][B&3]}function z(B,Q){let K,W,Y;for(K=0;K<8;K++)W=Q>>>24,Q=Q<<8&lt|B>>>24,B=B<<8&lt,Y=W<<1,W&128&&(Y^=333),Q^=W^Y<<16,Y^=W>>>1,W&1&&(Y^=166),Q^=Y<<24|Y<<8;return Q}function H(B,Q){let K=Q>>4,W=Q&15,Y=M[B][K^W],Z=O[B][N[W]^A[K]];return w[B][N[Z]^A[Y]]<<4|R[B][Y^Z]}function G(B,Q){let K=te(B,0),W=te(B,1),Y=te(B,2),Z=te(B,3);switch(x){case 4:K=L[1][K]^te(Q[3],0),W=L[0][W]^te(Q[3],1),Y=L[0][Y]^te(Q[3],2),Z=L[1][Z]^te(Q[3],3);case 3:K=L[1][K]^te(Q[2],0),W=L[1][W]^te(Q[2],1),Y=L[0][Y]^te(Q[2],2),Z=L[0][Z]^te(Q[2],3);case 2:K=L[0][L[0][K]^te(Q[1],0)]^te(Q[0],0),W=L[0][L[1][W]^te(Q[1],1)]^te(Q[0],1),Y=L[1][L[0][Y]^te(Q[1],2)]^te(Q[0],2),Z=L[1][L[1][Z]^te(Q[1],3)]^te(Q[0],3)}return U[0][K]^U[1][W]^U[2][Y]^U[3][Z]}for(d=d.slice(0,32),y=d.length;y!==16&&y!==24&&y!==32;)d[y++]=0;for(y=0;y<d.length;y+=4)T[y>>2]=Yt(d,y);for(y=0;y<256;y++)L[0][y]=H(0,y),L[1][y]=H(1,y);for(y=0;y<256;y++)D=L[1][y],v=q(D),C=j(D),U[0][y]=D+(v<<8)+(C<<16)+(C<<24),U[2][y]=v+(C<<8)+(D<<16)+(C<<24),D=L[0][y],v=q(D),C=j(D),U[1][y]=C+(C<<8)+(v<<16)+(D<<24),U[3][y]=v+(D<<8)+(C<<16)+(v<<24);for(x=T.length/2,y=0;y<x;y++)f=T[y+y],F[y]=f,h=T[y+y+1],X[y]=h,E[x-y-1]=z(f,h);for(y=0;y<40;y+=2)f=16843009*y,h=f+16843009,f=G(f,F),h=Tt(G(h,X),8),i[y]=f+h&lt,i[y+1]=Tt(f+2*h,9);for(y=0;y<256;y++)switch(f=h=I=b=y,x){case 4:f=L[1][f]^te(E[3],0),h=L[0][h]^te(E[3],1),I=L[0][I]^te(E[3],2),b=L[1][b]^te(E[3],3);case 3:f=L[1][f]^te(E[2],0),h=L[1][h]^te(E[2],1),I=L[0][I]^te(E[2],2),b=L[0][b]^te(E[2],3);case 2:a[0][y]=U[0][L[0][L[0][f]^te(E[1],0)]^te(E[0],0)],a[1][y]=U[1][L[0][L[1][h]^te(E[1],1)]^te(E[0],1)],a[2][y]=U[2][L[1][L[0][I]^te(E[1],2)]^te(E[0],2)],a[3][y]=U[3][L[1][L[1][b]^te(E[1],3)]^te(E[0],3)]}}function r(g){return a[0][te(g,0)]^a[1][te(g,1)]^a[2][te(g,2)]^a[3][te(g,3)]}function o(g){return a[0][te(g,3)]^a[1][te(g,0)]^a[2][te(g,1)]^a[3][te(g,2)]}function s(g,y){let f=r(y[0]),h=o(y[1]);y[2]=Tt(y[2]^f+h+i[4*g+8]&lt,31),y[3]=Tt(y[3],1)^f+2*h+i[4*g+9]&lt,f=r(y[2]),h=o(y[3]),y[0]=Tt(y[0]^f+h+i[4*g+10]&lt,31),y[1]=Tt(y[1],1)^f+2*h+i[4*g+11]&lt}function c(g,y){let f=r(y[0]),h=o(y[1]);y[2]=Tt(y[2],1)^f+h+i[4*g+10]&lt,y[3]=Tt(y[3]^f+2*h+i[4*g+11]&lt,31),f=r(y[2]),h=o(y[3]),y[0]=Tt(y[0],1)^f+h+i[4*g+8]&lt,y[1]=Tt(y[1]^f+2*h+i[4*g+9]&lt,31)}function p(){i=[],a=[[],[],[],[]]}function l(g,y){e=g,t=y;let f=[Yt(e,t)^i[0],Yt(e,t+4)^i[1],Yt(e,t+8)^i[2],Yt(e,t+12)^i[3]];for(let h=0;h<8;h++)s(h,f);return hd(e,t,f[2]^i[4]),hd(e,t+4,f[3]^i[5]),hd(e,t+8,f[0]^i[6]),hd(e,t+12,f[1]^i[7]),t+=16,e}function m(g,y){e=g,t=y;let f=[Yt(e,t)^i[4],Yt(e,t+4)^i[5],Yt(e,t+8)^i[6],Yt(e,t+12)^i[7]];for(let h=7;h>=0;h--)c(h,f);hd(e,t,f[2]^i[0]),hd(e,t+4,f[3]^i[1]),hd(e,t+8,f[0]^i[2]),hd(e,t+12,f[1]^i[3]),t+=16}function P(){return e}return{name:"twofish",blocksize:128/8,open:n,close:p,encrypt:l,decrypt:m,finalize:P}}function Ua(d){this.tf=Q6(),this.tf.open(Array.from(d),0),this.encrypt=function(e){return this.tf.encrypt(Array.from(e),0)}}Ua.keySize=Ua.prototype.keySize=32;Ua.blockSize=Ua.prototype.blockSize=16;function Et(){}Et.prototype.BLOCKSIZE=8;Et.prototype.SBOXES=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];Et.prototype.PARRAY=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731];Et.prototype.NN=16;Et.prototype._clean=function(d){return d<0&&(d=(d&2147483647)+2147483648),d};Et.prototype._F=function(d){let e,t=d&255;d>>>=8;let i=d&255;d>>>=8;let a=d&255;d>>>=8;let n=d&255;return e=this.sboxes[0][n]+this.sboxes[1][a],e^=this.sboxes[2][i],e+=this.sboxes[3][t],e};Et.prototype._encryptBlock=function(d){let e=d[0],t=d[1],i;for(i=0;i<this.NN;++i){e^=this.parray[i],t=this._F(e)^t;let a=e;e=t,t=a}e^=this.parray[this.NN+0],t^=this.parray[this.NN+1],d[0]=this._clean(t),d[1]=this._clean(e)};Et.prototype.encryptBlock=function(d){let e,t=[0,0],i=this.BLOCKSIZE/2;for(e=0;e<this.BLOCKSIZE/2;++e)t[0]=t[0]<<8|d[e+0]&255,t[1]=t[1]<<8|d[e+i]&255;this._encryptBlock(t);let a=[];for(e=0;e<this.BLOCKSIZE/2;++e)a[e+0]=t[0]>>>24-8*e&255,a[e+i]=t[1]>>>24-8*e&255;return a};Et.prototype._decryptBlock=function(d){let e=d[0],t=d[1],i;for(i=this.NN+1;i>1;--i){e^=this.parray[i],t=this._F(e)^t;let a=e;e=t,t=a}e^=this.parray[1],t^=this.parray[0],d[0]=this._clean(t),d[1]=this._clean(e)};Et.prototype.init=function(d){let e,t=0;for(this.parray=[],e=0;e<this.NN+2;++e){let a=0;for(let n=0;n<4;++n)a=a<<8|d[t]&255,++t>=d.length&&(t=0);this.parray[e]=this.PARRAY[e]^a}for(this.sboxes=[],e=0;e<4;++e)for(this.sboxes[e]=[],t=0;t<256;++t)this.sboxes[e][t]=this.SBOXES[e][t];let i=[0,0];for(e=0;e<this.NN+2;e+=2)this._encryptBlock(i),this.parray[e+0]=i[0],this.parray[e+1]=i[1];for(e=0;e<4;++e)for(t=0;t<256;t+=2)this._encryptBlock(i),this.sboxes[e][t+0]=i[0],this.sboxes[e][t+1]=i[1]};function qa(d){this.bf=new Et,this.bf.init(d),this.encrypt=function(e){return this.bf.encryptBlock(e)}}qa.keySize=qa.prototype.keySize=16;qa.blockSize=qa.prototype.blockSize=8;var V6=new Map(Object.entries({tripledes:Oa,cast5:ka,twofish:Ua,blowfish:qa})),z6=Object.freeze({__proto__:null,legacyCiphers:V6});function xi(d,e,t,i){d[e]+=t[i],d[e+1]+=t[i+1]+(d[e]<t[i])}function U4(d,e){d[0]+=e,d[1]+=d[0]<e}function Id(d,e,t,i,a,n,r,o){xi(d,t,d,i),xi(d,t,e,r);let s=d[n]^d[t],c=d[n+1]^d[t+1];d[n]=c,d[n+1]=s,xi(d,a,d,n),s=d[i]^d[a],c=d[i+1]^d[a+1],d[i]=s>>>24^c<<8,d[i+1]=c>>>24^s<<8,xi(d,t,d,i),xi(d,t,e,o),s=d[n]^d[t],c=d[n+1]^d[t+1],d[n]=s>>>16^c<<16,d[n+1]=c>>>16^s<<16,xi(d,a,d,n),s=d[i]^d[a],c=d[i+1]^d[a+1],d[i]=c>>>31^s<<1,d[i+1]=s>>>31^c<<1}var V5=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),Be=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3].map(d=>d*2));function q4(d,e){let t=new Uint32Array(32),i=new Uint32Array(d.b.buffer,d.b.byteOffset,32);for(let n=0;n<16;n++)t[n]=d.h[n],t[n+16]=V5[n];t[24]^=d.t0[0],t[25]^=d.t0[1];let a=e?4294967295:0;t[28]^=a,t[29]^=a;for(let n=0;n<12;n++){let r=n<<4;Id(t,i,0,8,16,24,Be[r+0],Be[r+1]),Id(t,i,2,10,18,26,Be[r+2],Be[r+3]),Id(t,i,4,12,20,28,Be[r+4],Be[r+5]),Id(t,i,6,14,22,30,Be[r+6],Be[r+7]),Id(t,i,0,10,20,30,Be[r+8],Be[r+9]),Id(t,i,2,12,22,24,Be[r+10],Be[r+11]),Id(t,i,4,14,16,26,Be[r+12],Be[r+13]),Id(t,i,6,8,18,28,Be[r+14],Be[r+15])}for(let n=0;n<16;n++)d.h[n]^=t[n]^t[n+16]}var Fs=class{constructor(e,t,i,a){let n=new Uint8Array(64);this.S={b:new Uint8Array(fa),h:new Uint32Array(Es/4),t0:new Uint32Array(2),c:0,outlen:e},n[0]=e,t&&(n[1]=t.length),n[2]=1,n[3]=1,i&&n.set(i,32),a&&n.set(a,48);let r=new Uint32Array(n.buffer,n.byteOffset,n.length/Uint32Array.BYTES_PER_ELEMENT);for(let o=0;o<16;o++)this.S.h[o]=V5[o]^r[o];if(t){let o=new Uint8Array(fa);o.set(t),this.update(o)}}update(e){if(!(e instanceof Uint8Array))throw new Error("Input must be Uint8Array or Buffer");let t=0;for(;t<e.length;){this.S.c===fa&&(U4(this.S.t0,this.S.c),q4(this.S,!1),this.S.c=0);let i=fa-this.S.c;this.S.b.set(e.subarray(t,t+i),this.S.c);let a=Math.min(i,e.length-t);this.S.c+=a,t+=a}return this}digest(e){U4(this.S.t0,this.S.c),this.S.b.fill(0,this.S.c),this.S.c=fa,q4(this.S,!0);let t=e||new Uint8Array(this.S.outlen);for(let i=0;i<this.S.outlen;i++)t[i]=this.S.h[i>>2]>>8*(i&3);return this.S.h=null,t.buffer}};function Bn(d,e,t,i){if(d>Es)throw new Error(`outlen must be at most ${Es} (given: ${d})`);return new Fs(d,e,t,i)}var Es=64,fa=128,nc=2,z5=19,H6=4294967295,W6=4,_6=4294967295,K6=8,Y6=4294967295,J6=8,$6=4294967295,Z6=4294967295,eD=32,Jt=1024,tD=64,dD=new Uint8Array(new Uint16Array([43981]).buffer)[0]===205;function Ye(d,e,t){return d[t+0]=e,d[t+1]=e>>8,d[t+2]=e>>16,d[t+3]=e>>24,d}function Wd(d,e,t){if(e>Number.MAX_SAFE_INTEGER)throw new Error("LE64: large numbers unsupported");let i=e;for(let a=t;a<t+7;a++)d[a]=i,i=(i-d[a])/256;return d}function Oo(d,e,t){let i=new Uint8Array(64),a=new Uint8Array(4+e.length);if(Ye(a,d,0),a.set(e,4),d<=64)return Bn(d).update(a).digest(t),t;let n=Math.ceil(d/32)-2;for(let o=0;o<n;o++)Bn(64).update(o===0?a:i).digest(i),t.set(i.subarray(0,32),o*32);let r=new Uint8Array(Bn(d-32*n).update(i).digest());return t.set(r,n*32),t}function B4(d,e,t,i){return d.fn.XOR(e.byteOffset,t.byteOffset,i.byteOffset),e}function iD(d,e,t,i){return d.fn.G(e.byteOffset,t.byteOffset,i.byteOffset,d.refs.gZ.byteOffset),i}function aD(d,e,t,i){return d.fn.G2(e.byteOffset,t.byteOffset,i.byteOffset,d.refs.gZ.byteOffset),i}function*nD(d,e,t,i,a,n,r,o){d.refs.prngTmp.fill(0);let s=d.refs.prngTmp.subarray(0,6*8);Wd(s,e,0),Wd(s,t,8),Wd(s,i,16),Wd(s,a,24),Wd(s,n,32),Wd(s,nc,40);for(let c=1;c<=r;c++){Wd(d.refs.prngTmp,c,s.length);let p=aD(d,d.refs.ZERO1024,d.refs.prngTmp,d.refs.prngR);for(let l=c===1?o*8:0;l<p.length;l+=8)yield p.subarray(l,l+8)}return[]}function rD({type:d,version:e,tagLength:t,password:i,salt:a,ad:n,secret:r,parallelism:o,memorySize:s,passes:c}){let p=(l,m,P,g)=>{if(m<P||m>g)throw new Error(`${l} size should be between ${P} and ${g} bytes`)};if(d!==nc||e!==z5)throw new Error("Unsupported type or version");return p("password",i,J6,Y6),p("salt",a,K6,_6),p("tag",t,W6,H6),p("memory",s,8*o,$6),n&&p("associated data",n,0,Z6),r&&p("secret",r,0,eD),{type:d,version:e,tagLength:t,password:i,salt:a,ad:n,secret:r,lanes:o,memorySize:s,passes:c}}var H5=1024,oD=64*H5;function sD(d,{memory:e,instance:t}){if(!dD)throw new Error("BigEndian system not supported");let i=rD({type:nc,version:z5,...d}),{G:a,G2:n,xor:r,getLZ:o}=t.exports,s={},c={};c.G=a,c.G2=n,c.XOR=r;let p=4*i.lanes*Math.floor(i.memorySize/(4*i.lanes)),l=p*Jt+10*H5;if(e.buffer.byteLength<l){let v=Math.ceil((l-e.buffer.byteLength)/oD);e.grow(v)}let m=0;s.gZ=new Uint8Array(e.buffer,m,Jt),m+=s.gZ.length,s.prngR=new Uint8Array(e.buffer,m,Jt),m+=s.prngR.length,s.prngTmp=new Uint8Array(e.buffer,m,Jt),m+=s.prngTmp.length,s.ZERO1024=new Uint8Array(e.buffer,m,1024),m+=s.ZERO1024.length;let P=new Uint32Array(e.buffer,m,2);m+=P.length*Uint32Array.BYTES_PER_ELEMENT;let g={fn:c,refs:s},y=new Uint8Array(e.buffer,m,Jt);m+=y.length;let f=new Uint8Array(e.buffer,m,i.memorySize*Jt),h=new Uint8Array(e.buffer,0,m),I=cD(i),b=p/i.lanes,F=new Array(i.lanes).fill(null).map(()=>new Array(b)),X=(v,C)=>(F[v][C]=f.subarray(v*b*1024+C*1024,v*b*1024+C*1024+Jt),F[v][C]);for(let v=0;v<i.lanes;v++){let C=new Uint8Array(I.length+8);C.set(I),Ye(C,0,I.length),Ye(C,v,I.length+4),Oo(Jt,C,X(v,0)),Ye(C,1,I.length),Oo(Jt,C,X(v,1))}let T=4,x=b/T;for(let v=0;v<i.passes;v++)for(let C=0;C<T;C++){let M=v===0&&C<=1;for(let O=0;O<i.lanes;O++){let R=C===0&&v===0?2:0,w=M?nD(g,v,O,C,p,i.passes,x,R):null;for(R;R<x;R++){let N=C*x+R,A=N>0?F[O][N-1]:F[O][b-1],L=M?w.next().value:A;o(P.byteOffset,L.byteOffset,O,i.lanes,v,C,R,T,x);let U=P[0],q=P[1];v===0&&X(O,N),iD(g,A,F[U][q],v>0?y:F[O][N]),v>0&&B4(g,F[O][N],y,F[O][N])}}}let E=F[0][b-1];for(let v=1;v<i.lanes;v++)B4(g,E,E,F[v][b-1]);let D=Oo(i.tagLength,E,new Uint8Array(i.tagLength));return h.fill(0),e.grow(0),D}function cD(d){let e=Bn(tD),t=new Uint8Array(4),i=new Uint8Array(24);Ye(i,d.lanes,0),Ye(i,d.tagLength,4),Ye(i,d.memorySize,8),Ye(i,d.passes,12),Ye(i,d.version,16),Ye(i,d.type,20);let a=[i];d.password?(a.push(Ye(new Uint8Array(4),d.password.length,0)),a.push(d.password)):a.push(t),d.salt?(a.push(Ye(new Uint8Array(4),d.salt.length,0)),a.push(d.salt)):a.push(t),d.secret?(a.push(Ye(new Uint8Array(4),d.secret.length,0)),a.push(d.secret)):a.push(t),d.ad?(a.push(Ye(new Uint8Array(4),d.ad.length,0)),a.push(d.ad)):a.push(t),e.update(pD(a));let n=e.digest();return new Uint8Array(n)}function pD(d){if(d.length===1)return d[0];let e=0;for(let a=0;a<d.length;a++){if(!(d[a]instanceof Uint8Array))throw new Error("concatArrays: Data must be in the form of a Uint8Array");e+=d[a].length}let t=new Uint8Array(e),i=0;return d.forEach(a=>{t.set(a,i),i+=a.length}),t}var Nn;async function uD(d,e,t){let i={env:{memory:d}};if(Nn===void 0)try{let n=await e(i);return Nn=!0,n}catch{Nn=!1}return(Nn?e:t)(i)}async function lD(d,e){let t=new WebAssembly.Memory({initial:1040,maximum:65536}),i=await uD(t,d,e);return n=>sD(n,{instance:i.instance,memory:t})}function W5(d,e,t,i){function a(c,p,l){var m=WebAssembly.instantiate,P=WebAssembly.compile;return p?m(c,p):P(c)}var n=null,r=je.atob(t),o=r.length;n=new Uint8Array(new ArrayBuffer(o));for(var s=0;s<o;s++)n[s]=r.charCodeAt(s);return a(n,i)}function mD(d){return W5(0,null,"AGFzbQEAAAABKwdgBH9/f38AYAABf2AAAGADf39/AGAJf39/f39/f39/AX9gAX8AYAF/AX8CEwEDZW52Bm1lbW9yeQIBkAiAgAQDCgkCAwAABAEFBgEEBQFwAQICBgkBfwFBkIjAAgsHfQoDeG9yAAEBRwACAkcyAAMFZ2V0TFoABBlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALX2luaXRpYWxpemUAABBfX2Vycm5vX2xvY2F0aW9uAAgJc3RhY2tTYXZlAAUMc3RhY2tSZXN0b3JlAAYKc3RhY2tBbGxvYwAHCQcBAEEBCwEACs0gCQMAAQtYAQJ/A0AgACAEQQR0IgNqIAIgA2r9AAQAIAEgA2r9AAQA/VH9CwQAIAAgA0EQciIDaiACIANq/QAEACABIANq/QAEAP1R/QsEACAEQQJqIgRBwABHDQALC7ceAgt7A38DQCADIBFBBHQiD2ogASAPav0ABAAgACAPav0ABAD9USIF/QsEACACIA9qIAX9CwQAIAMgD0EQciIPaiABIA9q/QAEACAAIA9q/QAEAP1RIgX9CwQAIAIgD2ogBf0LBAAgEUECaiIRQcAARw0ACwNAIAMgEEEHdGoiAEEQaiAA/QAEcCAA/QAEMCIFIAD9AAQQIgT9zgEgBSAF/Q0AAQIDCAkKCwABAgMICQoLIAQgBP0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgT9USIJQSD9ywEgCUEg/c0B/VAiCSAA/QAEUCIG/c4BIAkgCf0NAAECAwgJCgsAAQIDCAkKCyAGIAb9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIGIAX9USIFQSj9ywEgBUEY/c0B/VAiCCAE/c4BIAggCP0NAAECAwgJCgsAAQIDCAkKCyAEIAT9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIKIAogCf1RIgVBMP3LASAFQRD9zQH9UCIFIAb9zgEgBSAF/Q0AAQIDCAkKCwABAgMICQoLIAYgBv0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgkgCP1RIgRBAf3LASAEQT/9zQH9UCIMIAD9AARgIAD9AAQgIgQgAP0ABAAiBv3OASAEIAT9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBv1RIghBIP3LASAIQSD9zQH9UCIIIABBQGsiAf0ABAAiB/3OASAIIAj9DQABAgMICQoLAAECAwgJCgsgByAH/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiByAE/VEiBEEo/csBIARBGP3NAf1QIgsgBv3OASALIAv9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBiAI/VEiBEEw/csBIARBEP3NAf1QIgQgB/3OASAEIAT9DQABAgMICQoLAAECAwgJCgsgByAH/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiCCAL/VEiB0EB/csBIAdBP/3NAf1QIg0gDf0NAAECAwQFBgcQERITFBUWF/0NCAkKCwwNDg8YGRobHB0eHyIH/c4BIAcgB/0NAAECAwgJCgsAAQIDCAkKCyAKIAr9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIKIAQgBSAF/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4f/VEiC0Eg/csBIAtBIP3NAf1QIgsgCP3OASALIAv9DQABAgMICQoLAAECAwgJCgsgCCAI/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiCCAH/VEiB0Eo/csBIAdBGP3NAf1QIgcgCv3OASAHIAf9DQABAgMICQoLAAECAwgJCgsgCiAK/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiDv0LBAAgACAGIA0gDCAM/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4fIgr9zgEgCiAK/Q0AAQIDCAkKCwABAgMICQoLIAYgBv0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgYgBSAEIAT9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9USIFQSD9ywEgBUEg/c0B/VAiBSAJ/c4BIAUgBf0NAAECAwgJCgsAAQIDCAkKCyAJIAn9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIJIAr9USIEQSj9ywEgBEEY/c0B/VAiCiAG/c4BIAogCv0NAAECAwgJCgsAAQIDCAkKCyAGIAb9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIE/QsEACAAIAQgBf1RIgVBMP3LASAFQRD9zQH9UCIFIA4gC/1RIgRBMP3LASAEQRD9zQH9UCIEIAT9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9CwRgIAAgBCAFIAX9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9CwRwIAEgBCAI/c4BIAQgBP0NAAECAwgJCgsAAQIDCAkKCyAIIAj9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIE/QsEACAAIAUgCf3OASAFIAX9DQABAgMICQoLAAECAwgJCgsgCSAJ/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiCf0LBFAgACAEIAf9USIFQQH9ywEgBUE//c0B/VAiBSAJIAr9USIEQQH9ywEgBEE//c0B/VAiBCAE/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4f/QsEICAAIAQgBSAF/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4f/QsEMCAQQQFqIhBBCEcNAAtBACEQA0AgAyAQQQR0aiIAQYABaiAA/QAEgAcgAP0ABIADIgUgAP0ABIABIgT9zgEgBSAF/Q0AAQIDCAkKCwABAgMICQoLIAQgBP0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgT9USIJQSD9ywEgCUEg/c0B/VAiCSAA/QAEgAUiBv3OASAJIAn9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBiAF/VEiBUEo/csBIAVBGP3NAf1QIgggBP3OASAIIAj9DQABAgMICQoLAAECAwgJCgsgBCAE/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiCiAKIAn9USIFQTD9ywEgBUEQ/c0B/VAiBSAG/c4BIAUgBf0NAAECAwgJCgsAAQIDCAkKCyAGIAb9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIJIAj9USIEQQH9ywEgBEE//c0B/VAiDCAA/QAEgAYgAP0ABIACIgQgAP0ABAAiBv3OASAEIAT9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBv1RIghBIP3LASAIQSD9zQH9UCIIIAD9AASABCIH/c4BIAggCP0NAAECAwgJCgsAAQIDCAkKCyAHIAf9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIHIAT9USIEQSj9ywEgBEEY/c0B/VAiCyAG/c4BIAsgC/0NAAECAwgJCgsAAQIDCAkKCyAGIAb9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIGIAj9USIEQTD9ywEgBEEQ/c0B/VAiBCAH/c4BIAQgBP0NAAECAwgJCgsAAQIDCAkKCyAHIAf9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIIIAv9USIHQQH9ywEgB0E//c0B/VAiDSAN/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4fIgf9zgEgByAH/Q0AAQIDCAkKCwABAgMICQoLIAogCv0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgogBCAFIAX9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9USILQSD9ywEgC0Eg/c0B/VAiCyAI/c4BIAsgC/0NAAECAwgJCgsAAQIDCAkKCyAIIAj9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIIIAf9USIHQSj9ywEgB0EY/c0B/VAiByAK/c4BIAcgB/0NAAECAwgJCgsAAQIDCAkKCyAKIAr9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIO/QsEACAAIAYgDSAMIAz9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh8iCv3OASAKIAr9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBiAFIAQgBP0NAAECAwQFBgcQERITFBUWF/0NCAkKCwwNDg8YGRobHB0eH/1RIgVBIP3LASAFQSD9zQH9UCIFIAn9zgEgBSAF/Q0AAQIDCAkKCwABAgMICQoLIAkgCf0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgkgCv1RIgRBKP3LASAEQRj9zQH9UCIKIAb9zgEgCiAK/Q0AAQIDCAkKCwABAgMICQoLIAYgBv0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgT9CwQAIAAgBCAF/VEiBUEw/csBIAVBEP3NAf1QIgUgDiAL/VEiBEEw/csBIARBEP3NAf1QIgQgBP0NAAECAwQFBgcQERITFBUWF/0NCAkKCwwNDg8YGRobHB0eH/0LBIAGIAAgBCAFIAX9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9CwSAByAAIAQgCP3OASAEIAT9DQABAgMICQoLAAECAwgJCgsgCCAI/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBP0LBIAEIAAgBSAJ/c4BIAUgBf0NAAECAwgJCgsAAQIDCAkKCyAJIAn9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIJ/QsEgAUgACAEIAf9USIFQQH9ywEgBUE//c0B/VAiBSAJIAr9USIEQQH9ywEgBEE//c0B/VAiBCAE/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4f/QsEgAIgACAEIAUgBf0NAAECAwQFBgcQERITFBUWF/0NCAkKCwwNDg8YGRobHB0eH/0LBIADIBBBAWoiEEEIRw0AC0EAIRADQCACIBBBBHQiAGoiASAAIANq/QAEACAB/QAEAP1R/QsEACACIABBEHIiAWoiDyABIANq/QAEACAP/QAEAP1R/QsEACACIABBIHIiAWoiDyABIANq/QAEACAP/QAEAP1R/QsEACACIABBMHIiAGoiASAAIANq/QAEACAB/QAEAP1R/QsEACAQQQRqIhBBwABHDQALCxYAIAAgASACIAMQAiAAIAIgAiADEAILewIBfwF+IAIhCSABNQIAIQogBCAFcgRAIAEoAgQgA3AhCQsgACAJNgIAIAAgB0EBayAFIAQbIAhsIAZBAWtBAEF/IAYbIAIgCUYbaiIBIAVBAWogCGxBACAEG2ogAa0gCiAKfkIgiH5CIIinQX9zaiAHIAhscDYCBCAACwQAIwALBgAgACQACxAAIwAgAGtBcHEiACQAIAALBQBBgAgL",d)}function yD(d){return W5(0,null,"AGFzbQEAAAABPwhgBH9/f38AYAABf2AAAGADf39/AGARf39/f39/f39/f39/f39/f38AYAl/f39/f39/f38Bf2ABfwBgAX8BfwITAQNlbnYGbWVtb3J5AgGQCICABAMLCgIDBAAABQEGBwEEBQFwAQICBgkBfwFBkIjAAgsHfQoDeG9yAAEBRwADAkcyAAQFZ2V0TFoABRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALX2luaXRpYWxpemUAABBfX2Vycm5vX2xvY2F0aW9uAAkJc3RhY2tTYXZlAAYMc3RhY2tSZXN0b3JlAAcKc3RhY2tBbGxvYwAICQcBAEEBCwEACssaCgMAAQtQAQJ/A0AgACAEQQN0IgNqIAIgA2opAwAgASADaikDAIU3AwAgACADQQhyIgNqIAIgA2opAwAgASADaikDAIU3AwAgBEECaiIEQYABRw0ACwveDwICfgF/IAAgAUEDdGoiEyATKQMAIhEgACAFQQN0aiIBKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAAIA1BA3RqIgUgESAFKQMAhUIgiSIRNwMAIAAgCUEDdGoiCSARIAkpAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAEgESABKQMAhUIoiSIRNwMAIBMgESATKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAFIBEgBSkDAIVCMIkiETcDACAJIBEgCSkDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgASARIAEpAwCFQgGJNwMAIAAgAkEDdGoiDSANKQMAIhEgACAGQQN0aiICKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAAIA5BA3RqIgYgESAGKQMAhUIgiSIRNwMAIAAgCkEDdGoiCiARIAopAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAIgESACKQMAhUIoiSIRNwMAIA0gESANKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAGIBEgBikDAIVCMIkiETcDACAKIBEgCikDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgAiARIAIpAwCFQgGJNwMAIAAgA0EDdGoiDiAOKQMAIhEgACAHQQN0aiIDKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAAIA9BA3RqIgcgESAHKQMAhUIgiSIRNwMAIAAgC0EDdGoiCyARIAspAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAMgESADKQMAhUIoiSIRNwMAIA4gESAOKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAHIBEgBykDAIVCMIkiETcDACALIBEgCykDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgAyARIAMpAwCFQgGJNwMAIAAgBEEDdGoiDyAPKQMAIhEgACAIQQN0aiIEKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAAIBBBA3RqIgggESAIKQMAhUIgiSIRNwMAIAAgDEEDdGoiACARIAApAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAQgESAEKQMAhUIoiSIRNwMAIA8gESAPKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAIIBEgCCkDAIVCMIkiETcDACAAIBEgACkDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgBCARIAQpAwCFQgGJNwMAIBMgEykDACIRIAIpAwAiEnwgEUIBhkL+////H4MgEkL/////D4N+fCIRNwMAIAggESAIKQMAhUIgiSIRNwMAIAsgESALKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACACIBEgAikDAIVCKIkiETcDACATIBEgEykDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgCCARIAgpAwCFQjCJIhE3AwAgCyARIAspAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAIgESACKQMAhUIBiTcDACANIA0pAwAiESADKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAFIBEgBSkDAIVCIIkiETcDACAAIBEgACkDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgAyARIAMpAwCFQiiJIhE3AwAgDSARIA0pAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAUgESAFKQMAhUIwiSIRNwMAIAAgESAAKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACADIBEgAykDAIVCAYk3AwAgDiAOKQMAIhEgBCkDACISfCARQgGGQv7///8fgyASQv////8Pg358IhE3AwAgBiARIAYpAwCFQiCJIhE3AwAgCSARIAkpAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAQgESAEKQMAhUIoiSIRNwMAIA4gESAOKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAGIBEgBikDAIVCMIkiETcDACAJIBEgCSkDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgBCARIAQpAwCFQgGJNwMAIA8gDykDACIRIAEpAwAiEnwgEUIBhkL+////H4MgEkL/////D4N+fCIRNwMAIAcgESAHKQMAhUIgiSIRNwMAIAogESAKKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACABIBEgASkDAIVCKIkiETcDACAPIBEgDykDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgByARIAcpAwCFQjCJIhE3AwAgCiARIAopAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAEgESABKQMAhUIBiTcDAAvdCAEPfwNAIAIgBUEDdCIGaiABIAZqKQMAIAAgBmopAwCFNwMAIAIgBkEIciIGaiABIAZqKQMAIAAgBmopAwCFNwMAIAVBAmoiBUGAAUcNAAsDQCADIARBA3QiAGogACACaikDADcDACADIARBAXIiAEEDdCIBaiABIAJqKQMANwMAIAMgBEECciIBQQN0IgVqIAIgBWopAwA3AwAgAyAEQQNyIgVBA3QiBmogAiAGaikDADcDACADIARBBHIiBkEDdCIHaiACIAdqKQMANwMAIAMgBEEFciIHQQN0IghqIAIgCGopAwA3AwAgAyAEQQZyIghBA3QiCWogAiAJaikDADcDACADIARBB3IiCUEDdCIKaiACIApqKQMANwMAIAMgBEEIciIKQQN0IgtqIAIgC2opAwA3AwAgAyAEQQlyIgtBA3QiDGogAiAMaikDADcDACADIARBCnIiDEEDdCINaiACIA1qKQMANwMAIAMgBEELciINQQN0Ig5qIAIgDmopAwA3AwAgAyAEQQxyIg5BA3QiD2ogAiAPaikDADcDACADIARBDXIiD0EDdCIQaiACIBBqKQMANwMAIAMgBEEOciIQQQN0IhFqIAIgEWopAwA3AwAgAyAEQQ9yIhFBA3QiEmogAiASaikDADcDACADIARB//8DcSAAQf//A3EgAUH//wNxIAVB//8DcSAGQf//A3EgB0H//wNxIAhB//8DcSAJQf//A3EgCkH//wNxIAtB//8DcSAMQf//A3EgDUH//wNxIA5B//8DcSAPQf//A3EgEEH//wNxIBFB//8DcRACIARB8ABJIQAgBEEQaiEEIAANAAtBACEBIANBAEEBQRBBEUEgQSFBMEExQcAAQcEAQdAAQdEAQeAAQeEAQfAAQfEAEAIgA0ECQQNBEkETQSJBI0EyQTNBwgBBwwBB0gBB0wBB4gBB4wBB8gBB8wAQAiADQQRBBUEUQRVBJEElQTRBNUHEAEHFAEHUAEHVAEHkAEHlAEH0AEH1ABACIANBBkEHQRZBF0EmQSdBNkE3QcYAQccAQdYAQdcAQeYAQecAQfYAQfcAEAIgA0EIQQlBGEEZQShBKUE4QTlByABByQBB2ABB2QBB6ABB6QBB+ABB+QAQAiADQQpBC0EaQRtBKkErQTpBO0HKAEHLAEHaAEHbAEHqAEHrAEH6AEH7ABACIANBDEENQRxBHUEsQS1BPEE9QcwAQc0AQdwAQd0AQewAQe0AQfwAQf0AEAIgA0EOQQ9BHkEfQS5BL0E+QT9BzgBBzwBB3gBB3wBB7gBB7wBB/gBB/wAQAgNAIAIgAUEDdCIAaiIEIAAgA2opAwAgBCkDAIU3AwAgAiAAQQhyIgRqIgUgAyAEaikDACAFKQMAhTcDACACIABBEHIiBGoiBSADIARqKQMAIAUpAwCFNwMAIAIgAEEYciIAaiIEIAAgA2opAwAgBCkDAIU3AwAgAUEEaiIBQYABRw0ACwsWACAAIAEgAiADEAMgACACIAIgAxADC3sCAX8BfiACIQkgATUCACEKIAQgBXIEQCABKAIEIANwIQkLIAAgCTYCACAAIAdBAWsgBSAEGyAIbCAGQQFrQQBBfyAGGyACIAlGG2oiASAFQQFqIAhsQQAgBBtqIAGtIAogCn5CIIh+QiCIp0F/c2ogByAIbHA2AgQgAAsEACMACwYAIAAkAAsQACMAIABrQXBxIgAkACAACwUAQYAICw==",d)}var SD=async()=>lD(d=>mD(d),d=>yD(d)),PD=Object.freeze({__proto__:null,default:SD}),j4=[0,1,3,7,15,31,63,127,255],Ka=function(d){this.stream=d,this.bitOffset=0,this.curByte=0,this.hasByte=!1};Ka.prototype._ensureByte=function(){this.hasByte||(this.curByte=this.stream.readByte(),this.hasByte=!0)};Ka.prototype.read=function(d){for(var e=0;d>0;){this._ensureByte();var t=8-this.bitOffset;if(d>=t)e<<=t,e|=j4[t]&this.curByte,this.hasByte=!1,this.bitOffset=0,d-=t;else{e<<=d;var i=t-d;e|=(this.curByte&j4[d]<<i)>>i,this.bitOffset+=d,d=0}}return e};Ka.prototype.seek=function(d){var e=d%8,t=(d-e)/8;this.bitOffset=e,this.stream.seek(t),this.hasByte=!1};Ka.prototype.pi=function(){var d=new Uint8Array(6),e;for(e=0;e<d.length;e++)d[e]=this.read(8);return fD(d)};function fD(d){return Array.prototype.map.call(d,e=>("00"+e.toString(16)).slice(-2)).join("")}var gD=Ka,ui=function(){};ui.prototype.readByte=function(){throw new Error("abstract method readByte() not implemented")};ui.prototype.read=function(d,e,t){for(var i=0;i<t;){var a=this.readByte();if(a<0)return i===0?-1:i;d[e++]=a,i++}return i};ui.prototype.seek=function(d){throw new Error("abstract method seek() not implemented")};ui.prototype.writeByte=function(d){throw new Error("abstract method readByte() not implemented")};ui.prototype.write=function(d,e,t){var i;for(i=0;i<t;i++)this.writeByte(d[e++]);return t};ui.prototype.flush=function(){};var hD=ui,ID=function(){var d=new Uint32Array([0,79764919,159529838,222504665,319059676,398814059,445009330,507990021,638119352,583659535,797628118,726387553,890018660,835552979,1015980042,944750013,1276238704,1221641927,1167319070,1095957929,1595256236,1540665371,1452775106,1381403509,1780037320,1859660671,1671105958,1733955601,2031960084,2111593891,1889500026,1952343757,2552477408,2632100695,2443283854,2506133561,2334638140,2414271883,2191915858,2254759653,3190512472,3135915759,3081330742,3009969537,2905550212,2850959411,2762807018,2691435357,3560074640,3505614887,3719321342,3648080713,3342211916,3287746299,3467911202,3396681109,4063920168,4143685023,4223187782,4286162673,3779000052,3858754371,3904687514,3967668269,881225847,809987520,1023691545,969234094,662832811,591600412,771767749,717299826,311336399,374308984,453813921,533576470,25881363,88864420,134795389,214552010,2023205639,2086057648,1897238633,1976864222,1804852699,1867694188,1645340341,1724971778,1587496639,1516133128,1461550545,1406951526,1302016099,1230646740,1142491917,1087903418,2896545431,2825181984,2770861561,2716262478,3215044683,3143675388,3055782693,3001194130,2326604591,2389456536,2200899649,2280525302,2578013683,2640855108,2418763421,2498394922,3769900519,3832873040,3912640137,3992402750,4088425275,4151408268,4197601365,4277358050,3334271071,3263032808,3476998961,3422541446,3585640067,3514407732,3694837229,3640369242,1762451694,1842216281,1619975040,1682949687,2047383090,2127137669,1938468188,2001449195,1325665622,1271206113,1183200824,1111960463,1543535498,1489069629,1434599652,1363369299,622672798,568075817,748617968,677256519,907627842,853037301,1067152940,995781531,51762726,131386257,177728840,240578815,269590778,349224269,429104020,491947555,4046411278,4126034873,4172115296,4234965207,3794477266,3874110821,3953728444,4016571915,3609705398,3555108353,3735388376,3664026991,3290680682,3236090077,3449943556,3378572211,3174993278,3120533705,3032266256,2961025959,2923101090,2868635157,2813903052,2742672763,2604032198,2683796849,2461293480,2524268063,2284983834,2364738477,2175806836,2238787779,1569362073,1498123566,1409854455,1355396672,1317987909,1246755826,1192025387,1137557660,2072149281,2135122070,1912620623,1992383480,1753615357,1816598090,1627664531,1707420964,295390185,358241886,404320391,483945776,43990325,106832002,186451547,266083308,932423249,861060070,1041341759,986742920,613929101,542559546,756411363,701822548,3316196985,3244833742,3425377559,3370778784,3601682597,3530312978,3744426955,3689838204,3819031489,3881883254,3928223919,4007849240,4037393693,4100235434,4180117107,4259748804,2310601993,2373574846,2151335527,2231098320,2596047829,2659030626,2470359227,2550115596,2947551409,2876312838,2788305887,2733848168,3165939309,3094707162,3040238851,2985771188]),e=function(){var t=4294967295;this.getCRC=function(){return~t>>>0},this.updateCRC=function(i){t=t<<8^d[(t>>>24^i)&255]},this.updateCRCRun=function(i,a){for(;a-- >0;)t=t<<8^d[(t>>>24^i)&255]}};return e}(),bD=gD,Ba=hD,_5=ID,An=20,G4=258,Q4=0,FD=1,ED=2,CD=6,vD=50,TD="314159265359",XD="177245385090",V4=function(d,e){var t=d[e],i;for(i=e;i>0;i--)d[i]=d[i-1];return d[0]=t,t},Se={OK:0,LAST_BLOCK:-1,NOT_BZIP_DATA:-2,UNEXPECTED_INPUT_EOF:-3,UNEXPECTED_OUTPUT_EOF:-4,DATA_ERROR:-5,OUT_OF_MEMORY:-6,OBSOLETE_INPUT:-7,END_OF_BLOCK:-8},Ld={};Ld[Se.LAST_BLOCK]="Bad file checksum";Ld[Se.NOT_BZIP_DATA]="Not bzip data";Ld[Se.UNEXPECTED_INPUT_EOF]="Unexpected input EOF";Ld[Se.UNEXPECTED_OUTPUT_EOF]="Unexpected output EOF";Ld[Se.DATA_ERROR]="Data error";Ld[Se.OUT_OF_MEMORY]="Out of memory";Ld[Se.OBSOLETE_INPUT]="Obsolete (pre 0.9.5) bzip format not supported.";var Oe=function(d,e){var t=Ld[d]||"unknown error";e&&(t+=": "+e);var i=new TypeError(t);throw i.errorCode=d,i},Od=function(d,e){this.writePos=this.writeCurrent=this.writeCount=0,this._start_bunzip(d,e)};Od.prototype._init_block=function(){var d=this._get_next_block();return d?(this.blockCRC=new _5,!0):(this.writeCount=-1,!1)};Od.prototype._start_bunzip=function(d,e){var t=new Uint8Array(4);(d.read(t,0,4)!==4||String.fromCharCode(t[0],t[1],t[2])!=="BZh")&&Oe(Se.NOT_BZIP_DATA,"bad magic");var i=t[3]-48;(i<1||i>9)&&Oe(Se.NOT_BZIP_DATA,"level out of range"),this.reader=new bD(d),this.dbufSize=1e5*i,this.nextoutput=0,this.outputStream=e,this.streamCRC=0};Od.prototype._get_next_block=function(){var d,e,t,i=this.reader,a=i.pi();if(a===XD)return!1;a!==TD&&Oe(Se.NOT_BZIP_DATA),this.targetBlockCRC=i.read(32)>>>0,this.streamCRC=(this.targetBlockCRC^(this.streamCRC<<1|this.streamCRC>>>31))>>>0,i.read(1)&&Oe(Se.OBSOLETE_INPUT);var n=i.read(24);n>this.dbufSize&&Oe(Se.DATA_ERROR,"initial position out of bounds");var r=i.read(16),o=new Uint8Array(256),s=0;for(d=0;d<16;d++)if(r&1<<15-d){var c=d*16;for(t=i.read(16),e=0;e<16;e++)t&1<<15-e&&(o[s++]=c+e)}var p=i.read(3);(p<ED||p>CD)&&Oe(Se.DATA_ERROR);var l=i.read(15);l===0&&Oe(Se.DATA_ERROR);var m=new Uint8Array(256);for(d=0;d<p;d++)m[d]=d;var P=new Uint8Array(l);for(d=0;d<l;d++){for(e=0;i.read(1);e++)e>=p&&Oe(Se.DATA_ERROR);P[d]=V4(m,e)}var g=s+2,y=[],f;for(e=0;e<p;e++){var h=new Uint8Array(g),I=new Uint16Array(An+1);for(r=i.read(5),d=0;d<g;d++){for(;(r<1||r>An)&&Oe(Se.DATA_ERROR),!!i.read(1);)i.read(1)?r--:r++;h[d]=r}var b,F;for(b=F=h[0],d=1;d<g;d++)h[d]>F?F=h[d]:h[d]<b&&(b=h[d]);f={},y.push(f),f.permute=new Uint16Array(G4),f.limit=new Uint32Array(An+2),f.base=new Uint32Array(An+1),f.minLen=b,f.maxLen=F;var X=0;for(d=b;d<=F;d++)for(I[d]=f.limit[d]=0,r=0;r<g;r++)h[r]===d&&(f.permute[X++]=r);for(d=0;d<g;d++)I[h[d]]++;for(X=r=0,d=b;d<F;d++)X+=I[d],f.limit[d]=X-1,X<<=1,r+=I[d],f.base[d+1]=X-r;f.limit[F+1]=Number.MAX_VALUE,f.limit[F]=X+I[F]-1,f.base[b]=0}var T=new Uint32Array(256);for(d=0;d<256;d++)m[d]=d;var x=0,E=0,D=0,v,C=this.dbuf=new Uint32Array(this.dbufSize);for(g=0;;){for(g--||(g=vD-1,D>=l&&Oe(Se.DATA_ERROR),f=y[P[D++]]),d=f.minLen,e=i.read(d);d>f.maxLen&&Oe(Se.DATA_ERROR),!(e<=f.limit[d]);d++)e=e<<1|i.read(1);e-=f.base[d],(e<0||e>=G4)&&Oe(Se.DATA_ERROR);var M=f.permute[e];if(M===Q4||M===FD){x||(x=1,r=0),M===Q4?r+=x:r+=2*x,x<<=1;continue}if(x)for(x=0,E+r>this.dbufSize&&Oe(Se.DATA_ERROR),v=o[m[0]],T[v]+=r;r--;)C[E++]=v;if(M>s)break;E>=this.dbufSize&&Oe(Se.DATA_ERROR),d=M-1,v=V4(m,d),v=o[v],T[v]++,C[E++]=v}for((n<0||n>=E)&&Oe(Se.DATA_ERROR),e=0,d=0;d<256;d++)t=e+T[d],T[d]=e,e=t;for(d=0;d<E;d++)v=C[d]&255,C[T[v]]|=d<<8,T[v]++;var O=0,R=0,w=0;return E&&(O=C[n],R=O&255,O>>=8,w=-1),this.writePos=O,this.writeCurrent=R,this.writeCount=E,this.writeRun=w,!0};Od.prototype._read_bunzip=function(d,e){var t,i,a;if(this.writeCount<0)return 0;var n=this.dbuf,r=this.writePos,o=this.writeCurrent,s=this.writeCount;this.outputsize;for(var c=this.writeRun;s;){for(s--,i=o,r=n[r],o=r&255,r>>=8,c++===3?(t=o,a=i,o=-1):(t=1,a=o),this.blockCRC.updateCRCRun(a,t);t--;)this.outputStream.writeByte(a),this.nextoutput++;o!=i&&(c=0)}return this.writeCount=s,this.blockCRC.getCRC()!==this.targetBlockCRC&&Oe(Se.DATA_ERROR,"Bad block CRC (got "+this.blockCRC.getCRC().toString(16)+" expected "+this.targetBlockCRC.toString(16)+")"),this.nextoutput};var rc=function(d){if("readByte"in d)return d;var e=new Ba;return e.pos=0,e.readByte=function(){return d[this.pos++]},e.seek=function(t){this.pos=t},e.eof=function(){return this.pos>=d.length},e},K5=function(d){var e=new Ba,t=!0;if(d)if(typeof d=="number")e.buffer=new Uint8Array(d),t=!1;else{if("writeByte"in d)return d;e.buffer=d,t=!1}else e.buffer=new Uint8Array(16384);return e.pos=0,e.writeByte=function(i){if(t&&this.pos>=this.buffer.length){var a=new Uint8Array(this.buffer.length*2);a.set(this.buffer),this.buffer=a}this.buffer[this.pos++]=i},e.getBuffer=function(){if(this.pos!==this.buffer.length){if(!t)throw new TypeError("outputsize does not match decoded input");var i=new Uint8Array(this.pos);i.set(this.buffer.subarray(0,this.pos)),this.buffer=i}return this.buffer},e._coerced=!0,e},DD=function(d,e,t){for(var i=rc(d),a=K5(e),n=new Od(i,a);!("eof"in i&&i.eof());)if(n._init_block())n._read_bunzip();else{var r=n.reader.read(32)>>>0;if(r!==n.streamCRC&&Oe(Se.DATA_ERROR,"Bad stream CRC (got "+n.streamCRC.toString(16)+" expected "+r.toString(16)+")"),t&&"eof"in i&&!i.eof())n._start_bunzip(i,a);else break}if("getBuffer"in a)return a.getBuffer()},RD=function(d,e,t){var i=rc(d),a=K5(t),n=new Od(i,a);n.reader.seek(e);var r=n._get_next_block();if(r&&(n.blockCRC=new _5,n.writeCopies=0,n._read_bunzip()),"getBuffer"in a)return a.getBuffer()},xD=function(d,e,t){var i=new Ba;i.delegate=rc(d),i.pos=0,i.readByte=function(){return this.pos++,this.delegate.readByte()},i.delegate.eof&&(i.eof=i.delegate.eof.bind(i.delegate));var a=new Ba;a.pos=0,a.writeByte=function(){this.pos++};for(var n=new Od(i,a),r=n.dbufSize;!("eof"in i&&i.eof());){var o=i.pos*8+n.reader.bitOffset;if(n.reader.hasByte&&(o-=8),n._init_block()){var s=a.pos;n._read_bunzip(),e(o,a.pos-s)}else if(n.reader.read(32),t&&"eof"in i&&!i.eof())n._start_bunzip(i,a),console.assert(n.dbufSize===r,"shouldn't change block size within multistream file");else break}},ND={Bunzip:Od,Stream:Ba,Err:Se,decode:DD,decodeBlock:RD,table:xD},AD=yC({__proto__:null},[ND]);var wD="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",MD=d=>{let e=wD.indexOf(d);return e<0?void 0:e},oc=d=>{let e=`${d}`;if(e=e.replace(/[ \t\n\f\r]/g,""),e.length%4===0&&(e=e.replace(/==?$/,"")),e.length%4===1||/[^+/0-9A-Za-z]/.test(e))return;let t="",i=0,a=0;return[...e].forEach(n=>{i<<=6,i|=MD(n),a+=6,a===24&&(t+=String.fromCharCode((i&16711680)>>16),t+=String.fromCharCode((i&65280)>>8),t+=String.fromCharCode(i&255),i=a=0)}),a===12?(i>>=4,t+=String.fromCharCode(i)):a===18&&(i>>=2,t+=String.fromCharCode((i&65280)>>8),t+=String.fromCharCode(i&255)),t};var LD=d=>d==null||d.length===0,se=class d{static#n="MTc1MjAyMzc2MjIzMg==";static#i;static#a=!1;static#e=void 0;static#t="none";static#d;static#o=`-----BEGIN PGP PUBLIC KEY BLOCK-----
9338
+ `)}armor(e=V){let t=this.signature.packets.some(n=>n.version!==6),a={hash:t?Array.from(new Set(this.signature.packets.map(n=>u.read(u.hash,n.hashAlgorithm).toUpperCase()))).join():null,text:this.text,data:this.signature.packets.write()};return Ji(u.armor.signed,a,void 0,void 0,void 0,t,e)}};async function i5({cleartextMessage:d,config:e,...t}){if(e={...V,...e},!d)throw new Error("readCleartextMessage: must pass options object containing `cleartextMessage`");if(!S.isString(d))throw new Error("readCleartextMessage: options.cleartextMessage must be a string");let i=Object.keys(t);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);let a=await Fr(d);if(a.type!==u.armor.signed)throw new Error("No cleartext signed message.");let n=await be.fromBinary(a.data,DX,e);RX(a.headers,n);let r=new Xd(n);return new Hi(a.text,r)}function RX(d,e){let t=function(a){let n=r=>o=>r.hashAlgorithm===o;for(let r=0;r<e.length;r++)if(e[r].constructor.tag===u.packet.signature&&!a.some(n(e[r])))return!1;return!0},i=[];if(d.forEach(a=>{let n=a.match(/^Hash: (.+)$/);if(n){let r=n[1].replace(/\s/g,"").split(",").map(o=>{try{return u.write(u.hash,o.toLowerCase())}catch{throw new Error("Unknown hash algorithm in armor header: "+o.toLowerCase())}});i.push(...r)}else throw new Error('Only "Hash" header allowed in cleartext signed message')}),i.length&&!t(i))throw new Error("Hash algorithm mismatch in armor header and signature")}async function a5({message:d,verificationKeys:e,expectSigned:t=!1,format:i="utf8",signature:a=null,date:n=new Date,config:r,...o}){if(r={...V,...r},AX(r),xX(d),e=wX(e),o.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.verify, pass `verificationKeys` instead");let s=Object.keys(o);if(s.length>0)throw new Error(`Unknown option: ${s.join(", ")}`);if(d instanceof Hi&&i==="binary")throw new Error("Can't return cleartext message data as binary");if(d instanceof Hi&&a)throw new Error("Can't verify detached cleartext signature");try{let c={};if(a?c.signatures=await d.verifyDetached(a,e,n,r):c.signatures=await d.verify(e,n,r),c.data=i==="binary"?d.getLiteralData():d.getText(),d.fromStream&&!a&&LX(c,d),t){if(c.signatures.length===0)throw new Error("Message is not signed");c.data=Ze([c.data,wd(async()=>(await S.anyPromise(c.signatures.map(p=>p.verified)),i==="binary"?new Uint8Array:""))])}return c.data=await MX(c.data),c}catch(c){throw S.wrapError("Error verifying signed message",c)}}function xX(d){if(!(d instanceof Hi)&&!(d instanceof cs))throw new Error("Parameter [message] needs to be of type Message or CleartextMessage")}var NX=Object.keys(V).length;function AX(d){let e=Object.keys(d);if(e.length!==NX){for(let t of e)if(V[t]===void 0)throw new Error(`Unknown config property: ${t}`)}}function wX(d){return d&&!S.isArray(d)&&(d=[d]),d}async function MX(d){return S.isStream(d)==="array"?Ae(d):d}function LX(d,e){d.data=Ad(e.packets.stream,async(t,i)=>{await oi(d.data,i,{preventClose:!0});let a=ct(i);try{await Ae(t,n=>n),await a.close()}catch(n){await a.abort(n)}})}function Pr(d){if(!Number.isSafeInteger(d)||d<0)throw new Error(`positive integer expected, not ${d}`)}function OX(d){return d instanceof Uint8Array||d!=null&&typeof d=="object"&&d.constructor.name==="Uint8Array"}function Ha(d,...e){if(!OX(d))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(d.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${d.length}`)}function kX(d){if(typeof d!="function"||typeof d.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Pr(d.outputLen),Pr(d.blockLen)}function Wi(d,e=!0){if(d.destroyed)throw new Error("Hash instance has been destroyed");if(e&&d.finished)throw new Error("Hash#digest() has already been called")}function n5(d,e){Ha(d);let t=e.outputLen;if(d.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var Xi=typeof je=="object"&&"crypto"in je?je.crypto:void 0;var UX=d=>new Uint32Array(d.buffer,d.byteOffset,Math.floor(d.byteLength/4)),Xo=d=>new DataView(d.buffer,d.byteOffset,d.byteLength),vt=(d,e)=>d<<32-e|d>>>e,Td=(d,e)=>d<<e|d>>>32-e>>>0,I4=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,qX=d=>d<<24&4278190080|d<<8&16711680|d>>>8&65280|d>>>24&255;function b4(d){for(let e=0;e<d.length;e++)d[e]=qX(d[e])}function r5(d){if(typeof d!="string")throw new Error(`utf8ToBytes expected string, got ${typeof d}`);return new Uint8Array(new TextEncoder().encode(d))}function Wa(d){return typeof d=="string"&&(d=r5(d)),Ha(d),d}function o5(...d){let e=0;for(let i=0;i<d.length;i++){let a=d[i];Ha(a),e+=a.length}let t=new Uint8Array(e);for(let i=0,a=0;i<d.length;i++){let n=d[i];t.set(n,a),a+=n.length}return t}var wa=class{clone(){return this._cloneInto()}};function qt(d){let e=i=>d().update(Wa(i)).digest(),t=d();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>d(),e}function BX(d){let e=(i,a)=>d(a).update(Wa(i)).digest(),t=d({});return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=i=>d(i),e}function Ys(d=32){if(Xi&&typeof Xi.getRandomValues=="function")return Xi.getRandomValues(new Uint8Array(d));if(Xi&&typeof Xi.randomBytes=="function")return Xi.randomBytes(d);throw new Error("crypto.getRandomValues must be defined")}function jX(d,e,t,i){if(typeof d.setBigUint64=="function")return d.setBigUint64(e,t,i);let a=BigInt(32),n=BigInt(4294967295),r=Number(t>>a&n),o=Number(t&n),s=i?4:0,c=i?0:4;d.setUint32(e+s,r,i),d.setUint32(e+c,o,i)}var s5=(d,e,t)=>d&e^~d&t,c5=(d,e,t)=>d&e^d&t^e&t,ii=class extends wa{constructor(e,t,i,a){super(),this.blockLen=e,this.outputLen=t,this.padOffset=i,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Xo(this.buffer)}update(e){Wi(this);let{view:t,buffer:i,blockLen:a}=this;e=Wa(e);let n=e.length;for(let r=0;r<n;){let o=Math.min(a-this.pos,n-r);if(o===a){let s=Xo(e);for(;a<=n-r;r+=a)this.process(s,r);continue}i.set(e.subarray(r,r+o),this.pos),this.pos+=o,r+=o,this.pos===a&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Wi(this),n5(e,this),this.finished=!0;let{buffer:t,view:i,blockLen:a,isLE:n}=this,{pos:r}=this;t[r++]=128,this.buffer.subarray(r).fill(0),this.padOffset>a-r&&(this.process(i,0),r=0);for(let l=r;l<a;l++)t[l]=0;jX(i,a-8,BigInt(this.length*8),n),this.process(i,0);let o=Xo(e),s=this.outputLen;if(s%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let c=s/4,p=this.get();if(c>p.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<c;l++)o.setUint32(4*l,p[l],n)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let i=e.slice(0,t);return this.destroy(),i}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:i,length:a,finished:n,destroyed:r,pos:o}=this;return e.length=a,e.pos=o,e.finished=n,e.destroyed=r,a%t&&e.buffer.set(i),e}},GX=new Uint32Array([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]),yd=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Sd=new Uint32Array(64),fr=class extends ii{constructor(){super(64,32,8,!1),this.A=yd[0]|0,this.B=yd[1]|0,this.C=yd[2]|0,this.D=yd[3]|0,this.E=yd[4]|0,this.F=yd[5]|0,this.G=yd[6]|0,this.H=yd[7]|0}get(){let{A:e,B:t,C:i,D:a,E:n,F:r,G:o,H:s}=this;return[e,t,i,a,n,r,o,s]}set(e,t,i,a,n,r,o,s){this.A=e|0,this.B=t|0,this.C=i|0,this.D=a|0,this.E=n|0,this.F=r|0,this.G=o|0,this.H=s|0}process(e,t){for(let l=0;l<16;l++,t+=4)Sd[l]=e.getUint32(t,!1);for(let l=16;l<64;l++){let m=Sd[l-15],P=Sd[l-2],g=vt(m,7)^vt(m,18)^m>>>3,y=vt(P,17)^vt(P,19)^P>>>10;Sd[l]=y+Sd[l-7]+g+Sd[l-16]|0}let{A:i,B:a,C:n,D:r,E:o,F:s,G:c,H:p}=this;for(let l=0;l<64;l++){let m=vt(o,6)^vt(o,11)^vt(o,25),P=p+m+s5(o,s,c)+GX[l]+Sd[l]|0,y=(vt(i,2)^vt(i,13)^vt(i,22))+c5(i,a,n)|0;p=c,c=s,s=o,o=r+P|0,r=n,n=a,a=i,i=P+y|0}i=i+this.A|0,a=a+this.B|0,n=n+this.C|0,r=r+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,p=p+this.H|0,this.set(i,a,n,r,o,s,c,p)}roundClean(){Sd.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},us=class extends fr{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}},Lr=qt(()=>new fr),QX=qt(()=>new us),gr=class extends wa{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,kX(e);let i=Wa(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let a=this.blockLen,n=new Uint8Array(a);n.set(i.length>a?e.create().update(i).digest():i);for(let r=0;r<n.length;r++)n[r]^=54;this.iHash.update(n),this.oHash=e.create();for(let r=0;r<n.length;r++)n[r]^=106;this.oHash.update(n),n.fill(0)}update(e){return Wi(this),this.iHash.update(e),this}digestInto(e){Wi(this),Ha(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:i,finished:a,destroyed:n,blockLen:r,outputLen:o}=this;return e=e,e.finished=a,e.destroyed=n,e.blockLen=r,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=i._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},p5=(d,e,t)=>new gr(d,e).update(t).digest();p5.create=(d,e)=>new gr(d,e);var Js=BigInt(0),Or=BigInt(1),VX=BigInt(2);function ai(d){return d instanceof Uint8Array||d!=null&&typeof d=="object"&&d.constructor.name==="Uint8Array"}function _a(d){if(!ai(d))throw new Error("Uint8Array expected")}function nd(d,e){if(typeof e!="boolean")throw new Error(`${d} must be valid boolean, got "${e}".`)}var zX=Array.from({length:256},(d,e)=>e.toString(16).padStart(2,"0"));function ni(d){_a(d);let e="";for(let t=0;t<d.length;t++)e+=zX[d[t]];return e}function Oi(d){let e=d.toString(16);return e.length&1?`0${e}`:e}function $s(d){if(typeof d!="string")throw new Error("hex string expected, got "+typeof d);return BigInt(d===""?"0":`0x${d}`)}var Kt={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function F4(d){if(d>=Kt._0&&d<=Kt._9)return d-Kt._0;if(d>=Kt._A&&d<=Kt._F)return d-(Kt._A-10);if(d>=Kt._a&&d<=Kt._f)return d-(Kt._a-10)}function _i(d){if(typeof d!="string")throw new Error("hex string expected, got "+typeof d);let e=d.length,t=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let i=new Uint8Array(t);for(let a=0,n=0;a<t;a++,n+=2){let r=F4(d.charCodeAt(n)),o=F4(d.charCodeAt(n+1));if(r===void 0||o===void 0){let s=d[n]+d[n+1];throw new Error('hex string expected, got non-hex character "'+s+'" at index '+n)}i[a]=r*16+o}return i}function Zd(d){return $s(ni(d))}function Dd(d){return _a(d),$s(ni(Uint8Array.from(d).reverse()))}function Ki(d,e){return _i(d.toString(16).padStart(e*2,"0"))}function Yi(d,e){return Ki(d,e).reverse()}function HX(d){return _i(Oi(d))}function ve(d,e,t){let i;if(typeof e=="string")try{i=_i(e)}catch(n){throw new Error(`${d} must be valid hex string, got "${e}". Cause: ${n}`)}else if(ai(e))i=Uint8Array.from(e);else throw new Error(`${d} must be hex string or Uint8Array`);let a=i.length;if(typeof t=="number"&&a!==t)throw new Error(`${d} expected ${t} bytes, got ${a}`);return i}function ri(...d){let e=0;for(let i=0;i<d.length;i++){let a=d[i];_a(a),e+=a.length}let t=new Uint8Array(e);for(let i=0,a=0;i<d.length;i++){let n=d[i];t.set(n,a),a+=n.length}return t}function WX(d,e){if(d.length!==e.length)return!1;let t=0;for(let i=0;i<d.length;i++)t|=d[i]^e[i];return t===0}function _X(d){if(typeof d!="string")throw new Error(`utf8ToBytes expected string, got ${typeof d}`);return new Uint8Array(new TextEncoder().encode(d))}var Do=d=>typeof d=="bigint"&&Js<=d;function kr(d,e,t){return Do(d)&&Do(e)&&Do(t)&&e<=d&&d<t}function Je(d,e,t,i){if(!kr(e,t,i))throw new Error(`expected valid ${d}: ${t} <= n < ${i}, got ${typeof e} ${e}`)}function u5(d){let e;for(e=0;d>Js;d>>=Or,e+=1);return e}function KX(d,e){return d>>BigInt(e)&Or}function YX(d,e,t){return d|(t?Or:Js)<<BigInt(e)}var Zs=d=>(VX<<BigInt(d-1))-Or,Ro=d=>new Uint8Array(d),E4=d=>Uint8Array.from(d);function l5(d,e,t){if(typeof d!="number"||d<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof t!="function")throw new Error("hmacFn must be a function");let i=Ro(d),a=Ro(d),n=0,r=()=>{i.fill(1),a.fill(0),n=0},o=(...l)=>t(a,i,...l),s=(l=Ro())=>{a=o(E4([0]),l),i=o(),l.length!==0&&(a=o(E4([1]),l),i=o())},c=()=>{if(n++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,m=[];for(;l<e;){i=o();let P=i.slice();m.push(P),l+=i.length}return ri(...m)};return(l,m)=>{r(),s(l);let P;for(;!(P=m(c()));)s();return r(),P}}var JX={bigint:d=>typeof d=="bigint",function:d=>typeof d=="function",boolean:d=>typeof d=="boolean",string:d=>typeof d=="string",stringOrUint8Array:d=>typeof d=="string"||ai(d),isSafeInteger:d=>Number.isSafeInteger(d),array:d=>Array.isArray(d),field:(d,e)=>e.Fp.isValid(d),hash:d=>typeof d=="function"&&Number.isSafeInteger(d.outputLen)};function ci(d,e,t={}){let i=(a,n,r)=>{let o=JX[n];if(typeof o!="function")throw new Error(`Invalid validator "${n}", expected function`);let s=d[a];if(!(r&&s===void 0)&&!o(s,d))throw new Error(`Invalid param ${String(a)}=${s} (${typeof s}), expected ${n}`)};for(let[a,n]of Object.entries(e))i(a,n,!1);for(let[a,n]of Object.entries(t))i(a,n,!0);return d}var $X=()=>{throw new Error("not implemented")};function Ma(d){let e=new WeakMap;return(t,...i)=>{let a=e.get(t);if(a!==void 0)return a;let n=d(t,...i);return e.set(t,n),n}}var ZX=Object.freeze({__proto__:null,aInRange:Je,abool:nd,abytes:_a,bitGet:KX,bitLen:u5,bitMask:Zs,bitSet:YX,bytesToHex:ni,bytesToNumberBE:Zd,bytesToNumberLE:Dd,concatBytes:ri,createHmacDrbg:l5,ensureBytes:ve,equalBytes:WX,hexToBytes:_i,hexToNumber:$s,inRange:kr,isBytes:ai,memoized:Ma,notImplemented:$X,numberToBytesBE:Ki,numberToBytesLE:Yi,numberToHexUnpadded:Oi,numberToVarBytesBE:HX,utf8ToBytes:_X,validateObject:ci});var Me=BigInt(0),Xe=BigInt(1),Yd=BigInt(2),e3=BigInt(3),ls=BigInt(4),C4=BigInt(5),v4=BigInt(8);BigInt(9);BigInt(16);function Fe(d,e){let t=d%e;return t>=Me?t:e+t}function m5(d,e,t){if(t<=Me||e<Me)throw new Error("Expected power/modulo > 0");if(t===Xe)return Me;let i=Xe;for(;e>Me;)e&Xe&&(i=i*d%t),d=d*d%t,e>>=Xe;return i}function he(d,e,t){let i=d;for(;e-- >Me;)i*=i,i%=t;return i}function ms(d,e){if(d===Me||e<=Me)throw new Error(`invert: expected positive integers, got n=${d} mod=${e}`);let t=Fe(d,e),i=e,a=Me,n=Xe;for(;t!==Me;){let o=i/t,s=i%t,c=a-n*o;i=t,t=s,a=n,n=c}if(i!==Xe)throw new Error("invert: does not exist");return Fe(a,e)}function t3(d){let e=(d-Xe)/Yd,t,i,a;for(t=d-Xe,i=0;t%Yd===Me;t/=Yd,i++);for(a=Yd;a<d&&m5(a,e,d)!==d-Xe;a++);if(i===1){let r=(d+Xe)/ls;return function(s,c){let p=s.pow(c,r);if(!s.eql(s.sqr(p),c))throw new Error("Cannot find square root");return p}}let n=(t+Xe)/Yd;return function(o,s){if(o.pow(s,e)===o.neg(o.ONE))throw new Error("Cannot find square root");let c=i,p=o.pow(o.mul(o.ONE,a),t),l=o.pow(s,n),m=o.pow(s,t);for(;!o.eql(m,o.ONE);){if(o.eql(m,o.ZERO))return o.ZERO;let P=1;for(let y=o.sqr(m);P<c&&!o.eql(y,o.ONE);P++)y=o.sqr(y);let g=o.pow(p,Xe<<BigInt(c-P-1));p=o.sqr(g),l=o.mul(l,g),m=o.mul(m,p),c=P}return l}}function d3(d){if(d%ls===e3){let e=(d+Xe)/ls;return function(i,a){let n=i.pow(a,e);if(!i.eql(i.sqr(n),a))throw new Error("Cannot find square root");return n}}if(d%v4===C4){let e=(d-C4)/v4;return function(i,a){let n=i.mul(a,Yd),r=i.pow(n,e),o=i.mul(a,r),s=i.mul(i.mul(o,Yd),r),c=i.mul(o,i.sub(s,i.ONE));if(!i.eql(i.sqr(c),a))throw new Error("Cannot find square root");return c}}return t3(d)}var i3=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function a3(d){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=i3.reduce((i,a)=>(i[a]="function",i),e);return ci(d,t)}function n3(d,e,t){if(t<Me)throw new Error("Expected power > 0");if(t===Me)return d.ONE;if(t===Xe)return e;let i=d.ONE,a=e;for(;t>Me;)t&Xe&&(i=d.mul(i,a)),a=d.sqr(a),t>>=Xe;return i}function r3(d,e){let t=new Array(e.length),i=e.reduce((n,r,o)=>d.is0(r)?n:(t[o]=n,d.mul(n,r)),d.ONE),a=d.inv(i);return e.reduceRight((n,r,o)=>d.is0(r)?n:(t[o]=d.mul(n,t[o]),d.mul(n,r)),a),t}function y5(d,e){let t=e!==void 0?e:d.toString(2).length,i=Math.ceil(t/8);return{nBitLength:t,nByteLength:i}}function Bt(d,e,t=!1,i={}){if(d<=Me)throw new Error(`Expected Field ORDER > 0, got ${d}`);let{nBitLength:a,nByteLength:n}=y5(d,e);if(n>2048)throw new Error("Field lengths over 2048 bytes are not supported");let r=d3(d),o=Object.freeze({ORDER:d,BITS:a,BYTES:n,MASK:Zs(a),ZERO:Me,ONE:Xe,create:s=>Fe(s,d),isValid:s=>{if(typeof s!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof s}`);return Me<=s&&s<d},is0:s=>s===Me,isOdd:s=>(s&Xe)===Xe,neg:s=>Fe(-s,d),eql:(s,c)=>s===c,sqr:s=>Fe(s*s,d),add:(s,c)=>Fe(s+c,d),sub:(s,c)=>Fe(s-c,d),mul:(s,c)=>Fe(s*c,d),pow:(s,c)=>n3(o,s,c),div:(s,c)=>Fe(s*ms(c,d),d),sqrN:s=>s*s,addN:(s,c)=>s+c,subN:(s,c)=>s-c,mulN:(s,c)=>s*c,inv:s=>ms(s,d),sqrt:i.sqrt||(s=>r(o,s)),invertBatch:s=>r3(o,s),cmov:(s,c,p)=>p?c:s,toBytes:s=>t?Yi(s,n):Ki(s,n),fromBytes:s=>{if(s.length!==n)throw new Error(`Fp.fromBytes: expected ${n}, got ${s.length}`);return t?Dd(s):Zd(s)}});return Object.freeze(o)}function S5(d){if(typeof d!="bigint")throw new Error("field order must be bigint");let e=d.toString(2).length;return Math.ceil(e/8)}function P5(d){let e=S5(d);return e+Math.ceil(e/2)}function o3(d,e,t=!1){let i=d.length,a=S5(e),n=P5(e);if(i<16||i<n||i>1024)throw new Error(`expected ${n}-1024 bytes of input, got ${i}`);let r=t?Zd(d):Dd(d),o=Fe(r,e-Xe)+Xe;return t?Yi(o,a):Ki(o,a)}var s3=BigInt(0),xo=BigInt(1),No=new WeakMap,T4=new WeakMap;function f5(d,e){let t=(n,r)=>{let o=r.negate();return n?o:r},i=n=>{if(!Number.isSafeInteger(n)||n<=0||n>e)throw new Error(`Wrong window size=${n}, should be [1..${e}]`)},a=n=>{i(n);let r=Math.ceil(e/n)+1,o=2**(n-1);return{windows:r,windowSize:o}};return{constTimeNegate:t,unsafeLadder(n,r){let o=d.ZERO,s=n;for(;r>s3;)r&xo&&(o=o.add(s)),s=s.double(),r>>=xo;return o},precomputeWindow(n,r){let{windows:o,windowSize:s}=a(r),c=[],p=n,l=p;for(let m=0;m<o;m++){l=p,c.push(l);for(let P=1;P<s;P++)l=l.add(p),c.push(l);p=l.double()}return c},wNAF(n,r,o){let{windows:s,windowSize:c}=a(n),p=d.ZERO,l=d.BASE,m=BigInt(2**n-1),P=2**n,g=BigInt(n);for(let y=0;y<s;y++){let f=y*c,h=Number(o&m);o>>=g,h>c&&(h-=P,o+=xo);let I=f,b=f+Math.abs(h)-1,F=y%2!==0,X=h<0;h===0?l=l.add(t(F,r[I])):p=p.add(t(X,r[b]))}return{p,f:l}},wNAFCached(n,r,o){let s=T4.get(n)||1,c=No.get(n);return c||(c=this.precomputeWindow(n,s),s!==1&&No.set(n,o(c))),this.wNAF(s,c,r)},setWindowSize(n,r){i(r),T4.set(n,r),No.delete(n)}}}function g5(d,e,t,i){if(!Array.isArray(t)||!Array.isArray(i)||i.length!==t.length)throw new Error("arrays of points and scalars must have equal length");i.forEach((p,l)=>{if(!e.isValid(p))throw new Error(`wrong scalar at index ${l}`)}),t.forEach((p,l)=>{if(!(p instanceof d))throw new Error(`wrong point at index ${l}`)});let a=u5(BigInt(t.length)),n=a>12?a-3:a>4?a-2:a?2:1,r=(1<<n)-1,o=new Array(r+1).fill(d.ZERO),s=Math.floor((e.BITS-1)/n)*n,c=d.ZERO;for(let p=s;p>=0;p-=n){o.fill(d.ZERO);for(let m=0;m<i.length;m++){let P=i[m],g=Number(P>>BigInt(p)&BigInt(r));o[g]=o[g].add(t[m])}let l=d.ZERO;for(let m=o.length-1,P=d.ZERO;m>0;m--)P=P.add(o[m]),l=l.add(P);if(c=c.add(l),p!==0)for(let m=0;m<n;m++)c=c.double()}return c}function ec(d){return a3(d.Fp),ci(d,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...y5(d.n,d.nBitLength),...d,p:d.Fp.ORDER})}function X4(d){d.lowS!==void 0&&nd("lowS",d.lowS),d.prehash!==void 0&&nd("prehash",d.prehash)}function c3(d){let e=ec(d);ci(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:t,Fp:i,a}=e;if(t){if(!i.eql(a,i.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof t!="object"||typeof t.beta!="bigint"||typeof t.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:p3,hexToBytes:u3}=ZX,ed={Err:class extends Error{constructor(e=""){super(e)}},_tlv:{encode:(d,e)=>{let{Err:t}=ed;if(d<0||d>256)throw new t("tlv.encode: wrong tag");if(e.length&1)throw new t("tlv.encode: unpadded data");let i=e.length/2,a=Oi(i);if(a.length/2&128)throw new t("tlv.encode: long form length too big");let n=i>127?Oi(a.length/2|128):"";return`${Oi(d)}${n}${a}${e}`},decode(d,e){let{Err:t}=ed,i=0;if(d<0||d>256)throw new t("tlv.encode: wrong tag");if(e.length<2||e[i++]!==d)throw new t("tlv.decode: wrong tlv");let a=e[i++],n=!!(a&128),r=0;if(!n)r=a;else{let s=a&127;if(!s)throw new t("tlv.decode(long): indefinite length not supported");if(s>4)throw new t("tlv.decode(long): byte length is too big");let c=e.subarray(i,i+s);if(c.length!==s)throw new t("tlv.decode: length bytes not complete");if(c[0]===0)throw new t("tlv.decode(long): zero leftmost byte");for(let p of c)r=r<<8|p;if(i+=s,r<128)throw new t("tlv.decode(long): not minimal encoding")}let o=e.subarray(i,i+r);if(o.length!==r)throw new t("tlv.decode: wrong value length");return{v:o,l:e.subarray(i+r)}}},_int:{encode(d){let{Err:e}=ed;if(d<td)throw new e("integer: negative integers are not allowed");let t=Oi(d);if(Number.parseInt(t[0],16)&8&&(t="00"+t),t.length&1)throw new e("unexpected assertion");return t},decode(d){let{Err:e}=ed;if(d[0]&128)throw new e("Invalid signature integer: negative");if(d[0]===0&&!(d[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return p3(d)}},toSig(d){let{Err:e,_int:t,_tlv:i}=ed,a=typeof d=="string"?u3(d):d;_a(a);let{v:n,l:r}=i.decode(48,a);if(r.length)throw new e("Invalid signature: left bytes after parsing");let{v:o,l:s}=i.decode(2,n),{v:c,l:p}=i.decode(2,s);if(p.length)throw new e("Invalid signature: left bytes after parsing");return{r:t.decode(o),s:t.decode(c)}},hexFromSig(d){let{_tlv:e,_int:t}=ed,i=`${e.encode(2,t.encode(d.r))}${e.encode(2,t.encode(d.s))}`;return e.encode(48,i)}},td=BigInt(0),Ne=BigInt(1);BigInt(2);var D4=BigInt(3);BigInt(4);function l3(d){let e=c3(d),{Fp:t}=e,i=Bt(e.n,e.nBitLength),a=e.toBytes||((y,f,h)=>{let I=f.toAffine();return ri(Uint8Array.from([4]),t.toBytes(I.x),t.toBytes(I.y))}),n=e.fromBytes||(y=>{let f=y.subarray(1),h=t.fromBytes(f.subarray(0,t.BYTES)),I=t.fromBytes(f.subarray(t.BYTES,2*t.BYTES));return{x:h,y:I}});function r(y){let{a:f,b:h}=e,I=t.sqr(y),b=t.mul(I,y);return t.add(t.add(b,t.mul(y,f)),h)}if(!t.eql(t.sqr(e.Gy),r(e.Gx)))throw new Error("bad generator point: equation left != right");function o(y){return kr(y,Ne,e.n)}function s(y){let{allowedPrivateKeyLengths:f,nByteLength:h,wrapPrivateKey:I,n:b}=e;if(f&&typeof y!="bigint"){if(ai(y)&&(y=ni(y)),typeof y!="string"||!f.includes(y.length))throw new Error("Invalid key");y=y.padStart(h*2,"0")}let F;try{F=typeof y=="bigint"?y:Zd(ve("private key",y,h))}catch{throw new Error(`private key must be ${h} bytes, hex or bigint, not ${typeof y}`)}return I&&(F=Fe(F,b)),Je("private key",F,Ne,b),F}function c(y){if(!(y instanceof m))throw new Error("ProjectivePoint expected")}let p=Ma((y,f)=>{let{px:h,py:I,pz:b}=y;if(t.eql(b,t.ONE))return{x:h,y:I};let F=y.is0();f==null&&(f=F?t.ONE:t.inv(b));let X=t.mul(h,f),T=t.mul(I,f),x=t.mul(b,f);if(F)return{x:t.ZERO,y:t.ZERO};if(!t.eql(x,t.ONE))throw new Error("invZ was invalid");return{x:X,y:T}}),l=Ma(y=>{if(y.is0()){if(e.allowInfinityPoint&&!t.is0(y.py))return;throw new Error("bad point: ZERO")}let{x:f,y:h}=y.toAffine();if(!t.isValid(f)||!t.isValid(h))throw new Error("bad point: x or y not FE");let I=t.sqr(h),b=r(f);if(!t.eql(I,b))throw new Error("bad point: equation left != right");if(!y.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class m{constructor(f,h,I){if(this.px=f,this.py=h,this.pz=I,f==null||!t.isValid(f))throw new Error("x required");if(h==null||!t.isValid(h))throw new Error("y required");if(I==null||!t.isValid(I))throw new Error("z required");Object.freeze(this)}static fromAffine(f){let{x:h,y:I}=f||{};if(!f||!t.isValid(h)||!t.isValid(I))throw new Error("invalid affine point");if(f instanceof m)throw new Error("projective point not allowed");let b=F=>t.eql(F,t.ZERO);return b(h)&&b(I)?m.ZERO:new m(h,I,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(f){let h=t.invertBatch(f.map(I=>I.pz));return f.map((I,b)=>I.toAffine(h[b])).map(m.fromAffine)}static fromHex(f){let h=m.fromAffine(n(ve("pointHex",f)));return h.assertValidity(),h}static fromPrivateKey(f){return m.BASE.multiply(s(f))}static msm(f,h){return g5(m,i,f,h)}_setWindowSize(f){g.setWindowSize(this,f)}assertValidity(){l(this)}hasEvenY(){let{y:f}=this.toAffine();if(t.isOdd)return!t.isOdd(f);throw new Error("Field doesn't support isOdd")}equals(f){c(f);let{px:h,py:I,pz:b}=this,{px:F,py:X,pz:T}=f,x=t.eql(t.mul(h,T),t.mul(F,b)),E=t.eql(t.mul(I,T),t.mul(X,b));return x&&E}negate(){return new m(this.px,t.neg(this.py),this.pz)}double(){let{a:f,b:h}=e,I=t.mul(h,D4),{px:b,py:F,pz:X}=this,T=t.ZERO,x=t.ZERO,E=t.ZERO,D=t.mul(b,b),v=t.mul(F,F),C=t.mul(X,X),M=t.mul(b,F);return M=t.add(M,M),E=t.mul(b,X),E=t.add(E,E),T=t.mul(f,E),x=t.mul(I,C),x=t.add(T,x),T=t.sub(v,x),x=t.add(v,x),x=t.mul(T,x),T=t.mul(M,T),E=t.mul(I,E),C=t.mul(f,C),M=t.sub(D,C),M=t.mul(f,M),M=t.add(M,E),E=t.add(D,D),D=t.add(E,D),D=t.add(D,C),D=t.mul(D,M),x=t.add(x,D),C=t.mul(F,X),C=t.add(C,C),D=t.mul(C,M),T=t.sub(T,D),E=t.mul(C,v),E=t.add(E,E),E=t.add(E,E),new m(T,x,E)}add(f){c(f);let{px:h,py:I,pz:b}=this,{px:F,py:X,pz:T}=f,x=t.ZERO,E=t.ZERO,D=t.ZERO,v=e.a,C=t.mul(e.b,D4),M=t.mul(h,F),O=t.mul(I,X),R=t.mul(b,T),w=t.add(h,I),N=t.add(F,X);w=t.mul(w,N),N=t.add(M,O),w=t.sub(w,N),N=t.add(h,b);let A=t.add(F,T);return N=t.mul(N,A),A=t.add(M,R),N=t.sub(N,A),A=t.add(I,b),x=t.add(X,T),A=t.mul(A,x),x=t.add(O,R),A=t.sub(A,x),D=t.mul(v,N),x=t.mul(C,R),D=t.add(x,D),x=t.sub(O,D),D=t.add(O,D),E=t.mul(x,D),O=t.add(M,M),O=t.add(O,M),R=t.mul(v,R),N=t.mul(C,N),O=t.add(O,R),R=t.sub(M,R),R=t.mul(v,R),N=t.add(N,R),M=t.mul(O,N),E=t.add(E,M),M=t.mul(A,N),x=t.mul(w,x),x=t.sub(x,M),M=t.mul(w,O),D=t.mul(A,D),D=t.add(D,M),new m(x,E,D)}subtract(f){return this.add(f.negate())}is0(){return this.equals(m.ZERO)}wNAF(f){return g.wNAFCached(this,f,m.normalizeZ)}multiplyUnsafe(f){Je("scalar",f,td,e.n);let h=m.ZERO;if(f===td)return h;if(f===Ne)return this;let{endo:I}=e;if(!I)return g.unsafeLadder(this,f);let{k1neg:b,k1:F,k2neg:X,k2:T}=I.splitScalar(f),x=h,E=h,D=this;for(;F>td||T>td;)F&Ne&&(x=x.add(D)),T&Ne&&(E=E.add(D)),D=D.double(),F>>=Ne,T>>=Ne;return b&&(x=x.negate()),X&&(E=E.negate()),E=new m(t.mul(E.px,I.beta),E.py,E.pz),x.add(E)}multiply(f){let{endo:h,n:I}=e;Je("scalar",f,Ne,I);let b,F;if(h){let{k1neg:X,k1:T,k2neg:x,k2:E}=h.splitScalar(f),{p:D,f:v}=this.wNAF(T),{p:C,f:M}=this.wNAF(E);D=g.constTimeNegate(X,D),C=g.constTimeNegate(x,C),C=new m(t.mul(C.px,h.beta),C.py,C.pz),b=D.add(C),F=v.add(M)}else{let{p:X,f:T}=this.wNAF(f);b=X,F=T}return m.normalizeZ([b,F])[0]}multiplyAndAddUnsafe(f,h,I){let b=m.BASE,F=(T,x)=>x===td||x===Ne||!T.equals(b)?T.multiplyUnsafe(x):T.multiply(x),X=F(this,h).add(F(f,I));return X.is0()?void 0:X}toAffine(f){return p(this,f)}isTorsionFree(){let{h:f,isTorsionFree:h}=e;if(f===Ne)return!0;if(h)return h(m,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:f,clearCofactor:h}=e;return f===Ne?this:h?h(m,this):this.multiplyUnsafe(e.h)}toRawBytes(f=!0){return nd("isCompressed",f),this.assertValidity(),a(m,this,f)}toHex(f=!0){return nd("isCompressed",f),ni(this.toRawBytes(f))}}m.BASE=new m(e.Gx,e.Gy,t.ONE),m.ZERO=new m(t.ZERO,t.ONE,t.ZERO);let P=e.nBitLength,g=f5(m,e.endo?Math.ceil(P/2):P);return{CURVE:e,ProjectivePoint:m,normPrivateKeyToScalar:s,weierstrassEquation:r,isWithinCurveOrder:o}}function m3(d){let e=ec(d);return ci(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function y3(d){let e=m3(d),{Fp:t,n:i}=e,a=t.BYTES+1,n=2*t.BYTES+1;function r(R){return Fe(R,i)}function o(R){return ms(R,i)}let{ProjectivePoint:s,normPrivateKeyToScalar:c,weierstrassEquation:p,isWithinCurveOrder:l}=l3({...e,toBytes(R,w,N){let A=w.toAffine(),L=t.toBytes(A.x),U=ri;return nd("isCompressed",N),N?U(Uint8Array.from([w.hasEvenY()?2:3]),L):U(Uint8Array.from([4]),L,t.toBytes(A.y))},fromBytes(R){let w=R.length,N=R[0],A=R.subarray(1);if(w===a&&(N===2||N===3)){let L=Zd(A);if(!kr(L,Ne,t.ORDER))throw new Error("Point is not on curve");let U=p(L),q;try{q=t.sqrt(U)}catch(H){let G=H instanceof Error?": "+H.message:"";throw new Error("Point is not on curve"+G)}let j=(q&Ne)===Ne;return(N&1)===1!==j&&(q=t.neg(q)),{x:L,y:q}}else if(w===n&&N===4){let L=t.fromBytes(A.subarray(0,t.BYTES)),U=t.fromBytes(A.subarray(t.BYTES,2*t.BYTES));return{x:L,y:U}}else throw new Error(`Point of length ${w} was invalid. Expected ${a} compressed bytes or ${n} uncompressed bytes`)}}),m=R=>ni(Ki(R,e.nByteLength));function P(R){let w=i>>Ne;return R>w}function g(R){return P(R)?r(-R):R}let y=(R,w,N)=>Zd(R.slice(w,N));class f{constructor(w,N,A){this.r=w,this.s=N,this.recovery=A,this.assertValidity()}static fromCompact(w){let N=e.nByteLength;return w=ve("compactSignature",w,N*2),new f(y(w,0,N),y(w,N,2*N))}static fromDER(w){let{r:N,s:A}=ed.toSig(ve("DER",w));return new f(N,A)}assertValidity(){Je("r",this.r,Ne,i),Je("s",this.s,Ne,i)}addRecoveryBit(w){return new f(this.r,this.s,w)}recoverPublicKey(w){let{r:N,s:A,recovery:L}=this,U=T(ve("msgHash",w));if(L==null||![0,1,2,3].includes(L))throw new Error("recovery id invalid");let q=L===2||L===3?N+e.n:N;if(q>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let j=(L&1)===0?"02":"03",z=s.fromHex(j+m(q)),H=o(q),G=r(-U*H),B=r(A*H),Q=s.BASE.multiplyAndAddUnsafe(z,G,B);if(!Q)throw new Error("point at infinify");return Q.assertValidity(),Q}hasHighS(){return P(this.s)}normalizeS(){return this.hasHighS()?new f(this.r,r(-this.s),this.recovery):this}toDERRawBytes(){return _i(this.toDERHex())}toDERHex(){return ed.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return _i(this.toCompactHex())}toCompactHex(){return m(this.r)+m(this.s)}}let h={isValidPrivateKey(R){try{return c(R),!0}catch{return!1}},normPrivateKeyToScalar:c,randomPrivateKey:()=>{let R=P5(e.n);return o3(e.randomBytes(R),e.n)},precompute(R=8,w=s.BASE){return w._setWindowSize(R),w.multiply(BigInt(3)),w}};function I(R,w=!0){return s.fromPrivateKey(R).toRawBytes(w)}function b(R){let w=ai(R),N=typeof R=="string",A=(w||N)&&R.length;return w?A===a||A===n:N?A===2*a||A===2*n:R instanceof s}function F(R,w,N=!0){if(b(R))throw new Error("first arg must be private key");if(!b(w))throw new Error("second arg must be public key");return s.fromHex(w).multiply(c(R)).toRawBytes(N)}let X=e.bits2int||function(R){let w=Zd(R),N=R.length*8-e.nBitLength;return N>0?w>>BigInt(N):w},T=e.bits2int_modN||function(R){return r(X(R))},x=Zs(e.nBitLength);function E(R){return Je(`num < 2^${e.nBitLength}`,R,td,x),Ki(R,e.nByteLength)}function D(R,w,N=v){if(["recovered","canonical"].some(W=>W in N))throw new Error("sign() legacy options not supported");let{hash:A,randomBytes:L}=e,{lowS:U,prehash:q,extraEntropy:j}=N;U==null&&(U=!0),R=ve("msgHash",R),X4(N),q&&(R=ve("prehashed msgHash",A(R)));let z=T(R),H=c(w),G=[E(H),E(z)];if(j!=null&&j!==!1){let W=j===!0?L(t.BYTES):j;G.push(ve("extraEntropy",W))}let B=ri(...G),Q=z;function K(W){let Y=X(W);if(!l(Y))return;let Z=o(Y),ee=s.BASE.multiply(Y).toAffine(),ie=r(ee.x);if(ie===td)return;let pe=r(Z*r(Q+ie*H));if(pe===td)return;let ue=(ee.x===ie?0:2)|Number(ee.y&Ne),Ee=pe;return U&&P(pe)&&(Ee=g(pe),ue^=1),new f(ie,Ee,ue)}return{seed:B,k2sig:K}}let v={lowS:e.lowS,prehash:!1},C={lowS:e.lowS,prehash:!1};function M(R,w,N=v){let{seed:A,k2sig:L}=D(R,w,N),U=e;return l5(U.hash.outputLen,U.nByteLength,U.hmac)(A,L)}s.BASE._setWindowSize(8);function O(R,w,N,A=C){let L=R;if(w=ve("msgHash",w),N=ve("publicKey",N),"strict"in A)throw new Error("options.strict was renamed to lowS");X4(A);let{lowS:U,prehash:q}=A,j,z;try{if(typeof L=="string"||ai(L))try{j=f.fromDER(L)}catch(ee){if(!(ee instanceof ed.Err))throw ee;j=f.fromCompact(L)}else if(typeof L=="object"&&typeof L.r=="bigint"&&typeof L.s=="bigint"){let{r:ee,s:ie}=L;j=new f(ee,ie)}else throw new Error("PARSE");z=s.fromHex(N)}catch(ee){if(ee.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&j.hasHighS())return!1;q&&(w=e.hash(w));let{r:H,s:G}=j,B=T(w),Q=o(G),K=r(B*Q),W=r(H*Q),Y=s.BASE.multiplyAndAddUnsafe(z,K,W)?.toAffine();return Y?r(Y.x)===H:!1}return{CURVE:e,getPublicKey:I,getSharedSecret:F,sign:M,verify:O,ProjectivePoint:s,Signature:f,utils:h}}function S3(d){return{hash:d,hmac:(e,...t)=>p5(d,e,o5(...t)),randomBytes:Ys}}function pi(d,e){let t=i=>y3({...d,...S3(i)});return Object.freeze({...t(e),create:t})}var h5=Bt(BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff")),P3=h5.create(BigInt("-3")),f3=BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),g3=pi({a:P3,b:f3,Fp:h5,n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"),h:BigInt(1),lowS:!1},Lr),Xn=BigInt(2**32-1),ys=BigInt(32);function I5(d,e=!1){return e?{h:Number(d&Xn),l:Number(d>>ys&Xn)}:{h:Number(d>>ys&Xn)|0,l:Number(d&Xn)|0}}function b5(d,e=!1){let t=new Uint32Array(d.length),i=new Uint32Array(d.length);for(let a=0;a<d.length;a++){let{h:n,l:r}=I5(d[a],e);[t[a],i[a]]=[n,r]}return[t,i]}var h3=(d,e)=>BigInt(d>>>0)<<ys|BigInt(e>>>0),I3=(d,e,t)=>d>>>t,b3=(d,e,t)=>d<<32-t|e>>>t,F3=(d,e,t)=>d>>>t|e<<32-t,E3=(d,e,t)=>d<<32-t|e>>>t,C3=(d,e,t)=>d<<64-t|e>>>t-32,v3=(d,e,t)=>d>>>t-32|e<<64-t,T3=(d,e)=>e,X3=(d,e)=>d,F5=(d,e,t)=>d<<t|e>>>32-t,E5=(d,e,t)=>e<<t|d>>>32-t,C5=(d,e,t)=>e<<t-32|d>>>64-t,v5=(d,e,t)=>d<<t-32|e>>>64-t;function D3(d,e,t,i){let a=(e>>>0)+(i>>>0);return{h:d+t+(a/2**32|0)|0,l:a|0}}var R3=(d,e,t)=>(d>>>0)+(e>>>0)+(t>>>0),x3=(d,e,t,i)=>e+t+i+(d/2**32|0)|0,N3=(d,e,t,i)=>(d>>>0)+(e>>>0)+(t>>>0)+(i>>>0),A3=(d,e,t,i,a)=>e+t+i+a+(d/2**32|0)|0,w3=(d,e,t,i,a)=>(d>>>0)+(e>>>0)+(t>>>0)+(i>>>0)+(a>>>0),M3=(d,e,t,i,a,n)=>e+t+i+a+n+(d/2**32|0)|0,de={fromBig:I5,split:b5,toBig:h3,shrSH:I3,shrSL:b3,rotrSH:F3,rotrSL:E3,rotrBH:C3,rotrBL:v3,rotr32H:T3,rotr32L:X3,rotlSH:F5,rotlSL:E5,rotlBH:C5,rotlBL:v5,add:D3,add3L:R3,add3H:x3,add4L:N3,add4H:A3,add5H:M3,add5L:w3},[L3,O3]=de.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(d=>BigInt(d))),Pd=new Uint32Array(80),fd=new Uint32Array(80),hr=class extends ii{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:t,Bh:i,Bl:a,Ch:n,Cl:r,Dh:o,Dl:s,Eh:c,El:p,Fh:l,Fl:m,Gh:P,Gl:g,Hh:y,Hl:f}=this;return[e,t,i,a,n,r,o,s,c,p,l,m,P,g,y,f]}set(e,t,i,a,n,r,o,s,c,p,l,m,P,g,y,f){this.Ah=e|0,this.Al=t|0,this.Bh=i|0,this.Bl=a|0,this.Ch=n|0,this.Cl=r|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=p|0,this.Fh=l|0,this.Fl=m|0,this.Gh=P|0,this.Gl=g|0,this.Hh=y|0,this.Hl=f|0}process(e,t){for(let b=0;b<16;b++,t+=4)Pd[b]=e.getUint32(t),fd[b]=e.getUint32(t+=4);for(let b=16;b<80;b++){let F=Pd[b-15]|0,X=fd[b-15]|0,T=de.rotrSH(F,X,1)^de.rotrSH(F,X,8)^de.shrSH(F,X,7),x=de.rotrSL(F,X,1)^de.rotrSL(F,X,8)^de.shrSL(F,X,7),E=Pd[b-2]|0,D=fd[b-2]|0,v=de.rotrSH(E,D,19)^de.rotrBH(E,D,61)^de.shrSH(E,D,6),C=de.rotrSL(E,D,19)^de.rotrBL(E,D,61)^de.shrSL(E,D,6),M=de.add4L(x,C,fd[b-7],fd[b-16]),O=de.add4H(M,T,v,Pd[b-7],Pd[b-16]);Pd[b]=O|0,fd[b]=M|0}let{Ah:i,Al:a,Bh:n,Bl:r,Ch:o,Cl:s,Dh:c,Dl:p,Eh:l,El:m,Fh:P,Fl:g,Gh:y,Gl:f,Hh:h,Hl:I}=this;for(let b=0;b<80;b++){let F=de.rotrSH(l,m,14)^de.rotrSH(l,m,18)^de.rotrBH(l,m,41),X=de.rotrSL(l,m,14)^de.rotrSL(l,m,18)^de.rotrBL(l,m,41),T=l&P^~l&y,x=m&g^~m&f,E=de.add5L(I,X,x,O3[b],fd[b]),D=de.add5H(E,h,F,T,L3[b],Pd[b]),v=E|0,C=de.rotrSH(i,a,28)^de.rotrBH(i,a,34)^de.rotrBH(i,a,39),M=de.rotrSL(i,a,28)^de.rotrBL(i,a,34)^de.rotrBL(i,a,39),O=i&n^i&o^n&o,R=a&r^a&s^r&s;h=y|0,I=f|0,y=P|0,f=g|0,P=l|0,g=m|0,{h:l,l:m}=de.add(c|0,p|0,D|0,v|0),c=o|0,p=s|0,o=n|0,s=r|0,n=i|0,r=a|0;let w=de.add3L(v,M,R);i=de.add3H(w,D,C,O),a=w|0}({h:i,l:a}=de.add(this.Ah|0,this.Al|0,i|0,a|0)),{h:n,l:r}=de.add(this.Bh|0,this.Bl|0,n|0,r|0),{h:o,l:s}=de.add(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l:p}=de.add(this.Dh|0,this.Dl|0,c|0,p|0),{h:l,l:m}=de.add(this.Eh|0,this.El|0,l|0,m|0),{h:P,l:g}=de.add(this.Fh|0,this.Fl|0,P|0,g|0),{h:y,l:f}=de.add(this.Gh|0,this.Gl|0,y|0,f|0),{h,l:I}=de.add(this.Hh|0,this.Hl|0,h|0,I|0),this.set(i,a,n,r,o,s,c,p,l,m,P,g,y,f,h,I)}roundClean(){Pd.fill(0),fd.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Ss=class extends hr{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}},tc=qt(()=>new hr),dc=qt(()=>new Ss);var k3=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),T5=Bt(k3),U3=T5.create(BigInt("-3")),q3=BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),B3=pi({a:U3,b:q3,Fp:T5,n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f"),h:BigInt(1),lowS:!1},dc);var j3=BigInt("0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),Ps=Bt(j3),Di={a:Ps.create(BigInt("-3")),b:BigInt("0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00"),Fp:Ps,n:BigInt("0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409"),Gx:BigInt("0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66"),Gy:BigInt("0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650"),h:BigInt(1)},G3=pi({a:Di.a,b:Di.b,Fp:Ps,n:Di.n,Gx:Di.Gx,Gy:Di.Gy,h:Di.h,lowS:!1,allowedPrivateKeyLengths:[130,131,132]},tc),X5=[],D5=[],R5=[],Q3=BigInt(0),Sa=BigInt(1),V3=BigInt(2),z3=BigInt(7),H3=BigInt(256),W3=BigInt(113);for(let d=0,e=Sa,t=1,i=0;d<24;d++){[t,i]=[i,(2*t+3*i)%5],X5.push(2*(5*i+t)),D5.push((d+1)*(d+2)/2%64);let a=Q3;for(let n=0;n<7;n++)e=(e<<Sa^(e>>z3)*W3)%H3,e&V3&&(a^=Sa<<(Sa<<BigInt(n))-Sa);R5.push(a)}var[_3,K3]=b5(R5,!0),R4=(d,e,t)=>t>32?C5(d,e,t):F5(d,e,t),x4=(d,e,t)=>t>32?v5(d,e,t):E5(d,e,t);function Y3(d,e=24){let t=new Uint32Array(10);for(let i=24-e;i<24;i++){for(let r=0;r<10;r++)t[r]=d[r]^d[r+10]^d[r+20]^d[r+30]^d[r+40];for(let r=0;r<10;r+=2){let o=(r+8)%10,s=(r+2)%10,c=t[s],p=t[s+1],l=R4(c,p,1)^t[o],m=x4(c,p,1)^t[o+1];for(let P=0;P<50;P+=10)d[r+P]^=l,d[r+P+1]^=m}let a=d[2],n=d[3];for(let r=0;r<24;r++){let o=D5[r],s=R4(a,n,o),c=x4(a,n,o),p=X5[r];a=d[p],n=d[p+1],d[p]=s,d[p+1]=c}for(let r=0;r<50;r+=10){for(let o=0;o<10;o++)t[o]=d[r+o];for(let o=0;o<10;o++)d[r+o]^=~t[(o+2)%10]&t[(o+4)%10]}d[0]^=_3[i],d[1]^=K3[i]}t.fill(0)}var Ir=class d extends wa{constructor(e,t,i,a=!1,n=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=i,this.enableXOF=a,this.rounds=n,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Pr(i),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=UX(this.state)}keccak(){I4||b4(this.state32),Y3(this.state32,this.rounds),I4||b4(this.state32),this.posOut=0,this.pos=0}update(e){Wi(this);let{blockLen:t,state:i}=this;e=Wa(e);let a=e.length;for(let n=0;n<a;){let r=Math.min(t-this.pos,a-n);for(let o=0;o<r;o++)i[this.pos++]^=e[n++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:i,blockLen:a}=this;e[i]^=t,(t&128)!==0&&i===a-1&&this.keccak(),e[a-1]^=128,this.keccak()}writeInto(e){Wi(this,!1),Ha(e),this.finish();let t=this.state,{blockLen:i}=this;for(let a=0,n=e.length;a<n;){this.posOut>=i&&this.keccak();let r=Math.min(i-this.posOut,n-a);e.set(t.subarray(this.posOut,this.posOut+r),a),this.posOut+=r,a+=r}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Pr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(n5(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){let{blockLen:t,suffix:i,outputLen:a,rounds:n,enableXOF:r}=this;return e||(e=new d(t,i,a,r,n)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=n,e.suffix=i,e.outputLen=a,e.enableXOF=r,e.destroyed=this.destroyed,e}},x5=(d,e,t)=>qt(()=>new Ir(e,d,t)),J3=x5(6,136,256/8),$3=x5(6,72,512/8),Z3=(d,e,t)=>BX((i={})=>new Ir(e,d,i.dkLen===void 0?t:i.dkLen,!0)),N5=Z3(31,136,256/8);var gt=BigInt(0),_e=BigInt(1),Dn=BigInt(2),e6=BigInt(8),t6={zip215:!0};function d6(d){let e=ec(d);return ci(d,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function A5(d){let e=d6(d),{Fp:t,n:i,prehash:a,hash:n,randomBytes:r,nByteLength:o,h:s}=e,c=Dn<<BigInt(o*8)-_e,p=t.create,l=Bt(e.n,e.nBitLength),m=e.uvRatio||((N,A)=>{try{return{isValid:!0,value:t.sqrt(N*t.inv(A))}}catch{return{isValid:!1,value:gt}}}),P=e.adjustScalarBytes||(N=>N),g=e.domain||((N,A,L)=>{if(nd("phflag",L),A.length||L)throw new Error("Contexts/pre-hash are not supported");return N});function y(N,A){Je("coordinate "+N,A,gt,c)}function f(N){if(!(N instanceof b))throw new Error("ExtendedPoint expected")}let h=Ma((N,A)=>{let{ex:L,ey:U,ez:q}=N,j=N.is0();A==null&&(A=j?e6:t.inv(q));let z=p(L*A),H=p(U*A),G=p(q*A);if(j)return{x:gt,y:_e};if(G!==_e)throw new Error("invZ was invalid");return{x:z,y:H}}),I=Ma(N=>{let{a:A,d:L}=e;if(N.is0())throw new Error("bad point: ZERO");let{ex:U,ey:q,ez:j,et:z}=N,H=p(U*U),G=p(q*q),B=p(j*j),Q=p(B*B),K=p(H*A),W=p(B*p(K+G)),Y=p(Q+p(L*p(H*G)));if(W!==Y)throw new Error("bad point: equation left != right (1)");let Z=p(U*q),ee=p(j*z);if(Z!==ee)throw new Error("bad point: equation left != right (2)");return!0});class b{constructor(A,L,U,q){this.ex=A,this.ey=L,this.ez=U,this.et=q,y("x",A),y("y",L),y("z",U),y("t",q),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(A){if(A instanceof b)throw new Error("extended point not allowed");let{x:L,y:U}=A||{};return y("x",L),y("y",U),new b(L,U,_e,p(L*U))}static normalizeZ(A){let L=t.invertBatch(A.map(U=>U.ez));return A.map((U,q)=>U.toAffine(L[q])).map(b.fromAffine)}static msm(A,L){return g5(b,l,A,L)}_setWindowSize(A){T.setWindowSize(this,A)}assertValidity(){I(this)}equals(A){f(A);let{ex:L,ey:U,ez:q}=this,{ex:j,ey:z,ez:H}=A,G=p(L*H),B=p(j*q),Q=p(U*H),K=p(z*q);return G===B&&Q===K}is0(){return this.equals(b.ZERO)}negate(){return new b(p(-this.ex),this.ey,this.ez,p(-this.et))}double(){let{a:A}=e,{ex:L,ey:U,ez:q}=this,j=p(L*L),z=p(U*U),H=p(Dn*p(q*q)),G=p(A*j),B=L+U,Q=p(p(B*B)-j-z),K=G+z,W=K-H,Y=G-z,Z=p(Q*W),ee=p(K*Y),ie=p(Q*Y),pe=p(W*K);return new b(Z,ee,pe,ie)}add(A){f(A);let{a:L,d:U}=e,{ex:q,ey:j,ez:z,et:H}=this,{ex:G,ey:B,ez:Q,et:K}=A;if(L===BigInt(-1)){let ch=p((j-q)*(B+G)),ph=p((j+q)*(B-G)),Qr=p(ph-ch);if(Qr===gt)return this.double();let uh=p(z*Dn*K),lh=p(H*Dn*Q),mh=lh+uh,yh=ph+ch,Sh=lh-uh,bF=p(mh*Qr),FF=p(yh*Sh),EF=p(mh*Sh),CF=p(Qr*yh);return new b(bF,FF,CF,EF)}let W=p(q*G),Y=p(j*B),Z=p(H*U*K),ee=p(z*Q),ie=p((q+j)*(G+B)-W-Y),pe=ee-Z,ue=ee+Z,Ee=p(Y-L*W),fF=p(ie*pe),gF=p(ue*Ee),hF=p(ie*Ee),IF=p(pe*ue);return new b(fF,gF,IF,hF)}subtract(A){return this.add(A.negate())}wNAF(A){return T.wNAFCached(this,A,b.normalizeZ)}multiply(A){let L=A;Je("scalar",L,_e,i);let{p:U,f:q}=this.wNAF(L);return b.normalizeZ([U,q])[0]}multiplyUnsafe(A){let L=A;return Je("scalar",L,gt,i),L===gt?X:this.equals(X)||L===_e?this:this.equals(F)?this.wNAF(L).p:T.unsafeLadder(this,L)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}isTorsionFree(){return T.unsafeLadder(this,i).is0()}toAffine(A){return h(this,A)}clearCofactor(){let{h:A}=e;return A===_e?this:this.multiplyUnsafe(A)}static fromHex(A,L=!1){let{d:U,a:q}=e,j=t.BYTES;A=ve("pointHex",A,j),nd("zip215",L);let z=A.slice(),H=A[j-1];z[j-1]=H&-129;let G=Dd(z),B=L?c:t.ORDER;Je("pointHex.y",G,gt,B);let Q=p(G*G),K=p(Q-_e),W=p(U*Q-q),{isValid:Y,value:Z}=m(K,W);if(!Y)throw new Error("Point.fromHex: invalid y coordinate");let ee=(Z&_e)===_e,ie=(H&128)!==0;if(!L&&Z===gt&&ie)throw new Error("Point.fromHex: x=0 and x_0=1");return ie!==ee&&(Z=p(-Z)),b.fromAffine({x:Z,y:G})}static fromPrivateKey(A){return D(A).point}toRawBytes(){let{x:A,y:L}=this.toAffine(),U=Yi(L,t.BYTES);return U[U.length-1]|=A&_e?128:0,U}toHex(){return ni(this.toRawBytes())}}b.BASE=new b(e.Gx,e.Gy,_e,p(e.Gx*e.Gy)),b.ZERO=new b(gt,_e,_e,gt);let{BASE:F,ZERO:X}=b,T=f5(b,o*8);function x(N){return Fe(N,i)}function E(N){return x(Dd(N))}function D(N){let A=o;N=ve("private key",N,A);let L=ve("hashed private key",n(N),2*A),U=P(L.slice(0,A)),q=L.slice(A,2*A),j=E(U),z=F.multiply(j),H=z.toRawBytes();return{head:U,prefix:q,scalar:j,point:z,pointBytes:H}}function v(N){return D(N).pointBytes}function C(N=new Uint8Array,...A){let L=ri(...A);return E(n(g(L,ve("context",N),!!a)))}function M(N,A,L={}){N=ve("message",N),a&&(N=a(N));let{prefix:U,scalar:q,pointBytes:j}=D(A),z=C(L.context,U,N),H=F.multiply(z).toRawBytes(),G=C(L.context,H,j,N),B=x(z+G*q);Je("signature.s",B,gt,i);let Q=ri(H,Yi(B,t.BYTES));return ve("result",Q,o*2)}let O=t6;function R(N,A,L,U=O){let{context:q,zip215:j}=U,z=t.BYTES;N=ve("signature",N,2*z),A=ve("message",A),j!==void 0&&nd("zip215",j),a&&(A=a(A));let H=Dd(N.slice(z,2*z)),G,B,Q;try{G=b.fromHex(L,j),B=b.fromHex(N.slice(0,z),j),Q=F.multiplyUnsafe(H)}catch{return!1}if(!j&&G.isSmallOrder())return!1;let K=C(q,B.toRawBytes(),G.toRawBytes(),A);return B.add(G.multiplyUnsafe(K)).subtract(Q).clearCofactor().equals(b.ZERO)}return F._setWindowSize(8),{CURVE:e,getPublicKey:v,sign:M,verify:R,ExtendedPoint:b,utils:{getExtendedPublicKey:D,randomPrivateKey:()=>r(t.BYTES),precompute(N=8,A=b.BASE){return A._setWindowSize(N),A.multiply(BigInt(3)),A}}}}var Ri=BigInt(0),Ao=BigInt(1);function i6(d){return ci(d,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...d})}function a6(d){let e=i6(d),{P:t}=e,i=I=>Fe(I,t),a=e.montgomeryBits,n=Math.ceil(a/8),r=e.nByteLength,o=e.adjustScalarBytes||(I=>I),s=e.powPminus2||(I=>m5(I,t-BigInt(2),t));function c(I,b,F){let X=i(I*(b-F));return b=i(b-X),F=i(F+X),[b,F]}let p=(e.a-BigInt(2))/BigInt(4);function l(I,b){Je("u",I,Ri,t),Je("scalar",b,Ri,t);let F=b,X=I,T=Ao,x=Ri,E=I,D=Ao,v=Ri,C;for(let O=BigInt(a-1);O>=Ri;O--){let R=F>>O&Ao;v^=R,C=c(v,T,E),T=C[0],E=C[1],C=c(v,x,D),x=C[0],D=C[1],v=R;let w=T+x,N=i(w*w),A=T-x,L=i(A*A),U=N-L,q=E+D,j=E-D,z=i(j*w),H=i(q*A),G=z+H,B=z-H;E=i(G*G),D=i(X*i(B*B)),T=i(N*L),x=i(U*(N+i(p*U)))}C=c(v,T,E),T=C[0],E=C[1],C=c(v,x,D),x=C[0],D=C[1];let M=s(x);return i(T*M)}function m(I){return Yi(i(I),n)}function P(I){let b=ve("u coordinate",I,n);return r===32&&(b[31]&=127),Dd(b)}function g(I){let b=ve("scalar",I),F=b.length;if(F!==n&&F!==r)throw new Error(`Expected ${n} or ${r} bytes, got ${F}`);return Dd(o(b))}function y(I,b){let F=P(b),X=g(I),T=l(F,X);if(T===Ri)throw new Error("Invalid private or public key received");return m(T)}let f=m(e.Gu);function h(I){return y(I,f)}return{scalarMult:y,scalarMultBase:h,getSharedSecret:(I,b)=>y(I,b),getPublicKey:I=>h(I),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:f}}var n6=qt(()=>N5.create({dkLen:114})),r6=qt(()=>N5.create({dkLen:64})),La=BigInt("726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365439"),o6=BigInt(1),N4=BigInt(2),A4=BigInt(3);BigInt(4);var s6=BigInt(11),c6=BigInt(22),w4=BigInt(44),p6=BigInt(88),u6=BigInt(223);function w5(d){let e=La,t=d*d*d%e,i=t*t*d%e,a=he(i,A4,e)*i%e,n=he(a,A4,e)*i%e,r=he(n,N4,e)*t%e,o=he(r,s6,e)*r%e,s=he(o,c6,e)*o%e,c=he(s,w4,e)*s%e,p=he(c,p6,e)*c%e,l=he(p,w4,e)*s%e,m=he(l,N4,e)*t%e,P=he(m,o6,e)*d%e;return he(P,u6,e)*m%e}function M5(d){return d[0]&=252,d[55]|=128,d[56]=0,d}function l6(d,e){let t=La,i=Fe(d*d*e,t),a=Fe(i*d,t),n=Fe(a*i*e,t),r=w5(n),o=Fe(a*r,t),s=Fe(o*o,t);return{isValid:Fe(s*e,t)===d,value:o}}var L5=Bt(La,456,!0),O5={a:BigInt(1),d:BigInt("726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018326358"),Fp:L5,n:BigInt("181709681073901722637330951972001133588410340171829515070372549795146003961539585716195755291692375963310293709091662304773755859649779"),nBitLength:456,h:BigInt(4),Gx:BigInt("224580040295924300187604334099896036246789641632564134246125461686950415467406032909029192869357953282578032075146446173674602635247710"),Gy:BigInt("298819210078481492676017930443930673437544040154080242095928241372331506189835876003536878655418784733982303233503462500531545062832660"),hash:n6,randomBytes:Ys,adjustScalarBytes:M5,domain:(d,e,t)=>{if(e.length>255)throw new Error(`Context is too big: ${e.length}`);return o5(r5("SigEd448"),new Uint8Array([t?1:0,e.length]),e,d)},uvRatio:l6},m6=A5(O5);({...O5});var y6=a6({a:BigInt(156326),montgomeryBits:448,nByteLength:56,P:La,Gu:BigInt(5),powPminus2:d=>{let e=La,t=w5(d),i=he(t,BigInt(2),e);return Fe(i*d,e)},adjustScalarBytes:M5,randomBytes:Ys});(L5.ORDER-BigInt(3))/BigInt(4);BigInt(156326);BigInt("39082");BigInt("78163");BigInt("98944233647732219769177004876929019128417576295529901074099889598043702116001257856802131563896515373927712232092845883226922417596214");BigInt("315019913931389607337177038330951043522456072897266928557328499619017160722351061360252776265186336876723201881398623946864393857820716");BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var k5=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),M4=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),S6=BigInt(1),fs=BigInt(2),L4=(d,e)=>(d+e/fs)/e;function P6(d){let e=k5,t=BigInt(3),i=BigInt(6),a=BigInt(11),n=BigInt(22),r=BigInt(23),o=BigInt(44),s=BigInt(88),c=d*d*d%e,p=c*c*d%e,l=he(p,t,e)*p%e,m=he(l,t,e)*p%e,P=he(m,fs,e)*c%e,g=he(P,a,e)*P%e,y=he(g,n,e)*g%e,f=he(y,o,e)*y%e,h=he(f,s,e)*f%e,I=he(h,o,e)*y%e,b=he(I,t,e)*p%e,F=he(b,r,e)*g%e,X=he(F,i,e)*c%e,T=he(X,fs,e);if(!gs.eql(gs.sqr(T),d))throw new Error("Cannot find square root");return T}var gs=Bt(k5,void 0,void 0,{sqrt:P6}),U5=pi({a:BigInt(0),b:BigInt(7),Fp:gs,n:M4,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:d=>{let e=M4,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),i=-S6*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),a=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),n=t,r=BigInt("0x100000000000000000000000000000000"),o=L4(n*d,e),s=L4(-i*d,e),c=Fe(d-o*t-s*a,e),p=Fe(-o*i-s*n,e),l=c>r,m=p>r;if(l&&(c=e-c),m&&(p=e-p),c>r||p>r)throw new Error("splitScalar: Endomorphism failed, k="+d);return{k1neg:l,k1:c,k2neg:m,k2:p}}}},Lr);BigInt(0);U5.ProjectivePoint;var q5=Bt(BigInt("0xa9fb57dba1eea9bc3e660a909d838d726e3bf623d52620282013481d1f6e5377")),f6=q5.create(BigInt("0x7d5a0975fc2c3057eef67530417affe7fb8055c126dc5c6ce94a4b44f330b5d9")),g6=BigInt("0x26dc5c6ce94a4b44f330b5d9bbd77cbf958416295cf7e1ce6bccdc18ff8c07b6"),h6=pi({a:f6,b:g6,Fp:q5,n:BigInt("0xa9fb57dba1eea9bc3e660a909d838d718c397aa3b561a6f7901e0e82974856a7"),Gx:BigInt("0x8bd2aeb9cb7e57cb2c4b482ffc81b7afb9de27e1e3bd23c23a4453bd9ace3262"),Gy:BigInt("0x547ef835c3dac4fd97f8461a14611dc9c27745132ded8e545c1d54c72f046997"),h:BigInt(1),lowS:!1},Lr),B5=Bt(BigInt("0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53")),I6=B5.create(BigInt("0x7bc382c63d8c150c3c72080ace05afa0c2bea28e4fb22787139165efba91f90f8aa5814a503ad4eb04a8c7dd22ce2826")),b6=BigInt("0x04a8c7dd22ce28268b39b55416f0447c2fb77de107dcd2a62e880ea53eeb62d57cb4390295dbc9943ab78696fa504c11"),F6=pi({a:I6,b:b6,Fp:B5,n:BigInt("0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565"),Gx:BigInt("0x1d1c64f068cf45ffa2a63a81b7c13f6b8847a3e77ef14fe3db7fcafe0cbd10e8e826e03436d646aaef87b2e247d4af1e"),Gy:BigInt("0x8abe1d7520f9c2a45cb1eb8e95cfd55262b70b29feec5864e19c054ff99129280e4646217791811142820341263c5315"),h:BigInt(1),lowS:!1},dc),j5=Bt(BigInt("0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3")),E6=j5.create(BigInt("0x7830a3318b603b89e2327145ac234cc594cbdd8d3df91610a83441caea9863bc2ded5d5aa8253aa10a2ef1c98b9ac8b57f1117a72bf2c7b9e7c1ac4d77fc94ca")),C6=BigInt("0x3df91610a83441caea9863bc2ded5d5aa8253aa10a2ef1c98b9ac8b57f1117a72bf2c7b9e7c1ac4d77fc94cadc083e67984050b75ebae5dd2809bd638016f723"),v6=pi({a:E6,b:C6,Fp:j5,n:BigInt("0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069"),Gx:BigInt("0x81aee4bdd82ed9645a21322e9c4c6a9385ed9f70b5d916c1b43b62eef4d0098eff3b1f78e2d0d48d50d1687b93b97d5f7c6d5047406a5e688b352209bcb9f822"),Gy:BigInt("0x7dde385d566332ecc0eabfa9cf7822fdf209f70024a57b1aa000c55b881f8111b2dcde494a5f485e5bca4bd88a2763aed1ca2b2fa8f0540678cd1e0f3ad80892"),h:BigInt(1),lowS:!1},tc),T6=new Map(Object.entries({nistP256:g3,nistP384:B3,nistP521:G3,brainpoolP256r1:h6,brainpoolP384r1:F6,brainpoolP512r1:v6,secp256k1:U5,x448:y6,ed448:m6})),X6=Object.freeze({__proto__:null,nobleCurves:T6}),Pa=new Uint32Array([1732584193,4023233417,2562383102,271733878,3285377520]),gd=new Uint32Array(80),hs=class extends ii{constructor(){super(64,20,8,!1),this.A=Pa[0]|0,this.B=Pa[1]|0,this.C=Pa[2]|0,this.D=Pa[3]|0,this.E=Pa[4]|0}get(){let{A:e,B:t,C:i,D:a,E:n}=this;return[e,t,i,a,n]}set(e,t,i,a,n){this.A=e|0,this.B=t|0,this.C=i|0,this.D=a|0,this.E=n|0}process(e,t){for(let s=0;s<16;s++,t+=4)gd[s]=e.getUint32(t,!1);for(let s=16;s<80;s++)gd[s]=Td(gd[s-3]^gd[s-8]^gd[s-14]^gd[s-16],1);let{A:i,B:a,C:n,D:r,E:o}=this;for(let s=0;s<80;s++){let c,p;s<20?(c=s5(a,n,r),p=1518500249):s<40?(c=a^n^r,p=1859775393):s<60?(c=c5(a,n,r),p=2400959708):(c=a^n^r,p=3395469782);let l=Td(i,5)+c+o+p+gd[s]|0;o=r,r=n,n=Td(a,30),a=i,i=l}i=i+this.A|0,a=a+this.B|0,n=n+this.C|0,r=r+this.D|0,o=o+this.E|0,this.set(i,a,n,r,o)}roundClean(){gd.fill(0)}destroy(){this.set(0,0,0,0,0),this.buffer.fill(0)}},D6=qt(()=>new hs),R6=new Uint8Array([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),G5=new Uint8Array(new Array(16).fill(0).map((d,e)=>e)),x6=G5.map(d=>(9*d+5)%16),ic=[G5],ac=[x6];for(let d=0;d<4;d++)for(let e of[ic,ac])e.push(e[d].map(t=>R6[t]));var Q5=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(d=>new Uint8Array(d)),N6=ic.map((d,e)=>d.map(t=>Q5[e][t])),A6=ac.map((d,e)=>d.map(t=>Q5[e][t])),w6=new Uint32Array([0,1518500249,1859775393,2400959708,2840853838]),M6=new Uint32Array([1352829926,1548603684,1836072691,2053994217,0]);function O4(d,e,t,i){return d===0?e^t^i:d===1?e&t|~e&i:d===2?(e|~t)^i:d===3?e&i|t&~i:e^(t|~i)}var Rn=new Uint32Array(16),Is=class extends ii{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){let{h0:e,h1:t,h2:i,h3:a,h4:n}=this;return[e,t,i,a,n]}set(e,t,i,a,n){this.h0=e|0,this.h1=t|0,this.h2=i|0,this.h3=a|0,this.h4=n|0}process(e,t){for(let P=0;P<16;P++,t+=4)Rn[P]=e.getUint32(t,!0);let i=this.h0|0,a=i,n=this.h1|0,r=n,o=this.h2|0,s=o,c=this.h3|0,p=c,l=this.h4|0,m=l;for(let P=0;P<5;P++){let g=4-P,y=w6[P],f=M6[P],h=ic[P],I=ac[P],b=N6[P],F=A6[P];for(let X=0;X<16;X++){let T=Td(i+O4(P,n,o,c)+Rn[h[X]]+y,b[X])+l|0;i=l,l=c,c=Td(o,10)|0,o=n,n=T}for(let X=0;X<16;X++){let T=Td(a+O4(g,r,s,p)+Rn[I[X]]+f,F[X])+m|0;a=m,m=p,p=Td(s,10)|0,s=r,r=T}}this.set(this.h1+o+p|0,this.h2+c+m|0,this.h3+l+a|0,this.h4+i+r|0,this.h0+n+s|0)}roundClean(){Rn.fill(0)}destroy(){this.destroyed=!0,this.buffer.fill(0),this.set(0,0,0,0,0)}},L6=qt(()=>new Is),O6=Array.from({length:64},(d,e)=>Math.floor(2**32*Math.abs(Math.sin(e+1)))),k4=(d,e,t)=>d&e^~d&t,xn=new Uint32Array([1732584193,4023233417,2562383102,271733878]),wo=new Uint32Array(16),bs=class extends ii{constructor(){super(64,16,8,!0),this.A=xn[0]|0,this.B=xn[1]|0,this.C=xn[2]|0,this.D=xn[3]|0}get(){let{A:e,B:t,C:i,D:a}=this;return[e,t,i,a]}set(e,t,i,a){this.A=e|0,this.B=t|0,this.C=i|0,this.D=a|0}process(e,t){for(let o=0;o<16;o++,t+=4)wo[o]=e.getUint32(t,!0);let{A:i,B:a,C:n,D:r}=this;for(let o=0;o<64;o++){let s,c,p;o<16?(s=k4(a,n,r),c=o,p=[7,12,17,22]):o<32?(s=k4(r,a,n),c=(5*o+1)%16,p=[5,9,14,20]):o<48?(s=a^n^r,c=(3*o+5)%16,p=[4,11,16,23]):(s=n^(a|~r),c=7*o%16,p=[6,10,15,21]),s=s+i+O6[o]+wo[c],i=r,r=n,n=a,a=a+Td(s,p[o%4])}i=i+this.A|0,a=a+this.B|0,n=n+this.C|0,r=r+this.D|0,this.set(i,a,n,r)}roundClean(){wo.fill(0)}destroy(){this.set(0,0,0,0),this.buffer.fill(0)}},k6=qt(()=>new bs),U6=new Map(Object.entries({md5:k6,sha1:D6,sha224:QX,sha256:Lr,sha384:dc,sha512:tc,sha3_256:J3,sha3_512:$3,ripemd160:L6})),q6=Object.freeze({__proto__:null,nobleHashes:U6});function Mo(d,e,t,i,a,n){let r=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],o=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],s=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],c=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],p=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],l=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],m=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],P=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696],g=0,y,f,h,I,b,F,X,T,x,E,D=e.length,v=d.length===32?3:9;v===3?T=t?[0,32,2]:[30,-2,-2]:T=t?[0,32,2,62,30,-2,64,96,2]:[94,62,-2,32,64,2,30,-2,-2],t&&(e=B6(e),D=e.length);let C=new Uint8Array(D),M=0;for(;g<D;){for(F=e[g++]<<24|e[g++]<<16|e[g++]<<8|e[g++],X=e[g++]<<24|e[g++]<<16|e[g++]<<8|e[g++],h=(F>>>4^X)&252645135,X^=h,F^=h<<4,h=(F>>>16^X)&65535,X^=h,F^=h<<16,h=(X>>>2^F)&858993459,F^=h,X^=h<<2,h=(X>>>8^F)&16711935,F^=h,X^=h<<8,h=(F>>>1^X)&1431655765,X^=h,F^=h<<1,F=F<<1|F>>>31,X=X<<1|X>>>31,f=0;f<v;f+=3){for(x=T[f+1],E=T[f+2],y=T[f];y!==x;y+=E)I=X^d[y],b=(X>>>4|X<<28)^d[y+1],h=F,F=X,X=h^(o[I>>>24&63]|c[I>>>16&63]|l[I>>>8&63]|P[I&63]|r[b>>>24&63]|s[b>>>16&63]|p[b>>>8&63]|m[b&63]);h=F,F=X,X=h}F=F>>>1|F<<31,X=X>>>1|X<<31,h=(F>>>1^X)&1431655765,X^=h,F^=h<<1,h=(X>>>8^F)&16711935,F^=h,X^=h<<8,h=(X>>>2^F)&858993459,F^=h,X^=h<<2,h=(F>>>16^X)&65535,X^=h,F^=h<<16,h=(F>>>4^X)&252645135,X^=h,F^=h<<4,C[M++]=F>>>24,C[M++]=F>>>16&255,C[M++]=F>>>8&255,C[M++]=F&255,C[M++]=X>>>24,C[M++]=X>>>16&255,C[M++]=X>>>8&255,C[M++]=X&255}return t||(C=j6(C)),C}function Lo(d){let e=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],t=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],i=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],a=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],n=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],r=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],o=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],s=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],c=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],p=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],m=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],P=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],g=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],y=d.length>8?3:1,f=new Array(32*y),h=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],I,b,F=0,X=0,T;for(let x=0;x<y;x++){let E=d[F++]<<24|d[F++]<<16|d[F++]<<8|d[F++],D=d[F++]<<24|d[F++]<<16|d[F++]<<8|d[F++];T=(E>>>4^D)&252645135,D^=T,E^=T<<4,T=(D>>>-16^E)&65535,E^=T,D^=T<<-16,T=(E>>>2^D)&858993459,D^=T,E^=T<<2,T=(D>>>-16^E)&65535,E^=T,D^=T<<-16,T=(E>>>1^D)&1431655765,D^=T,E^=T<<1,T=(D>>>8^E)&16711935,E^=T,D^=T<<8,T=(E>>>1^D)&1431655765,D^=T,E^=T<<1,T=E<<8|D>>>20&240,E=D<<24|D<<8&16711680|D>>>8&65280|D>>>24&240,D=T;for(let v=0;v<h.length;v++)h[v]?(E=E<<2|E>>>26,D=D<<2|D>>>26):(E=E<<1|E>>>27,D=D<<1|D>>>27),E&=-15,D&=-15,I=e[E>>>28]|t[E>>>24&15]|i[E>>>20&15]|a[E>>>16&15]|n[E>>>12&15]|r[E>>>8&15]|o[E>>>4&15],b=s[D>>>28]|c[D>>>24&15]|p[D>>>20&15]|l[D>>>16&15]|m[D>>>12&15]|P[D>>>8&15]|g[D>>>4&15],T=(b>>>16^I)&65535,f[X++]=I^T,f[X++]=b^T<<16}return f}function B6(d,e){let t=8-d.length%8,i;if(t<8)i=0;else{if(t===8)return d;throw new Error("des: invalid padding")}let a=new Uint8Array(d.length+t);for(let n=0;n<d.length;n++)a[n]=d[n];for(let n=0;n<t;n++)a[d.length+n]=i;return a}function j6(d,e){let t=null,i;if(i=0,!t){for(t=1;d[d.length-t]===i;)t++;t--}return d.subarray(0,d.length-t)}function Oa(d){this.key=[];for(let e=0;e<3;e++)this.key.push(new Uint8Array(d.subarray(e*8,e*8+8)));this.encrypt=function(e){return Mo(Lo(this.key[2]),Mo(Lo(this.key[1]),Mo(Lo(this.key[0]),e,!0,0,null,null),!1,0,null,null),!0)}}Oa.keySize=Oa.prototype.keySize=24;Oa.blockSize=Oa.prototype.blockSize=8;function G6(){this.BlockSize=8,this.KeySize=16,this.setKey=function(r){if(this.masking=new Array(16),this.rotate=new Array(16),this.reset(),r.length===this.KeySize)this.keySchedule(r);else throw new Error("CAST-128: keys must be 16 bytes");return!0},this.reset=function(){for(let r=0;r<16;r++)this.masking[r]=0,this.rotate[r]=0},this.getBlockSize=function(){return this.BlockSize},this.encrypt=function(r){let o=new Array(r.length);for(let s=0;s<r.length;s+=8){let c=r[s]<<24|r[s+1]<<16|r[s+2]<<8|r[s+3],p=r[s+4]<<24|r[s+5]<<16|r[s+6]<<8|r[s+7],l;l=p,p=c^t(p,this.masking[0],this.rotate[0]),c=l,l=p,p=c^i(p,this.masking[1],this.rotate[1]),c=l,l=p,p=c^a(p,this.masking[2],this.rotate[2]),c=l,l=p,p=c^t(p,this.masking[3],this.rotate[3]),c=l,l=p,p=c^i(p,this.masking[4],this.rotate[4]),c=l,l=p,p=c^a(p,this.masking[5],this.rotate[5]),c=l,l=p,p=c^t(p,this.masking[6],this.rotate[6]),c=l,l=p,p=c^i(p,this.masking[7],this.rotate[7]),c=l,l=p,p=c^a(p,this.masking[8],this.rotate[8]),c=l,l=p,p=c^t(p,this.masking[9],this.rotate[9]),c=l,l=p,p=c^i(p,this.masking[10],this.rotate[10]),c=l,l=p,p=c^a(p,this.masking[11],this.rotate[11]),c=l,l=p,p=c^t(p,this.masking[12],this.rotate[12]),c=l,l=p,p=c^i(p,this.masking[13],this.rotate[13]),c=l,l=p,p=c^a(p,this.masking[14],this.rotate[14]),c=l,l=p,p=c^t(p,this.masking[15],this.rotate[15]),c=l,o[s]=p>>>24&255,o[s+1]=p>>>16&255,o[s+2]=p>>>8&255,o[s+3]=p&255,o[s+4]=c>>>24&255,o[s+5]=c>>>16&255,o[s+6]=c>>>8&255,o[s+7]=c&255}return o},this.decrypt=function(r){let o=new Array(r.length);for(let s=0;s<r.length;s+=8){let c=r[s]<<24|r[s+1]<<16|r[s+2]<<8|r[s+3],p=r[s+4]<<24|r[s+5]<<16|r[s+6]<<8|r[s+7],l;l=p,p=c^t(p,this.masking[15],this.rotate[15]),c=l,l=p,p=c^a(p,this.masking[14],this.rotate[14]),c=l,l=p,p=c^i(p,this.masking[13],this.rotate[13]),c=l,l=p,p=c^t(p,this.masking[12],this.rotate[12]),c=l,l=p,p=c^a(p,this.masking[11],this.rotate[11]),c=l,l=p,p=c^i(p,this.masking[10],this.rotate[10]),c=l,l=p,p=c^t(p,this.masking[9],this.rotate[9]),c=l,l=p,p=c^a(p,this.masking[8],this.rotate[8]),c=l,l=p,p=c^i(p,this.masking[7],this.rotate[7]),c=l,l=p,p=c^t(p,this.masking[6],this.rotate[6]),c=l,l=p,p=c^a(p,this.masking[5],this.rotate[5]),c=l,l=p,p=c^i(p,this.masking[4],this.rotate[4]),c=l,l=p,p=c^t(p,this.masking[3],this.rotate[3]),c=l,l=p,p=c^a(p,this.masking[2],this.rotate[2]),c=l,l=p,p=c^i(p,this.masking[1],this.rotate[1]),c=l,l=p,p=c^t(p,this.masking[0],this.rotate[0]),c=l,o[s]=p>>>24&255,o[s+1]=p>>>16&255,o[s+2]=p>>>8&255,o[s+3]=p&255,o[s+4]=c>>>24&255,o[s+5]=c>>16&255,o[s+6]=c>>8&255,o[s+7]=c&255}return o};let d=new Array(4);d[0]=new Array(4),d[0][0]=[4,0,13,15,12,14,8],d[0][1]=[5,2,16,18,17,19,10],d[0][2]=[6,3,23,22,21,20,9],d[0][3]=[7,1,26,25,27,24,11],d[1]=new Array(4),d[1][0]=[0,6,21,23,20,22,16],d[1][1]=[1,4,0,2,1,3,18],d[1][2]=[2,5,7,6,5,4,17],d[1][3]=[3,7,10,9,11,8,19],d[2]=new Array(4),d[2][0]=[4,0,13,15,12,14,8],d[2][1]=[5,2,16,18,17,19,10],d[2][2]=[6,3,23,22,21,20,9],d[2][3]=[7,1,26,25,27,24,11],d[3]=new Array(4),d[3][0]=[0,6,21,23,20,22,16],d[3][1]=[1,4,0,2,1,3,18],d[3][2]=[2,5,7,6,5,4,17],d[3][3]=[3,7,10,9,11,8,19];let e=new Array(4);e[0]=new Array(4),e[0][0]=[24,25,23,22,18],e[0][1]=[26,27,21,20,22],e[0][2]=[28,29,19,18,25],e[0][3]=[30,31,17,16,28],e[1]=new Array(4),e[1][0]=[3,2,12,13,8],e[1][1]=[1,0,14,15,13],e[1][2]=[7,6,8,9,3],e[1][3]=[5,4,10,11,7],e[2]=new Array(4),e[2][0]=[19,18,28,29,25],e[2][1]=[17,16,30,31,28],e[2][2]=[23,22,24,25,18],e[2][3]=[21,20,26,27,22],e[3]=new Array(4),e[3][0]=[8,9,7,6,3],e[3][1]=[10,11,5,4,7],e[3][2]=[12,13,3,2,8],e[3][3]=[14,15,1,0,13],this.keySchedule=function(r){let o=new Array(8),s=new Array(32),c;for(let P=0;P<4;P++)c=P*4,o[P]=r[c]<<24|r[c+1]<<16|r[c+2]<<8|r[c+3];let p=[6,7,4,5],l=0,m;for(let P=0;P<2;P++)for(let g=0;g<4;g++){for(c=0;c<4;c++){let y=d[g][c];m=o[y[1]],m^=n[4][o[y[2]>>>2]>>>24-8*(y[2]&3)&255],m^=n[5][o[y[3]>>>2]>>>24-8*(y[3]&3)&255],m^=n[6][o[y[4]>>>2]>>>24-8*(y[4]&3)&255],m^=n[7][o[y[5]>>>2]>>>24-8*(y[5]&3)&255],m^=n[p[c]][o[y[6]>>>2]>>>24-8*(y[6]&3)&255],o[y[0]]=m}for(c=0;c<4;c++){let y=e[g][c];m=n[4][o[y[0]>>>2]>>>24-8*(y[0]&3)&255],m^=n[5][o[y[1]>>>2]>>>24-8*(y[1]&3)&255],m^=n[6][o[y[2]>>>2]>>>24-8*(y[2]&3)&255],m^=n[7][o[y[3]>>>2]>>>24-8*(y[3]&3)&255],m^=n[4+c][o[y[4]>>>2]>>>24-8*(y[4]&3)&255],s[l]=m,l++}}for(let P=0;P<16;P++)this.masking[P]=s[P],this.rotate[P]=s[16+P]&31};function t(r,o,s){let c=o+r,p=c<<s|c>>>32-s;return(n[0][p>>>24]^n[1][p>>>16&255])-n[2][p>>>8&255]+n[3][p&255]}function i(r,o,s){let c=o^r,p=c<<s|c>>>32-s;return n[0][p>>>24]-n[1][p>>>16&255]+n[2][p>>>8&255]^n[3][p&255]}function a(r,o,s){let c=o-r,p=c<<s|c>>>32-s;return(n[0][p>>>24]+n[1][p>>>16&255]^n[2][p>>>8&255])-n[3][p&255]}let n=new Array(8);n[0]=[821772500,2678128395,1810681135,1059425402,505495343,2617265619,1610868032,3483355465,3218386727,2294005173,3791863952,2563806837,1852023008,365126098,3269944861,584384398,677919599,3229601881,4280515016,2002735330,1136869587,3744433750,2289869850,2731719981,2714362070,879511577,1639411079,575934255,717107937,2857637483,576097850,2731753936,1725645e3,2810460463,5111599,767152862,2543075244,1251459544,1383482551,3052681127,3089939183,3612463449,1878520045,1510570527,2189125840,2431448366,582008916,3163445557,1265446783,1354458274,3529918736,3202711853,3073581712,3912963487,3029263377,1275016285,4249207360,2905708351,3304509486,1442611557,3585198765,2712415662,2731849581,3248163920,2283946226,208555832,2766454743,1331405426,1447828783,3315356441,3108627284,2957404670,2981538698,3339933917,1669711173,286233437,1465092821,1782121619,3862771680,710211251,980974943,1651941557,430374111,2051154026,704238805,4128970897,3144820574,2857402727,948965521,3333752299,2227686284,718756367,2269778983,2731643755,718440111,2857816721,3616097120,1113355533,2478022182,410092745,1811985197,1944238868,2696854588,1415722873,1682284203,1060277122,1998114690,1503841958,82706478,2315155686,1068173648,845149890,2167947013,1768146376,1993038550,3566826697,3390574031,940016341,3355073782,2328040721,904371731,1205506512,4094660742,2816623006,825647681,85914773,2857843460,1249926541,1417871568,3287612,3211054559,3126306446,1975924523,1353700161,2814456437,2438597621,1800716203,722146342,2873936343,1151126914,4160483941,2877670899,458611604,2866078500,3483680063,770352098,2652916994,3367839148,3940505011,3585973912,3809620402,718646636,2504206814,2914927912,3631288169,2857486607,2860018678,575749918,2857478043,718488780,2069512688,3548183469,453416197,1106044049,3032691430,52586708,3378514636,3459808877,3211506028,1785789304,218356169,3571399134,3759170522,1194783844,1523787992,3007827094,1975193539,2555452411,1341901877,3045838698,3776907964,3217423946,2802510864,2889438986,1057244207,1636348243,3761863214,1462225785,2632663439,481089165,718503062,24497053,3332243209,3344655856,3655024856,3960371065,1195698900,2971415156,3710176158,2115785917,4027663609,3525578417,2524296189,2745972565,3564906415,1372086093,1452307862,2780501478,1476592880,3389271281,18495466,2378148571,901398090,891748256,3279637769,3157290713,2560960102,1447622437,4284372637,216884176,2086908623,1879786977,3588903153,2242455666,2938092967,3559082096,2810645491,758861177,1121993112,215018983,642190776,4169236812,1196255959,2081185372,3508738393,941322904,4124243163,2877523539,1848581667,2205260958,3180453958,2589345134,3694731276,550028657,2519456284,3789985535,2973870856,2093648313,443148163,46942275,2734146937,1117713533,1115362972,1523183689,3717140224,1551984063],n[1]=[522195092,4010518363,1776537470,960447360,4267822970,4005896314,1435016340,1929119313,2913464185,1310552629,3579470798,3724818106,2579771631,1594623892,417127293,2715217907,2696228731,1508390405,3994398868,3925858569,3695444102,4019471449,3129199795,3770928635,3520741761,990456497,4187484609,2783367035,21106139,3840405339,631373633,3783325702,532942976,396095098,3548038825,4267192484,2564721535,2011709262,2039648873,620404603,3776170075,2898526339,3612357925,4159332703,1645490516,223693667,1567101217,3362177881,1029951347,3470931136,3570957959,1550265121,119497089,972513919,907948164,3840628539,1613718692,3594177948,465323573,2659255085,654439692,2575596212,2699288441,3127702412,277098644,624404830,4100943870,2717858591,546110314,2403699828,3655377447,1321679412,4236791657,1045293279,4010672264,895050893,2319792268,494945126,1914543101,2777056443,3894764339,2219737618,311263384,4275257268,3458730721,669096869,3584475730,3835122877,3319158237,3949359204,2005142349,2713102337,2228954793,3769984788,569394103,3855636576,1425027204,108000370,2736431443,3671869269,3043122623,1750473702,2211081108,762237499,3972989403,2798899386,3061857628,2943854345,867476300,964413654,1591880597,1594774276,2179821409,552026980,3026064248,3726140315,2283577634,3110545105,2152310760,582474363,1582640421,1383256631,2043843868,3322775884,1217180674,463797851,2763038571,480777679,2718707717,2289164131,3118346187,214354409,200212307,3810608407,3025414197,2674075964,3997296425,1847405948,1342460550,510035443,4080271814,815934613,833030224,1620250387,1945732119,2703661145,3966000196,1388869545,3456054182,2687178561,2092620194,562037615,1356438536,3409922145,3261847397,1688467115,2150901366,631725691,3840332284,549916902,3455104640,394546491,837744717,2114462948,751520235,2221554606,2415360136,3999097078,2063029875,803036379,2702586305,821456707,3019566164,360699898,4018502092,3511869016,3677355358,2402471449,812317050,49299192,2570164949,3259169295,2816732080,3331213574,3101303564,2156015656,3705598920,3546263921,143268808,3200304480,1638124008,3165189453,3341807610,578956953,2193977524,3638120073,2333881532,807278310,658237817,2969561766,1641658566,11683945,3086995007,148645947,1138423386,4158756760,1981396783,2401016740,3699783584,380097457,2680394679,2803068651,3334260286,441530178,4016580796,1375954390,761952171,891809099,2183123478,157052462,3683840763,1592404427,341349109,2438483839,1417898363,644327628,2233032776,2353769706,2201510100,220455161,1815641738,182899273,2995019788,3627381533,3702638151,2890684138,1052606899,588164016,1681439879,4038439418,2405343923,4229449282,167996282,1336969661,1688053129,2739224926,1543734051,1046297529,1138201970,2121126012,115334942,1819067631,1902159161,1941945968,2206692869,1159982321],n[2]=[2381300288,637164959,3952098751,3893414151,1197506559,916448331,2350892612,2932787856,3199334847,4009478890,3905886544,1373570990,2450425862,4037870920,3778841987,2456817877,286293407,124026297,3001279700,1028597854,3115296800,4208886496,2691114635,2188540206,1430237888,1218109995,3572471700,308166588,570424558,2187009021,2455094765,307733056,1310360322,3135275007,1384269543,2388071438,863238079,2359263624,2801553128,3380786597,2831162807,1470087780,1728663345,4072488799,1090516929,532123132,2389430977,1132193179,2578464191,3051079243,1670234342,1434557849,2711078940,1241591150,3314043432,3435360113,3091448339,1812415473,2198440252,267246943,796911696,3619716990,38830015,1526438404,2806502096,374413614,2943401790,1489179520,1603809326,1920779204,168801282,260042626,2358705581,1563175598,2397674057,1356499128,2217211040,514611088,2037363785,2186468373,4022173083,2792511869,2913485016,1173701892,4200428547,3896427269,1334932762,2455136706,602925377,2835607854,1613172210,41346230,2499634548,2457437618,2188827595,41386358,4172255629,1313404830,2405527007,3801973774,2217704835,873260488,2528884354,2478092616,4012915883,2555359016,2006953883,2463913485,575479328,2218240648,2099895446,660001756,2341502190,3038761536,3888151779,3848713377,3286851934,1022894237,1620365795,3449594689,1551255054,15374395,3570825345,4249311020,4151111129,3181912732,310226346,1133119310,530038928,136043402,2476768958,3107506709,2544909567,1036173560,2367337196,1681395281,1758231547,3641649032,306774401,1575354324,3716085866,1990386196,3114533736,2455606671,1262092282,3124342505,2768229131,4210529083,1833535011,423410938,660763973,2187129978,1639812e3,3508421329,3467445492,310289298,272797111,2188552562,2456863912,310240523,677093832,1013118031,901835429,3892695601,1116285435,3036471170,1337354835,243122523,520626091,277223598,4244441197,4194248841,1766575121,594173102,316590669,742362309,3536858622,4176435350,3838792410,2501204839,1229605004,3115755532,1552908988,2312334149,979407927,3959474601,1148277331,176638793,3614686272,2083809052,40992502,1340822838,2731552767,3535757508,3560899520,1354035053,122129617,7215240,2732932949,3118912700,2718203926,2539075635,3609230695,3725561661,1928887091,2882293555,1988674909,2063640240,2491088897,1459647954,4189817080,2302804382,1113892351,2237858528,1927010603,4002880361,1856122846,1594404395,2944033133,3855189863,3474975698,1643104450,4054590833,3431086530,1730235576,2984608721,3084664418,2131803598,4178205752,267404349,1617849798,1616132681,1462223176,736725533,2327058232,551665188,2945899023,1749386277,2575514597,1611482493,674206544,2201269090,3642560800,728599968,1680547377,2620414464,1388111496,453204106,4156223445,1094905244,2754698257,2201108165,3757000246,2704524545,3922940700,3996465027],n[3]=[2645754912,532081118,2814278639,3530793624,1246723035,1689095255,2236679235,4194438865,2116582143,3859789411,157234593,2045505824,4245003587,1687664561,4083425123,605965023,672431967,1336064205,3376611392,214114848,4258466608,3232053071,489488601,605322005,3998028058,264917351,1912574028,756637694,436560991,202637054,135989450,85393697,2152923392,3896401662,2895836408,2145855233,3535335007,115294817,3147733898,1922296357,3464822751,4117858305,1037454084,2725193275,2127856640,1417604070,1148013728,1827919605,642362335,2929772533,909348033,1346338451,3547799649,297154785,1917849091,4161712827,2883604526,3968694238,1469521537,3780077382,3375584256,1763717519,136166297,4290970789,1295325189,2134727907,2798151366,1566297257,3672928234,2677174161,2672173615,965822077,2780786062,289653839,1133871874,3491843819,35685304,1068898316,418943774,672553190,642281022,2346158704,1954014401,3037126780,4079815205,2030668546,3840588673,672283427,1776201016,359975446,3750173538,555499703,2769985273,1324923,69110472,152125443,3176785106,3822147285,1340634837,798073664,1434183902,15393959,216384236,1303690150,3881221631,3711134124,3960975413,106373927,2578434224,1455997841,1801814300,1578393881,1854262133,3188178946,3258078583,2302670060,1539295533,3505142565,3078625975,2372746020,549938159,3278284284,2620926080,181285381,2865321098,3970029511,68876850,488006234,1728155692,2608167508,836007927,2435231793,919367643,3339422534,3655756360,1457871481,40520939,1380155135,797931188,234455205,2255801827,3990488299,397000196,739833055,3077865373,2871719860,4022553888,772369276,390177364,3853951029,557662966,740064294,1640166671,1699928825,3535942136,622006121,3625353122,68743880,1742502,219489963,1664179233,1577743084,1236991741,410585305,2366487942,823226535,1050371084,3426619607,3586839478,212779912,4147118561,1819446015,1911218849,530248558,3486241071,3252585495,2886188651,3410272728,2342195030,20547779,2982490058,3032363469,3631753222,312714466,1870521650,1493008054,3491686656,615382978,4103671749,2534517445,1932181,2196105170,278426614,6369430,3274544417,2913018367,697336853,2143000447,2946413531,701099306,1558357093,2805003052,3500818408,2321334417,3567135975,216290473,3591032198,23009561,1996984579,3735042806,2024298078,3739440863,569400510,2339758983,3016033873,3097871343,3639523026,3844324983,3256173865,795471839,2951117563,4101031090,4091603803,3603732598,971261452,534414648,428311343,3389027175,2844869880,694888862,1227866773,2456207019,3043454569,2614353370,3749578031,3676663836,459166190,4132644070,1794958188,51825668,2252611902,3084671440,2036672799,3436641603,1099053433,2469121526,3059204941,1323291266,2061838604,1018778475,2233344254,2553501054,334295216,3556750194,1065731521,183467730],n[4]=[2127105028,745436345,2601412319,2788391185,3093987327,500390133,1155374404,389092991,150729210,3891597772,3523549952,1935325696,716645080,946045387,2901812282,1774124410,3869435775,4039581901,3293136918,3438657920,948246080,363898952,3867875531,1286266623,1598556673,68334250,630723836,1104211938,1312863373,613332731,2377784574,1101634306,441780740,3129959883,1917973735,2510624549,3238456535,2544211978,3308894634,1299840618,4076074851,1756332096,3977027158,297047435,3790297736,2265573040,3621810518,1311375015,1667687725,47300608,3299642885,2474112369,201668394,1468347890,576830978,3594690761,3742605952,1958042578,1747032512,3558991340,1408974056,3366841779,682131401,1033214337,1545599232,4265137049,206503691,103024618,2855227313,1337551222,2428998917,2963842932,4015366655,3852247746,2796956967,3865723491,3747938335,247794022,3755824572,702416469,2434691994,397379957,851939612,2314769512,218229120,1380406772,62274761,214451378,3170103466,2276210409,3845813286,28563499,446592073,1693330814,3453727194,29968656,3093872512,220656637,2470637031,77972100,1667708854,1358280214,4064765667,2395616961,325977563,4277240721,4220025399,3605526484,3355147721,811859167,3069544926,3962126810,652502677,3075892249,4132761541,3498924215,1217549313,3250244479,3858715919,3053989961,1538642152,2279026266,2875879137,574252750,3324769229,2651358713,1758150215,141295887,2719868960,3515574750,4093007735,4194485238,1082055363,3417560400,395511885,2966884026,179534037,3646028556,3738688086,1092926436,2496269142,257381841,3772900718,1636087230,1477059743,2499234752,3811018894,2675660129,3285975680,90732309,1684827095,1150307763,1723134115,3237045386,1769919919,1240018934,815675215,750138730,2239792499,1234303040,1995484674,138143821,675421338,1145607174,1936608440,3238603024,2345230278,2105974004,323969391,779555213,3004902369,2861610098,1017501463,2098600890,2628620304,2940611490,2682542546,1171473753,3656571411,3687208071,4091869518,393037935,159126506,1662887367,1147106178,391545844,3452332695,1891500680,3016609650,1851642611,546529401,1167818917,3194020571,2848076033,3953471836,575554290,475796850,4134673196,450035699,2351251534,844027695,1080539133,86184846,1554234488,3692025454,1972511363,2018339607,1491841390,1141460869,1061690759,4244549243,2008416118,2351104703,2868147542,1598468138,722020353,1027143159,212344630,1387219594,1725294528,3745187956,2500153616,458938280,4129215917,1828119673,544571780,3503225445,2297937496,1241802790,267843827,2694610800,1397140384,1558801448,3782667683,1806446719,929573330,2234912681,400817706,616011623,4121520928,3603768725,1761550015,1968522284,4053731006,4192232858,4005120285,872482584,3140537016,3894607381,2287405443,1963876937,3663887957,1584857e3,2975024454,1833426440,4025083860],n[5]=[4143615901,749497569,1285769319,3795025788,2514159847,23610292,3974978748,844452780,3214870880,3751928557,2213566365,1676510905,448177848,3730751033,4086298418,2307502392,871450977,3222878141,4110862042,3831651966,2735270553,1310974780,2043402188,1218528103,2736035353,4274605013,2702448458,3936360550,2693061421,162023535,2827510090,687910808,23484817,3784910947,3371371616,779677500,3503626546,3473927188,4157212626,3500679282,4248902014,2466621104,3899384794,1958663117,925738300,1283408968,3669349440,1840910019,137959847,2679828185,1239142320,1315376211,1547541505,1690155329,739140458,3128809933,3933172616,3876308834,905091803,1548541325,4040461708,3095483362,144808038,451078856,676114313,2861728291,2469707347,993665471,373509091,2599041286,4025009006,4170239449,2149739950,3275793571,3749616649,2794760199,1534877388,572371878,2590613551,1753320020,3467782511,1405125690,4270405205,633333386,3026356924,3475123903,632057672,2846462855,1404951397,3882875879,3915906424,195638627,2385783745,3902872553,1233155085,3355999740,2380578713,2702246304,2144565621,3663341248,3894384975,2502479241,4248018925,3094885567,1594115437,572884632,3385116731,767645374,1331858858,1475698373,3793881790,3532746431,1321687957,619889600,1121017241,3440213920,2070816767,2833025776,1933951238,4095615791,890643334,3874130214,859025556,360630002,925594799,1764062180,3920222280,4078305929,979562269,2810700344,4087740022,1949714515,546639971,1165388173,3069891591,1495988560,922170659,1291546247,2107952832,1813327274,3406010024,3306028637,4241950635,153207855,2313154747,1608695416,1150242611,1967526857,721801357,1220138373,3691287617,3356069787,2112743302,3281662835,1111556101,1778980689,250857638,2298507990,673216130,2846488510,3207751581,3562756981,3008625920,3417367384,2198807050,529510932,3547516680,3426503187,2364944742,102533054,2294910856,1617093527,1204784762,3066581635,1019391227,1069574518,1317995090,1691889997,3661132003,510022745,3238594800,1362108837,1817929911,2184153760,805817662,1953603311,3699844737,120799444,2118332377,207536705,2282301548,4120041617,145305846,2508124933,3086745533,3261524335,1877257368,2977164480,3160454186,2503252186,4221677074,759945014,254147243,2767453419,3801518371,629083197,2471014217,907280572,3900796746,940896768,2751021123,2625262786,3161476951,3661752313,3260732218,1425318020,2977912069,1496677566,3988592072,2140652971,3126511541,3069632175,977771578,1392695845,1698528874,1411812681,1369733098,1343739227,3620887944,1142123638,67414216,3102056737,3088749194,1626167401,2546293654,3941374235,697522451,33404913,143560186,2595682037,994885535,1247667115,3859094837,2699155541,3547024625,4114935275,2968073508,3199963069,2732024527,1237921620,951448369,1898488916,1211705605,2790989240,2233243581,3598044975],n[6]=[2246066201,858518887,1714274303,3485882003,713916271,2879113490,3730835617,539548191,36158695,1298409750,419087104,1358007170,749914897,2989680476,1261868530,2995193822,2690628854,3443622377,3780124940,3796824509,2976433025,4259637129,1551479e3,512490819,1296650241,951993153,2436689437,2460458047,144139966,3136204276,310820559,3068840729,643875328,1969602020,1680088954,2185813161,3283332454,672358534,198762408,896343282,276269502,3014846926,84060815,197145886,376173866,3943890818,3813173521,3545068822,1316698879,1598252827,2633424951,1233235075,859989710,2358460855,3503838400,3409603720,1203513385,1193654839,2792018475,2060853022,207403770,1144516871,3068631394,1121114134,177607304,3785736302,326409831,1929119770,2983279095,4183308101,3474579288,3200513878,3228482096,119610148,1170376745,3378393471,3163473169,951863017,3337026068,3135789130,2907618374,1183797387,2015970143,4045674555,2182986399,2952138740,3928772205,384012900,2454997643,10178499,2879818989,2596892536,111523738,2995089006,451689641,3196290696,235406569,1441906262,3890558523,3013735005,4158569349,1644036924,376726067,1006849064,3664579700,2041234796,1021632941,1374734338,2566452058,371631263,4007144233,490221539,206551450,3140638584,1053219195,1853335209,3412429660,3562156231,735133835,1623211703,3104214392,2738312436,4096837757,3366392578,3110964274,3956598718,3196820781,2038037254,3877786376,2339753847,300912036,3766732888,2372630639,1516443558,4200396704,1574567987,4069441456,4122592016,2699739776,146372218,2748961456,2043888151,35287437,2596680554,655490400,1132482787,110692520,1031794116,2188192751,1324057718,1217253157,919197030,686247489,3261139658,1028237775,3135486431,3059715558,2460921700,986174950,2661811465,4062904701,2752986992,3709736643,367056889,1353824391,731860949,1650113154,1778481506,784341916,357075625,3608602432,1074092588,2480052770,3811426202,92751289,877911070,3600361838,1231880047,480201094,3756190983,3094495953,434011822,87971354,363687820,1717726236,1901380172,3926403882,2481662265,400339184,1490350766,2661455099,1389319756,2558787174,784598401,1983468483,30828846,3550527752,2716276238,3841122214,1765724805,1955612312,1277890269,1333098070,1564029816,2704417615,1026694237,3287671188,1260819201,3349086767,1016692350,1582273796,1073413053,1995943182,694588404,1025494639,3323872702,3551898420,4146854327,453260480,1316140391,1435673405,3038941953,3486689407,1622062951,403978347,817677117,950059133,4246079218,3278066075,1486738320,1417279718,481875527,2549965225,3933690356,760697757,1452955855,3897451437,1177426808,1702951038,4085348628,2447005172,1084371187,3516436277,3068336338,1073369276,1027665953,3284188590,1230553676,1368340146,2226246512,267243139,2274220762,4070734279,2497715176,2423353163,2504755875],n[7]=[3793104909,3151888380,2817252029,895778965,2005530807,3871412763,237245952,86829237,296341424,3851759377,3974600970,2475086196,709006108,1994621201,2972577594,937287164,3734691505,168608556,3189338153,2225080640,3139713551,3033610191,3025041904,77524477,185966941,1208824168,2344345178,1721625922,3354191921,1066374631,1927223579,1971335949,2483503697,1551748602,2881383779,2856329572,3003241482,48746954,1398218158,2050065058,313056748,4255789917,393167848,1912293076,940740642,3465845460,3091687853,2522601570,2197016661,1727764327,364383054,492521376,1291706479,3264136376,1474851438,1685747964,2575719748,1619776915,1814040067,970743798,1561002147,2925768690,2123093554,1880132620,3151188041,697884420,2550985770,2607674513,2659114323,110200136,1489731079,997519150,1378877361,3527870668,478029773,2766872923,1022481122,431258168,1112503832,897933369,2635587303,669726182,3383752315,918222264,163866573,3246985393,3776823163,114105080,1903216136,761148244,3571337562,1690750982,3166750252,1037045171,1888456500,2010454850,642736655,616092351,365016990,1185228132,4174898510,1043824992,2023083429,2241598885,3863320456,3279669087,3674716684,108438443,2132974366,830746235,606445527,4173263986,2204105912,1844756978,2532684181,4245352700,2969441100,3796921661,1335562986,4061524517,2720232303,2679424040,634407289,885462008,3294724487,3933892248,2094100220,339117932,4048830727,3202280980,1458155303,2689246273,1022871705,2464987878,3714515309,353796843,2822958815,4256850100,4052777845,551748367,618185374,3778635579,4020649912,1904685140,3069366075,2670879810,3407193292,2954511620,4058283405,2219449317,3135758300,1120655984,3447565834,1474845562,3577699062,550456716,3466908712,2043752612,881257467,869518812,2005220179,938474677,3305539448,3850417126,1315485940,3318264702,226533026,965733244,321539988,1136104718,804158748,573969341,3708209826,937399083,3290727049,2901666755,1461057207,4013193437,4066861423,3242773476,2421326174,1581322155,3028952165,786071460,3900391652,3918438532,1485433313,4023619836,3708277595,3678951060,953673138,1467089153,1930354364,1533292819,2492563023,1346121658,1685000834,1965281866,3765933717,4190206607,2052792609,3515332758,690371149,3125873887,2180283551,2903598061,3933952357,436236910,289419410,14314871,1242357089,2904507907,1616633776,2666382180,585885352,3471299210,2699507360,1432659641,277164553,3354103607,770115018,2303809295,3741942315,3177781868,2853364978,2269453327,3774259834,987383833,1290892879,225909803,1741533526,890078084,1496906255,1111072499,916028167,243534141,1252605537,2204162171,531204876,290011180,3916834213,102027703,237315147,209093447,1486785922,220223953,2758195998,4175039106,82940208,3127791296,2569425252,518464269,1353887104,3941492737,2377294467,3935040926]}function ka(d){this.cast5=new G6,this.cast5.setKey(d),this.encrypt=function(e){return this.cast5.encrypt(e)}}ka.blockSize=ka.prototype.blockSize=8;ka.keySize=ka.prototype.keySize=16;var lt=4294967295;function Tt(d,e){return(d<<e|d>>>32-e)&lt}function Yt(d,e){return d[e]|d[e+1]<<8|d[e+2]<<16|d[e+3]<<24}function hd(d,e,t){d.splice(e,4,t&255,t>>>8&255,t>>>16&255,t>>>24&255)}function te(d,e){return d>>>e*8&255}function Q6(){let d=null,e=null,t=-1,i=[],a=[[],[],[],[]];function n(g){d=g;let y,f,h,I,b,F=[],X=[],T=[],x,E=[],D,v,C,M=[[8,1,7,13,6,15,3,2,0,11,5,9,14,12,10,4],[2,8,11,13,15,7,6,14,3,1,9,4,0,10,12,5]],O=[[14,12,11,8,1,2,3,5,15,4,10,6,7,0,9,13],[1,14,2,11,4,12,3,7,6,13,10,5,15,9,0,8]],R=[[11,10,5,14,6,13,9,0,12,8,15,3,2,4,7,1],[4,12,7,5,1,6,9,10,0,14,13,8,2,11,3,15]],w=[[13,7,15,4,1,2,6,14,9,11,3,0,8,5,12,10],[11,9,5,1,12,3,13,14,6,4,7,15,2,0,8,10]],N=[0,8,1,9,2,10,3,11,4,12,5,13,6,14,7,15],A=[0,9,2,11,4,13,6,15,8,1,10,3,12,5,14,7],L=[[],[]],U=[[],[],[],[]];function q(B){return B^B>>2^[0,90,180,238][B&3]}function j(B){return B^B>>1^B>>2^[0,238,180,90][B&3]}function z(B,Q){let K,W,Y;for(K=0;K<8;K++)W=Q>>>24,Q=Q<<8&lt|B>>>24,B=B<<8&lt,Y=W<<1,W&128&&(Y^=333),Q^=W^Y<<16,Y^=W>>>1,W&1&&(Y^=166),Q^=Y<<24|Y<<8;return Q}function H(B,Q){let K=Q>>4,W=Q&15,Y=M[B][K^W],Z=O[B][N[W]^A[K]];return w[B][N[Z]^A[Y]]<<4|R[B][Y^Z]}function G(B,Q){let K=te(B,0),W=te(B,1),Y=te(B,2),Z=te(B,3);switch(x){case 4:K=L[1][K]^te(Q[3],0),W=L[0][W]^te(Q[3],1),Y=L[0][Y]^te(Q[3],2),Z=L[1][Z]^te(Q[3],3);case 3:K=L[1][K]^te(Q[2],0),W=L[1][W]^te(Q[2],1),Y=L[0][Y]^te(Q[2],2),Z=L[0][Z]^te(Q[2],3);case 2:K=L[0][L[0][K]^te(Q[1],0)]^te(Q[0],0),W=L[0][L[1][W]^te(Q[1],1)]^te(Q[0],1),Y=L[1][L[0][Y]^te(Q[1],2)]^te(Q[0],2),Z=L[1][L[1][Z]^te(Q[1],3)]^te(Q[0],3)}return U[0][K]^U[1][W]^U[2][Y]^U[3][Z]}for(d=d.slice(0,32),y=d.length;y!==16&&y!==24&&y!==32;)d[y++]=0;for(y=0;y<d.length;y+=4)T[y>>2]=Yt(d,y);for(y=0;y<256;y++)L[0][y]=H(0,y),L[1][y]=H(1,y);for(y=0;y<256;y++)D=L[1][y],v=q(D),C=j(D),U[0][y]=D+(v<<8)+(C<<16)+(C<<24),U[2][y]=v+(C<<8)+(D<<16)+(C<<24),D=L[0][y],v=q(D),C=j(D),U[1][y]=C+(C<<8)+(v<<16)+(D<<24),U[3][y]=v+(D<<8)+(C<<16)+(v<<24);for(x=T.length/2,y=0;y<x;y++)f=T[y+y],F[y]=f,h=T[y+y+1],X[y]=h,E[x-y-1]=z(f,h);for(y=0;y<40;y+=2)f=16843009*y,h=f+16843009,f=G(f,F),h=Tt(G(h,X),8),i[y]=f+h&lt,i[y+1]=Tt(f+2*h,9);for(y=0;y<256;y++)switch(f=h=I=b=y,x){case 4:f=L[1][f]^te(E[3],0),h=L[0][h]^te(E[3],1),I=L[0][I]^te(E[3],2),b=L[1][b]^te(E[3],3);case 3:f=L[1][f]^te(E[2],0),h=L[1][h]^te(E[2],1),I=L[0][I]^te(E[2],2),b=L[0][b]^te(E[2],3);case 2:a[0][y]=U[0][L[0][L[0][f]^te(E[1],0)]^te(E[0],0)],a[1][y]=U[1][L[0][L[1][h]^te(E[1],1)]^te(E[0],1)],a[2][y]=U[2][L[1][L[0][I]^te(E[1],2)]^te(E[0],2)],a[3][y]=U[3][L[1][L[1][b]^te(E[1],3)]^te(E[0],3)]}}function r(g){return a[0][te(g,0)]^a[1][te(g,1)]^a[2][te(g,2)]^a[3][te(g,3)]}function o(g){return a[0][te(g,3)]^a[1][te(g,0)]^a[2][te(g,1)]^a[3][te(g,2)]}function s(g,y){let f=r(y[0]),h=o(y[1]);y[2]=Tt(y[2]^f+h+i[4*g+8]&lt,31),y[3]=Tt(y[3],1)^f+2*h+i[4*g+9]&lt,f=r(y[2]),h=o(y[3]),y[0]=Tt(y[0]^f+h+i[4*g+10]&lt,31),y[1]=Tt(y[1],1)^f+2*h+i[4*g+11]&lt}function c(g,y){let f=r(y[0]),h=o(y[1]);y[2]=Tt(y[2],1)^f+h+i[4*g+10]&lt,y[3]=Tt(y[3]^f+2*h+i[4*g+11]&lt,31),f=r(y[2]),h=o(y[3]),y[0]=Tt(y[0],1)^f+h+i[4*g+8]&lt,y[1]=Tt(y[1]^f+2*h+i[4*g+9]&lt,31)}function p(){i=[],a=[[],[],[],[]]}function l(g,y){e=g,t=y;let f=[Yt(e,t)^i[0],Yt(e,t+4)^i[1],Yt(e,t+8)^i[2],Yt(e,t+12)^i[3]];for(let h=0;h<8;h++)s(h,f);return hd(e,t,f[2]^i[4]),hd(e,t+4,f[3]^i[5]),hd(e,t+8,f[0]^i[6]),hd(e,t+12,f[1]^i[7]),t+=16,e}function m(g,y){e=g,t=y;let f=[Yt(e,t)^i[4],Yt(e,t+4)^i[5],Yt(e,t+8)^i[6],Yt(e,t+12)^i[7]];for(let h=7;h>=0;h--)c(h,f);hd(e,t,f[2]^i[0]),hd(e,t+4,f[3]^i[1]),hd(e,t+8,f[0]^i[2]),hd(e,t+12,f[1]^i[3]),t+=16}function P(){return e}return{name:"twofish",blocksize:128/8,open:n,close:p,encrypt:l,decrypt:m,finalize:P}}function Ua(d){this.tf=Q6(),this.tf.open(Array.from(d),0),this.encrypt=function(e){return this.tf.encrypt(Array.from(e),0)}}Ua.keySize=Ua.prototype.keySize=32;Ua.blockSize=Ua.prototype.blockSize=16;function Et(){}Et.prototype.BLOCKSIZE=8;Et.prototype.SBOXES=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];Et.prototype.PARRAY=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731];Et.prototype.NN=16;Et.prototype._clean=function(d){return d<0&&(d=(d&2147483647)+2147483648),d};Et.prototype._F=function(d){let e,t=d&255;d>>>=8;let i=d&255;d>>>=8;let a=d&255;d>>>=8;let n=d&255;return e=this.sboxes[0][n]+this.sboxes[1][a],e^=this.sboxes[2][i],e+=this.sboxes[3][t],e};Et.prototype._encryptBlock=function(d){let e=d[0],t=d[1],i;for(i=0;i<this.NN;++i){e^=this.parray[i],t=this._F(e)^t;let a=e;e=t,t=a}e^=this.parray[this.NN+0],t^=this.parray[this.NN+1],d[0]=this._clean(t),d[1]=this._clean(e)};Et.prototype.encryptBlock=function(d){let e,t=[0,0],i=this.BLOCKSIZE/2;for(e=0;e<this.BLOCKSIZE/2;++e)t[0]=t[0]<<8|d[e+0]&255,t[1]=t[1]<<8|d[e+i]&255;this._encryptBlock(t);let a=[];for(e=0;e<this.BLOCKSIZE/2;++e)a[e+0]=t[0]>>>24-8*e&255,a[e+i]=t[1]>>>24-8*e&255;return a};Et.prototype._decryptBlock=function(d){let e=d[0],t=d[1],i;for(i=this.NN+1;i>1;--i){e^=this.parray[i],t=this._F(e)^t;let a=e;e=t,t=a}e^=this.parray[1],t^=this.parray[0],d[0]=this._clean(t),d[1]=this._clean(e)};Et.prototype.init=function(d){let e,t=0;for(this.parray=[],e=0;e<this.NN+2;++e){let a=0;for(let n=0;n<4;++n)a=a<<8|d[t]&255,++t>=d.length&&(t=0);this.parray[e]=this.PARRAY[e]^a}for(this.sboxes=[],e=0;e<4;++e)for(this.sboxes[e]=[],t=0;t<256;++t)this.sboxes[e][t]=this.SBOXES[e][t];let i=[0,0];for(e=0;e<this.NN+2;e+=2)this._encryptBlock(i),this.parray[e+0]=i[0],this.parray[e+1]=i[1];for(e=0;e<4;++e)for(t=0;t<256;t+=2)this._encryptBlock(i),this.sboxes[e][t+0]=i[0],this.sboxes[e][t+1]=i[1]};function qa(d){this.bf=new Et,this.bf.init(d),this.encrypt=function(e){return this.bf.encryptBlock(e)}}qa.keySize=qa.prototype.keySize=16;qa.blockSize=qa.prototype.blockSize=8;var V6=new Map(Object.entries({tripledes:Oa,cast5:ka,twofish:Ua,blowfish:qa})),z6=Object.freeze({__proto__:null,legacyCiphers:V6});function xi(d,e,t,i){d[e]+=t[i],d[e+1]+=t[i+1]+(d[e]<t[i])}function U4(d,e){d[0]+=e,d[1]+=d[0]<e}function Id(d,e,t,i,a,n,r,o){xi(d,t,d,i),xi(d,t,e,r);let s=d[n]^d[t],c=d[n+1]^d[t+1];d[n]=c,d[n+1]=s,xi(d,a,d,n),s=d[i]^d[a],c=d[i+1]^d[a+1],d[i]=s>>>24^c<<8,d[i+1]=c>>>24^s<<8,xi(d,t,d,i),xi(d,t,e,o),s=d[n]^d[t],c=d[n+1]^d[t+1],d[n]=s>>>16^c<<16,d[n+1]=c>>>16^s<<16,xi(d,a,d,n),s=d[i]^d[a],c=d[i+1]^d[a+1],d[i]=c>>>31^s<<1,d[i+1]=s>>>31^c<<1}var V5=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),Be=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3].map(d=>d*2));function q4(d,e){let t=new Uint32Array(32),i=new Uint32Array(d.b.buffer,d.b.byteOffset,32);for(let n=0;n<16;n++)t[n]=d.h[n],t[n+16]=V5[n];t[24]^=d.t0[0],t[25]^=d.t0[1];let a=e?4294967295:0;t[28]^=a,t[29]^=a;for(let n=0;n<12;n++){let r=n<<4;Id(t,i,0,8,16,24,Be[r+0],Be[r+1]),Id(t,i,2,10,18,26,Be[r+2],Be[r+3]),Id(t,i,4,12,20,28,Be[r+4],Be[r+5]),Id(t,i,6,14,22,30,Be[r+6],Be[r+7]),Id(t,i,0,10,20,30,Be[r+8],Be[r+9]),Id(t,i,2,12,22,24,Be[r+10],Be[r+11]),Id(t,i,4,14,16,26,Be[r+12],Be[r+13]),Id(t,i,6,8,18,28,Be[r+14],Be[r+15])}for(let n=0;n<16;n++)d.h[n]^=t[n]^t[n+16]}var Fs=class{constructor(e,t,i,a){let n=new Uint8Array(64);this.S={b:new Uint8Array(fa),h:new Uint32Array(Es/4),t0:new Uint32Array(2),c:0,outlen:e},n[0]=e,t&&(n[1]=t.length),n[2]=1,n[3]=1,i&&n.set(i,32),a&&n.set(a,48);let r=new Uint32Array(n.buffer,n.byteOffset,n.length/Uint32Array.BYTES_PER_ELEMENT);for(let o=0;o<16;o++)this.S.h[o]=V5[o]^r[o];if(t){let o=new Uint8Array(fa);o.set(t),this.update(o)}}update(e){if(!(e instanceof Uint8Array))throw new Error("Input must be Uint8Array or Buffer");let t=0;for(;t<e.length;){this.S.c===fa&&(U4(this.S.t0,this.S.c),q4(this.S,!1),this.S.c=0);let i=fa-this.S.c;this.S.b.set(e.subarray(t,t+i),this.S.c);let a=Math.min(i,e.length-t);this.S.c+=a,t+=a}return this}digest(e){U4(this.S.t0,this.S.c),this.S.b.fill(0,this.S.c),this.S.c=fa,q4(this.S,!0);let t=e||new Uint8Array(this.S.outlen);for(let i=0;i<this.S.outlen;i++)t[i]=this.S.h[i>>2]>>8*(i&3);return this.S.h=null,t.buffer}};function Bn(d,e,t,i){if(d>Es)throw new Error(`outlen must be at most ${Es} (given: ${d})`);return new Fs(d,e,t,i)}var Es=64,fa=128,nc=2,z5=19,H6=4294967295,W6=4,_6=4294967295,K6=8,Y6=4294967295,J6=8,$6=4294967295,Z6=4294967295,eD=32,Jt=1024,tD=64,dD=new Uint8Array(new Uint16Array([43981]).buffer)[0]===205;function Ye(d,e,t){return d[t+0]=e,d[t+1]=e>>8,d[t+2]=e>>16,d[t+3]=e>>24,d}function Wd(d,e,t){if(e>Number.MAX_SAFE_INTEGER)throw new Error("LE64: large numbers unsupported");let i=e;for(let a=t;a<t+7;a++)d[a]=i,i=(i-d[a])/256;return d}function Oo(d,e,t){let i=new Uint8Array(64),a=new Uint8Array(4+e.length);if(Ye(a,d,0),a.set(e,4),d<=64)return Bn(d).update(a).digest(t),t;let n=Math.ceil(d/32)-2;for(let o=0;o<n;o++)Bn(64).update(o===0?a:i).digest(i),t.set(i.subarray(0,32),o*32);let r=new Uint8Array(Bn(d-32*n).update(i).digest());return t.set(r,n*32),t}function B4(d,e,t,i){return d.fn.XOR(e.byteOffset,t.byteOffset,i.byteOffset),e}function iD(d,e,t,i){return d.fn.G(e.byteOffset,t.byteOffset,i.byteOffset,d.refs.gZ.byteOffset),i}function aD(d,e,t,i){return d.fn.G2(e.byteOffset,t.byteOffset,i.byteOffset,d.refs.gZ.byteOffset),i}function*nD(d,e,t,i,a,n,r,o){d.refs.prngTmp.fill(0);let s=d.refs.prngTmp.subarray(0,6*8);Wd(s,e,0),Wd(s,t,8),Wd(s,i,16),Wd(s,a,24),Wd(s,n,32),Wd(s,nc,40);for(let c=1;c<=r;c++){Wd(d.refs.prngTmp,c,s.length);let p=aD(d,d.refs.ZERO1024,d.refs.prngTmp,d.refs.prngR);for(let l=c===1?o*8:0;l<p.length;l+=8)yield p.subarray(l,l+8)}return[]}function rD({type:d,version:e,tagLength:t,password:i,salt:a,ad:n,secret:r,parallelism:o,memorySize:s,passes:c}){let p=(l,m,P,g)=>{if(m<P||m>g)throw new Error(`${l} size should be between ${P} and ${g} bytes`)};if(d!==nc||e!==z5)throw new Error("Unsupported type or version");return p("password",i,J6,Y6),p("salt",a,K6,_6),p("tag",t,W6,H6),p("memory",s,8*o,$6),n&&p("associated data",n,0,Z6),r&&p("secret",r,0,eD),{type:d,version:e,tagLength:t,password:i,salt:a,ad:n,secret:r,lanes:o,memorySize:s,passes:c}}var H5=1024,oD=64*H5;function sD(d,{memory:e,instance:t}){if(!dD)throw new Error("BigEndian system not supported");let i=rD({type:nc,version:z5,...d}),{G:a,G2:n,xor:r,getLZ:o}=t.exports,s={},c={};c.G=a,c.G2=n,c.XOR=r;let p=4*i.lanes*Math.floor(i.memorySize/(4*i.lanes)),l=p*Jt+10*H5;if(e.buffer.byteLength<l){let v=Math.ceil((l-e.buffer.byteLength)/oD);e.grow(v)}let m=0;s.gZ=new Uint8Array(e.buffer,m,Jt),m+=s.gZ.length,s.prngR=new Uint8Array(e.buffer,m,Jt),m+=s.prngR.length,s.prngTmp=new Uint8Array(e.buffer,m,Jt),m+=s.prngTmp.length,s.ZERO1024=new Uint8Array(e.buffer,m,1024),m+=s.ZERO1024.length;let P=new Uint32Array(e.buffer,m,2);m+=P.length*Uint32Array.BYTES_PER_ELEMENT;let g={fn:c,refs:s},y=new Uint8Array(e.buffer,m,Jt);m+=y.length;let f=new Uint8Array(e.buffer,m,i.memorySize*Jt),h=new Uint8Array(e.buffer,0,m),I=cD(i),b=p/i.lanes,F=new Array(i.lanes).fill(null).map(()=>new Array(b)),X=(v,C)=>(F[v][C]=f.subarray(v*b*1024+C*1024,v*b*1024+C*1024+Jt),F[v][C]);for(let v=0;v<i.lanes;v++){let C=new Uint8Array(I.length+8);C.set(I),Ye(C,0,I.length),Ye(C,v,I.length+4),Oo(Jt,C,X(v,0)),Ye(C,1,I.length),Oo(Jt,C,X(v,1))}let T=4,x=b/T;for(let v=0;v<i.passes;v++)for(let C=0;C<T;C++){let M=v===0&&C<=1;for(let O=0;O<i.lanes;O++){let R=C===0&&v===0?2:0,w=M?nD(g,v,O,C,p,i.passes,x,R):null;for(R;R<x;R++){let N=C*x+R,A=N>0?F[O][N-1]:F[O][b-1],L=M?w.next().value:A;o(P.byteOffset,L.byteOffset,O,i.lanes,v,C,R,T,x);let U=P[0],q=P[1];v===0&&X(O,N),iD(g,A,F[U][q],v>0?y:F[O][N]),v>0&&B4(g,F[O][N],y,F[O][N])}}}let E=F[0][b-1];for(let v=1;v<i.lanes;v++)B4(g,E,E,F[v][b-1]);let D=Oo(i.tagLength,E,new Uint8Array(i.tagLength));return h.fill(0),e.grow(0),D}function cD(d){let e=Bn(tD),t=new Uint8Array(4),i=new Uint8Array(24);Ye(i,d.lanes,0),Ye(i,d.tagLength,4),Ye(i,d.memorySize,8),Ye(i,d.passes,12),Ye(i,d.version,16),Ye(i,d.type,20);let a=[i];d.password?(a.push(Ye(new Uint8Array(4),d.password.length,0)),a.push(d.password)):a.push(t),d.salt?(a.push(Ye(new Uint8Array(4),d.salt.length,0)),a.push(d.salt)):a.push(t),d.secret?(a.push(Ye(new Uint8Array(4),d.secret.length,0)),a.push(d.secret)):a.push(t),d.ad?(a.push(Ye(new Uint8Array(4),d.ad.length,0)),a.push(d.ad)):a.push(t),e.update(pD(a));let n=e.digest();return new Uint8Array(n)}function pD(d){if(d.length===1)return d[0];let e=0;for(let a=0;a<d.length;a++){if(!(d[a]instanceof Uint8Array))throw new Error("concatArrays: Data must be in the form of a Uint8Array");e+=d[a].length}let t=new Uint8Array(e),i=0;return d.forEach(a=>{t.set(a,i),i+=a.length}),t}var Nn;async function uD(d,e,t){let i={env:{memory:d}};if(Nn===void 0)try{let n=await e(i);return Nn=!0,n}catch{Nn=!1}return(Nn?e:t)(i)}async function lD(d,e){let t=new WebAssembly.Memory({initial:1040,maximum:65536}),i=await uD(t,d,e);return n=>sD(n,{instance:i.instance,memory:t})}function W5(d,e,t,i){function a(c,p,l){var m=WebAssembly.instantiate,P=WebAssembly.compile;return p?m(c,p):P(c)}var n=null,r=je.atob(t),o=r.length;n=new Uint8Array(new ArrayBuffer(o));for(var s=0;s<o;s++)n[s]=r.charCodeAt(s);return a(n,i)}function mD(d){return W5(0,null,"AGFzbQEAAAABKwdgBH9/f38AYAABf2AAAGADf39/AGAJf39/f39/f39/AX9gAX8AYAF/AX8CEwEDZW52Bm1lbW9yeQIBkAiAgAQDCgkCAwAABAEFBgEEBQFwAQICBgkBfwFBkIjAAgsHfQoDeG9yAAEBRwACAkcyAAMFZ2V0TFoABBlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALX2luaXRpYWxpemUAABBfX2Vycm5vX2xvY2F0aW9uAAgJc3RhY2tTYXZlAAUMc3RhY2tSZXN0b3JlAAYKc3RhY2tBbGxvYwAHCQcBAEEBCwEACs0gCQMAAQtYAQJ/A0AgACAEQQR0IgNqIAIgA2r9AAQAIAEgA2r9AAQA/VH9CwQAIAAgA0EQciIDaiACIANq/QAEACABIANq/QAEAP1R/QsEACAEQQJqIgRBwABHDQALC7ceAgt7A38DQCADIBFBBHQiD2ogASAPav0ABAAgACAPav0ABAD9USIF/QsEACACIA9qIAX9CwQAIAMgD0EQciIPaiABIA9q/QAEACAAIA9q/QAEAP1RIgX9CwQAIAIgD2ogBf0LBAAgEUECaiIRQcAARw0ACwNAIAMgEEEHdGoiAEEQaiAA/QAEcCAA/QAEMCIFIAD9AAQQIgT9zgEgBSAF/Q0AAQIDCAkKCwABAgMICQoLIAQgBP0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgT9USIJQSD9ywEgCUEg/c0B/VAiCSAA/QAEUCIG/c4BIAkgCf0NAAECAwgJCgsAAQIDCAkKCyAGIAb9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIGIAX9USIFQSj9ywEgBUEY/c0B/VAiCCAE/c4BIAggCP0NAAECAwgJCgsAAQIDCAkKCyAEIAT9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIKIAogCf1RIgVBMP3LASAFQRD9zQH9UCIFIAb9zgEgBSAF/Q0AAQIDCAkKCwABAgMICQoLIAYgBv0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgkgCP1RIgRBAf3LASAEQT/9zQH9UCIMIAD9AARgIAD9AAQgIgQgAP0ABAAiBv3OASAEIAT9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBv1RIghBIP3LASAIQSD9zQH9UCIIIABBQGsiAf0ABAAiB/3OASAIIAj9DQABAgMICQoLAAECAwgJCgsgByAH/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiByAE/VEiBEEo/csBIARBGP3NAf1QIgsgBv3OASALIAv9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBiAI/VEiBEEw/csBIARBEP3NAf1QIgQgB/3OASAEIAT9DQABAgMICQoLAAECAwgJCgsgByAH/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiCCAL/VEiB0EB/csBIAdBP/3NAf1QIg0gDf0NAAECAwQFBgcQERITFBUWF/0NCAkKCwwNDg8YGRobHB0eHyIH/c4BIAcgB/0NAAECAwgJCgsAAQIDCAkKCyAKIAr9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIKIAQgBSAF/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4f/VEiC0Eg/csBIAtBIP3NAf1QIgsgCP3OASALIAv9DQABAgMICQoLAAECAwgJCgsgCCAI/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiCCAH/VEiB0Eo/csBIAdBGP3NAf1QIgcgCv3OASAHIAf9DQABAgMICQoLAAECAwgJCgsgCiAK/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiDv0LBAAgACAGIA0gDCAM/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4fIgr9zgEgCiAK/Q0AAQIDCAkKCwABAgMICQoLIAYgBv0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgYgBSAEIAT9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9USIFQSD9ywEgBUEg/c0B/VAiBSAJ/c4BIAUgBf0NAAECAwgJCgsAAQIDCAkKCyAJIAn9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIJIAr9USIEQSj9ywEgBEEY/c0B/VAiCiAG/c4BIAogCv0NAAECAwgJCgsAAQIDCAkKCyAGIAb9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIE/QsEACAAIAQgBf1RIgVBMP3LASAFQRD9zQH9UCIFIA4gC/1RIgRBMP3LASAEQRD9zQH9UCIEIAT9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9CwRgIAAgBCAFIAX9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9CwRwIAEgBCAI/c4BIAQgBP0NAAECAwgJCgsAAQIDCAkKCyAIIAj9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIE/QsEACAAIAUgCf3OASAFIAX9DQABAgMICQoLAAECAwgJCgsgCSAJ/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiCf0LBFAgACAEIAf9USIFQQH9ywEgBUE//c0B/VAiBSAJIAr9USIEQQH9ywEgBEE//c0B/VAiBCAE/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4f/QsEICAAIAQgBSAF/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4f/QsEMCAQQQFqIhBBCEcNAAtBACEQA0AgAyAQQQR0aiIAQYABaiAA/QAEgAcgAP0ABIADIgUgAP0ABIABIgT9zgEgBSAF/Q0AAQIDCAkKCwABAgMICQoLIAQgBP0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgT9USIJQSD9ywEgCUEg/c0B/VAiCSAA/QAEgAUiBv3OASAJIAn9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBiAF/VEiBUEo/csBIAVBGP3NAf1QIgggBP3OASAIIAj9DQABAgMICQoLAAECAwgJCgsgBCAE/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiCiAKIAn9USIFQTD9ywEgBUEQ/c0B/VAiBSAG/c4BIAUgBf0NAAECAwgJCgsAAQIDCAkKCyAGIAb9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIJIAj9USIEQQH9ywEgBEE//c0B/VAiDCAA/QAEgAYgAP0ABIACIgQgAP0ABAAiBv3OASAEIAT9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBv1RIghBIP3LASAIQSD9zQH9UCIIIAD9AASABCIH/c4BIAggCP0NAAECAwgJCgsAAQIDCAkKCyAHIAf9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIHIAT9USIEQSj9ywEgBEEY/c0B/VAiCyAG/c4BIAsgC/0NAAECAwgJCgsAAQIDCAkKCyAGIAb9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIGIAj9USIEQTD9ywEgBEEQ/c0B/VAiBCAH/c4BIAQgBP0NAAECAwgJCgsAAQIDCAkKCyAHIAf9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIIIAv9USIHQQH9ywEgB0E//c0B/VAiDSAN/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4fIgf9zgEgByAH/Q0AAQIDCAkKCwABAgMICQoLIAogCv0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgogBCAFIAX9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9USILQSD9ywEgC0Eg/c0B/VAiCyAI/c4BIAsgC/0NAAECAwgJCgsAAQIDCAkKCyAIIAj9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIIIAf9USIHQSj9ywEgB0EY/c0B/VAiByAK/c4BIAcgB/0NAAECAwgJCgsAAQIDCAkKCyAKIAr9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIO/QsEACAAIAYgDSAMIAz9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh8iCv3OASAKIAr9DQABAgMICQoLAAECAwgJCgsgBiAG/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBiAFIAQgBP0NAAECAwQFBgcQERITFBUWF/0NCAkKCwwNDg8YGRobHB0eH/1RIgVBIP3LASAFQSD9zQH9UCIFIAn9zgEgBSAF/Q0AAQIDCAkKCwABAgMICQoLIAkgCf0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgkgCv1RIgRBKP3LASAEQRj9zQH9UCIKIAb9zgEgCiAK/Q0AAQIDCAkKCwABAgMICQoLIAYgBv0NAAECAwgJCgsAAQIDCAkKC/3eAUEB/csB/c4BIgT9CwQAIAAgBCAF/VEiBUEw/csBIAVBEP3NAf1QIgUgDiAL/VEiBEEw/csBIARBEP3NAf1QIgQgBP0NAAECAwQFBgcQERITFBUWF/0NCAkKCwwNDg8YGRobHB0eH/0LBIAGIAAgBCAFIAX9DQABAgMEBQYHEBESExQVFhf9DQgJCgsMDQ4PGBkaGxwdHh/9CwSAByAAIAQgCP3OASAEIAT9DQABAgMICQoLAAECAwgJCgsgCCAI/Q0AAQIDCAkKCwABAgMICQoL/d4BQQH9ywH9zgEiBP0LBIAEIAAgBSAJ/c4BIAUgBf0NAAECAwgJCgsAAQIDCAkKCyAJIAn9DQABAgMICQoLAAECAwgJCgv93gFBAf3LAf3OASIJ/QsEgAUgACAEIAf9USIFQQH9ywEgBUE//c0B/VAiBSAJIAr9USIEQQH9ywEgBEE//c0B/VAiBCAE/Q0AAQIDBAUGBxAREhMUFRYX/Q0ICQoLDA0ODxgZGhscHR4f/QsEgAIgACAEIAUgBf0NAAECAwQFBgcQERITFBUWF/0NCAkKCwwNDg8YGRobHB0eH/0LBIADIBBBAWoiEEEIRw0AC0EAIRADQCACIBBBBHQiAGoiASAAIANq/QAEACAB/QAEAP1R/QsEACACIABBEHIiAWoiDyABIANq/QAEACAP/QAEAP1R/QsEACACIABBIHIiAWoiDyABIANq/QAEACAP/QAEAP1R/QsEACACIABBMHIiAGoiASAAIANq/QAEACAB/QAEAP1R/QsEACAQQQRqIhBBwABHDQALCxYAIAAgASACIAMQAiAAIAIgAiADEAILewIBfwF+IAIhCSABNQIAIQogBCAFcgRAIAEoAgQgA3AhCQsgACAJNgIAIAAgB0EBayAFIAQbIAhsIAZBAWtBAEF/IAYbIAIgCUYbaiIBIAVBAWogCGxBACAEG2ogAa0gCiAKfkIgiH5CIIinQX9zaiAHIAhscDYCBCAACwQAIwALBgAgACQACxAAIwAgAGtBcHEiACQAIAALBQBBgAgL",d)}function yD(d){return W5(0,null,"AGFzbQEAAAABPwhgBH9/f38AYAABf2AAAGADf39/AGARf39/f39/f39/f39/f39/f38AYAl/f39/f39/f38Bf2ABfwBgAX8BfwITAQNlbnYGbWVtb3J5AgGQCICABAMLCgIDBAAABQEGBwEEBQFwAQICBgkBfwFBkIjAAgsHfQoDeG9yAAEBRwADAkcyAAQFZ2V0TFoABRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALX2luaXRpYWxpemUAABBfX2Vycm5vX2xvY2F0aW9uAAkJc3RhY2tTYXZlAAYMc3RhY2tSZXN0b3JlAAcKc3RhY2tBbGxvYwAICQcBAEEBCwEACssaCgMAAQtQAQJ/A0AgACAEQQN0IgNqIAIgA2opAwAgASADaikDAIU3AwAgACADQQhyIgNqIAIgA2opAwAgASADaikDAIU3AwAgBEECaiIEQYABRw0ACwveDwICfgF/IAAgAUEDdGoiEyATKQMAIhEgACAFQQN0aiIBKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAAIA1BA3RqIgUgESAFKQMAhUIgiSIRNwMAIAAgCUEDdGoiCSARIAkpAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAEgESABKQMAhUIoiSIRNwMAIBMgESATKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAFIBEgBSkDAIVCMIkiETcDACAJIBEgCSkDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgASARIAEpAwCFQgGJNwMAIAAgAkEDdGoiDSANKQMAIhEgACAGQQN0aiICKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAAIA5BA3RqIgYgESAGKQMAhUIgiSIRNwMAIAAgCkEDdGoiCiARIAopAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAIgESACKQMAhUIoiSIRNwMAIA0gESANKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAGIBEgBikDAIVCMIkiETcDACAKIBEgCikDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgAiARIAIpAwCFQgGJNwMAIAAgA0EDdGoiDiAOKQMAIhEgACAHQQN0aiIDKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAAIA9BA3RqIgcgESAHKQMAhUIgiSIRNwMAIAAgC0EDdGoiCyARIAspAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAMgESADKQMAhUIoiSIRNwMAIA4gESAOKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAHIBEgBykDAIVCMIkiETcDACALIBEgCykDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgAyARIAMpAwCFQgGJNwMAIAAgBEEDdGoiDyAPKQMAIhEgACAIQQN0aiIEKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAAIBBBA3RqIgggESAIKQMAhUIgiSIRNwMAIAAgDEEDdGoiACARIAApAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAQgESAEKQMAhUIoiSIRNwMAIA8gESAPKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAIIBEgCCkDAIVCMIkiETcDACAAIBEgACkDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgBCARIAQpAwCFQgGJNwMAIBMgEykDACIRIAIpAwAiEnwgEUIBhkL+////H4MgEkL/////D4N+fCIRNwMAIAggESAIKQMAhUIgiSIRNwMAIAsgESALKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACACIBEgAikDAIVCKIkiETcDACATIBEgEykDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgCCARIAgpAwCFQjCJIhE3AwAgCyARIAspAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAIgESACKQMAhUIBiTcDACANIA0pAwAiESADKQMAIhJ8IBFCAYZC/v///x+DIBJC/////w+DfnwiETcDACAFIBEgBSkDAIVCIIkiETcDACAAIBEgACkDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgAyARIAMpAwCFQiiJIhE3AwAgDSARIA0pAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAUgESAFKQMAhUIwiSIRNwMAIAAgESAAKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACADIBEgAykDAIVCAYk3AwAgDiAOKQMAIhEgBCkDACISfCARQgGGQv7///8fgyASQv////8Pg358IhE3AwAgBiARIAYpAwCFQiCJIhE3AwAgCSARIAkpAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAQgESAEKQMAhUIoiSIRNwMAIA4gESAOKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACAGIBEgBikDAIVCMIkiETcDACAJIBEgCSkDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgBCARIAQpAwCFQgGJNwMAIA8gDykDACIRIAEpAwAiEnwgEUIBhkL+////H4MgEkL/////D4N+fCIRNwMAIAcgESAHKQMAhUIgiSIRNwMAIAogESAKKQMAIhJ8IBFC/////w+DIBJCAYZC/v///x+DfnwiETcDACABIBEgASkDAIVCKIkiETcDACAPIBEgDykDACISfCARQv////8PgyASQgGGQv7///8fg358IhE3AwAgByARIAcpAwCFQjCJIhE3AwAgCiARIAopAwAiEnwgEUL/////D4MgEkIBhkL+////H4N+fCIRNwMAIAEgESABKQMAhUIBiTcDAAvdCAEPfwNAIAIgBUEDdCIGaiABIAZqKQMAIAAgBmopAwCFNwMAIAIgBkEIciIGaiABIAZqKQMAIAAgBmopAwCFNwMAIAVBAmoiBUGAAUcNAAsDQCADIARBA3QiAGogACACaikDADcDACADIARBAXIiAEEDdCIBaiABIAJqKQMANwMAIAMgBEECciIBQQN0IgVqIAIgBWopAwA3AwAgAyAEQQNyIgVBA3QiBmogAiAGaikDADcDACADIARBBHIiBkEDdCIHaiACIAdqKQMANwMAIAMgBEEFciIHQQN0IghqIAIgCGopAwA3AwAgAyAEQQZyIghBA3QiCWogAiAJaikDADcDACADIARBB3IiCUEDdCIKaiACIApqKQMANwMAIAMgBEEIciIKQQN0IgtqIAIgC2opAwA3AwAgAyAEQQlyIgtBA3QiDGogAiAMaikDADcDACADIARBCnIiDEEDdCINaiACIA1qKQMANwMAIAMgBEELciINQQN0Ig5qIAIgDmopAwA3AwAgAyAEQQxyIg5BA3QiD2ogAiAPaikDADcDACADIARBDXIiD0EDdCIQaiACIBBqKQMANwMAIAMgBEEOciIQQQN0IhFqIAIgEWopAwA3AwAgAyAEQQ9yIhFBA3QiEmogAiASaikDADcDACADIARB//8DcSAAQf//A3EgAUH//wNxIAVB//8DcSAGQf//A3EgB0H//wNxIAhB//8DcSAJQf//A3EgCkH//wNxIAtB//8DcSAMQf//A3EgDUH//wNxIA5B//8DcSAPQf//A3EgEEH//wNxIBFB//8DcRACIARB8ABJIQAgBEEQaiEEIAANAAtBACEBIANBAEEBQRBBEUEgQSFBMEExQcAAQcEAQdAAQdEAQeAAQeEAQfAAQfEAEAIgA0ECQQNBEkETQSJBI0EyQTNBwgBBwwBB0gBB0wBB4gBB4wBB8gBB8wAQAiADQQRBBUEUQRVBJEElQTRBNUHEAEHFAEHUAEHVAEHkAEHlAEH0AEH1ABACIANBBkEHQRZBF0EmQSdBNkE3QcYAQccAQdYAQdcAQeYAQecAQfYAQfcAEAIgA0EIQQlBGEEZQShBKUE4QTlByABByQBB2ABB2QBB6ABB6QBB+ABB+QAQAiADQQpBC0EaQRtBKkErQTpBO0HKAEHLAEHaAEHbAEHqAEHrAEH6AEH7ABACIANBDEENQRxBHUEsQS1BPEE9QcwAQc0AQdwAQd0AQewAQe0AQfwAQf0AEAIgA0EOQQ9BHkEfQS5BL0E+QT9BzgBBzwBB3gBB3wBB7gBB7wBB/gBB/wAQAgNAIAIgAUEDdCIAaiIEIAAgA2opAwAgBCkDAIU3AwAgAiAAQQhyIgRqIgUgAyAEaikDACAFKQMAhTcDACACIABBEHIiBGoiBSADIARqKQMAIAUpAwCFNwMAIAIgAEEYciIAaiIEIAAgA2opAwAgBCkDAIU3AwAgAUEEaiIBQYABRw0ACwsWACAAIAEgAiADEAMgACACIAIgAxADC3sCAX8BfiACIQkgATUCACEKIAQgBXIEQCABKAIEIANwIQkLIAAgCTYCACAAIAdBAWsgBSAEGyAIbCAGQQFrQQBBfyAGGyACIAlGG2oiASAFQQFqIAhsQQAgBBtqIAGtIAogCn5CIIh+QiCIp0F/c2ogByAIbHA2AgQgAAsEACMACwYAIAAkAAsQACMAIABrQXBxIgAkACAACwUAQYAICw==",d)}var SD=async()=>lD(d=>mD(d),d=>yD(d)),PD=Object.freeze({__proto__:null,default:SD}),j4=[0,1,3,7,15,31,63,127,255],Ka=function(d){this.stream=d,this.bitOffset=0,this.curByte=0,this.hasByte=!1};Ka.prototype._ensureByte=function(){this.hasByte||(this.curByte=this.stream.readByte(),this.hasByte=!0)};Ka.prototype.read=function(d){for(var e=0;d>0;){this._ensureByte();var t=8-this.bitOffset;if(d>=t)e<<=t,e|=j4[t]&this.curByte,this.hasByte=!1,this.bitOffset=0,d-=t;else{e<<=d;var i=t-d;e|=(this.curByte&j4[d]<<i)>>i,this.bitOffset+=d,d=0}}return e};Ka.prototype.seek=function(d){var e=d%8,t=(d-e)/8;this.bitOffset=e,this.stream.seek(t),this.hasByte=!1};Ka.prototype.pi=function(){var d=new Uint8Array(6),e;for(e=0;e<d.length;e++)d[e]=this.read(8);return fD(d)};function fD(d){return Array.prototype.map.call(d,e=>("00"+e.toString(16)).slice(-2)).join("")}var gD=Ka,ui=function(){};ui.prototype.readByte=function(){throw new Error("abstract method readByte() not implemented")};ui.prototype.read=function(d,e,t){for(var i=0;i<t;){var a=this.readByte();if(a<0)return i===0?-1:i;d[e++]=a,i++}return i};ui.prototype.seek=function(d){throw new Error("abstract method seek() not implemented")};ui.prototype.writeByte=function(d){throw new Error("abstract method readByte() not implemented")};ui.prototype.write=function(d,e,t){var i;for(i=0;i<t;i++)this.writeByte(d[e++]);return t};ui.prototype.flush=function(){};var hD=ui,ID=function(){var d=new Uint32Array([0,79764919,159529838,222504665,319059676,398814059,445009330,507990021,638119352,583659535,797628118,726387553,890018660,835552979,1015980042,944750013,1276238704,1221641927,1167319070,1095957929,1595256236,1540665371,1452775106,1381403509,1780037320,1859660671,1671105958,1733955601,2031960084,2111593891,1889500026,1952343757,2552477408,2632100695,2443283854,2506133561,2334638140,2414271883,2191915858,2254759653,3190512472,3135915759,3081330742,3009969537,2905550212,2850959411,2762807018,2691435357,3560074640,3505614887,3719321342,3648080713,3342211916,3287746299,3467911202,3396681109,4063920168,4143685023,4223187782,4286162673,3779000052,3858754371,3904687514,3967668269,881225847,809987520,1023691545,969234094,662832811,591600412,771767749,717299826,311336399,374308984,453813921,533576470,25881363,88864420,134795389,214552010,2023205639,2086057648,1897238633,1976864222,1804852699,1867694188,1645340341,1724971778,1587496639,1516133128,1461550545,1406951526,1302016099,1230646740,1142491917,1087903418,2896545431,2825181984,2770861561,2716262478,3215044683,3143675388,3055782693,3001194130,2326604591,2389456536,2200899649,2280525302,2578013683,2640855108,2418763421,2498394922,3769900519,3832873040,3912640137,3992402750,4088425275,4151408268,4197601365,4277358050,3334271071,3263032808,3476998961,3422541446,3585640067,3514407732,3694837229,3640369242,1762451694,1842216281,1619975040,1682949687,2047383090,2127137669,1938468188,2001449195,1325665622,1271206113,1183200824,1111960463,1543535498,1489069629,1434599652,1363369299,622672798,568075817,748617968,677256519,907627842,853037301,1067152940,995781531,51762726,131386257,177728840,240578815,269590778,349224269,429104020,491947555,4046411278,4126034873,4172115296,4234965207,3794477266,3874110821,3953728444,4016571915,3609705398,3555108353,3735388376,3664026991,3290680682,3236090077,3449943556,3378572211,3174993278,3120533705,3032266256,2961025959,2923101090,2868635157,2813903052,2742672763,2604032198,2683796849,2461293480,2524268063,2284983834,2364738477,2175806836,2238787779,1569362073,1498123566,1409854455,1355396672,1317987909,1246755826,1192025387,1137557660,2072149281,2135122070,1912620623,1992383480,1753615357,1816598090,1627664531,1707420964,295390185,358241886,404320391,483945776,43990325,106832002,186451547,266083308,932423249,861060070,1041341759,986742920,613929101,542559546,756411363,701822548,3316196985,3244833742,3425377559,3370778784,3601682597,3530312978,3744426955,3689838204,3819031489,3881883254,3928223919,4007849240,4037393693,4100235434,4180117107,4259748804,2310601993,2373574846,2151335527,2231098320,2596047829,2659030626,2470359227,2550115596,2947551409,2876312838,2788305887,2733848168,3165939309,3094707162,3040238851,2985771188]),e=function(){var t=4294967295;this.getCRC=function(){return~t>>>0},this.updateCRC=function(i){t=t<<8^d[(t>>>24^i)&255]},this.updateCRCRun=function(i,a){for(;a-- >0;)t=t<<8^d[(t>>>24^i)&255]}};return e}(),bD=gD,Ba=hD,_5=ID,An=20,G4=258,Q4=0,FD=1,ED=2,CD=6,vD=50,TD="314159265359",XD="177245385090",V4=function(d,e){var t=d[e],i;for(i=e;i>0;i--)d[i]=d[i-1];return d[0]=t,t},Se={OK:0,LAST_BLOCK:-1,NOT_BZIP_DATA:-2,UNEXPECTED_INPUT_EOF:-3,UNEXPECTED_OUTPUT_EOF:-4,DATA_ERROR:-5,OUT_OF_MEMORY:-6,OBSOLETE_INPUT:-7,END_OF_BLOCK:-8},Ld={};Ld[Se.LAST_BLOCK]="Bad file checksum";Ld[Se.NOT_BZIP_DATA]="Not bzip data";Ld[Se.UNEXPECTED_INPUT_EOF]="Unexpected input EOF";Ld[Se.UNEXPECTED_OUTPUT_EOF]="Unexpected output EOF";Ld[Se.DATA_ERROR]="Data error";Ld[Se.OUT_OF_MEMORY]="Out of memory";Ld[Se.OBSOLETE_INPUT]="Obsolete (pre 0.9.5) bzip format not supported.";var Oe=function(d,e){var t=Ld[d]||"unknown error";e&&(t+=": "+e);var i=new TypeError(t);throw i.errorCode=d,i},Od=function(d,e){this.writePos=this.writeCurrent=this.writeCount=0,this._start_bunzip(d,e)};Od.prototype._init_block=function(){var d=this._get_next_block();return d?(this.blockCRC=new _5,!0):(this.writeCount=-1,!1)};Od.prototype._start_bunzip=function(d,e){var t=new Uint8Array(4);(d.read(t,0,4)!==4||String.fromCharCode(t[0],t[1],t[2])!=="BZh")&&Oe(Se.NOT_BZIP_DATA,"bad magic");var i=t[3]-48;(i<1||i>9)&&Oe(Se.NOT_BZIP_DATA,"level out of range"),this.reader=new bD(d),this.dbufSize=1e5*i,this.nextoutput=0,this.outputStream=e,this.streamCRC=0};Od.prototype._get_next_block=function(){var d,e,t,i=this.reader,a=i.pi();if(a===XD)return!1;a!==TD&&Oe(Se.NOT_BZIP_DATA),this.targetBlockCRC=i.read(32)>>>0,this.streamCRC=(this.targetBlockCRC^(this.streamCRC<<1|this.streamCRC>>>31))>>>0,i.read(1)&&Oe(Se.OBSOLETE_INPUT);var n=i.read(24);n>this.dbufSize&&Oe(Se.DATA_ERROR,"initial position out of bounds");var r=i.read(16),o=new Uint8Array(256),s=0;for(d=0;d<16;d++)if(r&1<<15-d){var c=d*16;for(t=i.read(16),e=0;e<16;e++)t&1<<15-e&&(o[s++]=c+e)}var p=i.read(3);(p<ED||p>CD)&&Oe(Se.DATA_ERROR);var l=i.read(15);l===0&&Oe(Se.DATA_ERROR);var m=new Uint8Array(256);for(d=0;d<p;d++)m[d]=d;var P=new Uint8Array(l);for(d=0;d<l;d++){for(e=0;i.read(1);e++)e>=p&&Oe(Se.DATA_ERROR);P[d]=V4(m,e)}var g=s+2,y=[],f;for(e=0;e<p;e++){var h=new Uint8Array(g),I=new Uint16Array(An+1);for(r=i.read(5),d=0;d<g;d++){for(;(r<1||r>An)&&Oe(Se.DATA_ERROR),!!i.read(1);)i.read(1)?r--:r++;h[d]=r}var b,F;for(b=F=h[0],d=1;d<g;d++)h[d]>F?F=h[d]:h[d]<b&&(b=h[d]);f={},y.push(f),f.permute=new Uint16Array(G4),f.limit=new Uint32Array(An+2),f.base=new Uint32Array(An+1),f.minLen=b,f.maxLen=F;var X=0;for(d=b;d<=F;d++)for(I[d]=f.limit[d]=0,r=0;r<g;r++)h[r]===d&&(f.permute[X++]=r);for(d=0;d<g;d++)I[h[d]]++;for(X=r=0,d=b;d<F;d++)X+=I[d],f.limit[d]=X-1,X<<=1,r+=I[d],f.base[d+1]=X-r;f.limit[F+1]=Number.MAX_VALUE,f.limit[F]=X+I[F]-1,f.base[b]=0}var T=new Uint32Array(256);for(d=0;d<256;d++)m[d]=d;var x=0,E=0,D=0,v,C=this.dbuf=new Uint32Array(this.dbufSize);for(g=0;;){for(g--||(g=vD-1,D>=l&&Oe(Se.DATA_ERROR),f=y[P[D++]]),d=f.minLen,e=i.read(d);d>f.maxLen&&Oe(Se.DATA_ERROR),!(e<=f.limit[d]);d++)e=e<<1|i.read(1);e-=f.base[d],(e<0||e>=G4)&&Oe(Se.DATA_ERROR);var M=f.permute[e];if(M===Q4||M===FD){x||(x=1,r=0),M===Q4?r+=x:r+=2*x,x<<=1;continue}if(x)for(x=0,E+r>this.dbufSize&&Oe(Se.DATA_ERROR),v=o[m[0]],T[v]+=r;r--;)C[E++]=v;if(M>s)break;E>=this.dbufSize&&Oe(Se.DATA_ERROR),d=M-1,v=V4(m,d),v=o[v],T[v]++,C[E++]=v}for((n<0||n>=E)&&Oe(Se.DATA_ERROR),e=0,d=0;d<256;d++)t=e+T[d],T[d]=e,e=t;for(d=0;d<E;d++)v=C[d]&255,C[T[v]]|=d<<8,T[v]++;var O=0,R=0,w=0;return E&&(O=C[n],R=O&255,O>>=8,w=-1),this.writePos=O,this.writeCurrent=R,this.writeCount=E,this.writeRun=w,!0};Od.prototype._read_bunzip=function(d,e){var t,i,a;if(this.writeCount<0)return 0;var n=this.dbuf,r=this.writePos,o=this.writeCurrent,s=this.writeCount;this.outputsize;for(var c=this.writeRun;s;){for(s--,i=o,r=n[r],o=r&255,r>>=8,c++===3?(t=o,a=i,o=-1):(t=1,a=o),this.blockCRC.updateCRCRun(a,t);t--;)this.outputStream.writeByte(a),this.nextoutput++;o!=i&&(c=0)}return this.writeCount=s,this.blockCRC.getCRC()!==this.targetBlockCRC&&Oe(Se.DATA_ERROR,"Bad block CRC (got "+this.blockCRC.getCRC().toString(16)+" expected "+this.targetBlockCRC.toString(16)+")"),this.nextoutput};var rc=function(d){if("readByte"in d)return d;var e=new Ba;return e.pos=0,e.readByte=function(){return d[this.pos++]},e.seek=function(t){this.pos=t},e.eof=function(){return this.pos>=d.length},e},K5=function(d){var e=new Ba,t=!0;if(d)if(typeof d=="number")e.buffer=new Uint8Array(d),t=!1;else{if("writeByte"in d)return d;e.buffer=d,t=!1}else e.buffer=new Uint8Array(16384);return e.pos=0,e.writeByte=function(i){if(t&&this.pos>=this.buffer.length){var a=new Uint8Array(this.buffer.length*2);a.set(this.buffer),this.buffer=a}this.buffer[this.pos++]=i},e.getBuffer=function(){if(this.pos!==this.buffer.length){if(!t)throw new TypeError("outputsize does not match decoded input");var i=new Uint8Array(this.pos);i.set(this.buffer.subarray(0,this.pos)),this.buffer=i}return this.buffer},e._coerced=!0,e},DD=function(d,e,t){for(var i=rc(d),a=K5(e),n=new Od(i,a);!("eof"in i&&i.eof());)if(n._init_block())n._read_bunzip();else{var r=n.reader.read(32)>>>0;if(r!==n.streamCRC&&Oe(Se.DATA_ERROR,"Bad stream CRC (got "+n.streamCRC.toString(16)+" expected "+r.toString(16)+")"),t&&"eof"in i&&!i.eof())n._start_bunzip(i,a);else break}if("getBuffer"in a)return a.getBuffer()},RD=function(d,e,t){var i=rc(d),a=K5(t),n=new Od(i,a);n.reader.seek(e);var r=n._get_next_block();if(r&&(n.blockCRC=new _5,n.writeCopies=0,n._read_bunzip()),"getBuffer"in a)return a.getBuffer()},xD=function(d,e,t){var i=new Ba;i.delegate=rc(d),i.pos=0,i.readByte=function(){return this.pos++,this.delegate.readByte()},i.delegate.eof&&(i.eof=i.delegate.eof.bind(i.delegate));var a=new Ba;a.pos=0,a.writeByte=function(){this.pos++};for(var n=new Od(i,a),r=n.dbufSize;!("eof"in i&&i.eof());){var o=i.pos*8+n.reader.bitOffset;if(n.reader.hasByte&&(o-=8),n._init_block()){var s=a.pos;n._read_bunzip(),e(o,a.pos-s)}else if(n.reader.read(32),t&&"eof"in i&&!i.eof())n._start_bunzip(i,a),console.assert(n.dbufSize===r,"shouldn't change block size within multistream file");else break}},ND={Bunzip:Od,Stream:Ba,Err:Se,decode:DD,decodeBlock:RD,table:xD},AD=yC({__proto__:null},[ND]);var wD="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",MD=d=>{let e=wD.indexOf(d);return e<0?void 0:e},oc=d=>{let e=`${d}`;if(e=e.replace(/[ \t\n\f\r]/g,""),e.length%4===0&&(e=e.replace(/==?$/,"")),e.length%4===1||/[^+/0-9A-Za-z]/.test(e))return;let t="",i=0,a=0;return[...e].forEach(n=>{i<<=6,i|=MD(n),a+=6,a===24&&(t+=String.fromCharCode((i&16711680)>>16),t+=String.fromCharCode((i&65280)>>8),t+=String.fromCharCode(i&255),i=a=0)}),a===12?(i>>=4,t+=String.fromCharCode(i)):a===18&&(i>>=2,t+=String.fromCharCode((i&65280)>>8),t+=String.fromCharCode(i&255)),t};var LD=d=>d==null||d.length===0,se=class d{static#n="MTc1MjAyNTMyMzM5Mg==";static#i;static#a=!1;static#e=void 0;static#t="none";static#d;static#o=`-----BEGIN PGP PUBLIC KEY BLOCK-----
9339
9339
 
9340
9340
  xjMEYSAlmRYJKwYBBAHaRw8BAQdATxsL8ZGu79iIXGoMwAGxis0Ot6zN+c+H
9341
9341
  FiEfymdU5QHNIGZpeHBhcnNlci5pbyA8aW5mb0BmaXhwYXJzZXIuaW8+wowE
@@ -10109,7 +10109,7 @@ S5ZXnD0TGixaxWGBs96860f4U3qluhTjUAD9EAu8DxxpKVw59ngh8836nlRZ
10109
10109
  Required when TestOrderOffsetPeriod(3090) is specified.`}],numInGroup:{id:3082,added:"FIX.Latest",addedEP:"295",description:""}},{name:"TestGatewayDetailGrp",abbrName:"TstGtwyDetl",addedEP:"295",added:"FIX.Latest",category:"Testing",id:2283,description:`Provides information about gateways for testing applications, e.g. for order entry or market data.
10110
10110
 
10111
10111
 
10112
- The gateways may be offered by service providers simulating execution venues or offered directly by the venues.`,fieldRef:[{added:"FIX.Latest",addedEP:"295",id:3093,description:"Required if NoTestGatewayDetails(3092)>0."},{added:"FIX.Latest",addedEP:"295",id:3094,description:"Required if NoTestGatewayDetails(3092)>0."},{added:"FIX.Latest",addedEP:"295",id:3095,description:"Required if NoTestGatewayDetails(3092)>0."},{added:"FIX.Latest",addedEP:"295",id:3096,description:""}],numInGroup:{id:3092,added:"FIX.Latest",addedEP:"295",description:""}}];var qr=class{groups=J5;cacheMap=new Map;cacheMapByName=new Map;constructor(){this.groups.forEach(e=>{this.cacheMap.set(e.id,e)}),this.groups.forEach(e=>{this.cacheMapByName.set(e.name,e)})}find(e){return this.cacheMap.get(e)}findByName(e){return this.cacheMapByName.get(e)}filterMapByNumInGroupId(e,t){if(e===k.NoMDEntries&&t===fe.MarketDataSnapshotFullRefresh)return this.find(2031);if(e===k.NoMDEntries&&t===fe.MarketDataIncrementalRefresh)return this.find(2032);for(let[,i]of this.cacheMap.entries())if(i.numInGroup?.id===e)return i}};var Qe=Object.freeze({FIX27:"0",FIX30:"1",FIX40:"2",FIX41:"3",FIX42:"4",FIX43:"5",FIX44:"6",FIX50:"7",FIX50SP1:"8",FIX50SP2:"9",FIXLatest:"10"});var sc=(d,e)=>{if(Number.isNaN(d.getTime()))return e.log({level:"error",message:"Invalid date specified!"}),"";let t=new Date(Date.UTC(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate(),d.getUTCHours(),d.getUTCMinutes(),d.getUTCSeconds(),d.getUTCMilliseconds())),i=t.getUTCFullYear(),a=String(t.getUTCMonth()+1).padStart(2,"0"),n=String(t.getUTCDate()).padStart(2,"0"),r=String(t.getUTCHours()).padStart(2,"0"),o=String(t.getUTCMinutes()).padStart(2,"0"),s=String(t.getUTCSeconds()).padStart(2,"0"),c=String(t.getUTCMilliseconds()).padStart(3,"0");return`${i}${a}${n}-${r}:${o}:${s}.${c}`};var $5={version:"0.0.0",build:"2025-07-09T01:16:02.231Z"},li=d=>Z5[d]??d,Z5={[Qe.FIX27]:"FIX.2.7",[Qe.FIX30]:"FIX.3.0",[Qe.FIX40]:"FIX.4.0",[Qe.FIX41]:"FIX.4.1",[Qe.FIX42]:"FIX.4.2",[Qe.FIX43]:"FIX.4.3",[Qe.FIX44]:"FIX.4.4",[Qe.FIX50]:"FIX.5.0",[Qe.FIX50SP1]:"FIX.5.0SP1",[Qe.FIX50SP2]:"FIX.5.0SP2",[Qe.FIXLatest]:"FIXT.1.1"},kd=Z5[Qe.FIXLatest],cc=30,pc=1e5,uc="utf8",mi="",eF="=",tF=/[.*+?^${}()|[\]\\]/g,dF=/8=FIXT?\.\d\.\d([^\d]+)/i,lc=100,iF=(d,e)=>`0000000000000000${d}`.slice(-e);var yi="10=",mc="35=",aF="",nF="",OD=d=>d.enumeration?.name??d.value,rF=(d,e,t=!1)=>{let i=t?OD(d):d.value,a=d.name??d.tag;e[a]?e[a]=Array.isArray(e[a])?[...e[a],i]:[e[a],i]:e[a]=i},Si=class d{fixVersion=kd;data=[];messageString="";description="";messageType="";messageTypeDescription="";messageSequence=-1;structure=void 0;bodyLengthValid=!1;checksumValid=!1;checksumValue=void 0;checksumExpected=void 0;bodyLengthValue=void 0;bodyLengthExpected=void 0;#n=void 0;#i=void 0;#a=void 0;#e=void 0;#t=void 0;constructor(e=kd,...t){this.fixVersion=li(e),this.reset(),t.forEach(i=>{i.tag===k.BeginString&&(this.fixVersion=String(i.value)),i.tag===k.MsgSeqNum&&(this.messageSequence=Number(i.value)),i.tag===k.MsgType?this.data.splice(0,0,i):this.data.push(i)})}#d=()=>{this.#n||(this.#n=new Qd),this.#i||(this.#i=new Ti),this.#a||(this.#a=new vi),this.#e||(this.#e=new Ur),this.#t||(this.#t=new qr)};#o=e=>{let t=e.indexOf(mc)===-1?0:e.indexOf(mc)+1;return(e.lastIndexOf(yi)===-1?e.length:e.lastIndexOf(yi)+1)-t};#r=e=>{let t=0;for(let i=0;i<e.length;i++)t+=e.charCodeAt(i);return iF(t%256,3)};#s=(e,...t)=>{let i=e[0],a=1;for(a;a<e.length;a++)(t[a-1]||t[a-1]==="0")&&(i+=t[a-1]),i+=e[a];return i.replace(/\s+/g," ")};#c=(e,t,i)=>{if(e?.data[t]&&e?.presence==="required"){let a=e?.data[t].filter(n=>n.presence==="required");for(let n of a)if(!i.has(Number(n.id)))return{field:{...n},name:n.name,tag:Number(n.id),value:null,error:`Missing field ${n.name}`}}};#p=(e,t=!0)=>{this.#d();let i=[],a=structuredClone(e.data),n=new Set(a.map(o=>o.tag)),r=(o,s,c)=>{let p=this.#i?.cacheMap.get(o.tag);i.push({field:p,name:o.name,tag:o.tag,value:o.value,error:s,expectedValue:c})};for(let o of a){let s=this.#n?.getEnumByTag(String(o.tag)),c=s&&this.#n?.getEnum(String(o.tag),o.value),p=this.#a?.validateDatatype(o.value,o.type?.name);(s&&!c||!p)&&r(o,"Incorrect data format for value"),o.tag===k.BodyLength&&!this.validateBodyLength(String(this.bodyLengthValue))&&r(o,"Incorrect value for BodyLength",this.bodyLengthExpected),o.tag===k.CheckSum&&!this.validateChecksum(String(this.checksumValue))&&r(o,"Incorrect value for CheckSum",this.checksumExpected)}if(this.structure)for(let o of this.structure){if(t&&o.presence!=="required")continue;let{id:s,name:c,fieldRef:p,groupRef:l,componentRef:m}=o.data,P=Number(s),g=!n.has(P)&&!p&&!l&&!m&&P!==1003,y=[1137,372,1130,1410,1128].includes(P)&&[1137,372,1130,1410,1128].some(f=>n.has(f));if(g&&!y)if(o.data.type==="component"){let f=this.#u(P),h=new Set(a.map(I=>I.tag));f.length>0&&!f.some(I=>h.has(I))&&i.push({field:{...o.data},tag:Number(o.data.id),name:o.data.name,value:null,error:`Missing block ${o.data.name}`})}else r({tag:P,name:c},`Missing field ${c}`);["fieldRef","componentRef","groupRef"].forEach(f=>{let h=this.#c(o,f,n);h&&i.push(h)})}return i};#u=e=>{let t=this.#e?.cacheMap.get(e);if(!t)return[];let{fieldRef:i=[],componentRef:a=[],groupRef:n=[]}=t;return[...i.map(r=>r.id),...a.map(r=>r.id),...n.map(r=>r.id)]};addField(e){this.data.push(e)}addFields(...e){e.forEach(t=>{t.tag===k.MsgType?this.data.splice(0,0,t):this.data.push(t)})}removeFieldByTag(e){let t=this.data.findIndex(i=>i.tag===e);t>-1&&this.data.splice(t,1)}getField(e){return this.data.find(t=>t.tag===e)}getFields(e){return this.data.filter(t=>t.tag===e)}getFieldExplains(){let e={};return this.data.forEach(t=>{rF(t,e,!0)}),e}getFieldNameValues(){let e={};return this.data.forEach(t=>{rF(t,e,!1)}),e}getFieldValues(){let e={};return this.data.forEach(t=>{e[t.tag]?Array.isArray(e[t.tag])?e[t.tag]=[...e[t.tag],t.value]:e[t.tag]=[e[t.tag],t.value]:e[t.tag]=t.value}),e}setField(e){let t=this.data.findIndex(i=>i.tag===e.tag);t>-1?this.data[t]=e:this.data.push(e),e.tag!==k.BodyLength&&e.tag!==k.CheckSum&&this.recalculateMessageLengths()}getEnum(e,t){return!this.getField(k.MsgType)?.tag||!this.getField(k.MsgType)?.value?void 0:new Qd().getEnum(e.toString(),t)}getBriefDescription(){let e="",t=this.getField(k.Side),i="";if(t?.enumeration&&(i=t.enumeration.name,i=i?i.replace("Sell","SL").toUpperCase():void 0),this.getField(k.LeavesQty)!==void 0){let a="";this.getField(k.ContraTradeQty)?a=String(this.getField(k.ContraTradeQty)?.value):a=String(this.getField(k.OrderQty)?.value??"");let n=String(this.getField(k.LeavesQty)?.value),r=this.getField(k.LastPx)?Number(this.getField(k.LastPx)?.value):0;e=this.#s`${a} @${r||r===0?r.toFixed(2):"0.00"} ${this.getField(k.LeavesQty).name.replace("LeavesQty","LvsQty")} ${Number.parseInt(n,10).toString()}`}else if(this.getField(k.OrderQty)){let a=String(this.getField(k.OrderQty)?.value),n=this.getField(k.Symbol)?String(this.getField(k.Symbol)?.value):"",r=this.getField(k.OrdType),o="";r?.enumeration?.name&&(o=r.enumeration.name);let s=this.getField(k.TimeInForce),c="";s?.enumeration&&(c=String(s.enumeration.name));let p=this.getField(k.Price);if(p){let l=String(p.value),m=Number(p.value);m>=1?l=m.toFixed(2):m<1&&(l=m.toString().replace("0.","."));let P=i?`${i} `:"",g=a?`${a} `:"",y=n?`${n.toUpperCase()} `:"",f=o?`${o.replace("Market","MKT").replace("Limit","LMT").toUpperCase()} `:"",h=`@${l} `,I=c?c.toUpperCase():"",b=P+g+y+f+h+I;e=this.#s`${b}`}else e=this.#s`${i??""} ${a} ${n?n.toUpperCase():""} ${o?o.replace("Market","MKT").replace("Limit","LMT").toUpperCase():""} ${c?c.toUpperCase():""}`}else{let a=this.getField(k.MsgType);return a?.tag&&a.value?this.getEnum(a.tag,String(a.value))?.name??"":void 0}return e.trim()}validateBodyLength(e){let t=this.messageString.indexOf(mc),i=this.messageString.lastIndexOf(yi),a=t===-1?0:t,r=(i===-1?this.messageString.length:i)-a;return this.bodyLengthValue=Number(e),this.bodyLengthExpected=r,this.bodyLengthValid=Number(e)===r,this.bodyLengthValid}validateChecksum(e){let t=this.messageString.lastIndexOf(yi),i=t===-1?this.messageString.length:t,a=this.messageString.substring(0,i),n=this.#r(a);return this.checksumValue=e,this.checksumExpected=n,this.checksumValid=e===n,this.checksumValid}recalculateMessageLengths(){let e=this.#o(this.messageString),t=this.messageString.lastIndexOf(yi),i=t===-1?this.messageString.length:t,a=this.messageString.substring(0,i),n=this.#r(a);return this.bodyLengthValue=e,this.bodyLengthExpected=e,this.bodyLengthValid=!0,this.checksumValue=n,this.checksumExpected=n,this.checksumValid=!0,this.setField(new _(k.BodyLength,e)),this.setField(new _(k.CheckSum,n)),{bodyLength:e,checksum:n}}validate(e=!0){if(!se.validateFreeLicense())throw new Error(se.ERROR_MESSAGE_NO_FREE_LICENSE);return this.#p(this,e)}encode(e=mi){if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);let t=this.data.map(l=>new _(l.tag,l.value)),i=[],a=new _(k.BeginString,this.fixVersion).toString(),n=new _(k.BodyLength,aF).toString(),r=new _(k.CheckSum,nF).toString(),o=t.findIndex(l=>l.tag===k.BeginString);if(o>-1){let l=li(t[o].value);a=new _(k.BeginString,l).toString(),t.splice(o,1)}o=t.findIndex(l=>l.tag===k.BodyLength),o>-1&&(n=t[o].toString(),t.splice(o,1)),o=t.findIndex(l=>l.tag===k.CheckSum),o>-1&&(r=t[o].toString(),t.splice(o,1)),i.push(a),i.push(n),t.forEach(l=>{i.push(l.toString())}),i.push(r);let s=`${i.join(e)}${e}`;s=s.replace(aF,this.#o(s).toString());let c=s.lastIndexOf(yi)===-1?s.length:s.lastIndexOf(yi),p=this.#r(s.substring(0,c));return s=s.replace(nF,p),s}toFIXJSON(){if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);this.#d();let e=this.#e?.getTagsByComponentName("StandardHeader"),t=this.#e?.getTagsByComponentName("StandardTrailer"),i={},a={},n={},r=0,o=[],s=()=>{m();let P=o[r],g=P.parentName==="Body"?a:o.find(y=>y.name===P.parentName);g&&(P.parentName==="Body"?a[P.name]=P.values:g.valueInstance[P.name]=P.values),o.splice(r,1),r--},c=P=>{for(;o.length>0&&!o[r].availableTagsInGroup.has(P.tag);)s()},p=(P,g)=>{let y=o.length>0?o[r].name:"Body",f={name:P.name??`${P.tag}`,parentName:y,availableTagsInGroup:new Set,valueInstanceFirstTag:this.data[g+1].tag,valueInstance:{},values:[]};o.push(f),r=o.length===1?0:r+1;let h=this.#t?.filterMapByNumInGroupId(P.tag,this.messageType);h&&l(h)},l=P=>{if(!P)return;let g=f=>o[r].availableTagsInGroup.add(Number(f.id));P.numInGroup&&g(P.numInGroup),P.fieldRef&&P.fieldRef.forEach(f=>{g(f)});let y=(f,h)=>{f.forEach(I=>{let b=h.find(Number(I.id));b&&l(b)})};P.groupRef&&this.#t&&y(P.groupRef,this.#t),P.componentRef&&this.#e&&y(P.componentRef,this.#e)},m=()=>{let{valueInstance:P,values:g}=o[r];Object.keys(P).length>0&&(g.push(P),o[r].valueInstance={})};return this.data.forEach((P,g)=>{let y=P.tag,f=P.enumeration?.name??P.value,h=P.name??`${P.tag}`;if(e?.includes(y)){i[h]=f;return}if(t?.includes(y)){c(P),n[h]=f;return}if(P?.type?.name==="NumInGroup"){o.length===0||o.length>0&&o[r]?.availableTagsInGroup.has(y)||s(),p(P,g);return}if(o.length>0&&o[r].availableTagsInGroup.has(y)){o[r].valueInstanceFirstTag===y?(m(),o[r].valueInstance[h]=f):o[r].valueInstance={...o[r].valueInstance,[P?.name??String(y)]:f};return}c(P),o[r]?.valueInstanceFirstTag===y&&(m(),o[r].valueInstance[h]=f),o[r]?.availableTagsInGroup.has(y)||(a[h]=f)}),{Header:i,Body:a,Trailer:n}}clone(){let e=new d(this.fixVersion,...this.data);return e.messageSequence=this.messageSequence,e.messageType=this.messageType,e}reset(){this.data=[],this.messageString="",this.description="",this.messageType="",this.messageSequence=-1,this.structure=void 0,this.bodyLengthValid=!1,this.checksumValid=!1,this.checksumValue=void 0,this.checksumExpected=void 0,this.bodyLengthValue=void 0,this.bodyLengthExpected=void 0}};var Br=class{fixVersion=kd;message=void 0;messageTags=[];messageString="";fields=new Ti;enums=new Qd;proxy=void 0;tlsKey;tlsCert;tlsUseSNI;tlsSkipStdInPipe;skipValidation;processMessage(){let e=dF.exec(this.messageString);if(e&&e.length===2){let t=this.messageString.replace(new RegExp(e[1].replace(tF,"\\$&"),"g"),mi);this.message&&(this.message.messageString=t),this.messageTags=t.split(mi)}else this.message=void 0,this.messageTags=[]}processFields(){let e,t,i=0,a,n;for(i;i<this.messageTags.length-1;i++)a=this.messageTags[i].indexOf(eF),e=Number(this.messageTags[i].substring(0,a)),t=this.messageTags[i].substring(a+1),n=new _(e,t),this.fields.processField(this.message,n),this.enums.processEnum(n),n.tag===k.BeginString?this.message.fixVersion=String(n.value):n.tag===k.BodyLength?this.message?.validateBodyLength(t):n.tag===k.CheckSum&&this.message?.validateChecksum(t),this.message?.addField(n)}parse(e){if(!se.validateFreeLicense())throw new Error(se.ERROR_MESSAGE_NO_FREE_LICENSE);let t=0,i=e?e.split(/(?<!\d)8=FIX/):[],a=[];for(t;t<i.length;t++)this.message=new Si(this.fixVersion),this.messageString=`8=FIX${i[t]}`,this.messageString.indexOf(mi)>-1?(this.message.messageString=this.messageString,this.messageTags=this.messageString.split(mi)):this.processMessage(),this.message&&(this.skipValidation||this.processFields(),a.push(this.message));return a}};var oF=class{format;useStderr;constructor({format:d="json",useStderr:e=!1}){this.format=d,this.useStderr=e}configure(d){this.format=d.format||"json",d.useStderr!==void 0&&(this.useStderr=d.useStderr)}async send(d){let e=this.useStderr?console.error:console.log;if(this.format==="json")e(JSON.stringify(d));else if(this.format==="jsonrpc"){let{message:t,...i}=d,a={jsonrpc:"2.0",method:d.level,params:{message:t,...i}};e(JSON.stringify(a))}else{let{name:t,id:i,message:a,level:n,...r}=d,o=Object.entries(r).map(([c,p])=>`${c}: ${p}`),s="";t&&(s+=`${t} `),s+=`${i}: ${a}`,e(s,o.join(", "))}}async flush(){}async close(){}status(){return"connected"}};var kD=(d,e)=>e==="error"&&d.level==="error"||e==="warn"&&(d.level==="error"||d.level==="warn")?!0:e==="info"&&(d.level==="error"||d.level==="warn"||d.level==="info"),Pi=class{name;id;#n=!0;#i;#a;#e;constructor(e){this.name=e?.name??"",this.id=e?.id??gh(),this.#e=e?.level??"info",this.#e=e?.level??"info",this.#a=e?.format??"json",this.#i=e?.transport??new oF({format:this.#a})}processMessage(e){if(this.#e==="silent"||!this.#n)return this;if(!kD(e,this.#e))return this;let t={name:this.name,id:this.id,timestamp:Date.now(),...e};return this.#i.send(t),this}log(e){return this.processMessage({...e,level:e.level?e.level:"info"})}logWarning(e){return this.processMessage({...e,level:"warn"})}logError(e){return this.processMessage({...e,level:"error"})}set silent(e){this.#e=e?"silent":"info"}get silent(){return this.#e==="silent"}get level(){return this.#e}get format(){return this.#a}};var yc=Object.freeze({CarriedCustomerSide:1,CarriedNonCustomerSide:2,HouseTrader:3,FloorTrader:4,CarriedNonCustomerSideCrossMargined:6,HouseTraderCrossMargined:7,JointBackOfficeAccount:8,EquitiesSpecialist:9,OptionsMarketMaker:10,OptionsFirmAccount:11,AccountCustomerNonCustomerOrders:12,AccountOrdersMultipleCustomers:13});var Sc=Object.freeze({BIC:1,SIDCode:2,TFM:3,OMGEO:4,DTCCCode:5,SPSAID:6,Other:99});var Pc=Object.freeze({Cancel:1,Error:2,Correction:3});var fc=Object.freeze({ProcessRequestAsMarginDisposition:0,DeltaPlus:1,DeltaMinus:2,Final:3,CustomerSpecificPosition:4});var gc=Object.freeze({Buy:"B",Sell:"S",Trade:"T",Cross:"X"});var hc=Object.freeze({New:"N",Cancel:"C",Replace:"R"});var Ic=Object.freeze({Received:1,ConfirmRejected:2,Affirmed:3});var bc=Object.freeze({BookEntriesToBeAggregated:"Y",BookEntriesShouldNotBeAggregated:"N"});var Fc=Object.freeze({OrderInitiatorIsAggressor:"Y",OrderInitiatorIsPassive:"N"});var Ec=Object.freeze({Received:0,Accepted:1,Rejected:2});var Cc=Object.freeze({New:0,Cancel:1,Replace:2});var vc=Object.freeze({CertificateInformation:0,CertificateStateChanged:1});var Tc=Object.freeze({Received:0,Accepted:1,Rejected:2});var Xc=Object.freeze({New:0,Cancel:1,Replace:2});var Dc=Object.freeze({CertificateInformation:0,GenerateCertificate:1,ChangeCertificateStatus:2,ForwardCertificate:3});var Rc=Object.freeze({Draft:0,Approved:1,Submitted:2,Registered:3});var xc=Object.freeze({NonAlgorithmicTrade:0,AlgorithmicTrade:1});var Nc=Object.freeze({CarriedCustomerSide:1,CarriedNonCustomerSide:2,HouseTrader:3,FloorTrader:4,CarriedNonCustomerSideCrossMargined:6,HouseTraderCrossMargined:7,JointBackOfficeAccount:8});var Ac=Object.freeze({Rollup:0,DoNotRollUp:1});var wc=Object.freeze({OriginalDetailsIncomplete:1,ChangeInUnderlyingOrderDetails:2,CancelledByGiveupFirm:3,Other:99});var Mc=Object.freeze({Added:0,Canceled:1,Replaced:2,Changed:3,Pending:4});var Lc=Object.freeze({TradeType:1,TradePublicationIndicator:2,OrderHandlingInstruction:3});var Oc=Object.freeze({Match:1,Forward:2,ForwardAndMatch:3,AutoClaimGiveUp:4});var kc=Object.freeze({PendingAccept:1,PendingRelease:2,PendingReversal:3,Accept:4,BlockLevelReject:5,AccountLevelReject:6});var Uc=Object.freeze({FXNetting:0,FXSwap:1});var qc=Object.freeze({Automatic:1,Guarantor:2,Manual:3,BrokerAssigned:4});var Bc=Object.freeze({NotSpecified:0,ExplicitListProvided:1});var jc=Object.freeze({Open:"O",Close:"C",Rolled:"R",FIFO:"F"});var Gc=Object.freeze({UnknownAccount:0,IncorrectQuantity:1,IncorrectAveragePrice:2,UnknownExecutingBrokerMnemonic:3,CommissionDifference:4,UnknownOrderID:5,UnknownListID:6,OtherSeeText:7,IncorrectAllocatedQuantity:8,CalculationDifference:9,UnknownOrStaleExecID:10,MismatchedData:11,UnknownClOrdID:12,WarehouseRequestRejected:13,DuplicateOrMissingIndividualAllocID:14,TradeNotRecognized:15,DuplicateTrade:16,IncorrectOrMissingInstrument:17,IncorrectOrMissingSettlDate:18,IncorrectOrMissingFundIDOrFundName:19,IncorrectOrMissingSettlInstructions:20,IncorrectOrMissingFees:21,IncorrectOrMissingTax:22,UnknownOrMissingParty:23,IncorrectOrMissingSide:24,IncorrectOrMissingNetMoney:25,IncorrectOrMissingTradeDate:26,IncorrectOrMissingSettlCcyInstructions:27,IncorrectOrMissingProcessCode:28,Other:99});var Qc=Object.freeze({PreliminaryRequestToIntermediary:2,SellsideCalculatedUsingPreliminary:3,SellsideCalculatedWithoutPreliminary:4,WarehouseRecap:5,RequestToIntermediary:8,Accept:9,Reject:10,AcceptPending:11,Complete:12,ReversePending:14,Giveup:15,Takeup:16,Reversal:17,Alleged:18,SubAllocationGiveup:19});var Vc=Object.freeze({Accepted:0,Rejected:1});var zc=Object.freeze({Completed:0,Refused:1,Cancelled:2});var Hc=Object.freeze({UseDefaultInstructions:0,DeriveFromParametersProvided:1,FullDetailsProvided:2,SSIDBIDsProvided:3,PhoneForInstructions:4});var Wc=Object.freeze({Accepted:0,BlockLevelReject:1,AccountLevelReject:2,Received:3,Incomplete:4,RejectedByIntermediary:5,AllocationPending:6,Reversed:7,CancelledByIntermediary:8,Claimed:9,Refused:10,PendingGiveUpApproval:11,Cancelled:12,PendingTakeUpApproval:13,ReversalPending:14});var _c=Object.freeze({New:"0",Replace:"1",Cancel:"2",Reversal:"6"});var Kc=Object.freeze({Calculated:1,Preliminary:2,ReadyToBook:5,WarehouseInstruction:7,RequestToIntermediary:8,Accept:9,Reject:10,AcceptPending:11,IncompleteGroup:12,CompleteGroup:13,ReversalPending:14,ReopenGroup:15,CancelGroup:16,Giveup:17,Takeup:18,RefuseTakeup:19,InitiateReversal:20,Reverse:21,RefuseReversal:22,SubAllocationGiveup:23,ApproveGiveup:24,ApproveTakeup:25,NotionalValueAveragePxGroupAlloc:26});var Yc=Object.freeze({NoApplRecoveryNeeded:0,ApplRecoveryNeeded:1});var Jc=Object.freeze({NoActionTaken:0,QueueFlushed:1,OverlayLast:2,EndSession:3});var $c=Object.freeze({NoActionTaken:0,QueueFlushed:1,OverlayLast:2,EndSession:3});var Zc=Object.freeze({ApplSeqNumReset:0,LastMessageSent:1,ApplicationAlive:2,ResendComplete:3});var ep=Object.freeze({Retransmission:0,Subscription:1,RequestLastSeqNum:2,RequestApplications:3,Unsubscribe:4,CancelRetransmission:5,CancelRetransmissionUnsubscribe:6});var tp=Object.freeze({ApplicationDoesNotExist:0,MessagesRequestedAreNotAvailable:1,UserNotAuthorizedForApplication:2});var dp=Object.freeze({RequestSuccessfullyProcessed:0,ApplicationDoesNotExist:1,MessagesNotAvailable:2});var ip=Object.freeze({False:"0",True:"1"});var ap=Object.freeze({InterestRate:1,Currency:2,Credit:3,Equity:4,Commodity:5,Other:6,Cash:7,Debt:8,Fund:9,LoanFacility:10,Index:11});var np=Object.freeze({Financials:1,Commodities:2,AlternativeInvestments:3});var rp=Object.freeze({SingleCurrency:1,CrossCurrency:2,Basket:3,SingleName:4,CreditIndex:5,IndexTranche:6,CreditBasket:7,Exotic:8,Common:9,Preferred:10,EquityIndex:11,EquityBasket:12,Metals:13,Bullion:14,Energy:15,CommodityIndex:16,Agricultural:17,Environmental:18,Freight:19,Government:20,Agency:21,Corporate:22,Financing:23,MoneyMarket:24,Mortgage:25,Municipal:26,MutualFund:27,CollectiveInvestmentVehicle:28,InvestmentProgram:29,SpecializedAccountProgram:30,TermLoan:31,BridgeLoan:32,LetterOfCredit:33,DividendIndex:34,StockDividend:35,ExchangeTradedFund:36,VolatilityIndex:37,FXCrossRates:38,FXEmergingMarkets:39,FXMajors:40,Fertilizer:41,IndustrialProduct:42,Inflation:43,Paper:44,Polypropylene:45,OfficialEconomicStatistics:46,OtherC10:47,Other:48});var op=Object.freeze({BlackScholes:1,Whaley:2,Bachelier:3,Kirk:4,Curran:5,Black76:6,Binomial:7,OtherModel:99});var sp=Object.freeze({ProRata:"P",Random:"R"});var cp=Object.freeze({Base64:0,RawBinary:1});var pp=Object.freeze({AutomatedAuctionPermitted:0,AutomatedAuctionNotPermitted:1});var up=Object.freeze({None:0,BlockOrderAuction:1,DirectedOrderAuction:2,ExposureOrderAuction:3,FlashOrderAuction:4,FacilitationOrderAuction:5,SolicitationOrderAuction:6,PriceImprovementMechanism:7,DirectedOrderPriceImprovementMechanism:8});var lp=Object.freeze({TimeWeightedAveragePrice:0,VolumeWeightedAveragePrice:1,PercentOfVolumeAveragePrice:2,LimitOrderAveragePrice:3});var mp=Object.freeze({NoAveragePricing:0,Trade:1,LastTrade:2,NotionalValueAveragePxGroupTrade:3,AveragePricedTrade:4});var yp=Object.freeze({ClosingPriceAtMorningSession:"2",ClosingPrice:"3",CurrentPrice:"4",SQ:"5",VWAPThroughADay:"6",VWAPThroughAMorningSession:"7",VWAPThroughAnAfternoonSession:"8",VWAPThroughADayExcept:"9",VWAPThroughAMorningSessionExcept:"A",VWAPThroughAnAfternoonSessionExcept:"B",Strike:"C",Open:"D",Others:"Z"});var Sp=Object.freeze({Update:0,Snapshot:1});var Pp=Object.freeze({FIX42:"FIX.4.2",FIX44:"FIX.4.4",FIXT11:"FIXT.1.1"});var fp=Object.freeze({CURVE:"1",FiveYR:"2",OLD5:"3",TenYR:"4",OLD10:"5",ThirtyYR:"6",OLD30:"7",ThreeMOLIBOR:"8",SixMOLIBOR:"9"});var gp=Object.freeze({EONIA:"EONIA",EUREPO:"EUREPO",Euribor:"Euribor",FutureSWAP:"FutureSWAP",LIBID:"LIBID",LIBOR:"LIBOR",MuniAAA:"MuniAAA",OTHER:"OTHER",Pfandbriefe:"Pfandbriefe",SONIA:"SONIA",SWAP:"SWAP",Treasury:"Treasury",FedFundRateEffective:"FEDEFF",FedOpen:"FEDOPEN",EURIBOR:"EURIBOR",AUBSW:"AUBSW",BUBOR:"BUBOR",CDOR:"CDOR",CIBOR:"CIBOR",EONIASWAP:"EONIASWAP",ESTR:"ESTR",EURODOLLAR:"EURODOLLAR",EUROSWISS:"EUROSWISS",GCFREPO:"GCFREPO",ISDAFIX:"ISDAFIX",JIBAR:"JIBAR",MOSPRIM:"MOSPRIM",NIBOR:"NIBOR",PRIBOR:"PRIBOR",SOFR:"SOFR",STIBOR:"STIBOR",TELBOR:"TELBOR",TIBOR:"TIBOR",WIBOR:"WIBOR",AONIA:"AONIA",AONIAR:"AONIA-R",BKBM:"BKBM",CD91D:"CD91D",CORRA:"CORRA",DIRRTN:"DIRR-TN",EIBOR:"EIBOR",FixingRepoRate:"FixingRepoRate",HIBOR:"HIBOR",IBR:"IBR",KLIBOR:"KLIBOR",MIBOR:"MIBOR",NZONIA:"NZONIA",PHIREF:"PHIREF",REIBOR:"REIBOR",SAIBOR:"SAIBOR",SARON:"SARON",SORA:"SORA",TLREF:"TLREF",TIIE:"TIIE",THBFIX:"THBFIX",TONAR:"TONAR"});var hp=Object.freeze({Sector:1,Country:2,Index:3});var Ip=Object.freeze({Cancel:"C",New:"N"});var bp=Object.freeze({Agency:"A",VWAPGuarantee:"G",GuaranteedClose:"J",RiskTrade:"R"});var Fp=Object.freeze({NonDisclosed:1,Disclosed:2,NoBiddingProcess:3});var Ep=Object.freeze({BlockToBeAllocated:0,BlockNotToBeAllocated:1,AllocatedTrade:2});var Cp=Object.freeze({RegularBooking:0,CFD:1,TotalReturnSwap:2});var vp=Object.freeze({EachPartialExecutionIsABookableUnit:"0",AggregatePartialExecutionsOnThisOrder:"1",AggregateExecutionsForThisSymbol:"2"});var Tp=Object.freeze({NotApplicable:0,None:1,FollowingDay:2,FloatingRateNote:3,ModifiedFollowingDay:4,PrecedingDay:5,ModifiedPrecedingDay:6,NearestDay:7});var Xp=Object.freeze({Other:0,UnknownID:1,UnknownSecurity:2,UnsupportedMessageType:3,ApplicationNotAvailable:4,ConditionallyRequiredFieldMissing:5,NotAuthorized:6,DeliverToFirmNotAvailableAtThisTime:7,ThrottleLimitExceeded:8,ThrottleLimitExceededSessionDisconnected:9,ThrottledMessagesRejectedOnRequest:10,InvalidPriceIncrement:18});var Dp=Object.freeze({Automatic:0,Manual:1});var Rp=Object.freeze({Yes:"Y",NoExecutionOnly:"N",NoWaiverAgreement:"M",NoInstitutional:"O"});var xp=Object.freeze({Cash:"1",MarginOpen:"2",MarginClose:"3"});var Np=Object.freeze({Close:0,Hedge:1});var Ap=Object.freeze({Bid:0,Mid:1,Offer:2});var wp=Object.freeze({Market:0,Highest:1,AverageMarket:2,AverageHighest:3,BlendedMarket:4,BlendedHighest:5,AverageBlendedMarket:6,AverageBlendedHighest:7});var Mp=Object.freeze({NotCleared:0,Cleared:1,Submitted:2,Rejected:3});var Lp=Object.freeze({Customer:1,Firm:2,MarketMaker:3});var Op=Object.freeze({FirstYearDelegate:"1",SecondYearDelegate:"2",ThirdYearDelegate:"3",FourthYearDelegate:"4",FifthYearDelegate:"5",SixthYearDelegate:"9",CBOEMember:"B",NonMemberAndCustomer:"C",EquityMemberAndClearingMember:"E",FullAndAssociateMember:"F",Firms106HAnd106J:"H",GIM:"I",Lessee106FEmployees:"L",AllOtherOwnershipTypes:"M"});var kp=Object.freeze({ProcessNormally:0,ExcludeFromAllNetting:1,BilateralNettingOnly:2,ExClearing:3,SpecialTrade:4,MultilateralNetting:5,ClearAgainstCentralCounterparty:6,ExcludeFromCentralCounterparty:7,ManualMode:8,AutomaticPostingMode:9,AutomaticGiveUpMode:10,QualifiedServiceRepresentativeQSR:11,CustomerTrade:12,SelfClearing:13,BuyIn:14});var Up=Object.freeze({DoNotIntendToClear:0,IntendToClear:1});var qp=Object.freeze({NoException:0,Exception:1,EndUserException:2,InterAffiliateException:3,TreasuryAffiliateException:4,CooperativeException:5});var Bp=Object.freeze({Retain:0,Add:1,Remove:2});var jp=Object.freeze({SpecificDeposit:0,General:1});var Gp=Object.freeze({Initial:0,Scheduled:1,TimeWarning:2,MarginDeficiency:3,MarginExcess:4,ForwardCollateralDemand:5,EventOfDefault:6,AdverseTaxEvent:7,TransferDeposit:8,TransferWithdrawal:9,Pledge:10});var Qp=Object.freeze({UnknownDeal:0,UnknownOrInvalidInstrument:1,UnauthorizedTransaction:2,InsufficientCollateral:3,InvalidTypeOfCollateral:4,ExcessiveSubstitution:5,Other:99});var Vp=Object.freeze({Received:0,Accepted:1,Declined:2,Rejected:3,TransactionPending:4,TransactionCompletedWithWarning:5});var zp=Object.freeze({New:0,Replace:1,Cancel:2,Release:3,Reverse:4});var Hp=Object.freeze({MarketValuation:0,PortfolioValue:1,ValueConfirmed:2,CollateralCreditValue:3,AdditionalCollateralValue:4,EstimatedMarketValuation:5});var Wp=Object.freeze({MoneyMarketFund:0,OtherComingledPool:1,RepoMarket:2,DirectPurchaseOfSecurities:3,OtherInvestments:4});var _p=Object.freeze({TradeDate:0,GCInstrument:1,CollateralInstrument:2,SubstitutionEligible:3,NotAssigned:4,PartiallyAssigned:5,FullyAssigned:6,OutstandingTrades:7});var Kp=Object.freeze({Successful:0,InvalidOrUnknownInstrument:1,InvalidOrUnknownCollateralType:2,InvalidParties:3,InvalidTransportTypeRequested:4,InvalidDestinationRequested:5,NoCollateralFoundForTheTradeSpecified:6,NoCollateralFoundForTheOrderSpecified:7,CollateralInquiryTypeNotSupported:8,UnauthorizedForCollateralInquiry:9,Other:99});var Yp=Object.freeze({Accepted:0,AcceptedWithWarnings:1,Completed:2,CompletedWithWarnings:3,Rejected:4});var Jp=Object.freeze({UnknownTrade:0,UnknownInstrument:1,UnknownCounterparty:2,UnknownPosition:3,UnacceptableCollateral:4,Other:99});var $p=Object.freeze({Accepted:0,Received:1,Rejected:2});var Zp=Object.freeze({Unassigned:0,PartiallyAssigned:1,AssignmentProposed:2,Assigned:3,Challenged:4,Reused:5});var eu=Object.freeze({ResearchPaymentAccount:0,CommissionSharingAgreement:1,OtherTypeResearchPayment:2});var tu=Object.freeze({Unspecified:0,Acceptance:1,Broker:2,ClearingBroker:3,Retail:4,SalesCommission:5,LocalCommission:6,ResearchPayment:7});var du=Object.freeze({ArgusMcCloskey:0,Baltic:1,Exchange:2,GlobalCoal:3,IHSMcCloskey:4,Platts:5,Other:99});var iu=Object.freeze({PerUnit:"1",Percent:"2",Absolute:"3",PercentageWaivedCashDiscount:"4",PercentageWaivedEnhancedUnits:"5",PointsPerBondOrContract:"6",BasisPoints:"7",AmountPerContract:"8"});var au=Object.freeze({And:1,Or:2});var nu=Object.freeze({SellerNotifies:0,BuyerNotifies:1,SellerOrBuyerNotifies:2});var ru=Object.freeze({Business:0,Calendar:1,CommodityBusiness:2,CurrencyBusiness:3,ExchangeBusiness:4,ScheduledTradingDay:5});var ou=Object.freeze({AsianOut:0,AsianIn:1,BarrierCap:2,BarrierFloor:3,KnockOut:4,KnockIn:5});var su=Object.freeze({LessThanComplexEventPrice:1,LessThanOrEqualToComplexEventPrice:2,EqualToComplexEventPrice:3,GreaterThanOrEqualToComplexEventPrice:4,GreaterThanComplexEventPrice:5});var cu=Object.freeze({Expiration:1,Immediate:2,SpecifiedDate:3,Close:4,Open:5,OfficialSettlPrice:6,DerivativesClose:7,AsSpecifiedMasterConfirmation:8});var pu=Object.freeze({Close:0,HedgeElection:1});var uu=Object.freeze({Currency1PerCurrency2:0,Currency2PerCurrency1:1});var lu=Object.freeze({Capped:1,Trigger:2,KnockInUp:3,KnockInDown:4,KnockOutUp:5,KnockOutDown:6,Underlying:7,ResetBarrier:8,RollingBarrier:9,OneTouch:10,NoTouch:11,DblOneTouch:12,DblNoTouch:13,FXComposite:14,FXQuanto:15,FXCrssCcy:16,StrkSpread:17,ClndrSpread:18,PxObsvtn:19,PassThrough:20,StrkSched:21,EquityValuation:22,DividendValuation:23});var mu=Object.freeze({Close:0,Open:1,OfficialSettl:2,ValuationTime:3,ExcahgneSettlTime:4,DerivativesClose:5,AsSpecified:6});var yu=Object.freeze({NonElectronic:0,Electronic:1,Unconfirmed:2});var Su=Object.freeze({MismatchedAccount:1,MissingSettlementInstructions:2,UnknownOrMissingIndividualAllocId:3,TransactionNotRecognized:4,DuplicateTransaction:5,IncorrectOrMissingInstrument:6,IncorrectOrMissingPrice:7,IncorrectOrMissingCommission:8,IncorrectOrMissingSettlDate:9,IncorrectOrMissingFundIDOrFundName:10,IncorrectOrMissingQuantity:11,IncorrectOrMissingFees:12,IncorrectOrMissingTax:13,IncorrectOrMissingParty:14,IncorrectOrMissingSide:15,IncorrectOrMissingNetMoney:16,IncorrectOrMissingTradeDate:17,IncorrectOrMissingSettlCcyInstructions:18,IncorrectOrMissingCapacity:19,Other:99});var Pu=Object.freeze({Received:1,MismatchedAccount:2,MissingSettlementInstructions:3,Confirmed:4,RequestRejected:5});var fu=Object.freeze({New:0,Replace:1,Cancel:2});var gu=Object.freeze({Status:1,Confirmation:2,ConfirmationRequestRejected:3});var hu=Object.freeze({CommissionAmount:1,CommissionPercent:2,InitialChargeAmount:3,InitialChargePercent:4,DiscountAmount:5,DiscountPercent:6,DilutionLevyAmount:7,DilutionLevyPercent:8,ExitChargeAmount:9,ExitChargePercent:10,FundBasedRenewalCommissionPercent:11,ProjectedFundValue:12,FundBasedRenewalCommissionOnOrder:13,FundBasedRenewalCommissionOnFund:14,NetSettlementAmount:15});var Iu=Object.freeze({OneCancelsTheOther:1,OneTriggersTheOther:2,OneUpdatesTheOtherAbsolute:3,OneUpdatesTheOtherProportional:4,BidAndOffer:5,BidAndOfferOCO:6});var bu=Object.freeze({Shares:0,Hours:1,Days:2});var Fu=Object.freeze({TwoComponentIntercommoditySpread:0,IndexOrBasket:1,TwoComponentLocationBasis:2,Other:99});var Eu=Object.freeze({ExDividend:"A",ExDistribution:"B",ExRights:"C",New:"D",ExInterest:"E",CashDividend:"F",StockDividend:"G",NonIntegerStockSplit:"H",ReverseStockSplit:"I",StandardIntegerStockSplit:"J",PositionConsolidation:"K",LiquidationReorganization:"L",MergerReorganization:"M",RightsOffering:"N",ShareholderMeeting:"O",Spinoff:"P",TenderOffer:"Q",Warrant:"R",SpecialAction:"S",SymbolConversion:"T",CUSIP:"U",LeapRollover:"V",SuccessionEvent:"W"});var Cu=Object.freeze({OneOne:0,ThirtyThreeSixtyUS:1,ThirtyThreeSixtySIA:2,ThirtyThreeSixtyM:3,ThirtyEThreeSixty:4,ThirtyEThreeSixtyISDA:5,ActThreeSixty:6,ActThreeSixtyFiveFixed:7,ActActAFB:8,ActActICMA:9,ActActISMAUltimo:10,ActActISDA:11,BusTwoFiftyTwo:12,ThirtyEPlusThreeSixty:13,ActThreeSixtyFiveL:14,NLThreeSixtyFive:15,NLThreeSixty:16,Act364:17,ThirtyThreeSixtyFive:18,ThirtyActual:19,ThirtyThreeSixtyICMA:20,ThirtyETwoThreeSixty:21,ThirtyEThreeThreeSixty:22,Other:99});var vu=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr",Hour:"H",Minute:"Min",Second:"S",Term:"T"});var Tu=Object.freeze({Zero:0,FixedRate:1,FloatingRate:2,Structured:3});var Xu=Object.freeze({Covered:0,Uncovered:1});var Du=Object.freeze({Program3a3:1,Program42:2,Program3a2:3,Program3a3And3c7:4,Program3a4:5,Program3a5:6,Program3a7:7,Program3c7:8,Other:99});var Ru=Object.freeze({NoCross:0,CrossRejected:1,CrossAccepted:2});var xu=Object.freeze({None:0,BuySideIsPrioritized:1,SellSideIsPrioritized:2});var Nu=Object.freeze({CrossAON:1,CrossIOC:2,CrossOneSide:3,CrossSamePrice:4,BasisCross:5,ContingentCross:6,VWAPCross:7,STSCross:8,CustomerToCustomer:9});var Au=Object.freeze({CUSIP:"1",SEDOL:"2",ISINNumber:"4",ISOCurrencyCode:"6",FinancialInstrumentGlobalIdentifier:"S",DigitalTokenIdentifier:"Y"});var wu=Object.freeze({MemberTradingForTheirOwnAccount:1,ClearingFirmTradingForItsProprietaryAccount:2,MemberTradingForAnotherMember:3,AllOther:4,RetailCustomer:5});var Mu=Object.freeze({PhoneSimple:"A",GOrderAndFCMAPIorFIX:"G",PhoneComplex:"B",AddOnOrder:"ADD",FCMProvidedScreen:"C",AllOrNone:"AON",OtherProvidedScreen:"D",ConditionalOrder:"CND",ClientProvidedPlatformControlledByFCM:"E",CashNotHeld:"CNH",ClientProvidedPlatformDirectToExchange:"F",DeliveryInstructionsCash:"CSH",DirectedOrder:"DIR",AlgoEngine:"H",DiscretionaryLimitOrder:"DLO",PriceAtExecution:"J",ExchangeForPhysicalTransaction:"E.W",DeskElectronic:"W",FillOrKill:"FOK",DeskPit:"X",ClientElectronic:"Y",IntraDayCross:"IDX",ClientPit:"Z",ImbalanceOnly:"IO",ImmediateOrCancel:"IOC",IntermarketSweepOrder:"ISO",LimitOnOpen:"LOO",LimitOnClose:"LOC",MarketAtOpen:"MAO",MarketAtClose:"MAC",MarketOnOpen:"MOO",MarketOnClose:"MOC",MergerRelatedTransferPosition:"MPT",MinimumQuantity:"MQT",MarketToLimit:"MTL",DeliveryInstructionsNextDay:"ND",NotHeld:"NH",OptionsRelatedTransaction:"OPT",OverTheDay:"OVD",Pegged:"PEG",ReserveSizeOrder:"RSV",StopStockTransaction:"S.W",Scale:"SCL",DeliveryInstructionsSellersOption:"SLR",TimeOrder:"TMO",TrailingStop:"TS",Work:"WRK",StayOnOfferside:"F0",GoAlong:"F3",ParticipateDoNotInitiate:"F6",StrictScale:"F7",TryToScale:"F8",StayOnBidside:"F9",NoCross:"FA",OKToCross:"FB",CallFirst:"FC",PercentOfVolume:"FD",ReinstateOnSystemFailure:"FH",InstitutionOnly:"FI",ReinstateOnTradingHalt:"FJ",CancelOnTradingHalf:"FK",LastPeg:"FL",MidPricePeg:"FM",NonNegotiable:"FN",OpeningPeg:"FO",MarketPeg:"FP",CancelOnSystemFailure:"FQ",PrimaryPeg:"FR",Suspend:"FS",FixedPegToLocalBBO:"FT",PegToVWAP:"FW",TradeAlong:"FX",TryToStop:"FY",CancelIfNotBest:"FZ",StrictLimit:"Fb",IgnorePriceValidityChecks:"Fc",PegToLimitPrice:"Fd",WorkToTargetStrategy:"Fe"});var Lu=Object.freeze({Customer:0,Firm:1});var Ou=Object.freeze({NoPriority:0,UnconditionalPriority:1});var ku=Object.freeze({TooLateToCancel:0,UnknownOrder:1,BrokerCredit:2,OrderAlreadyInPendingStatus:3,UnableToProcessOrderMassCancelRequest:4,OrigOrdModTime:5,DuplicateClOrdID:6,PriceExceedsCurrentPrice:7,PriceExceedsCurrentPriceBand:8,InvalidPriceIncrement:18,Other:99});var Uu=Object.freeze({OrderCancelRequest:"1",OrderCancelReplaceRequest:"2"});var qu=Object.freeze({FirstDay:"1",SecondDay:"2",ThirdDay:"3",FourthDay:"4",FifthDay:"5",SixthDay:"6",SeventhDay:"7",EighthDay:"8",NinthDay:"9",TenthDay:"10",EleventhDay:"11",TwelvthDay:"12",ThirteenthDay:"13",ForteenthDay:"14",FifteenthDay:"15",SixteenthDay:"16",SeventeenthDay:"17",EighteenthDay:"18",NineteenthDay:"19",TwentiethDay:"20",TwentyFirstDay:"21",TwentySecondDay:"22",TwentyThirdDay:"23",TwentyFourthDay:"24",TwentyFifthDay:"25",TwentySixthDay:"26",TwentySeventhDay:"27",TwentyEigthDa28y:"28",TwentyNinthDay:"29",ThirtiethDay:"30",EOM:"EOM",FRN:"FRN",IMM:"IMM",IMMCAD:"IMMCAD",IMMAUD:"IMMAUD",IMMNZD:"IMMNZD",SFE:"SFE",NONE:"NONE",TBILL:"TBILL",MON:"MON",TUE:"TUE",WED:"WED",THU:"THU",FRI:"FRI",SAT:"SAT",SUN:"SUN"});var Bu=Object.freeze({Auto:"0",SpeakWithOrderInitiatorBeforeBooking:"1",Accumulate:"2"});var ju=Object.freeze({Agent:"A",Principal:"P",RisklessPrincipal:"R"});var Gu=Object.freeze({Cancellation:"0",Error:"1"});var Qu=Object.freeze({BookEntry:1,Bearer:2});var Vu=Object.freeze({Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6,Sunday:7,AllWeekdays:8,AllDays:9,AllWeekends:10});var zu=Object.freeze({AllTimes:0,OnPeak:1,OffPeak:2,Base:3,BlockHours:4,Other:5});var Hu=Object.freeze({DoNotIncludeHolidays:0,IncludeHolidays:1});var Wu=Object.freeze({Hour:0,Timestamp:1});var _u=Object.freeze({Absolute:0,Percentage:1});var Ku=Object.freeze({Notional:0,Delivery:1,PhysicalSettlPeriods:2});var Yu=Object.freeze({Proprietary:0,EIC:1});var Ju=Object.freeze({Firm:1,NonFirm:2,ForceMajeure:3,SystemFirm:4,UnitFirm:5});var $u=Object.freeze({Buyer:0,Seller:1});var Zu=Object.freeze({Transfers:0,DoesNotTransfer:1});var el=Object.freeze({Buyer:1,Seller:2});var tl=Object.freeze({Periodic:0,Initial:1,Single:2});var dl=Object.freeze({VersusPayment:0,Free:1,TriParty:2,HoldInCustody:3,DeliverByValue:4});var il=Object.freeze({Agency:"A",Arbitrage:"AR",BlockTrading:"B",ConvertibleDesk:"C",CentralRiskBooks:"CR",Derivatives:"D",EquityCapitalMarkets:"EC",International:"IN",Institutional:"IS",Other:"O",PreferredTrading:"PF",Proprietary:"PR",ProgramTrading:"PT",Sales:"S",Swaps:"SW",TradingDeskSystem:"T",Treasury:"TR",FloorBroker:"FB"});var al=Object.freeze({FINRAOATS:1});var nl=Object.freeze({No:0,Yes:1,UseDefaultSetting:2});var rl=Object.freeze({Volume:1,Price:2,Side:3,AON:4,General:5,ClearingAccount:6,CMTAAccount:7});var ol=Object.freeze({RelatedToDisplayedPrice:"0",RelatedToMarketPrice:"1",RelatedToPrimaryPrice:"2",RelatedToLocalPrimaryPrice:"3",RelatedToMidpointPrice:"4",RelatedToLastTradePrice:"5",RelatedToVWAP:"6",AveragePriceGuarantee:"7"});var sl=Object.freeze({OrBetter:0,Strict:1,OrWorse:2});var cl=Object.freeze({Floating:0,Fixed:1});var pl=Object.freeze({Price:0,BasisPoints:1,Ticks:2,PriceTier:3});var ul=Object.freeze({MoreAggressive:1,MorePassive:2});var ll=Object.freeze({Local:1,National:2,Global:3,NationalExcludingLocal:4});var ml=Object.freeze({Initial:"1",New:"2",Random:"3",Undisclosed:"4"});var yl=Object.freeze({Immediate:"1",Exhaust:"2"});var Sl=Object.freeze({CREST:1,NSCC:2,Euroclear:3,Clearstream:4,Cheque:5,TelegraphicTransfer:6,FedWire:7,DirectCredit:8,ACHCredit:9,BPAY:10,HighValueClearingSystemHVACS:11,ReinvestInFund:12,Other:999});var Pl=Object.freeze({RecordAmount:0,ExAmount:1,PaidAmount:2,PerMasterConfirm:3});var fl=Object.freeze({EquityAmountReceiver:0,CalculationAgent:1});var gl=Object.freeze({ExDate:0,RecordDate:1});var hl=Object.freeze({UnknownSymbol:"A",WrongSide:"B",QuantityExceedsOrder:"C",NoMatchingOrder:"D",PriceExceedsLimit:"E",CalculationDifference:"F",NoMatchingExecutionReport:"G",Other:"Z"});var Il=Object.freeze({Cash:"C",Securities:"S"});var bl=Object.freeze({NotRelatedToSecurityHalt:"N",RelatedToSecurityHalt:"Y"});var Fl=Object.freeze({UniqueClOrdID:"N",DuplicateClOrdID:"Y"});var El=Object.freeze({New:"0",Reply:"1",AdminReply:"2"});var Ya=Object.freeze({None:0,PKCS:1,DES:2,PKCSDES:3,PGPDES:4,PGPDESMD5:5,PEM:6});var Cl=Object.freeze({Int:1,Length:2,NumInGroup:3,SeqNum:4,TagNum:5,Float:6,Qty:7,Price:8,PriceOffset:9,Amt:10,Percentage:11,Char:12,Boolean:13,String:14,MultipleCharValue:15,Currency:16,Exchange:17,MonthYear:18,UTCTimestamp:19,UTCTimeOnly:20,LocalMktDate:21,UTCDateOnly:22,Data:23,MultipleStringValue:24,Country:25,Language:26,TZTimeOnly:27,TZTimestamp:28,Tenor:29,DayOfMonth:30,XMLData:31,Pattern:32,Reserved100Plus:33,Reserved1000Plus:34,Reserved4000Plus:35});var vl=Object.freeze({Successful:0,InvalidParty:1,InvalidRelatedParty:2,InvalidEntitlementType:3,InvalidEntitlementID:4,InvalidEntitlementAttribute:5,InvalidInstrumentScope:6,InvalidMarketSegmentScope:7,InvalidStartDate:8,InvalidEndDate:9,InstrumentScopeNotSupported:10,MarketSegmentScopeNotSupported:11,EntitlementNotApprovedForParty:12,EntitlementAlreadyDefinedForParty:13,InstrumentNotApprovedForParty:14,NotAuthorized:98,Other:99});var Tl=Object.freeze({Accepted:0,AcceptedWithChanges:1,Rejected:2,Pending:3,Requested:4,Deferred:5});var Xl=Object.freeze({OrderEntry:1,HItLift:2,ViewIndicativePx:3,ViewExecutablePx:4,SingleQuote:5,StreamingQuotes:6,SingleBroker:7,MultiBrokers:8});var Dl=Object.freeze({Trade:0,MakeMarkets:1,HoldPositions:2,PerformGiveUps:3,SubmitIOIs:4,SubscribeMarketData:5,ShortWithPreBorrow:6,SubmitQuoteRequests:7,RespondToQuoteRequests:8});var Rl=Object.freeze({CustomerOrClient:"C",ExchangeOrExecutionVenue:"E",FirmOrBroker:"F"});var xl=Object.freeze({Hour:"H",Minute:"Min",Second:"S",Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var Nl=Object.freeze({Put:1,Call:2,Tender:3,SinkingFundCall:4,Activation:5,Inactiviation:6,LastEligibleTradeDate:7,SwapStartDate:8,SwapEndDate:9,SwapRollDate:10,SwapNextStartDate:11,SwapNextRollDate:12,FirstDeliveryDate:13,LastDeliveryDate:14,InitialInventoryDueDate:15,FinalInventoryDueDate:16,FirstIntentDate:17,LastIntentDate:18,PositionRemovalDate:19,MinimumNotice:20,DeliveryStartTime:21,DeliveryEndTime:22,FirstNoticeDate:23,LastNoticeDate:24,FirstExerciseDate:25,RedemptionDate:26,TrdCntntnEfctvDt:27,Other:99});var Al=Object.freeze({False:"N",True:"Y"});var wl=Object.freeze({BIC:"B",GeneralIdentifier:"C",Proprietary:"D",ISOCountryCode:"E",MIC:"G"});var Ml=Object.freeze({NoRestriction:0,TradedOnlyOnTradingVenue:1,TradedOnlyOnSI:2,TradedOnTradingVenueOrSI:3});var Ll=Object.freeze({Received:"0",Accepted:"1",DontKnow:"2"});var Ol=Object.freeze({StayOnOfferSide:"0",NotHeld:"1",Work:"2",GoAlong:"3",OverTheDay:"4",Held:"5",ParticipateDoNotInitiate:"6",StrictScale:"7",TryToScale:"8",StayOnBidSide:"9",NoCross:"A",OKToCross:"B",CallFirst:"C",PercentOfVolume:"D",DoNotIncrease:"E",DoNotReduce:"F",AllOrNone:"G",ReinstateOnSystemFailure:"H",InstitutionsOnly:"I",ReinstateOnTradingHalt:"J",CancelOnTradingHalt:"K",LastPeg:"L",MidPricePeg:"M",NonNegotiable:"N",OpeningPeg:"O",MarketPeg:"P",CancelOnSystemFailure:"Q",PrimaryPeg:"R",Suspend:"S",FixedPegToLocalBestBidOrOfferAtTimeOfOrder:"T",CustomerDisplayInstruction:"U",Netting:"V",PegToVWAP:"W",TradeAlong:"X",TryToStop:"Y",CancelIfNotBest:"Z",TrailingStopPeg:"a",StrictLimit:"b",IgnorePriceValidityChecks:"c",PegToLimitPrice:"d",WorkToTargetStrategy:"e",IntermarketSweep:"f",ExternalRoutingAllowed:"g",ExternalRoutingNotAllowed:"h",ImbalanceOnly:"i",SingleExecutionRequestedForBlockTrade:"j",BestExecution:"k",SuspendOnSystemFailure:"l",SuspendOnTradingHalt:"m",ReinstateOnConnectionLoss:"n",CancelOnConnectionLoss:"o",SuspendOnConnectionLoss:"p",Release:"q",ExecuteAsDeltaNeutral:"r",ExecuteAsDurationNeutral:"s",ExecuteAsFXNeutral:"t",MinGuaranteedFillEligible:"u",BypassNonDisplayLiquidity:"v",Lock:"w",IgnoreNotionalValueChecks:"x",TrdAtRefPx:"y",AllowFacilitation:"z"});var kl=Object.freeze({Unspecified:0,Manual:1,Automated:2,VoiceBrokered:3});var Ul=Object.freeze({BidPrice:"B",CreationPrice:"C",CreationPricePlusAdjustmentPercent:"D",CreationPricePlusAdjustmentAmount:"E",OfferPrice:"O",OfferPriceMinusAdjustmentPercent:"P",OfferPriceMinusAdjustmentAmount:"Q",SinglePrice:"S"});var ql=Object.freeze({GTCorporateAction:0,GTRenewal:1,VerbalChange:2,RepricingOfOrder:3,BrokerOption:4,PartialDeclineOfOrderQty:5,CancelOnTradingHalt:6,CancelOnSystemFailure:7,Market:8,Canceled:9,WarehouseRecap:10,PegRefresh:11,CancelOnConnectionLoss:12,CancelOnLogout:13,AssignTimePriority:14,CancelledForTradePriceViolation:15,CancelledForCrossImbalance:16,CxldSMP:17,CxldSMPAggressive:18,CxldSMPPassive:19,CxldSMPAggressivePassive:20,Other:99});var Bl=Object.freeze({New:"0",Cancel:"1",Correct:"2",Status:"3"});var jl=Object.freeze({New:"0",DoneForDay:"3",Canceled:"4",Replaced:"5",PendingCancel:"6",Stopped:"7",Rejected:"8",Suspended:"9",PendingNew:"A",Calculated:"B",Expired:"C",Restated:"D",PendingReplace:"E",Trade:"F",TradeCorrect:"G",TradeCancel:"H",OrderStatus:"I",TradeInAClearingHold:"J",TradeHasBeenReleasedToClearing:"K",TriggeredOrActivatedBySystem:"L",Locked:"M",Released:"N"});var Gl=Object.freeze({OrdAddedOnRequest:1,OrdReplacedOnRequest:2,OrdCxldOnRequest:3,UnsolicitedOrdCxl:4,NonRestingOrdAddedOnRequest:5,OrdReplacedWithNonRestingOrdOnRequest:6,TriggerOrdReplacedOnRequest:7,SuspendedOrdReplacedOnRequest:8,SuspendedOrdCxldOnRequest:9,OrdCxlPending:10,PendingCxlExecuted:11,RestingOrdTriggered:12,SuspendedOrdActivated:13,ActiveOrdSuspended:14,OrdExpired:15});var Ql=Object.freeze({NotRequired:0,NonElectronic:1,Electronic:2,Unknown:3});var Vl=Object.freeze({Automatic:"A",Manual:"M"});var zl=Object.freeze({European:0,American:1,Bermuda:2,Other:99});var Hl=Object.freeze({ExpireOnTradingSessionClose:0,ExpireOnTradingSessionOpen:1,SpecifiedExpiration:2});var Wl=Object.freeze({AutoExercise:1,NonAutoExercise:2,FinalWillBeExercised:3,ContraryIntention:4,Difference:5});var _l=Object.freeze({CalculationAgent:0,OptionsExchange:1});var Kl=Object.freeze({Bankrupt:"1",PendingDelisting:"2",Restricted:"3"});var Yl=Object.freeze({NERCEasternOffPeak:0,NERCWesternOffPeak:1,NERCCalendarAllDaysInMonth:2,NERCEasternPeak:3,NERCWesternPeak:4,AllTimes:5,OnPeak:6,OffPeak:7,Base:8,Block:9,Other:99});var Jl=Object.freeze({DoNotExecuteForexAfterSecurityTrade:"N",ExecuteForexAfterSecurityTrade:"Y"});var $l=Object.freeze({Repo:0,Cash:1,FreeCedits:2,CustomerShortSales:3,BrokerShortSales:4,UnsecuredBorrowing:5,Other:99});var Zl=Object.freeze({No:"N",Yes:"Y"});var em=Object.freeze({Bloomberg:1,CentralBank:2,WMR:3,MitsubishiUFJ:4,LondonBullionMarketAssociation:5,LondonMetalExchange:6,Other:99});var ud=Object.freeze({SequenceReset:"N",GapFillMessage:"Y"});var tm=Object.freeze({BookOutAllTradesOnDayOfExecution:0,AccumulateUntilFilledOrExpired:1,AccumulateUntilVerballyNotifiedOtherwise:2});var dm=Object.freeze({NewsDissemination:0,OrderInflux:1,OrderImbalance:2,AdditionalInformation:3,NewsPending:4,EquipmentChangeover:5});var im=Object.freeze({AutomatedExecutionNoIntervention:"1",AutomatedExecutionInterventionOK:"2",ManualOrder:"3"});var am=Object.freeze({CUSIP:"1",SEDOL:"2",QUIK:"3",ISINNumber:"4",RICCode:"5",ISOCurrencyCode:"6",ISOCountryCode:"7",ExchangeSymbol:"8",ConsolidatedTapeAssociation:"9"});var nm=Object.freeze({NotImplied:0,ImpliedIn:1,ImpliedOut:2,BothImpliedInAndImpliedOut:3});var rm=Object.freeze({Net:1,Gross:2});var om=Object.freeze({SubAllocate:1,ThirdPartyAllocation:2});var sm=Object.freeze({Flat:1,ZeroCoupon:2,InterestBearing:3,NoPeriodicPayments:4,VariableRate:5,LessFeeForPut:6,SteppedCoupon:7,CouponPeriod:8,When:9,OriginalIssueDiscount:10,Callable:11,EscrowedToMaturity:12,EscrowedToRedemptionDate:13,PreRefunded:14,InDefault:15,Unrated:16,Taxable:17,Indexed:18,SubjectToAlternativeMinimumTax:19,OriginalIssueDiscountPrice:20,CallableBelowMaturityValue:21,CallableWithoutNotice:22,PriceTickRulesForSecurity:23,TradeTypeEligibilityDetailsForSecurity:24,InstrumentDenominator:25,InstrumentNumerator:26,InstrumentPricePrecision:27,InstrumentStrikePrice:28,TradeableIndicator:29,InstrumentEligibleAnonOrders:30,MinGuaranteedFillVolume:31,MinGuaranteedFillStatus:32,TradeAtSettlementEligibility:33,TestInstrument:34,DummyInstrument:35,NegativeSettlementPriceEligibility:36,NegativeStrikePriceEligibility:37,USStdContractInd:38,AdmittedToTradingOnTradingVenue:39,AverageDailyNotionalAmount:40,AverageDailyNumberTrades:41,Text:99});var cm=Object.freeze({ProRata:"P",Random:"R"});var pm=Object.freeze({Include:1,Exclude:2});var um=Object.freeze({StandardITM:0,ATMITM:1,ATMCallITM:2,ATMPutITM:3});var lm=Object.freeze({HaltWasNotRelatedToAHaltOfTheCommonStock:"N",HaltWasDueToCommonStockBeingHalted:"Y"});var mm=Object.freeze({NotNatural:"N",Natural:"Y"});var ym=Object.freeze({High:"H",Low:"L",Medium:"M"});var Sm=Object.freeze({Small:"S",Medium:"M",Large:"L",UndisclosedQuantity:"U"});var Pm=Object.freeze({AllOrNone:"A",MarketOnClose:"B",AtTheClose:"C",VWAP:"D",Axe:"E",AxeOnBid:"F",AxeOnOffer:"G",ClientNaturalWorking:"H",InTouchWith:"I",PositionWanted:"J",MarketMaking:"K",Limit:"L",MoreBehind:"M",ClientNaturalBlock:"N",AtTheOpen:"O",TakingAPosition:"P",AtTheMarket:"Q",ReadyToTrade:"R",PortfolioShown:"S",ThroughTheDay:"T",Unwind:"U",Versus:"V",Indication:"W",CrossingOpportunity:"X",AtTheMidpoint:"Y",PreOpen:"Z",QuantityNegotiable:"1",AllowLateBids:"2",ImmediateOrCounter:"3",AutoTrade:"4",AutomaticSpot:"a",PlatformCalculatedSpot:"b",OutsideSpread:"c",DeferredSpot:"d",NegotiatedSpot:"n"});var fm=Object.freeze({Large:"L",Medium:"M",Small:"S"});var gm=Object.freeze({New:"N",Cancel:"C",Replace:"R"});var hm=Object.freeze({Pay:"PAY",Rcv:"RCV",NA:"NA"});var Im=Object.freeze({Agent:"1",CrossAsAgent:"2",CrossAsPrincipal:"3",Principal:"4",RisklessPrincipal:"5"});var bm=Object.freeze({NotLastMessage:"N",LastMessage:"Y"});var Fm=Object.freeze({NeitherAddedNorRemovedLiquidity:0,AddedLiquidity:1,RemovedLiquidity:2,LiquidityRoutedOut:3,Auction:4,TriggeredStopOrder:5,TriggeredContingencyOrder:6,TriggeredMarketOrder:7,RemovedLiquidityAfterFirmOrderCommitment:8,AuctionExecutionAfterFirmOrderCommitment:9,Unknown:10,Other:11});var Em=Object.freeze({NotLastMessage:"N",LastMessage:"Y"});var Cm=Object.freeze({DoesNotConsituteALegalConfirm:"N",LegalConfirm:"Y"});var vm=Object.freeze({ParForPar:1,ModifiedDuration:2,Risk:4,Proceeds:5});var Tm=Object.freeze({Unknown:0,FirstLien:1,SecondLien:2,ThirdLien:3});var Xm=Object.freeze({CreditLimit:0,GrossPositionLimit:1,NetPositionLimit:2,RiskExposureLimit:3,LongPositionLimit:4,ShortPositionLimit:5});var Dm=Object.freeze({FiveDayMovingAverage:1,TwentyDayMovingAverage:2,NormalMarketSize:3,Other:4});var Rm=Object.freeze({Immediate:"1",WaitForInstruction:"2",SellDriven:"3",BuyDrivenCashTopUp:"4",BuyDrivenCashWithdraw:"5"});var xm=Object.freeze({PreListedOnly:0,UserRequested:1});var Nm=Object.freeze({InBiddingProcess:1,ReceivedForExecution:2,Executing:3,Cancelling:4,Alert:5,AllDone:6,Reject:7});var Am=Object.freeze({BrokerCredit:0,ExchangeClosed:2,TooLateToEnter:4,UnknownOrder:5,DuplicateOrder:6,UnsupportedOrderCharacteristic:11,Other:99});var wm=Object.freeze({Ack:1,Response:2,Timed:3,ExecStarted:4,AllDone:5,Alert:6});var Mm=Object.freeze({Add:"A",Delete:"D",Modify:"M",Snapshot:"S"});var Lm=Object.freeze({BridgeLoan:0,LetterOfCredit:1,RevolvingLoan:2,SwinglineFunding:3,TermLoan:4,TradeClaim:5});var Om=Object.freeze({No:"N",Yes:"Y"});var km=Object.freeze({NotLocked:0,AwayMarketNetter:1,ThreeTickLocked:2,LockedByMarketMaker:3,DirectedOrderLock:4,MultilegLock:5,MarketOrderLock:6,PreAssignmentLock:7});var Um=Object.freeze({OddLot:"1",RoundLot:"2",BlockLot:"3",RoundLotBasedUpon:"4"});var qm=Object.freeze({AdditionalMargin:1,AdjustedMargin:2,UnadjustedMargin:3,BinaryAddOnAmount:4,CashBalanceAmount:5,ConcentrationMargin:6,CoreMargin:7,DeliveryMargin:8,DiscretionaryMargin:9,FuturesSpreadMargin:10,InitialMargin:11,LiquidatingMargin:12,MarginCallAmount:13,MarginDeficitAmount:14,MarginExcessAmount:15,OptionPremiumAmount:16,PremiumMargin:17,ReserveMargin:18,SecurityCollateralAmount:19,StressTestAddOnAmount:20,SuperMargin:21,TotalMargin:22,VariationMargin:23,SecondaryVariationMargin:24,RolledUpMarginDeficit:25,SpreadResponseMargin:26,SystemicRiskMargin:27,CurveRiskMargin:28,IndexSpreadRiskMargin:29,SectorRiskMargin:30,JumpToDefaultRiskMargin:31,BasisRiskMargin:32,InterestRateRiskMargin:33,JumpToHealthRiskMargin:34,OtherRiskMargin:35});var Bm=Object.freeze({Posted:0,Received:1});var jm=Object.freeze({Summary:0,Detail:1,ExcessDeficit:2,NetPosition:3});var Gm=Object.freeze({Successful:0,InvalidOrUnknownInstrument:1,InvalidOrUnknownMarginClass:2,InvalidParties:3,InvalidTransportTypeReq:4,InvalidDestinationReq:5,NoMarginReqFound:6,MarginReqInquiryQualifierNotSupported:7,UnauthorizedForMarginReqInquiry:8,Other:99});var Qm=Object.freeze({Summary:0,Detail:1,ExcessDeficit:2});var Vm=Object.freeze({Normal:0,Stressed:1,Exceptional:2});var zm=Object.freeze({MasterAgreement:0,Confirmation:1});var Hm=Object.freeze({Basket:0,Bond:1,Cash:2,Commodity:3,ConvertibleBond:4,Equity:5,ExchangeTradedFund:6,Future:7,Index:8,Loan:9,Mortgage:10,MutualFund:11});var Wm=Object.freeze({NotApplicable:0,Applicable:1,AsInMasterAgreement:2,AsInConfirmation:3});var _m=Object.freeze({NoParticipation:0,BuyParticipation:1,SellParticipation:2,BothBuyAndSellParticipation:3});var Km=Object.freeze({MarketSegmentPoolMember:1,RetailSegment:2,WholesaleSegment:3});var Ym=Object.freeze({Active:1,Inactive:2,Published:3});var Jm=Object.freeze({InterProductSpread:1});var $m=Object.freeze({Pool:1,Retail:2,Wholesale:3});var Zm=Object.freeze({None:0,TradingRiskControl:1,ClearingRiskControl:2,MarketMakerProtection:3,StopTrading:4,EmergencyAction:5,SessionLossLogout:6,DuplicateLogin:7,ProductNotTraded:8,InstrumentNotTraded:9,CompleInstrumentDeleted:10,CircuitBreakerActivated:11,Other:99});var ey=Object.freeze({MassActionNotSupported:0,InvalidOrUnknownSecurity:1,InvalidOrUnknownUnderlyingSecurity:2,InvalidOrUnknownProduct:3,InvalidOrUnknownCFICode:4,InvalidOrUnknownSecurityType:5,InvalidOrUnknownTradingSession:6,InvalidOrUnknownMarket:7,InvalidOrUnknownMarketSegment:8,InvalidOrUnknownSecurityGroup:9,InvalidOrUnknownSecurityIssuer:10,InvalidOrUnknownIssuerOfUnderlyingSecurity:11,Other:99});var ty=Object.freeze({Rejected:0,Accepted:1,Completed:2});var dy=Object.freeze({AllOrdersForASecurity:1,AllOrdersForAnUnderlyingSecurity:2,AllOrdersForAProduct:3,AllOrdersForACFICode:4,AllOrdersForASecurityType:5,AllOrdersForATradingSession:6,AllOrders:7,AllOrdersForAMarket:8,AllOrdersForAMarketSegment:9,AllOrdersForASecurityGroup:10,CancelForSecurityIssuer:11,CancelForIssuerOfUnderlyingSecurity:12});var iy=Object.freeze({SuspendOrders:1,ReleaseOrdersFromSuspension:2,CancelOrders:3});var ay=Object.freeze({MassCancelNotSupported:0,InvalidOrUnknownSecurity:1,InvalidOrUnknownUnderlyingSecurity:2,InvalidOrUnknownProduct:3,InvalidOrUnknownCFICode:4,InvalidOrUnknownSecurityType:5,InvalidOrUnknownTradingSession:6,InvalidOrUnknownMarket:7,InvalidOrUnkownMarketSegment:8,InvalidOrUnknownSecurityGroup:9,InvalidOrUnknownSecurityIssuer:10,InvalidOrUnknownIssuerOfUnderlyingSecurity:11,Other:99});var ny=Object.freeze({CancelOrdersForASecurity:"1",CancelOrdersForAnUnderlyingSecurity:"2",CancelOrdersForAProduct:"3",CancelOrdersForACFICode:"4",CancelOrdersForASecurityType:"5",CancelOrdersForATradingSession:"6",CancelAllOrders:"7",CancelOrdersForAMarket:"8",CancelOrdersForAMarketSegment:"9",CancelOrdersForASecurityGroup:"A",CancelOrdersForSecurityIssuer:"B",CancelForIssuerOfUnderlyingSecurity:"C"});var ry=Object.freeze({CancelRequestRejected:"0",CancelOrdersForASecurity:"1",CancelOrdersForAnUnderlyingSecurity:"2",CancelOrdersForAProduct:"3",CancelOrdersForACFICode:"4",CancelOrdersForASecurityType:"5",CancelOrdersForATradingSession:"6",CancelAllOrders:"7",CancelOrdersForAMarket:"8",CancelOrdersForAMarketSegment:"9",CancelOrdersForASecurityGroup:"A",CancelOrdersForASecuritiesIssuer:"B",CancelOrdersForIssuerOfUnderlyingSecurity:"C"});var oy=Object.freeze({Successful:0,ResponseLevelNotSupported:1,InvalidMarket:2,InvalidMarketSegment:3,Other:99});var sy=Object.freeze({Accepted:1,AcceptedWithAdditionalEvents:2,Rejected:3});var cy=Object.freeze({StatusForOrdersForASecurity:1,StatusForOrdersForAnUnderlyingSecurity:2,StatusForOrdersForAProduct:3,StatusForOrdersForACFICode:4,StatusForOrdersForASecurityType:5,StatusForOrdersForATradingSession:6,StatusForAllOrders:7,StatusForOrdersForAPartyID:8,StatusForSecurityIssuer:9,StatusForIssuerOfUnderlyingSecurity:10});var py=Object.freeze({AccruedInterest:1,DealPrice:2,TradeDate:3,SettlementDate:4,SideIndicator:5,TradedCurrency:6,AccountID:7,ExecutingBrokerID:8,SettlementCurrencyAndAmount:9,InvestmentManagerID:10,NetAmount:11,PlaceOfSettlement:12,Commissions:13,SecurityIdentifier:14,QualityAllocated:15,Principal:16,Fees:17,Tax:18});var uy=Object.freeze({FixedAmount:1,Percentage:2});var ly=Object.freeze({NoMatchingConfirmation:0,NoMatchingAllocation:1,AllocationDataElementMissing:2,ConfirmationDataElementMissing:3,DataDifferenceNotWithinTolerance:4,MatchWithinTolerance:5,Other:99});var my=Object.freeze({Match:1,DoNotMatch:2});var yy=Object.freeze({Mandatory:1,Optional:2});var Sy=Object.freeze({Compared:"0",Uncompared:"1",AdvisoryOrAlert:"2",Mismatched:"3"});var Py=Object.freeze({ExactMatchPlus4BadgesExecTime:"A1",ExactMatchPlus4Badges:"A2",ACTAcceptedTrade:"M3",ExactMatchPlus2BadgesExecTime:"A3",ACTDefaultTrade:"M4",ExactMatchPlus2Badges:"A4",ACTDefaultAfterM2:"M5",ExactMatchPlusExecTime:"A5",ACTM6Match:"M6",StampedAdvisoriesOrSpecialistAccepts:"AQ",A1ExactMatchSummarizedQuantity:"S1",A2ExactMatchSummarizedQuantity:"S2",A3ExactMatchSummarizedQuantity:"S3",A4ExactMatchSummarizedQuantity:"S4",A5ExactMatchSummarizedQuantity:"S5",ExactMatchMinusBadgesTimes:"M1",SummarizedMatchMinusBadgesTimes:"M2",OCSLockedIn:"MT",OnePartyTradeReport:"1",TwoPartyTradeReport:"2",ConfirmedTradeReport:"3",AutoMatch:"4",CrossAuction:"5",CounterOrderSelection:"6",CallAuction:"7",Issuing:"8",SystematicInternaliser:"9",AutoMatchLastLook:"10",CrossAuctionLastLook:"11"});var fy=Object.freeze({YearMonthOnly:0,YearMonthDay:1,YearMonthWeek:2});var gy=Object.freeze({Months:0,Days:1,Weeks:2,Years:3});var hy=Object.freeze({TopOfBook:1,PriceDepth:2,OrderDepth:3});var Iy=Object.freeze({Bid:"0",Offer:"1",Trade:"2",IndexValue:"3",OpeningPrice:"4",ClosingPrice:"5",SettlementPrice:"6",TradingSessionHighPrice:"7",TradingSessionLowPrice:"8",VWAP:"9",Imbalance:"A",TradeVolume:"B",OpenInterest:"C",CompositeUnderlyingPrice:"D",SimulatedSellPrice:"E",SimulatedBuyPrice:"F",MarginRate:"G",MidPrice:"H",EmptyBook:"J",SettleHighPrice:"K",SettleLowPrice:"L",PriorSettlePrice:"M",SessionHighBid:"N",SessionLowOffer:"O",EarlyPrices:"P",AuctionClearingPrice:"Q",SwapValueFactor:"S",DailyValueAdjustmentForLongPositions:"R",CumulativeValueAdjustmentForLongPositions:"T",DailyValueAdjustmentForShortPositions:"U",CumulativeValueAdjustmentForShortPositions:"V",FixingPrice:"W",CashRate:"X",RecoveryRate:"Y",RecoveryRateForLong:"Z",RecoveryRateForShort:"a",MarketBid:"b",MarketOffer:"c",ShortSaleMinPrice:"d",PreviousClosingPrice:"e",ThresholdLimitPriceBanding:"g",DailyFinancingValue:"h",AccruedFinancingValue:"i",TWAP:"t"});var by=Object.freeze({No:"N",Yes:"Y"});var Fy=Object.freeze({Book:0,OffBook:1,Cross:2,QuoteDrivenMarket:3,DarkOrderBook:4,AuctionDrivenMarket:5,QuoteNegotiation:6,VoiceNegotiation:7,HybridMarket:8,OtherMarket:9});var Ey=Object.freeze({StartInstrumentRefData:1,EndInstrumentRefData:2,StartOffMarketTrades:3,EndOffMarketTrades:4,StartOrderBookTrades:5,EndOrderBookTrades:6,StartOpenInterest:7,EndOpenInterest:8,StartSettlementPrices:9,EndSettlementPrices:10,StartStatsRefData:11,EndStatsRefData:12,StartStatistics:13,EndStatistics:14});var Cy=Object.freeze({UnknownSymbol:"0",DuplicateMDReqID:"1",InsufficientBandwidth:"2",InsufficientPermissions:"3",UnsupportedSubscriptionRequestType:"4",UnsupportedMarketDepth:"5",UnsupportedMDUpdateType:"6",UnsupportedAggregatedBook:"7",UnsupportedMDEntryType:"8",UnsupportedTradingSessionID:"9",UnsupportedScope:"A",UnsupportedOpenCloseSettleFlag:"B",UnsupportedMDImplicitDelete:"C",InsufficientCredit:"D"});var vy=Object.freeze({Customer:1,CustomerProfessional:2,DoNotTradeThrough:3});var Ty=Object.freeze({SlidingWindow:1,SlidingWindowPeak:2,FixedDateRange:3,FixedTimeRange:4,CurrentTimeUnit:5,PreviousTimeUnit:6,MaximumRange:7,MaximumRangeUpToPreviousTimeUnit:8});var Xy=Object.freeze({BuyersToSellers:1,UpticksToDownticks:2,MarketMakerToNonMarketMaker:3,AutomatedToNonAutomated:4,OrdersToTrades:5,QuotesToTrades:6,OrdersAndQuotesToTrades:7,FailedToTotalTradedValue:8,BenefitsToTotalTradedValue:9,FeesToTotalTradedValue:10,TradeVolumeToTotalTradedVolume:11,OrdersToTotalNumberOrders:12});var Dy=Object.freeze({Successful:0,InvalidOrUnknownMarket:1,InvalidOrUnknownMarketSegment:2,InvalidOrUnknownSecurityList:3,InvalidOrUnknownInstruments:4,InvalidParties:5,TradeDateOutOfSupportedRange:6,UnsupportedStatisticType:7,UnsupportedScopeOrSubScope:8,UnsupportedScopeType:9,MarketDepthNotSupported:10,FrequencyNotSupported:11,UnsupportedStatisticInterval:12,UnsupportedStatisticDateRange:13,UnsupportedStatisticTimeRange:14,UnsupportedRatioType:15,InvalidOrUnknownTradeInputSource:16,InvalidOrUnknownTradingSession:17,UnauthorizedForStatisticRequest:18,Other:99});var Ry=Object.freeze({BidPrices:1,OfferPrices:2,BidDepth:3,OfferDepth:4,Orders:5,Quotes:6,OrdersAndQuotes:7,Trades:8,TradePrices:9,AuctionPrices:10,OpeningPrices:11,ClosingPrices:12,SettlementPrices:13,UnderlyingPrices:14,OpenInterest:15,IndexValues:16,MarginRates:17,Outages:18,ScheduledAuctions:19,ReferencePrices:20,TradeValue:21,MarketDataFeeItems:22,Rebates:23,Discounts:24,Payments:25,Taxes:26,Levies:27,Benefits:28,Fees:29,OrdersRFQs:30,MarketMakers:31,TradingInterruptions:32,TradingSuspensions:33,NoQuotes:34,RequestForQuotes:35,TradeVolume:36});var xy=Object.freeze({EntryRate:1,ModificationRate:2,CancelRate:3,DownwardMove:4,UpwardMove:5});var Ny=Object.freeze({Active:1,Inactive:2});var Ay=Object.freeze({Visible:1,Hidden:2,Indicative:3,Tradeable:4,Passive:5,MarketConsensus:6,Power:7,HardwareError:8,SoftwareError:9,NetworkError:10,Failed:11,Executed:12,Entered:13,Modified:14,Cancelled:15,MarketDataAccess:16,TerminalAccess:17,Volume:18,Cleared:19,Settled:20,Other:21,Monetary:22,NonMonetary:23,Gross:24,LargeInScale:25,NeitherHiddenNorLargeInScale:26,CorporateAction:27,VenueDecision:28,MinimumTimePeriod:29,Open:30,NotExecuted:31,Aggressive:32,Directed:33});var wy=Object.freeze({Count:1,AverageVolume:2,TotalVolume:3,Distribution:4,Ratio:5,Liquidity:6,VWAP:7,Volatility:8,Duration:9,Tick:10,AverageValue:11,TotalValue:12,High:13,Low:14,Midpoint:15,First:16,Last:17,Final:18,ExchangeBest:19,ExchangeBestWithVolume:20,ConsolidatedBest:21,ConsolidatedBestWithVolume:22,TWAP:23,AverageDuration:24,AveragePrice:25,TotalFees:26,TotalBenefits:27,MedianValue:28,AverageLiquidity:29,MedianDuration:30});var My=Object.freeze({Absolute:1,Percentage:2});var Ly=Object.freeze({New:"0",Change:"1",Delete:"2",DeleteThru:"3",DeleteFrom:"4",Overlay:"5"});var Oy=Object.freeze({FullRefresh:0,IncrementalRefresh:1});var ky=Object.freeze({Range1:1,Range2:2,Range3:3});var Uy=Object.freeze({ISO2022JP:"ISO-2022-JP",EUCJP:"EUC-JP",ShiftJIS:"Shift_JIS",UTF8:"UTF-8"});var qy=Object.freeze({Realtime:1,EndOfDay:2});var By=Object.freeze({Once:1,Multiple:2});var jy=Object.freeze({Absolute:0,PerUnit:1,Percentage:2});var Gy=Object.freeze({Contributes:0,DoesNotContribute:1});var Qy=Object.freeze({Regulatory:"1",Tax:"2",LocalCommission:"3",ExchangeFees:"4",Stamp:"5",Levy:"6",Other:"7",Markup:"8",ConsumptionTax:"9",PerTransaction:"10",Conversion:"11",Agent:"12",TransferFee:"13",SecurityLending:"14",TradeReporting:"15",TaxOnPrincipalAmount:"16",TaxOnAccruedInterestAmount:"17",NewIssuanceFee:"18",ServiceFee:"19",OddLotFee:"20",AuctionFee:"21",ValueAddedTax:"22",SalesTax:"23",ExecutionFee:"24",OrderEntryFee:"25",OrderModificationFee:"26",OrdersCancellationFee:"27",MarketDataAccessFee:"28",MarketDataTerminalFee:"29",MarketDataVolumeFee:"30",ClearingFee:"31",SettlementFee:"32",Rebates:"33",Discounts:"34",Payments:"35",NonMonetaryPayments:"36"});var Vy=Object.freeze({UtilityProvidedStandardModel:0,ProprietaryModel:1});var zy=Object.freeze({Passed:"Y",NotChecked:"N",ExemptBelowLimit:"1",ExemptMoneyType:"2",ExemptAuthorised:"3"});var Hy=Object.freeze({Receive:"R",Send:"S"});var nt=Object.freeze({Heartbeat:"0",TestRequest:"1",ResendRequest:"2",Reject:"3",SequenceReset:"4",Logout:"5",IOI:"6",Advertisement:"7",ExecutionReport:"8",OrderCancelReject:"9",Logon:"A",News:"B",Email:"C",NewOrderSingle:"D",NewOrderList:"E",OrderCancelRequest:"F",OrderCancelReplaceRequest:"G",OrderStatusRequest:"H",AllocationInstruction:"J",ListCancelRequest:"K",ListExecute:"L",ListStatusRequest:"M",ListStatus:"N",AllocationInstructionAck:"P",DontKnowTrade:"Q",QuoteRequest:"R",Quote:"S",SettlementInstructions:"T",MarketDataRequest:"V",MarketDataSnapshotFullRefresh:"W",MarketDataIncrementalRefresh:"X",MarketDataRequestReject:"Y",QuoteCancel:"Z",QuoteStatusRequest:"a",MassQuoteAck:"b",SecurityDefinitionRequest:"c",SecurityDefinition:"d",SecurityStatusRequest:"e",SecurityStatus:"f",TradingSessionStatusRequest:"g",TradingSessionStatus:"h",MassQuote:"i",BusinessMessageReject:"j",BidRequest:"k",BidResponse:"l",ListStrikePrice:"m",XMLnonFIX:"n",RegistrationInstructions:"o",RegistrationInstructionsResponse:"p",OrderMassCancelRequest:"q",OrderMassCancelReport:"r",NewOrderCross:"s",CrossOrderCancelReplaceRequest:"t",CrossOrderCancelRequest:"u",SecurityTypeRequest:"v",SecurityTypes:"w",SecurityListRequest:"x",SecurityList:"y",DerivativeSecurityListRequest:"z",DerivativeSecurityList:"AA",NewOrderMultileg:"AB",MultilegOrderCancelReplace:"AC",TradeCaptureReportRequest:"AD",TradeCaptureReport:"AE",OrderMassStatusRequest:"AF",QuoteRequestReject:"AG",RFQRequest:"AH",QuoteStatusReport:"AI",QuoteResponse:"AJ",Confirmation:"AK",PositionMaintenanceRequest:"AL",PositionMaintenanceReport:"AM",RequestForPositions:"AN",RequestForPositionsAck:"AO",PositionReport:"AP",TradeCaptureReportRequestAck:"AQ",TradeCaptureReportAck:"AR",AllocationReport:"AS",AllocationReportAck:"AT",ConfirmationAck:"AU",SettlementInstructionRequest:"AV",AssignmentReport:"AW",CollateralRequest:"AX",CollateralAssignment:"AY",CollateralResponse:"AZ",CollateralReport:"BA",CollateralInquiry:"BB",NetworkCounterpartySystemStatusRequest:"BC",NetworkCounterpartySystemStatusResponse:"BD",UserRequest:"BE",UserResponse:"BF",CollateralInquiryAck:"BG",ConfirmationRequest:"BH",ContraryIntentionReport:"BO",SecurityDefinitionUpdateReport:"BP",SecurityListUpdateReport:"BK",AdjustedPositionReport:"BL",AllocationInstructionAlert:"BM",ExecutionAck:"BN",TradingSessionList:"BJ",TradingSessionListRequest:"BI",SettlementObligationReport:"BQ",DerivativeSecurityListUpdateReport:"BR",TradingSessionListUpdateReport:"BS",MarketDefinitionRequest:"BT",MarketDefinition:"BU",MarketDefinitionUpdateReport:"BV",ApplicationMessageRequest:"BW",ApplicationMessageRequestAck:"BX",ApplicationMessageReport:"BY",OrderMassActionReport:"BZ",OrderMassActionRequest:"CA",UserNotification:"CB",StreamAssignmentRequest:"CC",StreamAssignmentReport:"CD",StreamAssignmentReportACK:"CE",PartyDetailsListRequest:"CF",PartyDetailsListReport:"CG",MarginRequirementInquiry:"CH",MarginRequirementInquiryAck:"CI",MarginRequirementReport:"CJ",PartyDetailsListUpdateReport:"CK",PartyRiskLimitsRequest:"CL",PartyRiskLimitsReport:"CM",SecurityMassStatusRequest:"CN",SecurityMassStatus:"CO",AccountSummaryReport:"CQ",PartyRiskLimitsUpdateReport:"CR",PartyRiskLimitsDefinitionRequest:"CS",PartyRiskLimitsDefinitionRequestAck:"CT",PartyEntitlementsRequest:"CU",PartyEntitlementsReport:"CV",QuoteAck:"CW",PartyDetailsDefinitionRequest:"CX",PartyDetailsDefinitionRequestAck:"CY",PartyEntitlementsUpdateReport:"CZ",PartyEntitlementsDefinitionRequest:"DA",PartyEntitlementsDefinitionRequestAck:"DB",TradeMatchReport:"DC",TradeMatchReportAck:"DD",PartyRiskLimitsReportAck:"DE",PartyRiskLimitCheckRequest:"DF",PartyRiskLimitCheckRequestAck:"DG",PartyActionRequest:"DH",PartyActionReport:"DI",MassOrder:"DJ",MassOrderAck:"DK",PositionTransferInstruction:"DL",PositionTransferInstructionAck:"DM",PositionTransferReport:"DN",MarketDataStatisticsRequest:"DO",MarketDataStatisticsReport:"DP",CollateralReportAck:"DQ",MarketDataReport:"DR",CrossRequest:"DS",CrossRequestAck:"DT",AllocationInstructionAlertRequest:"DU",AllocationInstructionAlertRequestAck:"DV",TradeAggregationRequest:"DW",TradeAggregationReport:"DX",PayManagementReport:"EA",PayManagementReportAck:"EB",PayManagementRequest:"DY",PayManagementRequestAck:"DZ",SettlementStatusRequest:"EC",SettlementStatusRequestAck:"ED",SettlementStatusReport:"EE",SettlementStatusReportAck:"EF",SecurityRiskMetricsReport:"EG",AlgoCertificateRequest:"EH",AlgoCertificateRequestAck:"EI",AlgoCertificateReport:"EJ",AlgoCertificateReportAck:"EK",TestSuiteDefinitionRequest:"EL",TestSuiteDefinitionRequestAck:"EM",TestActionRequest:"EN",TestActionRequestAck:"EO",TestActionReport:"EP"});var Wy=Object.freeze({NotMultiJrsdctnEligible:0,MultiJrsdctnEligible:1});var _y=Object.freeze({SingleSecurity:"1",IndividualLegOfAMultiLegSecurity:"2",MultiLegSecurity:"3"});var Ky=Object.freeze({ReportByMulitlegSecurityOnly:0,ReportByMultilegSecurityAndInstrumentLegs:1,ReportByInstrumentLegsOnly:2});var Yy=Object.freeze({PredefinedMultilegSecurity:0,UserDefinedMultilegSecurity:1,UserDefined:2});var Jy=Object.freeze({NetPrice:0,ReversedNetPrice:1,YieldDifference:2,Individual:3,ContractWeightedAveragePrice:4,MultipliedPrice:5});var $y=Object.freeze({Bid:0,Offer:1,MidPrice:2});var Zy=Object.freeze({NotApplicable:0,Direct:1,SIP:2,Hybrid:3});var e0=Object.freeze({AutoSpot:0,NegotiatedSpot:1,PhoneSpot:2});var t0=Object.freeze({Net:1,Gross:2});var d0=Object.freeze({Snapshot:1,Subscribe:2,StopSubscribing:4,LevelOfDetail:8});var i0=Object.freeze({Full:1,IncrementalUpdate:2});var a0=Object.freeze({CompanyNews:0,MarketplaceNews:1,FinancialMarketNews:2,TechnicalNews:3,OtherNews:99});var n0=Object.freeze({Replacement:0,OtherLanguage:1,Complimentary:2,Withdrawal:3});var r0=Object.freeze({PotentialAdjustment:0,CashEquivalent:1});var o0=Object.freeze({Unadjusted:0,Adjusted:1});var s0=Object.freeze({OneSide:1,BothSides:2});var c0=Object.freeze({OrderSuspended:0,InstrumentSuspended:1});var p0=Object.freeze({DetailsShouldNotBeCommunicated:"N",DetailsShouldBeCommunicated:"Y"});var u0=Object.freeze({Bond:"0",ConvertBond:"1",Mortgage:"2",Loan:"3"});var l0=Object.freeze({TreatAsRoundLot:"N",TreatAsOddLot:"Y"});var m0=Object.freeze({Offset:0,Onset:1});var y0=Object.freeze({Regular:0,Offshore:1,Onshore:2});var S0=Object.freeze({Close:"C",Open:"O"});var P0=Object.freeze({DailyOpen:"0",SessionOpen:"1",DeliverySettlementEntry:"2"});var f0=Object.freeze({DailyOpen:"0",SessionOpen:"1",DeliverySettlementEntry:"2",ExpectedEntry:"3",EntryFromPreviousBusinessDay:"4",TheoreticalPriceValue:"5"});var g0=Object.freeze({Unadjusted:0,Adjusted:1});var h0=Object.freeze({Vanilla:1,Capped:2,Binary:3,Asian:4,Barrier:5,DigitalBarrier:6,Lookback:7,OtherPathDependent:8,Other:99});var I0=Object.freeze({AggregatedOrder:0,PendingAllocation:1,LiquidityProvisionActivityOrder:2,RiskReductionOrder:3,AlgorithmicOrder:4,SystematicInternaliserOrder:5,AllExecutionsSubmittedToAPA:6,OrderExecutionInstructedByClient:7,LargeInScale:8,Hidden:9,SubjectToEUSTO:10,SubjectToUKSTO:11,RepresentativeOrder:12,LinkageType:13,ExemptFromSTO:14});var b0=Object.freeze({Agency:"A",Proprietary:"G",Individual:"I",Principal:"P",RisklessPrincipal:"R",AgentForOtherMember:"W",MixedCapacity:"M"});var F0=Object.freeze({Order:"1",Quote:"2",PrivatelyNegotiatedTrade:"3",MultilegOrder:"4",LinkedOrder:"5",QuoteRequest:"6",ImpliedOrder:"7",CrossOrder:"8",StreamingPrice:"9",InternalCrossOrder:"A"});var E0=Object.freeze({Seconds:0,TenthsOfASecond:1,HundredthsOfASecond:2,Milliseconds:3,Microseconds:4,Nanoseconds:5,Minutes:10,Hours:11,Days:12,Weeks:13,Months:14,Years:15});var C0=Object.freeze({Add:"1",Modify:"2",Delete:"3",Suspend:"4",Release:"5"});var v0=Object.freeze({AddOrderRequest:1,ModifyOrderRequest:2,DeleteOrderRequest:3,OrderEnteredOOB:4,OrderModifiedOOB:5,OrderDeletedOOB:6,OrderActivatedOrTriggered:7,OrderExpired:8,ReserveOrderRefreshed:9,AwayMarketBetter:10,CorporateAction:11,StartOfDay:12,EndOfDay:13});var T0=Object.freeze({Added:1,Modified:2,Deleted:3,PartiallyFilled:4,Filled:5,Suspended:6,Released:7,Restated:8,Locked:9,Triggered:10,Activated:11});var X0=Object.freeze({FINRAOATS:1,FIAExecutionSourceCode:2});var D0=Object.freeze({OrderReceivedFromCustomer:1,OrderReceivedFromWithinFirm:2,OrderReceivedFromAnotherBrokerDealer:3,OrderReceivedFromCustomerOrWithFirm:4,OrderReceivedFromDirectAccessCustomer:5,OrderReceivedFromForeignDealerEquivalent:6,OrderReceivedFromExecutionOnlyService:7});var R0=Object.freeze({NoChange:0,ExecutingPartyChange:1,EnteringPartyChange:2,SpecifiedPartyChange:3});var x0=Object.freeze({NotSpecified:0,OrderAggregation:1,OrderSplit:2});var N0=Object.freeze({NoAck:0,MinimumAck:1,AckEach:2,SummaryAck:3});var A0=Object.freeze({ProgramTrade:"1",IndexArbitrage:"2",NonIndexArbitrage:"3",CompetingMarketMaker:"4",ActingAsMarketMakerOrSpecialistInSecurity:"5",ActingAsMarketMakerOrSpecialistInUnderlying:"6",ForeignEntity:"7",ExternalMarketParticipant:"8",ExternalInterConnectedMarketLinkage:"9",RisklessArbitrage:"A",IssuerHolding:"B",IssuePriceStabilization:"C",NonAlgorithmic:"D",Algorithmic:"E",Cross:"F",InsiderAccount:"G",SignificantShareholder:"H",NormalCourseIssuerBid:"I"});var w0=Object.freeze({BrokerCredit:0,UnknownSymbol:1,ExchangeClosed:2,OrderExceedsLimit:3,TooLateToEnter:4,UnknownOrder:5,DuplicateOrder:6,DuplicateOfAVerballyCommunicatedOrder:7,StaleOrder:8,TradeAlongRequired:9,InvalidInvestorID:10,UnsupportedOrderCharacteristic:11,SurveillanceOption:12,IncorrectQuantity:13,IncorrectAllocatedQuantity:14,UnknownAccount:15,PriceExceedsCurrentPriceBand:16,InvalidPriceIncrement:18,ReferencePriceNotAvailable:19,NotionalValueExceedsThreshold:20,AlgorithmRiskThresholdBreached:21,ShortSellNotPermitted:22,ShortSellSecurityPreBorrowRestriction:23,ShortSellAccountPreBorrowRestriction:24,InsufficientCreditLimit:25,ExceededClipSizeLimit:26,ExceededMaxNotionalOrderAmt:27,ExceededDV01PV01Limit:28,ExceededCS01Limit:29,LastLook:30,LastLookLatency:31,UnavailablePriceLiquidity:32,InvalidMissingEntitlements:33,Other:99});var M0=Object.freeze({New:"0",PartiallyFilled:"1",Filled:"2",DoneForDay:"3",Canceled:"4",Replaced:"5",PendingCancel:"6",Stopped:"7",Rejected:"8",Suspended:"9",PendingNew:"A",Calculated:"B",Expired:"C",AcceptedForBidding:"D",PendingReplace:"E"});var L0=Object.freeze({Market:"1",Limit:"2",Stop:"3",StopLimit:"4",MarketOnClose:"5",WithOrWithout:"6",LimitOrBetter:"7",LimitWithOrWithout:"8",OnBasis:"9",OnClose:"A",LimitOnClose:"B",ForexMarket:"C",PreviouslyQuoted:"D",PreviouslyIndicated:"E",ForexLimit:"F",ForexSwap:"G",ForexPreviouslyQuoted:"H",Funari:"I",MarketIfTouched:"J",MarketWithLeftOverAsLimit:"K",PreviousFundValuationPoint:"L",NextFundValuationPoint:"M",Pegged:"P",CounterOrderSelection:"Q",StopOnBidOrOffer:"R",StopLimitOnBidOrOffer:"S"});var O0=Object.freeze({MemberTradingForTheirOwnAccount:1,ClearingFirmTradingForItsProprietaryAccount:2,MemberTradingForAnotherMember:3,AllOther:4});var k0=Object.freeze({JointInvestors:"J",TenantsInCommon:"T",JointTrustees:"2"});var U0=Object.freeze({IndividualInvestor:1,PublicCompany:2,PrivateCompany:3,IndividualTrustee:4,CompanyTrustee:5,PensionPlan:6,CustodianUnderGiftsToMinorsAct:7,Trusts:8,Fiduciaries:9,NetworkingSubAccount:10,NonProfitOrganization:11,CorporateBody:12,Nominee:13,InstitutionalCustomer:14,Combined:15,MemberFirmEmployee:16,MarketMakingAccount:17,ProprietaryAccount:18,NonbrokerDealer:19,UnknownBeneficialOwnerType:20,FirmsErrorAccount:21,FirmAgencyAveragePriceAccount:22});var q0=Object.freeze({InvalidParty:0,UnkReqParty:1,NotAuthorized:98,Other:99});var B0=Object.freeze({Accepted:0,Completed:1,Rejected:2});var j0=Object.freeze({Suspend:0,HaltTrading:1,Reinstate:2});var G0=Object.freeze({Accepted:0,AcceptedWithChanges:1,Rejected:2});var Q0=Object.freeze({Successful:0,InvalidParty:1,InvalidRelatedParty:2,InvalidPartyStatus:3,NotAuthorized:98,Other:99});var V0=Object.freeze({Accepted:0,AcceptedWithChanges:1,Rejected:2,AcceptancePending:3});var z0=Object.freeze({Agency:0,Principal:1,RisklessPrincipal:2,ExchangeOrderSubmitter:30,GeneralClearingMember:3,IndividualClearingMember:4,PreferredMarketMaker:5,DirectedMarketMaker:6,Bank:7,Hub:8,PrimaryTrdRepository:9,OrigTrdRepository:10,AddtnlIntlTrdRepository:11,AddtnlDomesticTrdRepository:12,RelatedExchange:13,OptionsExchange:14,SpecifiedExchange:15,ConstituentExchange:16,ExemptFromTradeReporting:17,Current:18,New:19,DesignatedSponsor:20,Specialist:21,Algorithm:22,FirmOrLegalEntity:23,NaturalPerson:24,RegularTrader:25,HeadTrader:26,Supervisor:27,TriParty:28,Lender:29});var H0=Object.freeze({Active:0,Suspended:1,Halted:2});var W0=Object.freeze({UKNationalInsuranceOrPensionNumber:"6",KoreanInvestorID:"1",ISITCAcronym:"I",BIC:"B",USSocialSecurityNumber:"7",TaiwaneseForeignInvestorID:"2",GeneralIdentifier:"C",USEmployerOrTaxIDNumber:"8",TaiwaneseTradingAcct:"3",Proprietary:"D",AustralianBusinessNumber:"9",MalaysianCentralDepository:"4",ISOCountryCode:"E",AustralianTaxFileNumber:"A",ChineseInvestorID:"5",SettlementEntityLocation:"F",TaxID:"J",MIC:"G",CSDParticipant:"H",AustralianCompanyNumber:"K",AustralianRegisteredBodyNumber:"L",CFTCReportingFirmIdentifier:"M",LegalEntityIdentifier:"N",InterimIdentifier:"O",ShortCodeIdentifier:"P",NationalIDNaturalPerson:"Q",IndiaPermanentAccountNumber:"R",FDID:"S",SPSAID:"T",MasterSPSAID:"U",KoreaShortSellingRegistrationNumber:"V"});var _0=Object.freeze({IsAlso:0,ClearsFor:1,ClearsThrough:2,TradesFor:3,TradesThrough:4,Sponsors:5,SponsoredThrough:6,ProvidesGuaranteeFor:7,IsGuaranteedBy:8,MemberOf:9,HasMembers:10,ProvidesMarketplaceFor:11,ParticipantOfMarketplace:12,CarriesPositionsFor:13,PostsTradesTo:14,EntersTradesFor:15,EntersTradesThrough:16,ProvidesQuotesTo:17,RequestsQuotesFrom:18,InvestsFor:19,InvestsThrough:20,BrokersTradesFor:21,BrokersTradesThrough:22,ProvidesTradingServicesFor:23,UsesTradingServicesOf:24,ApprovesOf:25,ApprovedBy:26,ParentFirmFor:27,SubsidiaryOf:28,RegulatoryOwnerOf:29,OwnedByRegulatory:30,Controls:31,IsControlledBy:32,LegalOwnerOf:33,OwnedByLegal:34,BeneficialOwnerOf:35,OwnedByBeneficial:36,SettlesFor:37,SettlesThrough:38});var K0=Object.freeze({Disabled:0,Enabled:1});var Y0=Object.freeze({ExecutingFirm:1,BrokerOfCredit:2,ClientID:3,ClearingFirm:4,InvestorID:5,IntroducingFirm:6,EnteringFirm:7,Locate:8,FundManagerClientID:9,SettlementLocation:10,OrderOriginationTrader:11,ExecutingTrader:12,OrderOriginationFirm:13,GiveupClearingFirmDepr:14,CorrespondantClearingFirm:15,ExecutingSystem:16,ContraFirm:17,ContraClearingFirm:18,SponsoringFirm:19,UnderlyingContraFirm:20,ClearingOrganization:21,Exchange:22,CustomerAccount:24,CorrespondentClearingOrganization:25,CorrespondentBroker:26,Buyer:27,Custodian:28,Intermediary:29,Agent:30,SubCustodian:31,Beneficiary:32,InterestedParty:33,RegulatoryBody:34,LiquidityProvider:35,EnteringTrader:36,ContraTrader:37,PositionAccount:38,ContraInvestorID:39,TransferToFirm:40,ContraPositionAccount:41,ContraExchange:42,InternalCarryAccount:43,OrderEntryOperatorID:44,SecondaryAccountNumber:45,ForeignFirm:46,ThirdPartyAllocationFirm:47,ClaimingAccount:48,AssetManager:49,PledgorAccount:50,PledgeeAccount:51,LargeTraderReportableAccount:52,TraderMnemonic:53,SenderLocation:54,SessionID:55,AcceptableCounterparty:56,UnacceptableCounterparty:57,EnteringUnit:58,ExecutingUnit:59,IntroducingBroker:60,QuoteOriginator:61,ReportOriginator:62,SystematicInternaliser:63,MultilateralTradingFacility:64,RegulatedMarket:65,MarketMaker:66,InvestmentFirm:67,HostCompetentAuthority:68,HomeCompetentAuthority:69,CompetentAuthorityLiquidity:70,CompetentAuthorityTransactionVenue:71,ReportingIntermediary:72,ExecutionVenue:73,MarketDataEntryOriginator:74,LocationID:75,DeskID:76,MarketDataMarket:77,AllocationEntity:78,PrimeBroker:79,StepOutFirm:80,BrokerClearingID:81,CentralRegistrationDepository:82,ClearingAccount:83,AcceptableSettlingCounterparty:84,UnacceptableSettlingCounterparty:85,CLSMemberBank:86,InConcertGroup:87,InConcertControllingEntity:88,LargePositionsReportingAccount:89,SettlementFirm:90,SettlementAccount:91,ReportingMarketCenter:92,RelatedReportingMarketCenter:93,AwayMarket:94,GiveupTradingFirm:95,TakeupTradingFirm:96,GiveupClearingFirm:97,TakeupClearingFirm:98,OriginatingMarket:99,MarginAccount:100,CollateralAssetAccount:101,DataRepository:102,CalculationAgent:103,ExerciseNoticeSender:104,ExerciseNoticeReceiver:105,RateReferenceBank:106,Correspondent:107,BeneficiaryBank:109,Borrower:110,PrimaryObligator:111,Guarantor:112,ExcludedReferenceEntity:113,DeterminingParty:114,HedgingParty:115,ReportingEntity:116,SalesPerson:117,Operator:118,CSD:119,ICSD:120,TradingSubAccount:121,InvestmentDecisionMaker:122,PublishingIntermediary:123,CSDParticipant:124,Issuer:125,ContraCustomerAccount:126,ContraInvestmentDecisionMaker:127,AuthorizingPerson:128});var J0=Object.freeze({Firm:1,Person:2,System:3,Application:4,FullLegalNameOfFirm:5,PostalAddress:6,PhoneNumber:7,EmailAddress:8,ContactName:9,SecuritiesAccountNumber:10,RegistrationNumber:11,RegisteredAddressForConfirmation:12,RegulatoryStatus:13,RegistrationName:14,CashAccountNumber:15,BIC:16,CSDParticipantMemberCode:17,RegisteredAddress:18,FundAccountName:19,TelexNumber:20,FaxNumber:21,SecuritiesAccountName:22,CashAccountName:23,Department:24,LocationDesk:25,PositionAccountType:26,SecurityLocateID:27,MarketMaker:28,EligibleCounterparty:29,ProfessionalClient:30,Location:31,ExecutionVenue:32,CurrencyDeliveryIdentifier:33,AddressCity:34,AddressStateOrProvince:35,AddressPostalCode:36,AddressStreet:37,AddressISOCountryCode:38,ISOCountryCode:39,MarketSegment:40,CustomerAccountType:41,OmnibusAccount:42,FundsSegregationType:43,GuaranteeFund:44,SwapDealer:45,MajorParticipant:46,FinancialEntity:47,USPerson:48,ReportingEntityIndicator:49,ElectedClearingRequirementException:50,BusinessCenter:51,ReferenceText:52,ShortMarkingExemptAccount:53,ParentFirmIdentifier:54,ParentFirmName:55,DealIdentifier:56,SystemTradeID:57,SystemTradeSubID:58,FCMCode:59,DlvryTrmlCode:60,VolntyRptEntity:61,RptObligJursdctn:62,VolntyRptJursdctn:63,CompanyActivities:64,EEAreaDomiciled:65,ContractLinked:66,ContractAbove:67,VolntyRptPty:68,EndUser:69,LocationOrJurisdiction:70,DerivativesDealer:71,Domicile:72,ExemptFromRecognition:73,Payer:74,Receiver:75,SystematicInternaliser:76,PublishingEntityIndicator:77,FirstName:78,Surname:79,DateOfBirth:80,OrderTransmittingFirm:81,OrderTransmittingFirmBuyer:82,OrderTransmitterSeller:83,LegalEntityIdentifier:84,SubSectorClassification:85,PartySide:86,LegalRegistrationCountry:87});var $0=Object.freeze({Business:0,Calendar:1,Commodity:2,Currency:3,Exchange:4,Scheduled:5});var Z0=Object.freeze({Prepaid:0,Postpaid:1,Variable:2,Fixed:3});var eS=Object.freeze({CREST:1,NSCC:2,Euroclear:3,Clearstream:4,Cheque:5,TelegraphicTransfer:6,FedWire:7,DebitCard:8,DirectDebit:9,DirectCredit:10,CreditCard:11,ACHDebit:12,ACHCredit:13,BPAY:14,HighValueClearingSystem:15,CHIPS:16,SWIFT:17,CHAPS:18,SIC:19,EuroSIC:20,Other:999});var tS=Object.freeze({Buy:1,Sell:2});var dS=Object.freeze({Initial:0,Previous:1});var iS=Object.freeze({Notional:0,CashFlow:1,FXLinkedNotional:2,FixedRate:3,FutureValueNotional:4,KnownAmount:5,FloatingRateMultiplier:6,Spread:7,CapRate:8,FloorRate:9,NonDeliverableSettlPaymentDates:10,NonDeliverableSettlCalculationDates:11,NonDeliverableFXFixingDates:12,SettlPeriodNotnl:13,SettlPeriodPx:14,CalcPeriod:15,DividendAccrualRateMultiplier:16,DividendAccrualRateSpread:17,DividendAccrualCapRate:18,DividendAccrualFloorRate:19,CompoundingRateMultiplier:20,CompoundingRateSpread:21,CompoundingCapRate:22,CompoundingFloorRate:23});var aS=Object.freeze({Standard:0,Net:1,StandardfNet:2});var nS=Object.freeze({Unweighted:0,Weighted:1});var rS=Object.freeze({Buyer:1,Seller:2});var oS=Object.freeze({None:0,Flat:1,Straight:2,SpreadExclusive:3});var sS=Object.freeze({Standard:0,FRA:1});var cS=Object.freeze({Buyer:1,Seller:2});var pS=Object.freeze({None:0,ISDA:1,AFMA:2});var uS=Object.freeze({None:0,LinearZeroYield:1});var lS=Object.freeze({Business:0,Calendar:1,CommodityBusiness:2,CurrencyBusiness:3,ExchangeBusiness:4,ScheduledTradingDay:5});var mS=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var yS=Object.freeze({Initial:0,InitialAndFinal:1,Final:2,AnyPeriod:3});var SS=Object.freeze({Volatility:0,Variance:1});var PS=Object.freeze({ZeroInterestRateMethod:0,NegativeInterestRateMethod:1});var fS=Object.freeze({Business:0,Calendar:1,CommodityBusiness:2,CurrencyBusiness:3,ExchangeBusiness:4,ScheduledTradingDay:5});var gS=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var hS=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr",Term:"T"});var IS=Object.freeze({All:0,First:1,Last:2,Penultimate:3});var bS=Object.freeze({EveryDay:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6,Sunday:7});var FS=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var ES=Object.freeze({Bloomberg:0,Reuters:1,Telerate:2,Other:99});var CS=Object.freeze({Short:0,Long:1});var vS=Object.freeze({Absolute:0,Percentage:1});var TS=Object.freeze({BondEquivalentYield:0,MoneyMarketYield:1});var XS=Object.freeze({Previous:0,Last:1,Both:2});var DS=Object.freeze({Monday:"MON",Tuesday:"TUE",Wednesday:"WED",Thursday:"THU",Friday:"FRI",Saturday:"SAT",Sunday:"SUN"});var RS=Object.freeze({Average:0,Maximum:1,Minimum:2,Cumulative:3});var xS=Object.freeze({Periodic:0,Initial:1,Single:2,Dividend:3,Interest:4,DividendReturn:5,PriceReturn:6,TotalReturn:7,Variance:8,Correlation:9});var NS=Object.freeze({Short:0,Long:1});var AS=Object.freeze({Initial:0,Final:1,CompoundingInitial:2,CompoundingFinal:3});var wS=Object.freeze({Initial:0,Intermediate:1,Final:2,Prepaid:3,Postpaid:4,Variable:5,Fixed:6,Swap:7,Conditional:8,FixedRate:9,FloatingRate:10});var MS=Object.freeze({Brokerage:0,UpfrontFee:1,IndependentAmountCollateral:2,PrincipalExchange:3,NovationTermination:4,EarlyTerminationProvision:5,CancelableProvision:6,ExtendibleProvision:7,CapRateProvision:8,FloorRateProvision:9,OptionPremium:10,SettlementPayment:11,CashSettl:12,SecurityLending:13,Rebate:14,Other:99});var LS=Object.freeze({Received:0,Accepted:1,Rejected:2,Disputed:3});var OS=Object.freeze({New:0,Replace:1,Status:2});var kS=Object.freeze({Received:0,Accepted:1,Rejected:2,Disputed:3});var US=Object.freeze({New:0,Cancel:1});var qS=Object.freeze({OrBetter:0,Strict:1,OrWorse:2});var BS=Object.freeze({Floating:0,Fixed:1});var jS=Object.freeze({Price:0,BasisPoints:1,Ticks:2,PriceTier:3,Percentage:4});var GS=Object.freeze({LastPeg:1,MidPricePeg:2,OpeningPeg:3,MarketPeg:4,PrimaryPeg:5,PegToVWAP:7,TrailingStopPeg:8,PegToLimitPrice:9,ShortSaleMinPricePeg:10});var QS=Object.freeze({MoreAggressive:1,MorePassive:2});var VS=Object.freeze({Local:1,National:2,Global:3,NationalExcludingLocal:4});var zS=Object.freeze({OptionsSettlement:0,PendingErosionAdjustment:1,FinalErosionAdjustment:2,TearUpCouponAmount:3,PriceAlignmentInterest:4,DeliveryInvoiceCharges:5,DeliveryStorageCharges:6});var HS=Object.freeze({CashAmount:"CASH",CashResidualAmount:"CRES",FinalMarkToMarketAmount:"FMTM",IncrementalMarkToMarketAmount:"IMTM",PremiumAmount:"PREM",StartOfDayMarkToMarketAmount:"SMTM",TradeVariationAmount:"TVAR",ValueAdjustedAmount:"VADJ",SettlementValue:"SETL",InitialTradeCouponAmount:"ICPN",AccruedCouponAmount:"ACPN",CouponAmount:"CPN",IncrementalAccruedCoupon:"IACPN",CollateralizedMarkToMarket:"CMTM",IncrementalCollateralizedMarkToMarket:"ICMTM",CompensationAmount:"DLV",TotalBankedAmount:"BANK",TotalCollateralizedAmount:"COLAT",LongPairedSwapNotionalValue:"LSNV",ShortPairedSwapNotionalValue:"SSNV",StartOfDayAccruedCoupon:"SACPN",NetPresentValue:"NPV",StartOfDayNetPresentValue:"SNPV",NetCashFlow:"NCF",PresentValueOfFees:"PVFEES",PresentValueOneBasisPoints:"PV01",FiveYearEquivalentNotional:"5YREN",UndiscountedMarkToMarket:"UMTM",MarkToModel:"MTD",MarkToMarketVariance:"VMTM",MarkToModelVariance:"VMTD",UpfrontPayment:"UPFRNT",EndVale:"ENDV",OutstandingMarginLoan:"MGNLN",LoanValue:"LNVL"});var WS=Object.freeze({Principal:0,Agent:1,Customer:2,Counterparty:3});var _S=Object.freeze({Close:"C",FIFO:"F",Open:"O",Rolled:"R",CloseButNotifyOnOpen:"N",Default:"D"});var KS=Object.freeze({New:1,Replace:2,Cancel:3,Reverse:4});var YS=Object.freeze({SuccessfulCompletion:0,Rejected:1,Other:99});var JS=Object.freeze({Accepted:0,AcceptedWithWarnings:1,Rejected:2,Completed:3,CompletedWithWarnings:4});var $S=Object.freeze({Submitted:0,Accepted:1,Rejected:2});var ZS=Object.freeze({ValidRequest:0,InvalidOrUnsupportedRequest:1,NoPositionsFoundThatMatchCriteria:2,NotAuthorizedToRequestPositions:3,RequestForPositionNotSupported:4,Other:99});var e2=Object.freeze({Completed:0,CompletedWithWarnings:1,Rejected:2});var t2=Object.freeze({Positions:0,Trades:1,Exercises:2,Assignments:3,SettlementActivity:4,BackoutMessage:5,DeltaPositions:6,NetPosition:7,LargePositionsReporting:8,ExercisePositionReportingSubmission:9,PositionLimitReportingSubmissing:10});var Ja=Object.freeze({OriginalTransmission:"N",PossibleDuplicate:"Y"});var d2=Object.freeze({OriginalTransmission:"N",PossibleResend:"Y"});var i2=Object.freeze({Exercise:1,DoNotExercise:2,PositionAdjustment:3,PositionChangeSubmission:4,Pledge:5,LargeTraderSubmission:6,LargePositionsReportingSubmission:7,LongHoldings:8,InternalTransfer:9,TransferOfFirm:10,ExternalTransfer:11,CorporateAction:12,Notification:13,PositionCreation:14,Closeout:15,Reopen:16});var a2=Object.freeze({AllocationTradeQty:"ALC",OptionAssignment:"AS",AsOfTradeQty:"ASF",DeliveryQty:"DLV",ElectronicTradeQty:"ETR",OptionExerciseQty:"EX",EndOfDayQty:"FIN",IntraSpreadQty:"IAS",InterSpreadQty:"IES",AdjustmentQty:"PA",PitTradeQty:"PIT",StartOfDayQty:"SOD",IntegralSplit:"SPL",TransactionFromAssignment:"TA",TotalTransactionQty:"TOT",TransactionQuantity:"TQ",TransferTradeQty:"TRF",TransactionFromExercise:"TX",CrossMarginQty:"XM",ReceiveQuantity:"RCV",CorporateActionAdjustment:"CAA",DeliveryNoticeQty:"DN",ExchangeForPhysicalQty:"EP",PrivatelyNegotiatedTradeQty:"PNTN",NetDeltaQty:"DLT",CreditEventAdjustment:"CEA",SuccessionEventAdjustment:"SEA",NetQty:"NET",GrossQty:"GRS",IntradayQty:"ITD",GrossLongNonDeltaAdjustedSwaptionPosition:"NDAS",LongDeltaAdjustedPairedSwaptionPosition:"DAS",ExpiringQuantity:"EXP",QuantityNotExercised:"UNEX",RequestedExerciseQuantity:"REQ",CashFuturesEquivalentQuantity:"CFE",LoanOrBorrowedQuantity:"SECLN"});var n2=Object.freeze({DebitPay:0,CreditReceive:1});var r2=Object.freeze({New:0,Initiated:1,Pending:2,Confirmed:3,Rejected:4});var o2=Object.freeze({ProRata:"0",DoNotProRata:"1"});var s2=Object.freeze({NotReportedToCounterparty:"N",PreviouslyReportedToCounterparty:"Y"});var c2=Object.freeze({Price:0,Ticks:1,Percentage:2});var p2=Object.freeze({Amount:0,Percentage:1});var u2=Object.freeze({None:"0",Local:"1",National:"2",Global:"3"});var l2=Object.freeze({AccruedInterestIsFactored:0,TaxIsFactored:1,BondAmortizationIsFactored:2});var m2=Object.freeze({Standard:"STD",Index:"INX",InterestRateIndex:"INT",PercentOfPar:"PCTPAR"});var y2=Object.freeze({Percentage:1,PerUnit:2,FixedAmount:3,Discount:4,Premium:5,Spread:6,TEDPrice:7,TEDYield:8,Yield:9,FixedCabinetTradePrice:10,VariableCabinetTradePrice:11,PriceSpread:12,ProductTicksInHalves:13,ProductTicksInFourths:14,ProductTicksInEighths:15,ProductTicksInSixteenths:16,ProductTicksInThirtySeconds:17,ProductTicksInSixtyFourths:18,ProductTicksInOneTwentyEighths:19,NormalRateRepresentation:20,InverseRateRepresentation:21,BasisPoints:22,UpfrontPoints:23,InterestRate:24,PercentageNotional:25});var S2=Object.freeze({PriorityUnchanged:0,LostPriorityAsResultOfOrderChange:1});var P2=Object.freeze({PrivateQuote:"Y",PublicQuote:"N"});var f2=Object.freeze({Regular:"0",SoftDollar:"1",StepIn:"2",StepOut:"3",SoftDollarStepIn:"4",SoftDollarStepOut:"5",PlanSponsor:"6"});var g2=Object.freeze({AGENCY:1,COMMODITY:2,CORPORATE:3,CURRENCY:4,EQUITY:5,GOVERNMENT:6,INDEX:7,LOAN:8,MONEYMARKET:9,MORTGAGE:10,MUNICIPAL:11,OTHER:12,FINANCING:13});var h2=Object.freeze({BuySideRequests:1,SellSideSends:2,RealTimeExecutionReports:3});var I2=Object.freeze({Business:0,Calendar:1,CommodityBusiness:2,CurrencyBusiness:3,ExchangeBusiness:4,ScheduledTradingDay:5});var b2=Object.freeze({RestructuringMultipleHoldingObligations:"H",RestructuringMultipleCreditEventNotices:"E",FloatingRateInterestShortfall:"C"});var F2=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var E2=Object.freeze({FlatFee:0,AmortizedFee:1,FundingFee:2,FlatAndFundingFee:3,AmortizedAndFundingFee:4});var C2=Object.freeze({ExercisingParty:0,NonExercisingParty:1,MasterAgreeent:2,Supplement:3});var v2=Object.freeze({CashPrice:0,CashPriceAlternate:1,ParYieldCurveAdjusted:2,ZeroCouponYieldCurveAdjusted:3,ParYieldCurveUnadjusted:4,CrossCurrency:5,CollateralizedPrice:6});var T2=Object.freeze({Unadjusted:0,Adjusted:1});var X2=Object.freeze({Bid:0,Mid:1,Offer:2,ExercisingPartyPays:3});var D2=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var R2=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var x2=Object.freeze({Unadjusted:0,Adjusted:1});var N2=Object.freeze({Buy:1,Sell:2});var A2=Object.freeze({MandatoryEarlyTermination:0,OptionalEarlyTermination:1,Cancelable:2,Extendable:3,MutualEarlyTermination:4,Evergreen:5,Callable:6,Puttable:7});var w2=Object.freeze({DoNotReportTrade:"N",ReportTrade:"Y"});var M2=Object.freeze({Put:0,Call:1,Other:2,Chooser:3});var L2=Object.freeze({Units:0,Contracts:1,UnitsOfMeasurePerTimeUnit:2});var O2=Object.freeze({ReceivedNotYetProcessed:0,Accepted:1,Rejected:2});var k2=Object.freeze({QuoteAboveStandardMarketSize:0,QuoteAboveSpecificInstrumentSize:1,QuoteApplicableForLiquidtyProvisionActivity:2,QuoteIssuerStatus:3,BidOrAskRequest:4});var U2=Object.freeze({CancelForOneOrMoreSecurities:1,CancelForSecurityType:2,CancelForUnderlyingSecurity:3,CancelAllQuotes:4,CancelSpecifiedSingleQuote:5,CancelByTypeOfQuote:6,CancelForSecurityIssuer:7,CancelForIssuerOfUnderlyingSecurity:8});var q2=Object.freeze({Open:"A",Closed:"B",ExchangeBest:"C",ConsolidatedBest:"D",Locked:"E",Crossed:"F",Depth:"G",FastTrading:"H",NonFirm:"I",Manual:"L",OutrightPrice:"J",ImpliedPrice:"K",DepthOnOffer:"M",DepthOnBid:"N",Closing:"O",NewsDissemination:"P",TradingRange:"Q",OrderInflux:"R",DueToRelated:"S",NewsPending:"T",AdditionalInfo:"U",AdditionalInfoDueToRelated:"V",Resume:"W",ViewOfCommon:"X",VolumeAlert:"Y",OrderImbalance:"Z",EquipmentChangeover:"a",NoOpen:"b",RegularETH:"c",AutomaticExecution:"d",AutomaticExecutionETH:"e",FastMarketETH:"f",InactiveETH:"g",Rotation:"h",RotationETH:"i",Halt:"j",HaltETH:"k",DueToNewsDissemination:"l",DueToNewsPending:"m",TradingResume:"n",OutOfSequence:"o",BidSpecialist:"p",OfferSpecialist:"q",BidOfferSpecialist:"r",EndOfDaySAM:"s",ForbiddenSAM:"t",FrozenSAM:"u",PreOpeningSAM:"v",OpeningSAM:"w",OpenSAM:"x",SurveillanceSAM:"y",SuspendedSAM:"z",ReservedSAM:"0",NoActiveSAM:"1",Restricted:"2",RestOfBookVWAP:"3",BetterPricesInConditionalOrders:"4",MedianPrice:"5",FullCurve:"6",FlatCurve:"7"});var B2=Object.freeze({UnknownSymbol:1,Exchange:2,QuoteExceedsLimit:3,TooLateToEnter:4,UnknownQuote:5,DuplicateQuote:6,InvalidBidAskSpread:7,InvalidPrice:8,NotAuthorizedToQuoteSecurity:9});var j2=Object.freeze({Accepted:0,Rejected:5,RemovedFromMarket:6,Expired:7,LockedMarketWarning:12,CrossMarketWarning:13,CanceledDueToLockMarket:14,CanceledDueToCrossMarket:15,Active:16});var G2=Object.freeze({QuoteEntry:1,QuoteModification:2});var Q2=Object.freeze({Percent:1,PerShare:2,FixedAmount:3,Discount:4,Premium:5,Spread:6,TEDPrice:7,TEDYield:8,YieldSpread:9,Yield:10,PriceSpread:12,ProductTicksInHalves:13,ProductTicksInFourths:14,ProductTicksInEighths:15,ProductTicksInSixteenths:16,ProductTicksInThirtySeconds:17,ProductTicksInSixtyFourths:18,ProductTicksInOneTwentyEighths:19,NormalRateRepresentation:20,InverseRateRepresentation:21,BasisPoints:22,UpFrontPoints:23,InterestRate:24,PercentageOfNotional:25});var V2=Object.freeze({UnknownSymbol:1,Exchange:2,QuoteRequestExceedsLimit:3,TooLateToEnter:4,UnknownQuote:5,DuplicateQuote:6,InvalidBid:7,InvalidPrice:8,NotAuthorizedToQuoteSecurity:9,PriceExceedsCurrentPriceBand:10,QuoteLocked:11,InvalidOrUnknownSecurityIssuer:12,InvalidOrUnknownIssuerOfUnderlyingSecurity:13,NotionalValueExceedsThreshold:14,PriceExceedsCurrentPriceBandDepr:15,ReferencePriceNotAvailable:16,InsufficientCreditLimit:17,ExceededClipSizeLimit:18,ExceededMaxNotionalOrderAmt:19,ExceededDV01PV01Limit:20,ExceededCS01Limit:21,UnavailablePriceLiquidity:22,InvalidMissingEntitlements:23,UnknownAccounts:24,Other:99});var z2=Object.freeze({UnknownSymbol:1,Exchange:2,QuoteRequestExceedsLimit:3,TooLateToEnter:4,InvalidPrice:5,NotAuthorizedToRequestQuote:6,NoMatchForInquiry:7,NoMarketForInstrument:8,NoInventory:9,Pass:10,InsufficientCredit:11,ExceededClipSizeLimit:12,ExceededMaxNotionalOrderAmt:13,ExceededDV01PV01Limit:14,ExceededCS01Limit:15,UnavailablePriceLiquidity:16,UnmetRegulatoryRequirement:17,UnknownAccounts:18,InvalidMissingEntitlements:19,Other:99});var H2=Object.freeze({Manual:1,Automatic:2,ConfirmQuote:3});var W2=Object.freeze({NoAcknowledgement:0,AcknowledgeOnlyNegativeOrErroneousQuotes:1,AcknowledgeEachQuoteMessage:2,SummaryAcknowledgement:3});var _2=Object.freeze({Hit:1,Counter:2,Expired:3,Cover:4,DoneAway:5,Pass:6,EndTrade:7,TimedOut:8,Tied:9,TiedCover:10,Accept:11,TerminateContract:12});var K2=Object.freeze({No:"N",Yes:"Y"});var Y2=Object.freeze({Accepted:0,CancelForSymbol:1,CanceledForSecurityType:2,CanceledForUnderlying:3,CanceledAll:4,Rejected:5,RemovedFromMarket:6,Expired:7,Query:8,QuoteNotFound:9,Pending:10,Pass:11,LockedMarketWarning:12,CrossMarketWarning:13,CanceledDueToLockMarket:14,CanceledDueToCrossMarket:15,Active:16,Canceled:17,UnsolicitedQuoteReplenishment:18,PendingEndTrade:19,TooLateToEnd:20,Traded:21,TradedAndRemoved:22,ContractTerminates:23});var J2=Object.freeze({Indicative:0,Tradeable:1,RestrictedTradeable:2,Counter:3,InitiallyTradeable:4});var $2=Object.freeze({Bloomberg:0,Reuters:1,Telerate:2,ISDARateOption:3,Other:99});var Z2=Object.freeze({Primary:0,Secondary:1});var eP=Object.freeze({AdmitToTradeRequestDate:0,AdmitToTradeApprovalDate:1,AdmitToTradeOrFirstTradeDate:2,TerminationDate:3});var tP=Object.freeze({Asian:1,AustralianNewZealand:2,EuropeanEmergingMarkets:3,Japanese:4,NorthAmericanHighYield:5,NorthAmericanInsurance:6,NorthAmericanInvestmentGrade:7,Singaporean:8,WesternEuropean:9,WesternEuropeanInsurance:10});var dP=Object.freeze({SecondaryOrderID:"0",OrderID:"1",MDEntryID:"2",QuoteEntryID:"3",OriginalOrderID:"4",QuoteID:"5",QuoteReqID:"6",PreviousOrderIdentifier:"7",PreviousQuoteIdentifier:"8",ParentOrderIdentifier:"9",ManualOrderIdentifier:"A"});var iP=Object.freeze({GTCFromPreviousDay:0,PartialFillRemaining:1,OrderChanged:2});var aP=Object.freeze({RiskLimitRequestID:0,RiskLimitCheckID:1,OutOfBandID:3});var nP=Object.freeze({InvalidAccountType:1,InvalidTaxExemptType:2,InvalidOwnershipType:3,NoRegDetails:4,InvalidRegSeqNo:5,InvalidRegDetails:6,InvalidMailingDetails:7,InvalidMailingInstructions:8,InvalidInvestorID:9,InvalidInvestorIDSource:10,InvalidDateOfBirth:11,InvalidCountry:12,InvalidDistribInstns:13,InvalidPercentage:14,InvalidPaymentMethod:15,InvalidAccountName:16,InvalidAgentCode:17,InvalidAccountNum:18,Other:99});var rP=Object.freeze({Accepted:"A",Rejected:"R",Held:"H",Reminder:"N"});var oP=Object.freeze({New:"0",Cancel:"2",Replace:"1"});var sP=Object.freeze({RT:0,PET:1,Snapshot:2,Confirmation:3,RTPET:4,PETConfirmation:5,RTPETConfirmation:6,PostTrade:7,Verification:8,PstTrdEvnt:9,PstTrdEvntRTReportable:10,LMTF:11,DATF:12,VOLO:13,FWAF:14,IDAF:15,VOLW:16,FULF:17,FULA:18,FULV:19,FULJ:20,COAF:21,Order:22,ChildOrder:23,OrderRoute:24,Trade:25,Quote:26,Supplement:27,NewTransaction:28,TransactionCorrection:29,TransactionModification:30,CollateralUpdate:31,MarginUpdate:32,TransactionReportedInError:33,TerminationEarlyTermination:34});var cP=Object.freeze({InitialBlockTrade:0,Allocation:1,Clearing:2,Compression:3,Novation:4,Termination:5,PostTrdVal:6});var pP=Object.freeze({ClearingMember:1,Client:2});var uP=Object.freeze({UniqueTransactionIdentifier:"1"});var lP=Object.freeze({Current:0,Previous:1,Block:2,Related:3,ClearedBlockTrade:4,TradingVenueTransactionIdentifier:5,ReportTrackingNumber:6});var mP=Object.freeze({None:0,SEFRequiredTransaction:1,SEFPermittedTransaction:2});var yP=Object.freeze({HedgesForInstrument:1,Underlier:2,EquityEquivalent:3,NearestExchangeTradedContract:4,RetailEquivalent:5,Leg:6});var SP=Object.freeze({NonFIXSource:0,SystemOrderIdentifier:1,ClientOrderIdentifier:2,SecondaryOrderIdentifier:3,SecondaryClientOrderIdentifier:4});var PP=Object.freeze({PosMaintRptID:1,TransferID:2,PositionEntityID:3});var fP=Object.freeze({NBBid:1,NBOffer:2});var gP=Object.freeze({NonFIXSource:0,TradeID:1,SecondaryTradeID:2,TradeReportID:3,FirmTradeID:4,SecondaryFirmTradeID:5,RegulatoryTradeID:6});var hP=Object.freeze({Bid:1,Mid:2,Offer:3});var IP=Object.freeze({ASWSpread:1,OIS:2,ZSpread:3,DiscountMargin:4,ISpread:5,OAS:6,GSpread:7,CDSBasis:8,CDSInterpolatedBasis:9,DV01:10,PV01:11,CS01:12});var bP=Object.freeze({ISO:1,NoAwayMarketBetterCheck:2});var FP=Object.freeze({NoRemunerationPaid:0,RemunerationPaid:1});var EP=Object.freeze({SenderReports:"N",ReceiverReports:"Y"});var CP=Object.freeze({ValidRequest:0,InvalidOrUnsupportedRequest:1,NoDataFound:2,NotAuthorized:3,DataTemporarilyUnavailable:4,RequestForDataNotSupported:5,Other:99});var ea=Object.freeze({No:"N",Yes:"Y"});var vP=Object.freeze({AllMarketParticipants:1,SpecifiedMarketParticipants:2,AllMarketMakers:3,PrimaryMarketMaker:4});var TP=Object.freeze({Inband:0,OutOfBand:1});var XP=Object.freeze({FullRestructuring:"FR",ModifiedRestructuring:"MR",ModifiedModRestructuring:"MM",NoRestructuringSpecified:"XR"});var DP=Object.freeze({PriceValuation:0,DividendValuation:1});var RP=Object.freeze({Gross:0,Net:1,Accrued:2,CleanNet:3});var xP=Object.freeze({Initial:0,Interim:1,Final:2});var NP=Object.freeze({AbsoluteTerms:0,PercentageOfNotional:1});var AP=Object.freeze({Open:0,OfficialSettlPx:1,Xetra:2,Close:3,DerivativesClose:4,High:5,Low:6,AsSpecifiedInMasterConfirmation:7});var wP=Object.freeze({None:0,FuturesPrice:1,OptionsPrice:2});var MP=Object.freeze({Dividend:1,Variance:2,Volatility:3,TotalReturn:4,ContractForDifference:5,CreditDefault:6,SpreadBet:7,Price:8,ForwardPriceUnderlyingInstrument:9,Other:99});var LP=Object.freeze({QueueInbound:0,QueueOutbound:1,Reject:2,Disconnect:3,Warning:4,PingCreditCheckWithRevalidation:5,PingCreditCheckNoRevalidation:6,PushCreditCheckWithRevalidation:7,PushCreditCheckNoRevalidation:8,Suspend:9,HaltTrading:10});var OP=Object.freeze({None:0,PlusOneModel:1,PingModel:2,PushModel:3});var kP=Object.freeze({Successful:0,InvalidParty:1,ReqExceedsCreditLimit:2,ReqExceedsClipSizeLimit:3,ReqExceedsMaxNotional:4,Other:99});var UP=Object.freeze({Approved:0,PartiallyApproved:1,Rejected:2,ApprovalPending:3,Cancelled:4});var qP=Object.freeze({AllOrNone:0,Partial:1});var BP=Object.freeze({Accepted:0,Rejected:1,ClaimRequired:2,PreDefinedLimitCheckSucceeded:3,PreDefinedLimitCheckFailed:4,PreDefinedAutoAcceptRuleInvoked:5,PreDefinedAutoRejectRuleInvoked:6,AcceptedByClearingFirm:7,RejectedByClearingFirm:8,Pending:9,AcceptedByCreditHub:10,RejectedByCreditHub:11,PendingCreditHubCheck:12,AcceptedByExecVenue:13,RejectedByExecVenue:14});var jP=Object.freeze({New:0,Cancel:1,Replace:2});var GP=Object.freeze({Submit:0,LimitConsumed:1});var QP=Object.freeze({UnkRiskLmtRprtID:0,UnkPty:1,Other:99});var VP=Object.freeze({Accepted:0,Rejected:1});var zP=Object.freeze({Successful:0,InvalidParty:1,InvalidRelatedParty:2,InvalidRiskLimitType:3,InvalidRiskLimitID:4,InvalidRiskLimitAmount:5,InvalidRiskWarningLevelAction:6,InvalidRiskInstrumentScope:7,RiskLimitActionsNotSupported:8,WarningLevelsNotSupported:9,WarningLevelActionsNotSupported:10,RiskInstrumentScopeNotSupported:11,RiskLimitNotApprovedForParty:12,RiskLimitAlreadyDefinedForParty:13,InstrumentNotApprovedForParty:14,NotAuthorized:98,Other:99});var HP=Object.freeze({Definitions:1,Utilization:2,DefinitionsAndUtilizations:3});var WP=Object.freeze({CreditLimit:0,GrossLimit:1,NetLimit:2,Exposure:3,LongLimit:4,ShortLimit:5,CashMargin:6,AdditionalMargin:7,TotalMargin:8,LimitConsumed:9,ClipSize:10,MaxNotionalOrderSize:11,DV01PV01Limit:12,CS01Limit:13,VolumeLimitPerTimePeriod:14,VolFilledPctOrdVolTmPeriod:15,NotlFilledPctNotlTmPeriod:16,TransactionExecutionLimitPerTimePeriod:17});var _P=Object.freeze({RoundToNearest:"0",RoundDown:"1",RoundUp:"2"});var KP=Object.freeze({NoRoutingArrangementInPlace:0,RoutingArrangementInPlace:1});var YP=Object.freeze({TargetFirm:1,TargetList:2,BlockFirm:3,BlockList:4,TargetPerson:5,BlockPerson:6});var JP=Object.freeze({AgencySingleOrder:"A",ShortExemptTransactionAType:"B",ProprietaryNonAlgo:"C",ProgramOrderMember:"D",ShortExemptTransactionForPrincipal:"E",ShortExemptTransactionWType:"F",ShortExemptTransactionIType:"H",IndividualInvestor:"I",ProprietaryAlgo:"J",AgencyAlgo:"K",ShortExemptTransactionMemberAffliated:"L",ProgramOrderOtherMember:"M",AgentForOtherMember:"N",ProprietaryTransactionAffiliated:"O",Principal:"P",TransactionNonMember:"R",SpecialistTrades:"S",TransactionUnaffiliatedMember:"T",AgencyIndexArb:"U",AllOtherOrdersAsAgentForOtherMember:"W",ShortExemptTransactionMemberNotAffliated:"X",AgencyNonAlgo:"Y",ShortExemptTransactionNonMember:"Z"});var $P=Object.freeze({LocalMarket:"1",National:"2",Global:"3"});var ZP=Object.freeze({Fee:0,CreditControls:1,Margin:2,EntitlementOrEligibility:3,MarketData:4,AccountSelection:5,DeliveryProcess:6,Sector:7});var ef=Object.freeze({CUSIP:"1",SEDOL:"2",QUIK:"3",ISINNumber:"4",RICCode:"5",ISOCurrencyCode:"6",ISOCountryCode:"7",ExchangeSymbol:"8",ConsolidatedTapeAssociation:"9",BloombergSymbol:"A",Wertpapier:"B",Dutch:"C",Valoren:"D",Sicovam:"E",Belgian:"F",Common:"G",ClearingHouse:"H",ISDAFpMLSpecification:"I",OptionPriceReportingAuthority:"J",ISDAFpMLURL:"K",LetterOfCredit:"L",MarketplaceAssignedIdentifier:"M",MarkitREDEntityCLIP:"N",MarkitREDPairCLIP:"P",CFTCCommodityCode:"Q",ISDACommodityReferencePrice:"R",FinancialInstrumentGlobalIdentifier:"S",LegalEntityIdentifier:"T",Synthetic:"U",FidessaInstrumentMnemonic:"V",IndexName:"W",UniformSymbol:"X",DigitalTokenIdentifier:"Y"});var tf=Object.freeze({Symbol:0,SecurityTypeAnd:1,Product:2,TradingSessionID:3,AllSecurities:4,MarketIDOrMarketID:5});var df=Object.freeze({IndustryClassification:1,TradingList:2,Market:3,NewspaperList:4});var af=Object.freeze({ICB:1,NAICS:2,GICS:3});var nf=Object.freeze({InvalidInstrumentRequested:1,InstrumentAlreadyExists:2,RequestTypeNotSupported:3,SystemUnavailableForInstrumentCreation:4,IneligibleInstrumentGroup:5,InstrumentIDUnavailable:6,InvalidOrMissingDataOnOptionLeg:7,InvalidOrMissingDataOnFutureLeg:8,InvalidOrMissingDataOnFXLeg:10,InvalidLegPriceSpecified:11,InvalidInstrumentStructureSpecified:12});var rf=Object.freeze({ValidRequest:0,InvalidOrUnsupportedRequest:1,NoInstrumentsFound:2,NotAuthorizedToRetrieveInstrumentData:3,InstrumentDataTemporarilyUnavailable:4,RequestForInstrumentDataNotSupported:5});var of=Object.freeze({RequestSecurityIdentityAndSpecifications:0,RequestSecurityIdentityForSpecifications:1,RequestListSecurityTypes:2,RequestListSecurities:3,Symbol:4,SecurityTypeAndOrCFICode:5,Product:6,TradingSessionID:7,AllSecurities:8,MarketIDOrMarketID:9});var sf=Object.freeze({AcceptAsIs:1,AcceptWithRevisions:2,RejectSecurityProposal:5,CannotMatchSelectionCriteria:6});var cf=Object.freeze({Active:"1",Inactive:"2",ActiveClosingOrdersOnly:"3",Expired:"4",Delisted:"5",KnockedOut:"6",KnockOutRevoked:"7",PendingExpiry:"8",Suspended:"9",Published:"10",PendingDeletion:"11"});var pf=Object.freeze({OrderImbalance:1,TradingResumes:2,PriceVolatilityInterruption:3,ChangeOfTradingSession:4,ChangeOfTradingSubsession:5,ChangeOfSecurityTradingStatus:6,ChangeOfBookType:7,ChangeOfMarketDepth:8,CorporateAction:9});var uf=Object.freeze({OpeningDelay:1,TradingHalt:2,Resume:3,NoOpen:4,PriceIndication:5,TradingRangeIndication:6,MarketImbalanceBuy:7,MarketImbalanceSell:8,MarketOnCloseImbalanceBuy:9,MarketOnCloseImbalanceSell:10,NoMarketImbalance:12,NoMarketOnCloseImbalance:13,ITSPreOpening:14,NewPriceIndication:15,TradeDisseminationTime:16,ReadyToTrade:17,NotAvailableForTrading:18,NotTradedOnThisMarket:19,UnknownOrInvalid:20,PreOpen:21,OpeningRotation:22,FastMarket:23,PreCross:24,Cross:25,PostClose:26,NoCancel:27});var lf=Object.freeze({EuroSupranationalCoupons:"EUSUPRA",CorporateBond:"CORP",ForeignExchangeContract:"FOR",CommonStock:"CS",Repurchase:"REPO",BradyBond:"BRADY",TermLoan:"TERM",BankersAcceptance:"BA",AssetBackedSecurities:"ABS",OtherAnticipationNotes:"AN",MutualFund:"MF",FederalAgencyCoupon:"FAC",CorporatePrivatePlacement:"CPP",NonDeliverableForward:"FXNDF",Cap:"CAP",PreferredStock:"PS",Forward:"FORWARD",CanadianTreasuryNotes:"CAN",RevolverLoan:"RVLV",BankDepositoryNote:"BDN",CanadianMortgageBonds:"CMB",CertificateOfObligation:"COFO",MultilegInstrument:"MLEG",FederalAgencyDiscountNote:"FADN",ConvertibleBond:"CB",FXSpot:"FXSPOT",CreditDefaultSwap:"CDS",DepositoryReceipts:"DR",BuySellback:"BUYSELL",CanadianTreasuryBills:"CTB",Revolver:"RVLVTRM",BankNotes:"BN",Corp:"CMBS",CertificateOfParticipation:"COFP",NoSecurityType:"NONE",USTreasuryNoteOld:"UST",PrivateExportFunding:"PEF",DualCurrency:"DUAL",FXForward:"FXFWD",Collar:"CLLR",SecuritiesLoan:"SECLOAN",EuroSovereigns:"EUSOV",BridgeLoan:"BRIDGE",BillOfExchanges:"BOX",CollateralizedMortgageObligation:"CMO",GeneralObligationBonds:"GO",USTreasuryBillOld:"USTB",USDSupranationalCoupons:"SUPRA",EuroCorporateBond:"EUCORP",FXSwap:"FXSWAP",CommoditySwap:"CMDTYSWAP",SecuritiesPledge:"SECPLEDGE",CanadianProvincialBonds:"PROV",LetterOfCredit:"LOFC",CanadianMoneyMarkets:"CAMM",IOETTEMortgage:"IET",MandatoryTender:"MT",EuroCorporateFloatingRateNotes:"EUFRN",NonDeliverableSwap:"FXNDS",Exotic:"EXOTIC",DeliveryVersusPledge:"DVPLDG",TreasuryBill:"TB",SwingLineFacility:"SWING",CertificateOfDeposit:"CD",MortgageBackedSecurities:"MBS",RevenueAnticipationNote:"RAN",Wildcard:"?",USCorporateFloatingRateNotes:"FRN",FXBankNote:"FXBN",OptionsOnCombo:"OOC",Floor:"FLR",CollateralBasket:"COLLBSKT",USTreasuryBond:"TBOND",DebtorInPossession:"DINP",CallLoans:"CL",MortgageInterestOnly:"MIO",RevenueBonds:"REV",Cash:"CASH",IndexedLinked:"XLINKD",ForeignCurrencyDiscountNote:"FXDN",FRA:"FRA",StructuredFinanceProduct:"SFP",InterestStripFromAnyBondOrNote:"TINT",Defaulted:"DEFLTED",CommercialPaper:"CP",MortgagePrincipalOnly:"MPO",SpecialAssessment:"SPCLA",Other:"Other",StructuredNotes:"STRUCT",Future:"FUT",USTreasuryBill:"TBILL",TreasuryInflationProtectedSecurities:"TIPS",Withdrawn:"WITHDRN",DepositNotes:"DN",MortgagePrivatePlacement:"MPP",SpecialObligation:"SPCLO",ExchangeTradedNote:"ETN",YankeeCorporateBond:"YANK",DerivativeForward:"FWD",MarginLoan:"MRGNLOAN",PrincipalStripOfACallableBondOrNote:"TCAL",Replaced:"REPLACD",EuroCertificateOfDeposit:"EUCD",MiscellaneousPassThrough:"MPT",SpecialTax:"SPCLT",OffshoreIssuedChineseYuanCorporateBond:"DIMSUMCORP",InterestRateSwap:"IRS",TotalReturnSwap:"TRS",PrincipalStripFromANonCallableBondOrNote:"TPRN",Matured:"MATURED",EuroCommercialPaper:"EUCP",Pfandbrief:"PFAND",TaxAnticipationNote:"TAN",SecuritizedDerivative:"SECDERIV",PreferredCorporateBond:"PRCORP",LoanLease:"LOANLEASE",USTreasuryNote:"TNOTE",Amended:"AMENDED",LiquidityNote:"LQN",ToBeAnnounced:"TBA",TaxAllocation:"TAXA",ExchangeTradedFund:"ETF",OffshoreIssuedChineseYuanSovereignBond:"DIMSUMSOV",Retired:"RETIRED",MediumTermNotes:"MTN",TaxExemptCommercialPaper:"TECP",DigitalAsset:"DIGITAL",OptionsOnFutures:"OOF",SovereignBond:"SOV",Overnight:"ONITE",TaxableMunicipalCP:"TMCP",OptionsOnPhysical:"OOP",USTreasuryFloatingRateNote:"TFRN",PromissoryNote:"PN",ShortTermLoanNote:"STN",TaxRevenueAnticipationNote:"TRAN",Option:"OPT",PlazosFijos:"PZFJ",VariableRateDemandNote:"VRDN",SpotForward:"SPOTFWD",SecuredLiquidityNote:"SLQN",Warrant:"WAR",SwapOption:"SWAPTION",TimeDeposit:"TD",MunicipalInterestBearingCommercialPaper:"MCPIB",Transmission:"XMISSION",TaxableMunicipalBond:"TMB",Index:"INDEX",TermLiquidityNote:"TLQN",VariableRateDemandObligation:"VRDO",BondBasket:"BDBSKT",ExtendedCommNote:"XCN",ContractForDifference:"CFD",YankeeCertificateOfDeposit:"YCD",CorrelationSwap:"CRLTNSWAP",BankAcceptedBill:"BAB",DiviendSwap:"DVDNDSWAP",ShortTermBankNote:"BNST",EquityBasket:"EQBSKT",CallableCommercialPaper:"CLCP",EquityForward:"EQFWD",CommercialNote:"CN",ReturnSwap:"RTRNSWAP",InterestBearingCommercialPaper:"CPIB",VarianceSwap:"VARSWAP",EuroMediumTermNote:"EUMTN",PortfolioSwaps:"PRTFLIOSWAP",EuroNegotiableCommercialPaper:"EUNCP",FuturesOnASwap:"FUTSWAP",EuroStructuredLiquidityNote:"EUSTLQN",ForwardsOnASwap:"FWDSWAP",EuroTimeDeposit:"EUTD",ForwardFreightAgreement:"FWDFRTAGMT",JumboCertificateOfDeposit:"JCD",SpreadBetting:"SPREADBET",MoneyMarketFund:"MMF",ExchangeTradedCommodity:"ETC",MasterNote:"MN",NegotiableCertificateOfDeposit:"NCD",NegotiableCommercialPaper:"NCP",RetailCertificateOfDeposit:"RCD",TermDepositReceipt:"TDR"});var mf=Object.freeze({Add:"A",Delete:"D",Modify:"M"});var yf=Object.freeze({CancelAggressive:1,CancelPassive:2,CancelAggressivePassive:3});var Sf=Object.freeze({SeniorSecured:"SD",Senior:"SR",Subordinated:"SB",Junior:"JR",Mezzanine:"MZ",SeniorNonPreferred:"SN"});var Pf=Object.freeze({InvalidTagNumber:0,RequiredTagMissing:1,TagNotDefinedForThisMessageType:2,UndefinedTag:3,TagSpecifiedWithoutAValue:4,ValueIsIncorrect:5,IncorrectDataFormatForValue:6,DecryptionProblem:7,SignatureProblem:8,CompIDProblem:9,SendingTimeAccuracyProblem:10,InvalidMsgType:11,XMLValidationError:12,TagAppearsMoreThanOnce:13,TagSpecifiedOutOfRequiredOrder:14,RepeatingGroupFieldsOutOfOrder:15,IncorrectNumInGroupCountForRepeatingGroup:16,NonDataValueIncludesFieldDelimiter:17,InvalidUnsupportedApplVer:18,Other:99});var ff=Object.freeze({SessionActive:0,SessionPasswordChanged:1,SessionPasswordDueToExpire:2,NewSessionPasswordDoesNotComplyWithPolicy:3,SessionLogoutComplete:4,InvalidUsernameOrPassword:5,AccountLocked:6,LogonsAreNotAllowedAtThisTime:7,PasswordExpired:8,ReceivedMsgSeqNumTooLow:9,ReceivedNextExpectedMsgSeqNumTooHigh:10});var gf=Object.freeze({Multiply:"M",Divide:"D"});var hf=Object.freeze({Versus:0,Free:1,TriParty:2,HoldInCustody:3});var If=Object.freeze({Negotiation:1,Cancellation:2});var bf=Object.freeze({Default:"0",StandingInstructionsProvided:"1",SpecificAllocationAccountOverriding:"2",SpecificAllocationAccountStanding:"3",SpecificOrderForASingleAccount:"4",RequestReject:"5"});var Ff=Object.freeze({UnableToProcessRequest:0,UnknownAccount:1,NoMatchingSettlementInstructionsFound:2,Other:99});var Ef=Object.freeze({BrokerCredit:"1",Institution:"2",Investor:"3"});var Cf=Object.freeze({New:"N",Cancel:"C",Replace:"R",Restate:"T"});var vf=Object.freeze({CEDEL:"CED",DepositoryTrustCompany:"DTC",EuroClear:"EUR",FederalBookEntry:"FED",LocalMarketSettleLocation:"ISO Country Code",Physical:"PNY",ParticipantTrustCompany:"PTC"});var Tf=Object.freeze({CashSettlementRequired:"C",PhysicalSettlementRequired:"P",Election:"E"});var Xf=Object.freeze({Regular:"0",Cash:"1",NextDay:"2",TPlus2:"3",TPlus3:"4",TPlus4:"5",Future:"6",WhenAndIfIssued:"7",SellersOption:"8",TPlus5:"9"});var Df=Object.freeze({Preliminary:1,Final:2});var Rf=Object.freeze({InstructionsOfBroker:"1",InstructionsForInstitution:"2",Investor:"3",BuyersSettlementInstructions:"4",SellersSettlementInstructions:"5"});var xf=Object.freeze({Cancel:"C",New:"N",Replace:"R",Restate:"T"});var Nf=Object.freeze({Unknown:0,LastTradePrice:1,LastBidPrice:2,LastOfferPrice:3,MidPrice:4,AverageLastTradePrice:5,AverageLastTradePeriod:6,UnderlyingPrice:7,CalculatedPrice:8,ManualPrice:9});var Af=Object.freeze({Final:1,Theoretical:2});var wf=Object.freeze({Intraday:"ITD",RegularTradingHours:"RTH",ElectronicTradingHours:"ETH",EndOfDay:"EOD"});var Mf=Object.freeze({Received:0,Accepted:1,Rejected:2});var Lf=Object.freeze({Received:0,Accepted:1,Rejected:2});var Of=Object.freeze({Shares:1,Derivatives:2,PaymentVsPayment:3,Notional:4,Cascade:5,Repurchase:6,Other:99});var kf=Object.freeze({Regular:"0",Cash:"1",NextDay:"2",TPlus2:"3",TPlus3:"4",TPlus4:"5",Future:"6",WhenAndIfIssued:"7",SellersOption:"8",TPlus5:"9",BrokenDate:"B",FXSpotNextSettlement:"C"});var Uf=Object.freeze({ExemptionReasonUnknown:0,IncomingSSE:1,AboveNationalBestBid:2,DelayedDelivery:3,OddLot:4,DomesticArbitrage:5,InternationalArbitrage:6,UnderwriterOrSyndicateDistribution:7,RisklessPrincipal:8,VWAP:9});var qf=Object.freeze({DealerSoldShort:0,DealerSoldShortExempt:1,SellingCustomerSoldShort:2,SellingCustomerSoldShortExempt:3,QualifiedServiceRepresentative:4,QSROrAGUContraSideSoldShortExempt:5});var Bf=Object.freeze({NoRestrictions:0,SecurityNotShortable:1,SecurityNotShortableAtOrBelowBestBid:2,SecurityNotShortableWithoutPreBorrow:3});var jf=Object.freeze({Buy:"1",Sell:"2",BuyMinus:"3",SellPlus:"4",SellShort:"5",SellShortExempt:"6",Undisclosed:"7",Cross:"8",CrossShort:"9",CrossShortExempt:"A",AsDefined:"B",Opposite:"C",Subscribe:"D",Redeem:"E",Lend:"F",Borrow:"G",SellUndisclosed:"H"});var Gf=Object.freeze({TradeClearingAtExecutionPrice:0,TradeClearingAtAlternateClearingPrice:1});var Qf=Object.freeze({SingleSecurity:1,IndividualLegOfAMultilegSecurity:2,MultilegSecurity:3});var Vf=Object.freeze({SideValue1:1,SideValue2:2});var zf=Object.freeze({MultipleQuotesAllowed:"N",OnlyOneQuoteAllowed:"Y"});var Hf=Object.freeze({WasNotSolicited:"N",WasSolicited:"Y"});var Wf=Object.freeze({Other:0,DTCSID:1,ThomsonALERT:2,AGlobalCustodian:3,AccountNet:4});var _f=Object.freeze({ExchangeLast:1,High:2,AveragePrice:3,Turnover:4});var Kf=Object.freeze({Connected:1,NotConnectedUnexpected:2,NotConnectedExpected:3,InProcess:4});var Yf=Object.freeze({AlternativeMinimumTax:"AMT",IncurredRecovery:"INCURRCVY",AbsolutePrepaymentSpeed:"ABS",AutoReinvestment:"AUTOREINV",AdditionalTerm:"ADDTRM",ConstantPrepaymentPenalty:"CPP",BankQualified:"BANKQUAL",ModifiedEquityDelivery:"MODEQTYDLVY",ConstantPrepaymentRate:"CPR",BargainConditions:"BGNCON",NoReferenceOblication:"NOREFOBLIG",ConstantPrepaymentYield:"CPY",CouponRange:"COUPON",UnknownReferenceObligation:"UNKREFOBLIG",FinalCPROfHomeEquityPrepaymentCurve:"HEP",ISOCurrencyCode:"CURRENCY",AllGuarantees:"ALLGUARANTEES",PercentOfManufacturedHousingPrepaymentCurve:"MHP",CustomStart:"CUSTOMDATE",ReferencePrice:"REFPX",MonthlyPrepaymentRate:"MPR",Geographics:"GEOG",ReferencePolicy:"REFPOLICY",PercentOfProspectusPrepaymentCurve:"PPC",ValuationDiscount:"HAIRCUT",SecuredList:"SECRDLIST",PercentOfBMAPrepaymentCurve:"PSA",Insured:"INSURED",SingleMonthlyMortality:"SMM",IssueDate:"ISSUE",Issuer:"ISSUER",IssueSizeRange:"ISSUESIZE",LookbackDays:"LOOKBACK",ExplicitLotIdentifier:"LOT",LotVariance:"LOTVAR",MaturityYearAndMonth:"MAT",MaturityRange:"MATURITY",MaximumSubstitutions:"MAXSUBS",MinimumDenomination:"MINDNOM",MinimumIncrement:"MININCR",MinimumQuantity:"MINQTY",PaymentFrequency:"PAYFREQ",NumberOfPieces:"PIECES",PoolsMaximum:"PMAX",PoolsPerLot:"PPL",PoolsPerMillion:"PPM",PoolsPerTrade:"PPT",PriceRange:"PRICE",PricingFrequency:"PRICEFREQ",ProductionYear:"PROD",CallProtection:"PROTECT",Purpose:"PURPOSE",BenchmarkPriceSource:"PXSOURCE",RatingSourceAndRange:"RATING",TypeOfRedemption:"REDEMPTION",Restricted:"RESTRICTED",MarketSector:"SECTOR",SecurityTypeIncludedOrExcluded:"SECTYPE",Structure:"STRUCT",SubstitutionsFrequency:"SUBSFREQ",SubstitutionsLeft:"SUBSLEFT",FreeformText:"TEXT",TradeVariance:"TRDVAR",WeightedAverageCoupon:"WAC",WeightedAverageLifeCoupon:"WAL",WeightedAverageLoanAge:"WALA",WeightedAverageMaturity:"WAM",WholePool:"WHOLE",YieldRange:"YIELD",OriginalAmount:"ORIGAMT",AverageFICOScore:"AVFICO",PoolEffectiveDate:"POOLEFFDT",AverageLoanSize:"AVSIZE",PoolInitialFactor:"POOLINITFCTR",MaximumLoanBalance:"MAXBAL",Tranche:"TRANCHE",PoolIdentifier:"POOL",Substitution:"SUBSTITUTION",TypeOfRollTrade:"ROLLTYPE",MULTEXCHFLLBCK:"MULTEXCHFLLBCK",ReferenceToRollingOrClosingTrade:"REFTRADE",COMPSECFLLBCK:"COMPSECFLLBCK",PrincipalOfRollingOrClosingTrade:"REFPRIN",LOCLJRSDCTN:"LOCLJRSDCTN",InterestOfRollingOrClosingTrade:"REFINT",RELVJRSDCTN:"RELVJRSDCTN",AvailableOfferQuantityToBeShownToTheStreet:"AVAILQTY",BrokerCredit:"BROKERCREDIT",OfferPriceToBeShownToInternalBrokers:"INTERNALPX",OfferQuantityToBeShownToInternalBrokers:"INTERNALQTY",TheMinimumResidualOfferQuantity:"LEAVEQTY",MaximumOrderSize:"MAXORDQTY",OrderQuantityIncrement:"ORDRINCR",PrimaryOrSecondaryMarketIndicator:"PRIMARY",BrokerSalesCreditOverride:"SALESCREDITOVR",TraderCredit:"TRADERCREDIT",DiscountRate:"DISCOUNT",YieldToMaturity:"YTM",InterestPayoffOfRollingOrAmendingTrade:"PAYOFF"});var Jf=Object.freeze({Int:1,Length:2,NumInGroup:3,SeqNum:4,TagNum:5,Float:6,Qty:7,Price:8,PriceOffset:9,Amt:10,Percentage:11,Char:12,Boolean:13,String:14,MultipleCharValue:15,Currency:16,Exchange:17,MonthYear:18,UTCTimestamp:19,UTCTimeOnly:20,LocalMktDate:21,UTCDateOnly:22,Data:23,MultipleStringValue:24,Country:25,Language:26,TZTimeOnly:27,TZTimestamp:28,Tenor:29});var $f=Object.freeze({Straddle:"STD",Strangle:"STG",Butterfly:"BF",Condor:"CNDR",CallableInversibleSnowball:"CISN",Other:"OTHER"});var Zf=Object.freeze({AssignmentAccepted:0,AssignmentRejected:1});var eg=Object.freeze({UnknownClient:0,ExceedsMaximumSize:1,UnknownOrInvalidCurrencyPair:2,NoAvailableStream:3,Other:99});var tg=Object.freeze({StreamAssignmentForNewCustomer:1,StreamAssignmentForExistingCustomer:2});var dg=Object.freeze({Assignment:1,Rejected:2,Terminate:3});var ig=Object.freeze({City:0,Airport:1,WeatherStation:2,WeatherIndex:3});var ag=Object.freeze({Week:"Wk",Month:"Mo"});var ng=Object.freeze({Day:"D"});var rg=Object.freeze({Execution:0,PortfolioRebalancing:1,Standard:2});var og=Object.freeze({Term:0,PerBusinessDay:1,PerCalculationPeriod:2,PerSettlPeriod:3,PerCalendarDay:4,PerHour:5,PerMonth:6});var sg=Object.freeze({PaymentCashSettlement:0,PhysicalDelivery:1});var cg=Object.freeze({Bid:0,Mid:1,Offer:2});var pg=Object.freeze({LessThan:1,LessThanOrEqual:2,Equal:3,GreaterThanOrEqual:4,GreaterThan:5});var ug=Object.freeze({FixedStrike:1,StrikeSetAtExpiration:2,StrikeSetToAverageAcrossLife:3,StrikeSetToOptimalValue:4});var lg=Object.freeze({Snapshot:"0",SnapshotAndUpdates:"1",DisablePreviousSnapshot:"2"});var mg=Object.freeze({BasisSwap:"BS",IndexSwap:"IX",BroadBasedSecuritySwap:"BB",BasketSwap:"SK"});var yg=Object.freeze({Amortizing:"AMTZ",Compounding:"COMP",ConstantNotionalSchedule:"CNST",AccretingNotionalSchedule:"ACRT",CustomNotionalSchedule:"CUST"});var Sg=Object.freeze({EUCPWithLumpSumInterest:"CD",WhenIssued:"WI"});var Pg=Object.freeze({VWAP:1,Participate:2,MininizeMarketImpact:3});var fg=Object.freeze({None:0,MaxiISA:1,TESSA:2,MiniCashISA:3,MiniStocksAndSharesISA:4,MiniInsuranceISA:5,CurrentYearPayment:6,PriorYearPayment:7,AssetTransfer:8,EmployeePriorYear:9,EmployeeCurrentYear:10,EmployerPriorYear:11,EmployerCurrentYear:12,NonFundPrototypeIRA:13,NonFundQualifiedPlan:14,DefinedContributionPlan:15,IRA:16,IRARollover:17,KEOGH:18,ProfitSharingPlan:19,US401K:20,SelfDirectedIRA:21,US403b:22,US457:23,RothIRAPrototype:24,RothIRANonPrototype:25,RothConversionIRAPrototype:26,RothConversionIRANonPrototype:27,EducationIRAPrototype:28,EducationIRANonPrototype:29,Other:999});var gg=Object.freeze({ISINOrAltInstrmtID:"I",InterimTaxonomy:"E"});var hg=Object.freeze({Overnight:1,Term:2,Flexible:3,Open:4});var Ig=Object.freeze({Received:0,Accepted:1,Rejected:2});var bg=Object.freeze({Start:0,Stop:1,State:2});var Fg=Object.freeze({MarketDataGatewayIPAddress:0,MarketDataGatewayPortNumber:1,MarketDataGatewayDataFormat:2,MarketDataGatewayFormatVersion:3,MarketDataGatewayRoutingIPAddress:4,OrderEntryGatewayIPAddress:5,OrderEntryGatewayPortNumber:6,OrderEntryGatewaydataFormat:7,OrderEntryGatewayFormatVersion:8,OrderEntryGatewayRoutingIPAddress:9});var Eg=Object.freeze({False:"N",True:"Y"});var Cg=Object.freeze({Scheduled:0,Running:1,Completed:2,Cancelled:3});var vg=Object.freeze({Received:0,Accepted:1,Rejected:2});var Tg=Object.freeze({New:0,Cancel:1});var Xg=Object.freeze({Undefined:0,Pass:1,Fail:2,Warning:3});var Dg=Object.freeze({Under:0,Over:1});var Rg=Object.freeze({QueueInbound:0,QueueOutbound:1,Reject:2,Disconnect:3,Warning:4});var xg=Object.freeze({OutstandingRequestsUnchanged:0,OutstandingRequestsDecreased:1});var Ng=Object.freeze({RejectIfThrottleLimitExceeded:0,QueueIfThrottleLimitExceeded:1});var Ag=Object.freeze({ThrottleLimitNotExceededNotQueued:0,QueuedDueToThrottleLimitExceeded:1});var wg=Object.freeze({InboundRate:0,OutstandingRequests:1});var Mg=Object.freeze({PlusTick:"0",ZeroPlusTick:"1",MinusTick:"2",ZeroMinusTick:"3"});var Lg=Object.freeze({RegularTrading:0,VariableCabinet:1,FixedCabinet:2,TradedAsASpreadLeg:3,SettledAsASpreadLeg:4,TradedAsSpread:5});var Og=Object.freeze({Day:"0",GoodTillCancel:"1",AtTheOpening:"2",ImmediateOrCancel:"3",FillOrKill:"4",GoodTillCrossing:"5",GoodTillDate:"6",AtTheClose:"7",GoodThroughCrossing:"8",AtCrossing:"9",GoodForTime:"A",GoodForAuction:"B",GoodForMonth:"C"});var kg=Object.freeze({Hour:"H",Minute:"Min",Second:"S",Day:"D",Week:"Wk",Month:"Mo",Year:"Yr",Quarter:"Q",EndOfMonth:"EOM",Flexible:"F"});var Ug=Object.freeze({UnknownOrders:0,UnknownExecutionFills:1,Other:99});var qg=Object.freeze({Accepted:0,Rejected:1});var Bg=Object.freeze({New:0,Cancel:1,Replace:2});var jg=Object.freeze({Add:0,DoNotAdd:1});var Gg=Object.freeze({AllocationNotRequired:0,AllocationRequired:1,UseAllocationProvidedWithTheTrade:2,AllocationGiveUpExecutor:3,AllocationFromExecutor:4,AllocationToClaimAccount:5,TradeSplit:6});var Qg=Object.freeze({PendingClear:0,Claimed:1,Cleared:2,Rejected:3});var Vg=Object.freeze({Uncollateralized:0,PartiallyCollateralized:1,OneWayCollaterallization:2,FullyCollateralized:3,NetExposure:4});var zg=Object.freeze({Cash:"A",AveragePriceTrade:"B",CashTrade:"C",NextDay:"D",Opening:"E",IntradayTradeDetail:"F",Rule127Trade:"G",Rule155Trade:"H",SoldLast:"I",NextDayTrade:"J",Opened:"K",Seller:"L",Sold:"M",StoppedStock:"N",ImbalanceMoreBuyers:"P",ImbalanceMoreSellers:"Q",OpeningPrice:"R",BargainCondition:"S",ConvertedPriceIndicator:"T",ExchangeLast:"U",FinalPriceOfSession:"V",ExPit:"W",Crossed:"X",TradesResultingFromManual:"Y",TradesResultingFromIntermarketSweep:"Z",VolumeOnly:"a",DirectPlus:"b",Acquisition:"c",Bunched:"d",Distribution:"e",BunchedSale:"f",SplitTrade:"g",CancelStopped:"h",CancelETH:"i",CancelStoppedETH:"j",OutOfSequenceETH:"k",CancelLastETH:"l",SoldLastSaleETH:"m",CancelLast:"n",SoldLastSale:"o",CancelOpen:"p",CancelOpenETH:"q",OpenedSaleETH:"r",CancelOnly:"s",CancelOnlyETH:"t",LateOpenETH:"u",AutoExecutionETH:"v",Reopen:"w",ReopenETH:"x",Adjusted:"y",AdjustedETH:"z",Spread:"AA",SpreadETH:"AB",Straddle:"AC",StraddleETH:"AD",Stopped:"AE",StoppedETH:"AF",RegularETH:"AG",Combo:"AH",ComboETH:"AI",OfficialClosingPrice:"AJ",PriorReferencePrice:"AK",StoppedSoldLast:"AL",StoppedOutOfSequence:"AM",OfficialClosingPriceDup:"AN",CrossedOld:"AO",FastMarket:"AP",AutomaticExecution:"AQ",FormT:"AR",BasketIndex:"AS",BurstBasket:"AT",TradeThroughExempt:"AU",QuoteSpread:"AV",LastAuctionPrice:"AW",HighPrice:"AX",LowPrice:"AY",SystematicInternaliser:"AZ",AwayMarket:"BA",MidpointPrice:"BB",TradedBeforeIssueDate:"BC",PreviousClosingPrice:"BD",NationalBestBidOffer:"BE",Cancel:"0",ImpliedTrade:"1",MarketplaceEnteredTrade:"2",MultiAssetClassMultilegTrade:"3",MultilegToMultilegTrade:"4",ShortSaleMinPrice:"5",Benchmark:"6"});var Hg=Object.freeze({DoesNotApply:0,ContingentTrade:1,NonContingentTrade:2});var Wg=Object.freeze({Novation:0,PartialNovation:1,TradeUnwind:2,PartialTradeUnwind:3,Exercise:4,Netting:5,FullNetting:6,PartialNetting:7,Amendment:8,Increase:9,CreditEvent:10,StrategicRestructuring:11,SuccessionEventReorganization:12,SuccessionEventRenaming:13,Porting:14,Withdrawl:15,Void:16,AccountTransfer:17,GiveUp:18,TakeUp:19,AveragePricing:20,Reversal:21,AllocTrdPosting:22,Cascade:23,Delivery:24,OptionAsgn:25,Expiration:26,Maturity:27,EqualPosAdj:28,UnequalPosAdj:29,Correction:30,EarlyTermination:31,Rerate:32,Other:99});var _g=Object.freeze({NotTradedFlat:"N",TradedFlat:"Y"});var Kg=Object.freeze({TradeConfirmation:"0",TwoPartyReport:"1",OnePartyReportForMatching:"2",OnePartyReportForPassThrough:"3",AutomatedFloorOrderRouting:"4",TwoPartyReportForClaim:"5",OnePartyReport:"6",ThirdPtyRptForPassThrough:"7",OnePartyReportAutoMatch:"8"});var Yg=Object.freeze({ReceivedNotProcessed:0,Accepted:1,Rejected:2});var Jg=Object.freeze({Successful:0,InvalidPartyInformation:1,UnknownInstrument:2,Unauthorized:3,InvalidTradeType:4,Other:99});var $g=Object.freeze({SpecialCumDividend:0,SpecialCumRights:1,SpecialExDividend:2,SpecialExRights:3,SpecialCumCoupon:4,SpecialCumCapitalRepayments:5,SpecialExCoupon:6,SpecialExCapitalRepayments:7,CashSettlement:8,SpecialCumBonus:9,SpecialPrice:10,SpecialExBonus:11,GuaranteedDelivery:12,SpecialDividend:13,PriceImprovement:14,NonPriceFormingTrade:15,TradeExemptedFromTradingObligation:16,PricePending:17,PriceNotApplicable:18});var Zg=Object.freeze({PercentPar:0,DealSpread:1,UpfrontPnts:2,UpfrontAmt:3,ParUpfrontAmt:4,SpreadUpfrontAmt:5,UpfrontPntsAmt:6});var e1=Object.freeze({DoNotPublishTrade:0,PublishTrade:1,DeferredPublication:2,Published:3});var t1=Object.freeze({ClearedQuantity:0,LongSideClaimedQuantity:1,ShortSideClaimedQuantity:2,LongSideRejectedQuantity:3,ShortSideRejectedQuantity:4,PendingQuantity:5,TransactionQuantity:6,RemainingQuantity:7,PreviousRemainingQuantity:8});var d1=Object.freeze({NotReported:0,OnBook:1,SISeller:2,SIBuyer:3,NonSISeller:4,SubDelegationByFirm:5,Reportable:6,NonSIBuyer:7,OffBook:8,NotReportable:9});var i1=Object.freeze({Successful:0,InvalidPartyInformation:1,UnknownInstrument:2,UnauthorizedToReportTrades:3,InvalidTradeType:4,PriceExceedsCurrentPriceBand:5,ReferencePriceNotAvailable:6,NotionalValueExceedsThreshold:7,Other:99});var a1=Object.freeze({New:0,Cancel:1,Replace:2,Release:3,Reverse:4,CancelDueToBackOutOfTrade:5});var n1=Object.freeze({Submit:0,Alleged:1,Accept:2,Decline:3,Addendum:4,No:5,TradeReportCancel:6,LockedIn:7,Defaulted:8,InvalidCMTA:9,Pended:10,AllegedNew:11,AllegedAddendum:12,AllegedNo:13,AllegedTradeReportCancel:14,AllegedTradeBreak:15,Verify:16,Dispute:17,NonMaterialUpdate:18});var r1=Object.freeze({Successful:0,InvalidOrUnknownInstrument:1,InvalidTypeOfTradeRequested:2,InvalidParties:3,InvalidTransportTypeRequested:4,InvalidDestinationRequested:5,TradeRequestTypeNotSupported:8,NotAuthorized:9,Other:99});var o1=Object.freeze({Accepted:0,Completed:1,Rejected:2});var s1=Object.freeze({AllTrades:0,MatchedTradesMatchingCriteria:1,UnmatchedTradesThatMatchCriteria:2,UnreportedTradesThatMatchCriteria:3,AdvisoriesThatMatchCriteria:4});var c1=Object.freeze({Agency:"A",VWAPGuarantee:"G",GuaranteedClose:"J",RiskTrade:"R"});var p1=Object.freeze({NumberOfUnits:0,NumberOfRoundLots:1});var u1=Object.freeze({Customer:1,CustomerProfessional:2,BrokerDealer:3,CustomerBrokerDealer:4,Principal:5,MarketMaker:6,AwayMarketMaker:7,SystematicInternaliser:8});var l1=Object.freeze({Day:"1",HalfDay:"2",Morning:"3",Afternoon:"4",Evening:"5",AfterHours:"6",Holiday:"7"});var m1=Object.freeze({PreTrading:"1",OpeningOrOpeningAuction:"2",Continuous:"3",ClosingOrClosingAuction:"4",PostTrading:"5",ScheduledIntradayAuction:"6",Quiescent:"7",AnyAuction:"8",UnscheduledIntradayAuction:"9",OutOfMainSessionTrading:"10",PrivateAuction:"11",PublicAuction:"12",GroupAuction:"13",OrderInitiatedAuction:"14"});var y1=Object.freeze({Automatic:0,Manual:1});var S1=Object.freeze({TradingResumes:0,ChangeOfTradingSession:1,ChangeOfTradingSubsession:2,ChangeOfTradingStatus:3});var P1=Object.freeze({Electronic:1,OpenOutcry:2,TwoParty:3,Voice:4});var f1=Object.freeze({Testing:1,Simulated:2,Production:3});var g1=Object.freeze({Unknown:0,Halted:1,Open:2,Closed:3,PreOpen:4,PreClose:5,RequestRejected:6});var h1=Object.freeze({UnknownOrInvalidTradingSessionID:1,Other:99});var I1=Object.freeze({ExclusiveArrangement:0,CollateralReuse:1,CollateralArrangementType:2});var b1=Object.freeze({Success:0,InvalidParty:1,UnknownInstrument:2,UnauthorizedToSubmitXfer:3,UnknownPosition:4,Other:99});var F1=Object.freeze({Submit:0,Alleged:1});var E1=Object.freeze({InterFirmTransfer:0,IntraFirmTransfer:1,CMTA:2});var C1=Object.freeze({Received:0,RejectedByIntermediary:1,AcceptPending:2,Accepted:3,Declined:4,Cancelled:5});var v1=Object.freeze({New:0,Replace:1,Cancel:2});var T1=Object.freeze({RequestTransfer:0,AcceptTransfer:1,DeclineTransfer:2});var X1=Object.freeze({Accepted:0,Rejected:1,Received:2});var D1=Object.freeze({NoBookOrderDueToAverageSpreadPrice:0,NoBookOrderDueToRefPrice:1,NoBookOrderDueToOtherConditions:2,NoPublicPriceDueToRefPrice:3,NoPublicPriceDueToIlliquid:4,NoPublicPriceDueToOrderSize:5,DeferralDueToLargeInScale:6,DeferralDueToIlliquid:7,DeferralDueToSizeSpecific:8,NoPublicPriceDueToLargeInScale:9,NoPublicPriceSizeDueToOrderHidden:10,ExemptedDueToSecuritiesFinancingTransaction:11,ExemptedDueToESCBPolicyTransaction:12,ExceptionDueToReportByPaper:13,ExceptionDueToTradeExecutedWithNonReportingParty:14,ExceptionDueToIntraFirmOrder:15,ReportedOutsideReportingHours:16,NoPublicPxDueToPreTradeWaiver:17});var R1=Object.freeze({PreTradeTransparencyWaiver:0,PostTradeDeferral:1,ExemptFromPublication:2,OrderLevelPublicationToSubscribers:3,PriceLevelPublicationToSubscribers:4,OrderLevelPublicationToThePublic:5,PublicationInternalToExecutionVenue:6});var x1=Object.freeze({NotManuallyCaptured:"N",ManuallyCaptured:"Y"});var N1=Object.freeze({ExecutionTime:1,TimeIn:2,TimeOut:3,BrokerReceipt:4,BrokerExecution:5,DeskReceipt:6,SubmissionToClearing:7,TimePriority:8,OrderbookEntryTime:9,OrderSubmissionTime:10,PubliclyReported:11,PublicReportUpdated:12,NonPubliclyReported:13,NonPublicReportUpdated:14,SubmittedForConfirmation:15,UpdatedForConfirmation:16,Confirmed:17,UpdatedForClearing:18,Cleared:19,AllocationsSubmitted:20,AllocationsUpdated:21,AllocationsCompleted:22,SubmittedToRepository:23,PostTrdContntnEvnt:24,PostTradeValuation:25,PreviousTimePriority:26,IdentifierAssigned:27,PreviousIdentifierAssigned:28,OrderCancellationTime:29,OrderModificationTime:30,OrderRoutingTime:31,TradeCancellationTime:32,TradeModificationTime:33,ReferenceTimeForNBBO:34,Affirmed:35});var A1=Object.freeze({Accepted:0,Rejected:1,Cancelled:2,AcceptedWithErrors:3,PendingNew:4,PendingCancel:5,PendingReplace:6,Terminated:7,PendingVerification:8,DeemedVerified:9,Verified:10,Disputed:11});var w1=Object.freeze({CMTA:0,InternalTransferOrAdjustment:1,ExternalTransferOrTransferOfAccount:2,RejectForSubmittingSide:3,AdvisoryForContraSide:4,OffsetDueToAnAllocation:5,OnsetDueToAnAllocation:6,DifferentialSpread:7,ImpliedSpreadLegExecutedAgainstAnOutright:8,TransactionFromExercise:9,TransactionFromAssignment:10,ACATS:11,AI:14,B:15,K:16,LC:17,M:18,N:19,NM:20,NR:21,P:22,PA:23,PC:24,PN:25,R:26,RO:27,RT:28,SW:29,T:30,WN:31,WT:32,OffHoursTrade:33,OnHoursTrade:34,OTCQuote:35,ConvertedSWAP:36,CrossedTrade:37,InterimProtectedTrade:38,LargeInScale:39,WashTrade:40,TradeAtSettlement:41,AuctionTrade:42,TradeAtMarker:43,CreditDefault:44,CreditRestructuring:45,Merger:46,SpinOff:47,MultilateralCompression:48,Balancing:50,BasisTradeIndexClose:51,TradeAtCashOpen:52,TrdSubmitVenueClrSettl:53,BilateralCompression:54});var M1=Object.freeze({RegularTrade:0,BlockTrade:1,EFP:2,Transfer:3,LateTrade:4,TTrade:5,WeightedAveragePriceTrade:6,BunchedTrade:7,LateBunchedTrade:8,PriorReferencePriceTrade:9,AfterHoursTrade:10,ExchangeForRisk:11,ExchangeForSwap:12,ExchangeOfFuturesFor:13,ExchangeOfOptionsForOptions:14,TradingAtSettlement:15,AllOrNone:16,FuturesLargeOrderExecution:17,ExchangeOfFuturesForFutures:18,OptionInterimTrade:19,OptionCabinetTrade:20,PrivatelyNegotiatedTrades:22,SubstitutionOfFuturesForForwards:23,ErrorTrade:24,SpecialCumDividend:25,SpecialExDividend:26,SpecialCumCoupon:27,SpecialExCoupon:28,CashSettlement:29,SpecialPrice:30,GuaranteedDelivery:31,SpecialCumRights:32,SpecialExRights:33,SpecialCumCapitalRepayments:34,SpecialExCapitalRepayments:35,SpecialCumBonus:36,SpecialExBonus:37,LargeTrade:38,WorkedPrincipalTrade:39,BlockTrades:40,NameChange:41,PortfolioTransfer:42,ProrogationBuy:43,ProrogationSell:44,OptionExercise:45,DeltaNeutralTransaction:46,FinancingTransaction:47,NonStandardSettlement:48,DerivativeRelatedTransaction:49,PortfolioTrade:50,VolumeWeightedAverageTrade:51,ExchangeGrantedTrade:52,RepurchaseAgreement:53,OTC:54,ExchangeBasisFacility:55,OpeningTrade:56,NettedTrade:57,BlockSwapTrade:58,CreditEventTrade:59,SuccessionEventTrade:60,GiveUpGiveInTrade:61,DarkTrade:62,TechnicalTrade:63,Benchmark:64,PackageTrade:65,RollTrade:66,ClosingPriceTrade:67,InterFundTransferTrade:68,NetAssetValueCalculatedTrade:69});var L1=Object.freeze({Activate:"1",Modify:"2",Cancel:"3"});var O1=Object.freeze({NotTriggered:0,Triggered:1,StopOrderTriggered:2,OCOOrderTriggered:3,OTOOrderTriggered:4,OUOOrderTriggered:5});var k1=Object.freeze({Market:"1",Limit:"2"});var U1=Object.freeze({Up:"U",Down:"D"});var q1=Object.freeze({BestOffer:"1",LastTrade:"2",BestBid:"3",BestBidOrLastTrade:"4",BestOfferOrLastTrade:"5",BestMid:"6"});var B1=Object.freeze({None:"0",Local:"1",National:"2",Global:"3"});var j1=Object.freeze({ThisOrder:0,OtherOrder:1,AllOtherOrdersForGivenSecurity:2,AllOtherOrdersForGivenSecurityAndPrice:3,AllOtherOrdersForGivenSecurityAndSide:4,AllOtherOrdersForGivenSecurityPriceAndSide:5});var G1=Object.freeze({PartialExecution:"1",SpecifiedTradingSession:"2",NextAuction:"3",PriceMovement:"4",OnOrderEntryOrModification:"5"});var Q1=Object.freeze({FIXED:"FIXED",DIFF:"DIFF"});var V1=Object.freeze({Divide:"D",Multiply:"M"});var z1=Object.freeze({Execution:0,PortfolioRebalancing:1,Standard:2});var H1=Object.freeze({Bond:"0",ConvertibleBond:"1",Mortgage:"2",Loan:"3"});var W1=Object.freeze({Regular:1,SpecialReference:2,OptimalValue:3,AverageValue:4});var _1=Object.freeze({TPlus1:2,TPlus3:4,TPlus4:5});var K1=Object.freeze({BillionCubicFeet:"Bcf",Allowances:"Alw",CubicMeters:"CBM",Barrels:"Bbl",Gigajoules:"GJ",BoardFeet:"BDFT",HeatRate:"kHR",Bushels:"Bu",KilowattHours:"kWh",Currency:"Ccy",MegaHeatRate:"MHR",CoolingDegreeDay:"CDD",OneMillionBTU:"MMBtu",CertifiedEmissionsReduction:"CER",MegawattHours:"MWh",CriticalPrecipDay:"CPD",Therms:"thm",ClimateReserveTonnes:"CRT",TonsOfCarbonDioxide:"tnCO2",Hundredweight:"cwt",Day:"day",DryMetricTons:"dt",EnvAllwncCert:"EnvAllwnc",EnvironmentalCredit:"EnvCrd",EnvironmentalOffset:"EnvOfst",Grams:"g",Gallons:"Gal",GrossTons:"GT",HeatingDegreeDay:"HDD",IndexPoint:"IPNT",Kilograms:"kg",Kiloliters:"kL",KilowattYear:"kW-a",KilowattDay:"kW-d",KilowattHour:"kW-h",KilowattMonth:"kW-M",KilowattMinute:"kW-min",Liters:"L",Pounds:"lbs",MegawattYear:"MW-a",MegawattDay:"MW-d",MegawattHour:"MW-h",MegawattMonth:"MW-M",MegawattMinute:"MW-min",TroyOunces:"oz_tr",PrincipalWithRelationToDebtInstrument:"PRINC",MetricTons:"t",Tons:"tn",Are:"a",Acre:"ac",Centiliter:"cL",Centimeter:"cM",DieselGallonEquivalent:"DGE",Foot:"ft",GBGallon:"Gal_gb",GasolineGallonEquivalent:"GGE",Hectare:"ha",Inch:"in",Kilometer:"kM",Meter:"M",Mile:"mi",Milliliter:"mL",Millimeter:"mM",USOunce:"oz",Piece:"pc",USPint:"pt",GBPint:"pt_gb",USQuart:"qt",GBQuart:"qt_gb",SquareCentimeter:"SqcM",SquareFoot:"Sqft",SquareInch:"Sqin",SquareKilometer:"SqkM",SquareMeter:"SqM",SquareMile:"Sqmi",SquareMillimeter:"SqmM",SquareYard:"Sqyd",Yard:"yd",MillionBarrels:"MMbbl",USDollars:"USD"});var Y1=Object.freeze({MessageIsBeingSentAsAResultOfAPriorRequest:"N",MessageIsBeingSentUnsolicited:"Y"});var J1=Object.freeze({Percentage:1,FixedAmount:3});var $1=Object.freeze({Normal:"0",Flash:"1",Background:"2"});var Z1=Object.freeze({LogOnUser:1,LogOffUser:2,ChangePasswordForUser:3,RequestIndividualUserStatus:4,RequestThrottleLimit:5});var eh=Object.freeze({LoggedIn:1,NotLoggedIn:2,UserNotRecognised:3,PasswordIncorrect:4,PasswordChanged:5,Other:6,ForcedUserLogoutByExchange:7,SessionShutdownWarning:8,ThrottleParametersChanged:9});var th=Object.freeze({PremiumStyle:"EQTY",FuturesStyleMarkToMarket:"FUT",FuturesStyleWithAnAttachedCashAdjustment:"FUTDA",CDSStyleCollateralization:"CDS",CDSInDeliveryUseRecoveryRateToCalculate:"CDSD"});var dh=Object.freeze({DoNotCheck:0,Check:1,BestEffort:2});var ih=Object.freeze({PriceCheck:1,NotionalValueCheck:2,QuantityCheck:3});var ah=Object.freeze({Electronic:"E",Pit:"P",ExPit:"X",ClearingHouse:"C",RegisteredMarket:"R",OffMarket:"O",CentralLimitOrderBook:"B",QuoteDrivenMarket:"Q",DarkOrderBook:"D",AuctionDrivenMarket:"A",QuoteNegotiation:"N",VoiceNegotiation:"V",HybridMarket:"H",OtherMarket:"z"});var nh=Object.freeze({NonElectronic:0,Electronic:1});var rh=Object.freeze({NotWorking:"N",Working:"Y"});var oh=Object.freeze({AfterTaxYield:"AFTERTAX",AnnualYield:"ANNUAL",YieldAtIssue:"ATISSUE",YieldToAverageMaturity:"AVGMATURITY",BookYield:"BOOK",YieldToNextCall:"CALL",YieldChangeSinceClose:"CHANGE",ClosingYield:"CLOSE",CompoundYield:"COMPOUND",CurrentYield:"CURRENT",GvntEquivalentYield:"GOVTEQUIV",TrueGrossYield:"GROSS",YieldWithInflationAssumption:"INFLATION",InverseFloaterBondYield:"INVERSEFLOATER",MostRecentClosingYield:"LASTCLOSE",ClosingYieldMostRecentMonth:"LASTMONTH",ClosingYieldMostRecentQuarter:"LASTQUARTER",ClosingYieldMostRecentYear:"LASTYEAR",YieldToLongestAverageLife:"LONGAVGLIFE",MarkToMarketYield:"MARK",YieldToMaturity:"MATURITY",YieldToNextRefund:"NEXTREFUND",OpenAverageYield:"OPENAVG",PreviousCloseYield:"PREVCLOSE",ProceedsYield:"PROCEEDS",YieldToNextPut:"PUT",SemiAnnualYield:"SEMIANNUAL",YieldToShortestAverageLife:"SHORTAVGLIFE",SimpleYield:"SIMPLE",TaxEquivalentYield:"TAXEQUIV",YieldToTenderDate:"TENDER",TrueYield:"TRUE",YieldValueOf32nds:"VALUE1_32",YieldToWorst:"WORST"});var $a=(d,e)=>{if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);let t=[new _(k.BeginString,d.fixVersion),new _(k.MsgType,fe.Heartbeat),new _(k.MsgSeqNum,d.getNextTargetMsgSeqNum()),new _(k.SenderCompID,d.sender),new _(k.TargetCompID,d.target),new _(k.SendingTime,d.getTimestamp(new Date))];return e&&t.push(e),d.createMessage(...t)},jr=(d,e,t,i=ud.GapFillMessage)=>{if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);let a=[new _(k.BeginString,d.fixVersion),new _(k.MsgType,fe.SequenceReset),new _(k.MsgSeqNum,e),new _(k.SenderCompID,d.sender),new _(k.TargetCompID,d.target),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.GapFillFlag,i),new _(k.NewSeqNo,t+1)];return d.createMessage(...a)};var sF=(d,e,t)=>{if(d.isLoggedIn)return d.connectionType==="acceptor"?t.getField(k.ResetSeqNumFlag)&&t.getField(k.ResetSeqNumFlag).value.toString()==="Y"&&(d.logger.log({level:"info",message:`FIXServer (${d.protocol.toUpperCase()}): -- Logon acknowledged by acceptor.`,fix:t.encode("|")}),d.messageStoreIn.setNextMsgSeqNum(1)):d.logger.log({level:"info",message:`FIXServer (${d.protocol.toUpperCase()}): -- Logon acknowledged by initiator.`,fix:t.encode("|")}),!0;let i=String(t.getField(k.BeginString)?.value),a=!0,n=!0;i&&(d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): -- FIX version set to ${i}`,fix:t.encode("|")}),d.fixVersion=i,d.fixParser&&(d.fixParser.fixVersion=i));let r=t.getField(k.TargetCompID)?.value?.toString()??d.sender,o=t.getField(k.SenderCompID)?.value?.toString()??d.target;if(r&&r!==d.sender&&(d.logger.logWarning({message:`FIXServer (${d.protocol.toUpperCase()}): -- Expected TargetCompID=${d.sender}, but got ${r}`,fix:t.encode("|")}),n=!1),o&&o!==d.target&&(d.logger.logWarning({message:`FIXServer (${d.protocol?.toUpperCase()}): -- Expected SenderCompID=${d.target}, but got ${o}`,fix:t.encode("|")}),a=!1),a&&n){if(d.connectionType==="acceptor"){let p=d.createMessage(new _(k.MsgType,fe.Logon),new _(k.MsgSeqNum,t.getField(k.MsgSeqNum)?.value?.toString()),new _(k.SenderCompID,r),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.TargetCompID,o),new _(k.ResetSeqNumFlag,t.getField(k.ResetSeqNumFlag)?.value?.toString()==="Y"?ea.Yes:ea.No),new _(k.EncryptMethod,Ya.None),new _(k.HeartBtInt,t.getField(k.HeartBtInt)?t.getField(k.HeartBtInt)?.value:d.heartBeatInterval));d.send(p),d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): >> sent Logon acknowledge`,fix:p.encode("|")})}t.getField(k.ResetSeqNumFlag)&&t.getField(k.ResetSeqNumFlag)?.value?.toString()==="Y"&&(d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): -- Logon contains ResetSeqNumFlag=Y, resetting sequence numbers to 1`,fix:t.encode("|")}),d.messageStoreIn.setNextMsgSeqNum(1),d.setNextTargetMsgSeqNum(2)),d.isLoggedIn=!0,d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): >> Logon successful by ${d.connectionType}`,fix:t.encode("|")});let c=t.getField(k.HeartBtInt)?Number(t.getField(k.HeartBtInt)?.value):d.heartBeatInterval;return d.heartBeatInterval=c,d.fixParser&&(d.fixParser.heartBeatInterval=c),d.startHeartbeat(c),!0}let s=d.createMessage(new _(k.MsgType,fe.Logout),new _(k.MsgSeqNum,d.getNextTargetMsgSeqNum()),new _(k.SenderCompID,a?o:"INVALID_SENDER"),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.TargetCompID,n?r:"INVALID_TARGET"),new _(k.Text,"Invalid Logon TARGET or SENDER."));return d.isLoggedIn=!1,d.send(s),d.logger.logWarning({message:`FIXServer (${d.protocol?.toUpperCase()}): >> sent Logout due to invalid Logon`,fix:t.encode("|")}),d.stopHeartbeat(),d.close(),!1};var cF=(d,e)=>{if(d.isLoggedIn=!1,!d.requestedLogout){let t=d.createMessage(new _(k.MsgType,fe.Logout),new _(k.MsgSeqNum,d.getNextTargetMsgSeqNum()),new _(k.SenderCompID,e.getField(k.SenderCompID)?e.getField(k.SenderCompID).value.toString():d.sender),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.TargetCompID,e.getField(k.TargetCompID)?e.getField(k.TargetCompID).value.toString():d.target),new _(k.Text,"Logout acknowledgement"));d.send(t),d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): >> sent Logout acknowledge`,fix:t.encode("|")})}d.stopHeartbeat(),d.close()};var pF=(d,e,t)=>{let i=t.getField(k.BeginSeqNo)?Number(t.getField(k.BeginSeqNo)?.value):void 0,a=t.getField(k.EndSeqNo)?Number(t.getField(k.EndSeqNo)?.value):void 0;if(i===void 0||a===void 0){d.logger.logWarning({message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- Ignoring ResendRequest - Invalid BeginSeqNo or EndSeqNo`});return}if(a===0&&(a=d.getNextTargetMsgSeqNum()>i?d.getNextTargetMsgSeqNum()-1:i),e.size()===0){d.logger.logWarning({message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- Message Store does not contain the messages requested by the ResendRequest. Sending SequenceReset.`}),d.send(jr(d,i,a,ud.SequenceReset)),d.setNextTargetMsgSeqNum(a+1);return}if(i>=1&&a>=i){let n=i,r=a;for(n;n<=a;n++){let o=e.getByMsgSequence(n);if(o){let s=o,c=s.getField(k.MsgType)?.value;if(c===nt.Heartbeat||c===nt.Logon||c===nt.Logout||c===nt.Reject||c===nt.ResendRequest||c===nt.SequenceReset||c===nt.TestRequest||c===nt.XMLnonFIX||c===nt.MarketDataSnapshotFullRefresh||c===nt.SecurityDefinition){if(i===a||n<a){let p=jr(d,n,n,ud.GapFillMessage);d.send(p),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> resending message with sequence ${n} (replaced administrative message)`,fix:p.encode("|")})}}else{if(s.removeFieldByTag(k.PossDupFlag),s.addField(new _(k.PossDupFlag,Ja.PossibleDuplicate)),s.getField(k.SendingTime)){let p=`${s.getField(k.SendingTime)?.value}`;s.removeFieldByTag(k.SendingTime),s.addField(new _(k.SendingTime,d.getTimestamp(new Date))),s.removeFieldByTag(k.OrigSendingTime),s.addField(new _(k.OrigSendingTime,p))}d.send(s),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> resending message with sequence ${n}`,fix:s.encode("|")})}r=n+1}else{d.send(jr(d,n,a,ud.GapFillMessage)),d.logger.logWarning({message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- Could not find message with sequence ${n}. Sending SequenceReset-GapFill from ${n} to ${a}...`}),r=a+1;break}}d.setNextTargetMsgSeqNum(r),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> sent message sequence from ${i} to ${a}`})}else d.logger.logWarning({message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- BeginSeqNo<${i}> or EndSeqNo<${a}> out of range`})};var uF=(d,e)=>{if(e.messageSequence!==d.messageStoreIn.getNextMsgSeqNum()&&e.messageType!==fe.Logon&&e.messageType!==fe.SequenceReset){d.logger.logWarning({message:`FIXServer (${d.protocol?.toUpperCase()}): Expected MsgSeqNum ${d.messageStoreIn.getNextMsgSeqNum()}, but got ${e.messageSequence}`,fix:e.encode("|")});let t=d.createMessage(new _(k.MsgType,fe.ResendRequest),new _(k.MsgSeqNum,d.getNextTargetMsgSeqNum()),new _(k.SenderCompID,d.sender),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.TargetCompID,d.target),new _(k.BeginSeqNo,d.messageStoreIn.getNextMsgSeqNum()),new _(k.EndSeqNo,0));return d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): Sending ResendRequest from ${d.messageStoreIn.getNextMsgSeqNum()} to 0`,fix:t.encode("|")}),d.send(t),!1}return!0};var lF=(d,e)=>{let t=e.getField(k.NewSeqNo)?.value;t&&Number.isFinite(t)&&(d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- SequenceReset: new sequence number ${t}`,fix:e.encode("|")}),d.messageStoreIn.setNextMsgSeqNum(Number(t)-1))};var mF=(d,e)=>{let t=$a(d),i=e.getField(k.TestReqID)?.value??null;if(i!==null&&i!==""){let a=new _(k.TestReqID,i);t=$a(d,a),d.send(t),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> responded to TestRequest with Heartbeat<TestReqID=${i}>`,fix:t.encode("|")})}else d.send(t),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> responded to TestRequest with Heartbeat`,fix:t.encode("|")})};var Gr=(d,e)=>{uF(d,e),d.logger.log({level:"info",message:`FIXParser (${d.protocol?.toUpperCase()}): << received ${e.description}`,fix:e.encode("|")}),d.restartHeartbeat(),e.messageType===fe.SequenceReset?lF(d,e):e.messageType===fe.TestRequest?mF(d,e):e.messageType===fe.Logon?sF(d,d.messageStoreOut,e):e.messageType===fe.Logout?cF(d,e):e.messageType===fe.ResendRequest&&pF(d,d.messageStoreOut,e),d.messageStoreIn.setNextMsgSeqNum(d.messageStoreIn.getNextMsgSeqNum()+1)};var yF=require("node:stream"),Za=class extends yF.Transform{data;constructor(e){super(e),this.data=""}_transform(e,t,i){let a=(String(this.data)+e).split(/(8=.+?\x0110=\d\d\d\x01)/gs),n=0;for(n;n<a.length-1;n++)this.push(a[n]);this.data=a[a.length-1],i()}destroy(e){return this.data=void 0,super.destroy(e)}};var sh=class{static version=$5;parserName="FIXParser";fixParserBase=new Br;heartBeatIntervalId=void 0;socket=void 0;connected=!1;host;port;protocol="tcp";sender=void 0;target=void 0;heartBeatInterval=cc;fixVersion=kd;messageStoreIn=new fi;messageStoreOut=new fi;requestedLogout=!1;connectionType="initiator";logger=new Pi;logging=!0;logOptions;proxy;tlsOptions;tlsSkipStdInPipe;tlsTimeout;tlsEncoding=uc;onMessageCallbacks=[];onOpenCallbacks=[];onErrorCallbacks=[];onCloseCallbacks=[];onReadyCallbacks=[];constructor(e={logging:!0,logOptions:void 0,fixVersion:kd,skipValidation:!1,plugins:[]}){if(this.logging=e.logging??!0,this.logOptions=e.logOptions,this.fixParserBase.fixVersion=li(e.fixVersion),this.fixVersion=this.fixParserBase.fixVersion,this.fixParserBase.skipValidation=e.skipValidation,e.plugins)for(let t of e.plugins)t.register(this)}addOnMessageCallback(e){this.onMessageCallbacks.push(e)}addOnOpenCallback(e){this.onOpenCallbacks.push(e)}addOnErrorCallback(e){this.onErrorCallbacks.push(e)}addOnCloseCallback(e){this.onCloseCallbacks.push(e)}addOnReadyCallback(e){this.onReadyCallbacks.push(e)}triggerOnMessage(e){for(let t of this.onMessageCallbacks)t?.(e)}triggerOnOpen(){for(let e of this.onOpenCallbacks)e?.()}triggerOnError(e){for(let t of this.onErrorCallbacks)t?.(e)}triggerOnClose(){for(let e of this.onCloseCallbacks)e?.()}triggerOnReady(){for(let e of this.onReadyCallbacks)e?.()}onMessageCallback=()=>{};onOpenCallback=()=>{};onErrorCallback=()=>{};onCloseCallback=()=>{};onReadyCallback=()=>{};connect(e={}){let{host:t="localhost",port:i=9878,protocol:a="tcp",sender:n="SENDER",target:r="TARGET",heartbeatIntervalSeconds:o=cc,fixVersion:s=this.fixVersion,messageStoreIn:c=new fi,messageStoreOut:p=new fi,tlsOptions:l={},tlsSkipStdInPipe:m=!1,tlsTimeout:P=pc,tlsEncoding:g=uc,proxy:y=void 0,onMessage:f=this.onMessageCallback,onOpen:h=this.onOpenCallback,onError:I=this.onErrorCallback,onClose:b=this.onCloseCallback,onReady:F=this.onReadyCallback}=e;if(this.logger=new Pi(this.logOptions?{name:this.logOptions.name??"fixparser",...this.logOptions}:{name:"fixparser",format:"json"}),this.logging||(this.logger.silent=!0),se.setLogger(this.logger),!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);switch(this.connectionType="initiator",this.fixVersion=li(s),this.fixParserBase.fixVersion=li(s),this.messageStoreIn=c,this.messageStoreOut=p,this.protocol=a,this.sender=n,this.target=r,this.port=i,this.host=t,this.proxy=y,l&&(this.tlsOptions=l),m&&(this.tlsSkipStdInPipe=m),P&&(this.tlsTimeout=P),g&&(this.tlsEncoding=g),this.heartBeatInterval=o,this.onMessageCallback=f,this.onOpenCallback=h,this.onErrorCallback=I,this.onCloseCallback=b,this.onReadyCallback=F,a){case"tcp":this.connectTcp();break;case"ssl-tcp":case"tls-tcp":this.connectTlsTcp();break;case"websocket":this.connectWebsocket();break;default:throw new Error(`Unsupported protocol: ${a}`)}}connectTcp(){this.socket=new SF.Socket,this.socket.setEncoding(this.tlsEncoding),this.socket.pipe(new Za).on("data",e=>{let t=this.parse(e.toString()),i=0;for(i;i<t.length;i++)Gr(this,t[i]),this.messageStoreIn.add(t[i]),this.onMessageCallback?.(t[i]),this.triggerOnMessage(t[i])}),this.socket.connect(Number(this.port),String(this.host),()=>{this.connected=!0,this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connected to ${this.host}:${this.port}`}),this.onOpenCallback?.(),this.triggerOnOpen()}),this.socket.on("close",()=>{this.connected=!1,this.onCloseCallback?.(),this.triggerOnClose(),this.stopHeartbeat()}),this.socket.on("ready",()=>{setTimeout(()=>{this.onReadyCallback?.(),this.triggerOnReady()},lc)}),this.socket.on("timeout",()=>{this.connected=!1;let e=this.socket;this.onCloseCallback?.(),this.triggerOnClose(),e.end(),this.stopHeartbeat()}),this.socket.on("error",e=>{this.connected=!1,this.onErrorCallback?.(e),this.triggerOnError(e),this.stopHeartbeat()})}connectTlsTcp(){this.tlsOptions||(this.tlsOptions={}),this.tlsOptions.host||(this.tlsOptions.host=this.host),this.tlsOptions.port||(this.tlsOptions.port=this.port);let e=Number(this.tlsOptions.port),t=String(this.tlsOptions.host);try{let i=(0,PF.connect)(e,t,this.tlsOptions,()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connected to ${t}:${e} via TLS.`}),this.tlsSkipStdInPipe||(process.stdin.pipe(i),process.stdin.resume()),this.addTcpListeners(i),this.connected=!0,this.onOpenCallback?.(),this.triggerOnOpen()});this.socket=i,i.setEncoding(this.tlsEncoding),i.setTimeout(this.tlsTimeout??pc),this.addTlsListener(i)}catch(i){i instanceof Error?this.logger.logError({level:"error",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Client connection to ${this.host}:${this.port} failed with error: ${i.message}.`}):this.logger.logError({level:"error",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Client connection to ${this.host}:${this.port} failed with unspecified error.`}),this.connected=!1;return}}addTcpListeners(e){let t=new Za;t.setEncoding(this.tlsEncoding),e.on("ready",()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connection ready to ${this.host}:${this.port}.`})}),e.pipe(t).on("data",i=>{try{let a=this.parse(i);for(let n of a)Gr(this,n),this.messageStoreIn.add(n),this.onMessageCallback?.(n),this.triggerOnMessage(n)}catch(a){this.logger.logError({level:"warn",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Failed to parse/process incoming data \u2014 ${a.message}`})}}),e.on("end",()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Server closed the connection (END). ${this.host}:${this.port}.`}),this.disconnectTlsTcp(e)}),e.on("close",i=>{this.logger.log({level:i?"error":"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connection closed: ${this.host}:${this.port}. HadError? '${i}`}),this.disconnectTlsTcp(e)}),e.on("timeout",()=>{this.logger.logError({level:"warn",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connection timeout for ${this.host}:${this.port}.`}),this.disconnectTlsTcp(e)}),e.on("error",i=>{this.logger.logError({level:"error",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connection error for ${this.host}:${this.port}. error: ${i.message}`}),this.onErrorCallback?.(i),this.triggerOnError(i),this.disconnectTlsTcp(e)})}addTlsListener(e){e.on("secureConnect",()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- TLS handshake completed to ${this.host}:${this.port}.`}),this.onReadyCallback?.(),this.triggerOnReady()})}disconnectTlsTcp(e){e?(this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Disconnected from ${this.host}:${this.port}.`}),this.connected=!1,e.removeAllListeners(),e.destroy(),this.onCloseCallback?.(),this.triggerOnClose(),this.stopHeartbeat(),this.socket=void 0):this.logger.logError({level:"error",message:`FIXParser (${this.protocol?.toUpperCase()}): -- No active connection to disconnect.`})}connectWebsocket(){let e=String(this.host).indexOf("ws://")===-1&&String(this.host).indexOf("wss://")===-1?`ws://${String(this.host)}:${Number(this.port)}`:`${String(this.host)}:${Number(this.port)}`;this.proxy?this.socket=new zt.default(e,{agent:this.proxy}):this.socket=new zt.default(e),this.socket.on("message",t=>{let i=this.parse(t.toString()),a=0;for(a;a<i.length;a++)Gr(this,i[a]),this.messageStoreIn.add(i[a]),this.onMessageCallback?.(i[a]),this.triggerOnMessage(i[a])}),this.socket.on("open",()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connected to ${this.host}:${this.port}`}),this.connected=!0,this.onOpenCallback?.(),this.triggerOnOpen()}),this.socket.on("close",()=>{this.connected=!1,this.onCloseCallback?.(),this.triggerOnClose(),this.stopHeartbeat()}),this.socket.readyState===(zt.default.OPEN||zt.default.CLOSED||zt.default.CLOSING||zt.default.CONNECTING)&&setTimeout(()=>{this.onReadyCallback?.(),this.triggerOnReady()},lc)}getNextTargetMsgSeqNum(){return this.messageStoreOut.getNextMsgSeqNum()}setNextTargetMsgSeqNum(e){return this.messageStoreOut.setNextMsgSeqNum(e)}getNextSenderMsgSeqNum(){return this.messageStoreIn.getNextMsgSeqNum()}setNextSenderMsgSeqNum(e){return this.messageStoreIn.setNextMsgSeqNum(e)}getTimestamp(e=new Date){return sc(e,this.logger)}createMessage(...e){let t=new Si(this.fixVersion,...e);return t.messageSequence=this.getNextTargetMsgSeqNum(),t}parse(e){if(!se.validateFreeLicense())throw new Error(se.ERROR_MESSAGE_NO_FREE_LICENSE);return this.fixParserBase.parse(e)}send(e){if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);let t=e.getField(k.MsgType);t&&t.value===fe.Logout&&(this.requestedLogout=!0);let i=e.encode();this.protocol==="tcp"&&this.connected?(this.setNextTargetMsgSeqNum(this.getNextTargetMsgSeqNum()+1),this.socket.write(i),this.messageStoreOut.add(e.clone()),this.restartHeartbeat(),this.logger.log({level:"info",message:`FIXParser (${this.protocol.toUpperCase()}): >> sent`,fix:i.replace(/\x01/g,"|")})):this.protocol==="websocket"&&this.socket.readyState===zt.default.OPEN?(this.setNextTargetMsgSeqNum(this.getNextTargetMsgSeqNum()+1),this.socket.send(i),this.messageStoreOut.add(e.clone()),this.restartHeartbeat(),this.logger.log({level:"info",message:`FIXParser (${this.protocol.toUpperCase()}): >> sent`,fix:i.replace(/\x01/g,"|")})):(this.protocol==="ssl-tcp"||this.protocol==="tls-tcp")&&this.connected?(this.setNextTargetMsgSeqNum(this.getNextTargetMsgSeqNum()+1),this.socket.write(i),this.messageStoreOut.add(e.clone()),this.restartHeartbeat(),this.logger.log({level:"info",message:`FIXParser (${this.protocol.toUpperCase()}): >> sent`,fix:i.replace(/\x01/g,"|")})):this.logger.logError({message:`FIXParser (${this.protocol?.toUpperCase()}): -- Could not send message, no connection`,fix:i.replace(/\x01/g,"|")})}isConnected(){return this.connected}close(){if(this.protocol==="tcp"){let e=this.socket;e?(e.destroy(),this.connected=!1):this.logger.logError({message:`FIXParser (${this.protocol.toUpperCase()}): -- Could not close socket, connection not open`})}else if(this.protocol==="websocket"){let e=this.socket;if(e){try{e.close()}catch(t){this.logger.logError({message:`FIXParser (${this.protocol.toUpperCase()}): -- Could not close socket,`,error:t})}this.connected=!1}else this.logger.logError({message:`FIXParser (${this.protocol.toUpperCase()}): -- Could not close socket, connection not open`})}else if(this.protocol==="ssl-tcp"||this.protocol==="tls-tcp"){let e=this.socket;e?(e.destroy(),this.connected=!1):this.logger.logError({message:`FIXParser (${this.protocol.toUpperCase()}): -- Could not close socket, connection not open`})}}stopHeartbeat(){clearInterval(this.heartBeatIntervalId)}restartHeartbeat(){this.stopHeartbeat(),this.startHeartbeat(this.heartBeatInterval,!0)}startHeartbeat(e=this.heartBeatInterval,t){this.stopHeartbeat(),t||this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Heartbeat configured to ${e} seconds`}),this.heartBeatInterval=e,this.heartBeatIntervalId=setInterval(()=>{let i=$a(this);this.send(i);let a=i.encode();this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): >> sent Heartbeat`,fix:a.replace(/\x01/g,"|")})},this.heartBeatInterval*1e3)}};0&&(module.exports={AccountType,AcctIDSource,Adjustment,AdjustmentType,AdvSide,AdvTransType,AffirmStatus,AggregatedBook,AggressorIndicator,AlgoCertificateReportStatus,AlgoCertificateReportTransType,AlgoCertificateReportType,AlgoCertificateRequestStatus,AlgoCertificateRequestTransType,AlgoCertificateRequestType,AlgoCertificateStatus,AlgorithmicTradeIndicator,AllocAccountType,AllocCancReplaceReason,AllocGroupStatus,AllocGroupSubQtyType,AllocHandlInst,AllocIntermedReqType,AllocLinkType,AllocMethod,AllocNoOrdersType,AllocPositionEffect,AllocRejCode,AllocReportType,AllocRequestStatus,AllocReversalStatus,AllocSettlInstType,AllocStatus,AllocTransType,AllocType,AllocationRollupInstruction,ApplLevelRecoveryIndicator,ApplQueueAction,ApplQueueResolution,ApplReportType,ApplReqType,ApplResponseError,ApplResponseType,ApplVerID,AsOfIndicator,AssetClass,AssetGroup,AssetSubClass,AssetValuationModel,AssignmentMethod,AttachmentEncodingType,AuctionInstruction,AuctionType,AveragePriceType,AvgPxIndicator,BasisPxType,BatchProcessMode,BeginString,Benchmark,BenchmarkCurveName,BidDescriptorType,BidRequestTransType,BidTradeType,BidType,BlockTrdAllocIndicator,BookingType,BookingUnit,BusinessDayConvention,BusinessRejectReason,CPProgram,CalculationMethod,CancellationRights,CashMargin,CashSettlPriceDefault,CashSettlQuoteMethod,CashSettlValuationMethod,ClearedIndicator,ClearingAccountType,ClearingFeeIndicator,ClearingInstruction,ClearingIntention,ClearingRequirementException,CollAction,CollApplType,CollAsgnReason,CollAsgnRejectReason,CollAsgnRespType,CollAsgnTransType,CollInquiryQualifier,CollInquiryResult,CollInquiryStatus,CollRptRejectReason,CollRptStatus,CollStatus,CollateralAmountType,CollateralReinvestmentType,CommType,CommissionAmountSubType,CommissionAmountType,CommodityFinalPriceType,ComplexEventCondition,ComplexEventCreditEventNotifyingParty,ComplexEventDateOffsetDayType,ComplexEventPVFinalPriceElectionFallback,ComplexEventPeriodType,ComplexEventPriceBoundaryMethod,ComplexEventPriceTimeType,ComplexEventQuoteBasis,ComplexEventType,ComplexOptPayoutTime,ConfirmRejReason,ConfirmStatus,ConfirmTransType,ConfirmType,ConfirmationMethod,ContAmtType,ContingencyType,ContractMultiplierUnit,ContractRefPosType,CorporateAction,CouponDayCount,CouponFrequencyUnit,CouponType,CoveredOrUncovered,CrossPrioritization,CrossType,CrossedIndicator,CurrencyCodeSource,CustOrderCapacity,CustOrderHandlingInst,CustomerOrFirm,CustomerPriority,CxlRejReason,CxlRejResponseTo,DKReason,DateRollConvention,DayBookingInst,DealingCapacity,DeleteReason,DeliveryForm,DeliveryScheduleSettlDay,DeliveryScheduleSettlFlowType,DeliveryScheduleSettlHolidaysProcessingInstruction,DeliveryScheduleSettlTimeType,DeliveryScheduleToleranceType,DeliveryScheduleType,DeliveryStreamDeliveryPointSource,DeliveryStreamDeliveryRestriction,DeliveryStreamElectingPartySide,DeliveryStreamTitleTransferCondition,DeliveryStreamToleranceOptionSide,DeliveryStreamType,DeliveryType,DeskType,DeskTypeSource,DisclosureInstruction,DisclosureType,DiscretionInst,DiscretionLimitType,DiscretionMoveType,DiscretionOffsetType,DiscretionRoundDirection,DiscretionScope,DisplayMethod,DisplayWhen,DistribPaymentMethod,DividendAmountType,DividendComposition,DividendEntitlementEvent,DlvyInstType,DueToRelated,DuplicateClOrdIDIndicator,EmailType,EncryptMethod,EntitlementAttribDatatype,EntitlementRequestResult,EntitlementStatus,EntitlementSubType,EntitlementType,EventInitiatorType,EventTimeUnit,EventType,ExDestinationIDSource,ExDestinationType,ExchangeForPhysical,ExecAckStatus,ExecInst,ExecMethod,ExecPriceType,ExecRestatementReason,ExecTransType,ExecType,ExecTypeReason,ExerciseConfirmationMethod,ExerciseMethod,ExerciseStyle,ExpirationCycle,ExpirationQtyType,ExtraordinaryEventAdjustmentMethod,FIXParser,FXBenchmark,Field,Fields,FinancialStatus,FlowScheduleType,ForexReq,FundRenewWaiv,FundingSource,GTBookingInst,GapFillFlag,HaltReason,HandlInst,IDSource,IOINaturalFlag,IOIQltyInd,IOIQty,IOIQualifier,IOIShares,IOITransType,IRSDirection,ImpliedMarketIndicator,InTheMoneyCondition,InViewOfCommon,IncTaxInd,IndividualAllocType,InstrAttribType,InstrmtAssignmentMethod,InstrumentScopeOperator,LastCapacity,LastFragment,LastLiquidityInd,LastRptRequested,LegSwapType,LegalConfirm,LicenseManager,LienSeniority,LimitAmtType,LiquidityIndType,ListExecInstType,ListMethod,ListOrderStatus,ListRejectReason,ListStatusType,ListUpdateAction,LoanFacility,LocateReqd,LockType,Logger,LotType,MDBookType,MDEntryType,MDImplicitDelete,MDOriginType,MDReportEvent,MDReqRejReason,MDSecSizeType,MDStatisticIntervalType,MDStatisticRatioType,MDStatisticRequestResult,MDStatisticScope,MDStatisticScopeType,MDStatisticStatus,MDStatisticSubScope,MDStatisticType,MDStatisticValueType,MDUpdateAction,MDUpdateType,MDValueTier,MarginAmtType,MarginDirection,MarginReqmtInqQualifier,MarginReqmtInqResult,MarginReqmtRptType,MarketCondition,MarketDisruptionFallbackProvision,MarketDisruptionFallbackUnderlierType,MarketDisruptionProvision,MarketMakerActivity,MarketSegmentRelationship,MarketSegmentStatus,MarketSegmentSubType,MarketSegmentType,MassActionReason,MassActionRejectReason,MassActionResponse,MassActionScope,MassActionType,MassCancelRejectReason,MassCancelRequestType,MassCancelResponse,MassOrderRequestResult,MassOrderRequestStatus,MassStatusReqType,MatchExceptionElementType,MatchExceptionToleranceValueType,MatchExceptionType,MatchInst,MatchStatus,MatchType,MatchingDataPointIndicator,MaturityMonthYearFormat,MaturityMonthYearIncrementUnits,Message,MessageBuffer,MessageEncoding,Messages,MetricsCalculationPriceSource,MinQtyMethod,MiscFeeBasis,MiscFeeQualifier,MiscFeeType,ModelType,MoneyLaunderingStatus,MsgDirection,MsgType,MultiJurisdictionReportingIndicator,MultiLegReportingType,MultiLegRptTypeReq,MultilegModel,MultilegPriceMethod,NBBOEntryType,NBBOSource,NegotiationMethod,NetGrossInd,NetworkRequestType,NetworkStatusResponseType,NewsCategory,NewsRefType,NoSides,NonCashDividendTreatment,NonDeliverableFixingDateType,NotAffectedReason,NotifyBrokerOfCredit,ObligationType,OddLot,OffsetInstruction,OffshoreIndicator,OpenClose,OpenCloseSettlFlag,OpenCloseSettleFlag,OptPayoutType,OptionExerciseDateType,OrdRejReason,OrdStatus,OrdType,OrderAttributeType,OrderCapacity,OrderCategory,OrderDelayUnit,OrderEntryAction,OrderEventReason,OrderEventType,OrderHandlingInstSource,OrderOrigination,OrderOwnershipIndicator,OrderRelationship,OrderResponseLevel,OrderRestrictions,OrigCustOrderCapacity,OwnerType,OwnershipType,PartyActionRejectReason,PartyActionResponse,PartyActionType,PartyDetailDefinitionStatus,PartyDetailRequestResult,PartyDetailRequestStatus,PartyDetailRoleQualifier,PartyDetailStatus,PartyIDSource,PartyRelationship,PartyRiskLimitStatus,PartyRole,PartySubIDType,PayReportStatus,PayReportTransType,PayRequestStatus,PayRequestTransType,PaymentDateOffsetDayType,PaymentForwardStartType,PaymentMethod,PaymentPaySide,PaymentScheduleStepRelativeTo,PaymentScheduleType,PaymentSettlStyle,PaymentStreamAveragingMethod,PaymentStreamCapRateBuySide,PaymentStreamCompoundingMethod,PaymentStreamDiscountType,PaymentStreamFRADiscounting,PaymentStreamFloorRateBuySide,PaymentStreamInflationInterpolationMethod,PaymentStreamInflationLagDayType,PaymentStreamInflationLagUnit,PaymentStreamInterpolationPeriod,PaymentStreamLinkStrikePriceType,PaymentStreamNegativeRateTreatment,PaymentStreamPaymentDateOffsetDayType,PaymentStreamPaymentDateOffsetUnit,PaymentStreamPaymentFrequencyUnit,PaymentStreamPricingDayDistribution,PaymentStreamPricingDayOfWeek,PaymentStreamRateIndexCurveUnit,PaymentStreamRateIndexSource,PaymentStreamRateSpreadPositionType,PaymentStreamRateSpreadType,PaymentStreamRateTreatment,PaymentStreamRealizedVarianceMethod,PaymentStreamResetWeeklyRollConvention,PaymentStreamSettlLevel,PaymentStreamType,PaymentStubLength,PaymentStubType,PaymentSubType,PaymentType,PegLimitType,PegMoveType,PegOffsetType,PegPriceType,PegRoundDirection,PegScope,PosAmtReason,PosAmtType,PosMaintAction,PosMaintResult,PosMaintStatus,PosQtyStatus,PosReqResult,PosReqStatus,PosReqType,PosTransType,PosType,PositionCapacity,PositionEffect,PossDupFlag,PossResend,PostTradePaymentDebitOrCredit,PostTradePaymentStatus,PreallocMethod,PreviouslyReported,PriceLimitType,PriceMovementType,PriceProtectionScope,PriceQualifier,PriceQuoteMethod,PriceType,PriorityIndicator,PrivateQuote,ProcessCode,Product,ProgRptReqs,ProtectionTermEventDayType,ProtectionTermEventQualifier,ProtectionTermEventUnit,ProvisionBreakFeeElection,ProvisionCalculationAgent,ProvisionCashSettlMethod,ProvisionCashSettlPaymentDateType,ProvisionCashSettlQuoteType,ProvisionDateTenorUnit,ProvisionOptionExerciseEarliestDateOffsetUnit,ProvisionOptionExerciseFixedDateType,ProvisionOptionSinglePartyBuyerSide,ProvisionType,PublishTrdIndicator,PutOrCall,QtyType,QuoteAckStatus,QuoteAttributeType,QuoteCancelType,QuoteCondition,QuoteEntryRejectReason,QuoteEntryStatus,QuoteModelType,QuotePriceType,QuoteRejectReason,QuoteRequestRejectReason,QuoteRequestType,QuoteRespType,QuoteResponseLevel,QuoteSideIndicator,QuoteStatus,QuoteType,RateSource,RateSourceType,RefOrdIDReason,RefOrderIDSource,RefRiskLimitCheckIDType,ReferenceDataDateType,ReferenceEntityType,RegistRejReasonCode,RegistStatus,RegistTransType,RegulatoryReportType,RegulatoryTradeIDEvent,RegulatoryTradeIDScope,RegulatoryTradeIDSource,RegulatoryTradeIDType,RegulatoryTransactionType,RelatedInstrumentType,RelatedOrderIDSource,RelatedPositionIDSource,RelatedPriceSource,RelatedTradeIDSource,RelativeValueSide,RelativeValueType,ReleaseInstruction,RemunerationIndicator,ReportToExch,RequestResult,ResetSeqNumFlag,RespondentType,ResponseTransportType,RestructuringType,ReturnRateDateMode,ReturnRatePriceBasis,ReturnRatePriceSequence,ReturnRatePriceType,ReturnRateQuoteTimeType,ReturnRateValuationPriceOption,ReturnTrigger,RiskLimitAction,RiskLimitCheckModelType,RiskLimitCheckRequestResult,RiskLimitCheckRequestStatus,RiskLimitCheckRequestType,RiskLimitCheckStatus,RiskLimitCheckTransType,RiskLimitCheckType,RiskLimitReportRejectReason,RiskLimitReportStatus,RiskLimitRequestResult,RiskLimitRequestType,RiskLimitType,RoundingDirection,RoutingArrangementIndicator,RoutingType,Rule80A,Scope,SecurityClassificationReason,SecurityIDSource,SecurityListRequestType,SecurityListType,SecurityListTypeSource,SecurityRejectReason,SecurityRequestResult,SecurityRequestType,SecurityResponseType,SecurityStatus,SecurityTradingEvent,SecurityTradingStatus,SecurityType,SecurityUpdateAction,SelfMatchPreventionInstruction,Seniority,SessionRejectReason,SessionStatus,SettlCurrFxRateCalc,SettlDeliveryType,SettlDisruptionProvision,SettlInstMode,SettlInstReqRejCode,SettlInstSource,SettlInstTransType,SettlLocation,SettlMethod,SettlObligMode,SettlObligSource,SettlObligTransType,SettlPriceDeterminationMethod,SettlPriceType,SettlSessID,SettlStatusReportStatus,SettlStatusRequestStatus,SettlSubMethod,SettlType,SettlmntTyp,ShortSaleExemptionReason,ShortSaleReason,ShortSaleRestriction,Side,SideClearingTradePriceType,SideMultiLegReportingType,SideValueInd,SingleQuoteIndicator,SolicitedFlag,StandInstDbType,StatsType,StatusValue,StipulationType,StrategyParameterType,StrategyType,StreamAsgnAckType,StreamAsgnRejReason,StreamAsgnReqType,StreamAsgnType,StreamCommodityDataSourceIDType,StreamCommodityNearbySettlDayUnit,StreamCommoditySettlDateRollUnit,StreamNotionalAdjustments,StreamNotionalCommodityFrequency,StreamType,StrikeIndexQuote,StrikePriceBoundaryMethod,StrikePriceDeterminationMethod,SubscriptionRequestType,SwapClass,SwapSubClass,SymbolSfx,TargetStrategy,TaxAdvantageType,TaxonomyType,TerminationType,TestActionRequestStatus,TestActionType,TestGatewayDetailType,TestMessageIndicator,TestSuiteActivityState,TestSuiteRequestStatus,TestSuiteRequestTransType,TestSuiteStatus,TestThresholdType,ThrottleAction,ThrottleCountIndicator,ThrottleInst,ThrottleStatus,ThrottleType,TickDirection,TickRuleType,TimeInForce,TimeUnit,TradSesControl,TradSesEvent,TradSesMethod,TradSesMode,TradSesStatus,TradSesStatusRejReason,TradeAggregationRejectReason,TradeAggregationRequestStatus,TradeAggregationTransType,TradeAllocGroupInstruction,TradeAllocIndicator,TradeAllocStatus,TradeCollateralization,TradeCondition,TradeContingency,TradeContinuation,TradeHandlingInstr,TradeMatchAckStatus,TradeMatchRejectReason,TradePriceCondition,TradePriceNegotiationMethod,TradePublishIndicator,TradeQtyType,TradeReportRejectReason,TradeReportTransType,TradeReportType,TradeReportingIndicator,TradeRequestResult,TradeRequestStatus,TradeRequestType,TradeType,TradeVolType,TradedFlatSwitch,TradingCapacity,TradingSessionID,TradingSessionSubID,TransactionAttributeType,TransferRejectReason,TransferReportType,TransferScope,TransferStatus,TransferTransType,TransferType,TrdAckStatus,TrdRegPublicationReason,TrdRegPublicationType,TrdRegTimestampManualIndicator,TrdRegTimestampType,TrdRptStatus,TrdSubType,TrdType,TriggerAction,TriggerOrderType,TriggerPriceDirection,TriggerPriceType,TriggerPriceTypeScope,TriggerScope,TriggerType,Triggered,UnderlyingCashType,UnderlyingFXRateCalc,UnderlyingNotionalAdjustments,UnderlyingObligationType,UnderlyingPriceDeterminationMethod,UnderlyingSettlementType,UnitOfMeasure,UnsolicitedIndicator,UpfrontPriceType,Urgency,UserRequestType,UserStatus,ValuationMethod,ValueCheckAction,ValueCheckType,VenueType,VerificationMethod,WorkingIndicator,YieldType});
10112
+ The gateways may be offered by service providers simulating execution venues or offered directly by the venues.`,fieldRef:[{added:"FIX.Latest",addedEP:"295",id:3093,description:"Required if NoTestGatewayDetails(3092)>0."},{added:"FIX.Latest",addedEP:"295",id:3094,description:"Required if NoTestGatewayDetails(3092)>0."},{added:"FIX.Latest",addedEP:"295",id:3095,description:"Required if NoTestGatewayDetails(3092)>0."},{added:"FIX.Latest",addedEP:"295",id:3096,description:""}],numInGroup:{id:3092,added:"FIX.Latest",addedEP:"295",description:""}}];var qr=class{groups=J5;cacheMap=new Map;cacheMapByName=new Map;constructor(){this.groups.forEach(e=>{this.cacheMap.set(e.id,e)}),this.groups.forEach(e=>{this.cacheMapByName.set(e.name,e)})}find(e){return this.cacheMap.get(e)}findByName(e){return this.cacheMapByName.get(e)}filterMapByNumInGroupId(e,t){if(e===k.NoMDEntries&&t===fe.MarketDataSnapshotFullRefresh)return this.find(2031);if(e===k.NoMDEntries&&t===fe.MarketDataIncrementalRefresh)return this.find(2032);for(let[,i]of this.cacheMap.entries())if(i.numInGroup?.id===e)return i}};var Qe=Object.freeze({FIX27:"0",FIX30:"1",FIX40:"2",FIX41:"3",FIX42:"4",FIX43:"5",FIX44:"6",FIX50:"7",FIX50SP1:"8",FIX50SP2:"9",FIXLatest:"10"});var sc=(d,e)=>{if(Number.isNaN(d.getTime()))return e.log({level:"error",message:"Invalid date specified!"}),"";let t=new Date(Date.UTC(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate(),d.getUTCHours(),d.getUTCMinutes(),d.getUTCSeconds(),d.getUTCMilliseconds())),i=t.getUTCFullYear(),a=String(t.getUTCMonth()+1).padStart(2,"0"),n=String(t.getUTCDate()).padStart(2,"0"),r=String(t.getUTCHours()).padStart(2,"0"),o=String(t.getUTCMinutes()).padStart(2,"0"),s=String(t.getUTCSeconds()).padStart(2,"0"),c=String(t.getUTCMilliseconds()).padStart(3,"0");return`${i}${a}${n}-${r}:${o}:${s}.${c}`};var $5={version:"0.0.0",build:"2025-07-09T01:42:03.392Z"},li=d=>Z5[d]??d,Z5={[Qe.FIX27]:"FIX.2.7",[Qe.FIX30]:"FIX.3.0",[Qe.FIX40]:"FIX.4.0",[Qe.FIX41]:"FIX.4.1",[Qe.FIX42]:"FIX.4.2",[Qe.FIX43]:"FIX.4.3",[Qe.FIX44]:"FIX.4.4",[Qe.FIX50]:"FIX.5.0",[Qe.FIX50SP1]:"FIX.5.0SP1",[Qe.FIX50SP2]:"FIX.5.0SP2",[Qe.FIXLatest]:"FIXT.1.1"},kd=Z5[Qe.FIXLatest],cc=30,pc=1e5,uc="utf8",mi="",eF="=",tF=/[.*+?^${}()|[\]\\]/g,dF=/8=FIXT?\.\d\.\d([^\d]+)/i,lc=100,iF=(d,e)=>`0000000000000000${d}`.slice(-e);var yi="10=",mc="35=",aF="",nF="",OD=d=>d.enumeration?.name??d.value,rF=(d,e,t=!1)=>{let i=t?OD(d):d.value,a=d.name??d.tag;e[a]?e[a]=Array.isArray(e[a])?[...e[a],i]:[e[a],i]:e[a]=i},Si=class d{fixVersion=kd;data=[];messageString="";description="";messageType="";messageTypeDescription="";messageSequence=-1;structure=void 0;bodyLengthValid=!1;checksumValid=!1;checksumValue=void 0;checksumExpected=void 0;bodyLengthValue=void 0;bodyLengthExpected=void 0;#n=void 0;#i=void 0;#a=void 0;#e=void 0;#t=void 0;constructor(e=kd,...t){this.fixVersion=li(e),this.reset(),t.forEach(i=>{i.tag===k.BeginString&&(this.fixVersion=String(i.value)),i.tag===k.MsgSeqNum&&(this.messageSequence=Number(i.value)),i.tag===k.MsgType?this.data.splice(0,0,i):this.data.push(i)})}#d=()=>{this.#n||(this.#n=new Qd),this.#i||(this.#i=new Ti),this.#a||(this.#a=new vi),this.#e||(this.#e=new Ur),this.#t||(this.#t=new qr)};#o=e=>{let t=e.indexOf(mc)===-1?0:e.indexOf(mc)+1;return(e.lastIndexOf(yi)===-1?e.length:e.lastIndexOf(yi)+1)-t};#r=e=>{let t=0;for(let i=0;i<e.length;i++)t+=e.charCodeAt(i);return iF(t%256,3)};#s=(e,...t)=>{let i=e[0],a=1;for(a;a<e.length;a++)(t[a-1]||t[a-1]==="0")&&(i+=t[a-1]),i+=e[a];return i.replace(/\s+/g," ")};#c=(e,t,i)=>{if(e?.data[t]&&e?.presence==="required"){let a=e?.data[t].filter(n=>n.presence==="required");for(let n of a)if(!i.has(Number(n.id)))return{field:{...n},name:n.name,tag:Number(n.id),value:null,error:`Missing field ${n.name}`}}};#p=(e,t=!0)=>{this.#d();let i=[],a=structuredClone(e.data),n=new Set(a.map(o=>o.tag)),r=(o,s,c)=>{let p=this.#i?.cacheMap.get(o.tag);i.push({field:p,name:o.name,tag:o.tag,value:o.value,error:s,expectedValue:c})};for(let o of a){let s=this.#n?.getEnumByTag(String(o.tag)),c=s&&this.#n?.getEnum(String(o.tag),o.value),p=this.#a?.validateDatatype(o.value,o.type?.name);(s&&!c||!p)&&r(o,"Incorrect data format for value"),o.tag===k.BodyLength&&!this.validateBodyLength(String(this.bodyLengthValue))&&r(o,"Incorrect value for BodyLength",this.bodyLengthExpected),o.tag===k.CheckSum&&!this.validateChecksum(String(this.checksumValue))&&r(o,"Incorrect value for CheckSum",this.checksumExpected)}if(this.structure)for(let o of this.structure){if(t&&o.presence!=="required")continue;let{id:s,name:c,fieldRef:p,groupRef:l,componentRef:m}=o.data,P=Number(s),g=!n.has(P)&&!p&&!l&&!m&&P!==1003,y=[1137,372,1130,1410,1128].includes(P)&&[1137,372,1130,1410,1128].some(f=>n.has(f));if(g&&!y)if(o.data.type==="component"){let f=this.#u(P),h=new Set(a.map(I=>I.tag));f.length>0&&!f.some(I=>h.has(I))&&i.push({field:{...o.data},tag:Number(o.data.id),name:o.data.name,value:null,error:`Missing block ${o.data.name}`})}else r({tag:P,name:c},`Missing field ${c}`);["fieldRef","componentRef","groupRef"].forEach(f=>{let h=this.#c(o,f,n);h&&i.push(h)})}return i};#u=e=>{let t=this.#e?.cacheMap.get(e);if(!t)return[];let{fieldRef:i=[],componentRef:a=[],groupRef:n=[]}=t;return[...i.map(r=>r.id),...a.map(r=>r.id),...n.map(r=>r.id)]};addField(e){this.data.push(e)}addFields(...e){e.forEach(t=>{t.tag===k.MsgType?this.data.splice(0,0,t):this.data.push(t)})}removeFieldByTag(e){let t=this.data.findIndex(i=>i.tag===e);t>-1&&this.data.splice(t,1)}getField(e){return this.data.find(t=>t.tag===e)}getFields(e){return this.data.filter(t=>t.tag===e)}getFieldExplains(){let e={};return this.data.forEach(t=>{rF(t,e,!0)}),e}getFieldNameValues(){let e={};return this.data.forEach(t=>{rF(t,e,!1)}),e}getFieldValues(){let e={};return this.data.forEach(t=>{e[t.tag]?Array.isArray(e[t.tag])?e[t.tag]=[...e[t.tag],t.value]:e[t.tag]=[e[t.tag],t.value]:e[t.tag]=t.value}),e}setField(e){let t=this.data.findIndex(i=>i.tag===e.tag);t>-1?this.data[t]=e:this.data.push(e),e.tag!==k.BodyLength&&e.tag!==k.CheckSum&&this.recalculateMessageLengths()}getEnum(e,t){return!this.getField(k.MsgType)?.tag||!this.getField(k.MsgType)?.value?void 0:new Qd().getEnum(e.toString(),t)}getBriefDescription(){let e="",t=this.getField(k.Side),i="";if(t?.enumeration&&(i=t.enumeration.name,i=i?i.replace("Sell","SL").toUpperCase():void 0),this.getField(k.LeavesQty)!==void 0){let a="";this.getField(k.ContraTradeQty)?a=String(this.getField(k.ContraTradeQty)?.value):a=String(this.getField(k.OrderQty)?.value??"");let n=String(this.getField(k.LeavesQty)?.value),r=this.getField(k.LastPx)?Number(this.getField(k.LastPx)?.value):0;e=this.#s`${a} @${r||r===0?r.toFixed(2):"0.00"} ${this.getField(k.LeavesQty).name.replace("LeavesQty","LvsQty")} ${Number.parseInt(n,10).toString()}`}else if(this.getField(k.OrderQty)){let a=String(this.getField(k.OrderQty)?.value),n=this.getField(k.Symbol)?String(this.getField(k.Symbol)?.value):"",r=this.getField(k.OrdType),o="";r?.enumeration?.name&&(o=r.enumeration.name);let s=this.getField(k.TimeInForce),c="";s?.enumeration&&(c=String(s.enumeration.name));let p=this.getField(k.Price);if(p){let l=String(p.value),m=Number(p.value);m>=1?l=m.toFixed(2):m<1&&(l=m.toString().replace("0.","."));let P=i?`${i} `:"",g=a?`${a} `:"",y=n?`${n.toUpperCase()} `:"",f=o?`${o.replace("Market","MKT").replace("Limit","LMT").toUpperCase()} `:"",h=`@${l} `,I=c?c.toUpperCase():"",b=P+g+y+f+h+I;e=this.#s`${b}`}else e=this.#s`${i??""} ${a} ${n?n.toUpperCase():""} ${o?o.replace("Market","MKT").replace("Limit","LMT").toUpperCase():""} ${c?c.toUpperCase():""}`}else{let a=this.getField(k.MsgType);return a?.tag&&a.value?this.getEnum(a.tag,String(a.value))?.name??"":void 0}return e.trim()}validateBodyLength(e){let t=this.messageString.indexOf(mc),i=this.messageString.lastIndexOf(yi),a=t===-1?0:t,r=(i===-1?this.messageString.length:i)-a;return this.bodyLengthValue=Number(e),this.bodyLengthExpected=r,this.bodyLengthValid=Number(e)===r,this.bodyLengthValid}validateChecksum(e){let t=this.messageString.lastIndexOf(yi),i=t===-1?this.messageString.length:t,a=this.messageString.substring(0,i),n=this.#r(a);return this.checksumValue=e,this.checksumExpected=n,this.checksumValid=e===n,this.checksumValid}recalculateMessageLengths(){let e=this.#o(this.messageString),t=this.messageString.lastIndexOf(yi),i=t===-1?this.messageString.length:t,a=this.messageString.substring(0,i),n=this.#r(a);return this.bodyLengthValue=e,this.bodyLengthExpected=e,this.bodyLengthValid=!0,this.checksumValue=n,this.checksumExpected=n,this.checksumValid=!0,this.setField(new _(k.BodyLength,e)),this.setField(new _(k.CheckSum,n)),{bodyLength:e,checksum:n}}validate(e=!0){if(!se.validateFreeLicense())throw new Error(se.ERROR_MESSAGE_NO_FREE_LICENSE);return this.#p(this,e)}encode(e=mi){if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);let t=this.data.map(l=>new _(l.tag,l.value)),i=[],a=new _(k.BeginString,this.fixVersion).toString(),n=new _(k.BodyLength,aF).toString(),r=new _(k.CheckSum,nF).toString(),o=t.findIndex(l=>l.tag===k.BeginString);if(o>-1){let l=li(t[o].value);a=new _(k.BeginString,l).toString(),t.splice(o,1)}o=t.findIndex(l=>l.tag===k.BodyLength),o>-1&&(n=t[o].toString(),t.splice(o,1)),o=t.findIndex(l=>l.tag===k.CheckSum),o>-1&&(r=t[o].toString(),t.splice(o,1)),i.push(a),i.push(n),t.forEach(l=>{i.push(l.toString())}),i.push(r);let s=`${i.join(e)}${e}`;s=s.replace(aF,this.#o(s).toString());let c=s.lastIndexOf(yi)===-1?s.length:s.lastIndexOf(yi),p=this.#r(s.substring(0,c));return s=s.replace(nF,p),s}toFIXJSON(){if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);this.#d();let e=this.#e?.getTagsByComponentName("StandardHeader"),t=this.#e?.getTagsByComponentName("StandardTrailer"),i={},a={},n={},r=0,o=[],s=()=>{m();let P=o[r],g=P.parentName==="Body"?a:o.find(y=>y.name===P.parentName);g&&(P.parentName==="Body"?a[P.name]=P.values:g.valueInstance[P.name]=P.values),o.splice(r,1),r--},c=P=>{for(;o.length>0&&!o[r].availableTagsInGroup.has(P.tag);)s()},p=(P,g)=>{let y=o.length>0?o[r].name:"Body",f={name:P.name??`${P.tag}`,parentName:y,availableTagsInGroup:new Set,valueInstanceFirstTag:this.data[g+1].tag,valueInstance:{},values:[]};o.push(f),r=o.length===1?0:r+1;let h=this.#t?.filterMapByNumInGroupId(P.tag,this.messageType);h&&l(h)},l=P=>{if(!P)return;let g=f=>o[r].availableTagsInGroup.add(Number(f.id));P.numInGroup&&g(P.numInGroup),P.fieldRef&&P.fieldRef.forEach(f=>{g(f)});let y=(f,h)=>{f.forEach(I=>{let b=h.find(Number(I.id));b&&l(b)})};P.groupRef&&this.#t&&y(P.groupRef,this.#t),P.componentRef&&this.#e&&y(P.componentRef,this.#e)},m=()=>{let{valueInstance:P,values:g}=o[r];Object.keys(P).length>0&&(g.push(P),o[r].valueInstance={})};return this.data.forEach((P,g)=>{let y=P.tag,f=P.enumeration?.name??P.value,h=P.name??`${P.tag}`;if(e?.includes(y)){i[h]=f;return}if(t?.includes(y)){c(P),n[h]=f;return}if(P?.type?.name==="NumInGroup"){o.length===0||o.length>0&&o[r]?.availableTagsInGroup.has(y)||s(),p(P,g);return}if(o.length>0&&o[r].availableTagsInGroup.has(y)){o[r].valueInstanceFirstTag===y?(m(),o[r].valueInstance[h]=f):o[r].valueInstance={...o[r].valueInstance,[P?.name??String(y)]:f};return}c(P),o[r]?.valueInstanceFirstTag===y&&(m(),o[r].valueInstance[h]=f),o[r]?.availableTagsInGroup.has(y)||(a[h]=f)}),{Header:i,Body:a,Trailer:n}}clone(){let e=new d(this.fixVersion,...this.data);return e.messageSequence=this.messageSequence,e.messageType=this.messageType,e}reset(){this.data=[],this.messageString="",this.description="",this.messageType="",this.messageSequence=-1,this.structure=void 0,this.bodyLengthValid=!1,this.checksumValid=!1,this.checksumValue=void 0,this.checksumExpected=void 0,this.bodyLengthValue=void 0,this.bodyLengthExpected=void 0}};var Br=class{fixVersion=kd;message=void 0;messageTags=[];messageString="";fields=new Ti;enums=new Qd;proxy=void 0;tlsKey;tlsCert;tlsUseSNI;tlsSkipStdInPipe;skipValidation;processMessage(){let e=dF.exec(this.messageString);if(e&&e.length===2){let t=this.messageString.replace(new RegExp(e[1].replace(tF,"\\$&"),"g"),mi);this.message&&(this.message.messageString=t),this.messageTags=t.split(mi)}else this.message=void 0,this.messageTags=[]}processFields(){let e,t,i=0,a,n;for(i;i<this.messageTags.length-1;i++)a=this.messageTags[i].indexOf(eF),e=Number(this.messageTags[i].substring(0,a)),t=this.messageTags[i].substring(a+1),n=new _(e,t),this.fields.processField(this.message,n),this.enums.processEnum(n),n.tag===k.BeginString?this.message.fixVersion=String(n.value):n.tag===k.BodyLength?this.message?.validateBodyLength(t):n.tag===k.CheckSum&&this.message?.validateChecksum(t),this.message?.addField(n)}parse(e){if(!se.validateFreeLicense())throw new Error(se.ERROR_MESSAGE_NO_FREE_LICENSE);let t=0,i=e?e.split(/(?<!\d)8=FIX/):[],a=[];for(t;t<i.length;t++)this.message=new Si(this.fixVersion),this.messageString=`8=FIX${i[t]}`,this.messageString.indexOf(mi)>-1?(this.message.messageString=this.messageString,this.messageTags=this.messageString.split(mi)):this.processMessage(),this.message&&(this.skipValidation||this.processFields(),a.push(this.message));return a}};var oF=class{format;useStderr;constructor({format:d="json",useStderr:e=!1}){this.format=d,this.useStderr=e}configure(d){this.format=d.format||"json",d.useStderr!==void 0&&(this.useStderr=d.useStderr)}async send(d){let e=this.useStderr?console.error:console.log;if(this.format==="json")e(JSON.stringify(d));else if(this.format==="jsonrpc"){let{message:t,...i}=d,a={jsonrpc:"2.0",method:d.level,params:{message:t,...i}};e(JSON.stringify(a))}else{let{name:t,id:i,message:a,level:n,...r}=d,o=Object.entries(r).map(([c,p])=>`${c}: ${p}`),s="";t&&(s+=`${t} `),s+=`${i}: ${a}`,e(s,o.join(", "))}}async flush(){}async close(){}status(){return"connected"}};var kD=(d,e)=>e==="error"&&d.level==="error"||e==="warn"&&(d.level==="error"||d.level==="warn")?!0:e==="info"&&(d.level==="error"||d.level==="warn"||d.level==="info"),Pi=class{name;id;#n=!0;#i;#a;#e;constructor(e){this.name=e?.name??"",this.id=e?.id??gh(),this.#e=e?.level??"info",this.#e=e?.level??"info",this.#a=e?.format??"json",this.#i=e?.transport??new oF({format:this.#a})}processMessage(e){if(this.#e==="silent"||!this.#n)return this;if(!kD(e,this.#e))return this;let t={name:this.name,id:this.id,timestamp:Date.now(),...e};return this.#i.send(t),this}log(e){return this.processMessage({...e,level:e.level?e.level:"info"})}logWarning(e){return this.processMessage({...e,level:"warn"})}logError(e){return this.processMessage({...e,level:"error"})}set silent(e){this.#e=e?"silent":"info"}get silent(){return this.#e==="silent"}get level(){return this.#e}get format(){return this.#a}};var yc=Object.freeze({CarriedCustomerSide:1,CarriedNonCustomerSide:2,HouseTrader:3,FloorTrader:4,CarriedNonCustomerSideCrossMargined:6,HouseTraderCrossMargined:7,JointBackOfficeAccount:8,EquitiesSpecialist:9,OptionsMarketMaker:10,OptionsFirmAccount:11,AccountCustomerNonCustomerOrders:12,AccountOrdersMultipleCustomers:13});var Sc=Object.freeze({BIC:1,SIDCode:2,TFM:3,OMGEO:4,DTCCCode:5,SPSAID:6,Other:99});var Pc=Object.freeze({Cancel:1,Error:2,Correction:3});var fc=Object.freeze({ProcessRequestAsMarginDisposition:0,DeltaPlus:1,DeltaMinus:2,Final:3,CustomerSpecificPosition:4});var gc=Object.freeze({Buy:"B",Sell:"S",Trade:"T",Cross:"X"});var hc=Object.freeze({New:"N",Cancel:"C",Replace:"R"});var Ic=Object.freeze({Received:1,ConfirmRejected:2,Affirmed:3});var bc=Object.freeze({BookEntriesToBeAggregated:"Y",BookEntriesShouldNotBeAggregated:"N"});var Fc=Object.freeze({OrderInitiatorIsAggressor:"Y",OrderInitiatorIsPassive:"N"});var Ec=Object.freeze({Received:0,Accepted:1,Rejected:2});var Cc=Object.freeze({New:0,Cancel:1,Replace:2});var vc=Object.freeze({CertificateInformation:0,CertificateStateChanged:1});var Tc=Object.freeze({Received:0,Accepted:1,Rejected:2});var Xc=Object.freeze({New:0,Cancel:1,Replace:2});var Dc=Object.freeze({CertificateInformation:0,GenerateCertificate:1,ChangeCertificateStatus:2,ForwardCertificate:3});var Rc=Object.freeze({Draft:0,Approved:1,Submitted:2,Registered:3});var xc=Object.freeze({NonAlgorithmicTrade:0,AlgorithmicTrade:1});var Nc=Object.freeze({CarriedCustomerSide:1,CarriedNonCustomerSide:2,HouseTrader:3,FloorTrader:4,CarriedNonCustomerSideCrossMargined:6,HouseTraderCrossMargined:7,JointBackOfficeAccount:8});var Ac=Object.freeze({Rollup:0,DoNotRollUp:1});var wc=Object.freeze({OriginalDetailsIncomplete:1,ChangeInUnderlyingOrderDetails:2,CancelledByGiveupFirm:3,Other:99});var Mc=Object.freeze({Added:0,Canceled:1,Replaced:2,Changed:3,Pending:4});var Lc=Object.freeze({TradeType:1,TradePublicationIndicator:2,OrderHandlingInstruction:3});var Oc=Object.freeze({Match:1,Forward:2,ForwardAndMatch:3,AutoClaimGiveUp:4});var kc=Object.freeze({PendingAccept:1,PendingRelease:2,PendingReversal:3,Accept:4,BlockLevelReject:5,AccountLevelReject:6});var Uc=Object.freeze({FXNetting:0,FXSwap:1});var qc=Object.freeze({Automatic:1,Guarantor:2,Manual:3,BrokerAssigned:4});var Bc=Object.freeze({NotSpecified:0,ExplicitListProvided:1});var jc=Object.freeze({Open:"O",Close:"C",Rolled:"R",FIFO:"F"});var Gc=Object.freeze({UnknownAccount:0,IncorrectQuantity:1,IncorrectAveragePrice:2,UnknownExecutingBrokerMnemonic:3,CommissionDifference:4,UnknownOrderID:5,UnknownListID:6,OtherSeeText:7,IncorrectAllocatedQuantity:8,CalculationDifference:9,UnknownOrStaleExecID:10,MismatchedData:11,UnknownClOrdID:12,WarehouseRequestRejected:13,DuplicateOrMissingIndividualAllocID:14,TradeNotRecognized:15,DuplicateTrade:16,IncorrectOrMissingInstrument:17,IncorrectOrMissingSettlDate:18,IncorrectOrMissingFundIDOrFundName:19,IncorrectOrMissingSettlInstructions:20,IncorrectOrMissingFees:21,IncorrectOrMissingTax:22,UnknownOrMissingParty:23,IncorrectOrMissingSide:24,IncorrectOrMissingNetMoney:25,IncorrectOrMissingTradeDate:26,IncorrectOrMissingSettlCcyInstructions:27,IncorrectOrMissingProcessCode:28,Other:99});var Qc=Object.freeze({PreliminaryRequestToIntermediary:2,SellsideCalculatedUsingPreliminary:3,SellsideCalculatedWithoutPreliminary:4,WarehouseRecap:5,RequestToIntermediary:8,Accept:9,Reject:10,AcceptPending:11,Complete:12,ReversePending:14,Giveup:15,Takeup:16,Reversal:17,Alleged:18,SubAllocationGiveup:19});var Vc=Object.freeze({Accepted:0,Rejected:1});var zc=Object.freeze({Completed:0,Refused:1,Cancelled:2});var Hc=Object.freeze({UseDefaultInstructions:0,DeriveFromParametersProvided:1,FullDetailsProvided:2,SSIDBIDsProvided:3,PhoneForInstructions:4});var Wc=Object.freeze({Accepted:0,BlockLevelReject:1,AccountLevelReject:2,Received:3,Incomplete:4,RejectedByIntermediary:5,AllocationPending:6,Reversed:7,CancelledByIntermediary:8,Claimed:9,Refused:10,PendingGiveUpApproval:11,Cancelled:12,PendingTakeUpApproval:13,ReversalPending:14});var _c=Object.freeze({New:"0",Replace:"1",Cancel:"2",Reversal:"6"});var Kc=Object.freeze({Calculated:1,Preliminary:2,ReadyToBook:5,WarehouseInstruction:7,RequestToIntermediary:8,Accept:9,Reject:10,AcceptPending:11,IncompleteGroup:12,CompleteGroup:13,ReversalPending:14,ReopenGroup:15,CancelGroup:16,Giveup:17,Takeup:18,RefuseTakeup:19,InitiateReversal:20,Reverse:21,RefuseReversal:22,SubAllocationGiveup:23,ApproveGiveup:24,ApproveTakeup:25,NotionalValueAveragePxGroupAlloc:26});var Yc=Object.freeze({NoApplRecoveryNeeded:0,ApplRecoveryNeeded:1});var Jc=Object.freeze({NoActionTaken:0,QueueFlushed:1,OverlayLast:2,EndSession:3});var $c=Object.freeze({NoActionTaken:0,QueueFlushed:1,OverlayLast:2,EndSession:3});var Zc=Object.freeze({ApplSeqNumReset:0,LastMessageSent:1,ApplicationAlive:2,ResendComplete:3});var ep=Object.freeze({Retransmission:0,Subscription:1,RequestLastSeqNum:2,RequestApplications:3,Unsubscribe:4,CancelRetransmission:5,CancelRetransmissionUnsubscribe:6});var tp=Object.freeze({ApplicationDoesNotExist:0,MessagesRequestedAreNotAvailable:1,UserNotAuthorizedForApplication:2});var dp=Object.freeze({RequestSuccessfullyProcessed:0,ApplicationDoesNotExist:1,MessagesNotAvailable:2});var ip=Object.freeze({False:"0",True:"1"});var ap=Object.freeze({InterestRate:1,Currency:2,Credit:3,Equity:4,Commodity:5,Other:6,Cash:7,Debt:8,Fund:9,LoanFacility:10,Index:11});var np=Object.freeze({Financials:1,Commodities:2,AlternativeInvestments:3});var rp=Object.freeze({SingleCurrency:1,CrossCurrency:2,Basket:3,SingleName:4,CreditIndex:5,IndexTranche:6,CreditBasket:7,Exotic:8,Common:9,Preferred:10,EquityIndex:11,EquityBasket:12,Metals:13,Bullion:14,Energy:15,CommodityIndex:16,Agricultural:17,Environmental:18,Freight:19,Government:20,Agency:21,Corporate:22,Financing:23,MoneyMarket:24,Mortgage:25,Municipal:26,MutualFund:27,CollectiveInvestmentVehicle:28,InvestmentProgram:29,SpecializedAccountProgram:30,TermLoan:31,BridgeLoan:32,LetterOfCredit:33,DividendIndex:34,StockDividend:35,ExchangeTradedFund:36,VolatilityIndex:37,FXCrossRates:38,FXEmergingMarkets:39,FXMajors:40,Fertilizer:41,IndustrialProduct:42,Inflation:43,Paper:44,Polypropylene:45,OfficialEconomicStatistics:46,OtherC10:47,Other:48});var op=Object.freeze({BlackScholes:1,Whaley:2,Bachelier:3,Kirk:4,Curran:5,Black76:6,Binomial:7,OtherModel:99});var sp=Object.freeze({ProRata:"P",Random:"R"});var cp=Object.freeze({Base64:0,RawBinary:1});var pp=Object.freeze({AutomatedAuctionPermitted:0,AutomatedAuctionNotPermitted:1});var up=Object.freeze({None:0,BlockOrderAuction:1,DirectedOrderAuction:2,ExposureOrderAuction:3,FlashOrderAuction:4,FacilitationOrderAuction:5,SolicitationOrderAuction:6,PriceImprovementMechanism:7,DirectedOrderPriceImprovementMechanism:8});var lp=Object.freeze({TimeWeightedAveragePrice:0,VolumeWeightedAveragePrice:1,PercentOfVolumeAveragePrice:2,LimitOrderAveragePrice:3});var mp=Object.freeze({NoAveragePricing:0,Trade:1,LastTrade:2,NotionalValueAveragePxGroupTrade:3,AveragePricedTrade:4});var yp=Object.freeze({ClosingPriceAtMorningSession:"2",ClosingPrice:"3",CurrentPrice:"4",SQ:"5",VWAPThroughADay:"6",VWAPThroughAMorningSession:"7",VWAPThroughAnAfternoonSession:"8",VWAPThroughADayExcept:"9",VWAPThroughAMorningSessionExcept:"A",VWAPThroughAnAfternoonSessionExcept:"B",Strike:"C",Open:"D",Others:"Z"});var Sp=Object.freeze({Update:0,Snapshot:1});var Pp=Object.freeze({FIX42:"FIX.4.2",FIX44:"FIX.4.4",FIXT11:"FIXT.1.1"});var fp=Object.freeze({CURVE:"1",FiveYR:"2",OLD5:"3",TenYR:"4",OLD10:"5",ThirtyYR:"6",OLD30:"7",ThreeMOLIBOR:"8",SixMOLIBOR:"9"});var gp=Object.freeze({EONIA:"EONIA",EUREPO:"EUREPO",Euribor:"Euribor",FutureSWAP:"FutureSWAP",LIBID:"LIBID",LIBOR:"LIBOR",MuniAAA:"MuniAAA",OTHER:"OTHER",Pfandbriefe:"Pfandbriefe",SONIA:"SONIA",SWAP:"SWAP",Treasury:"Treasury",FedFundRateEffective:"FEDEFF",FedOpen:"FEDOPEN",EURIBOR:"EURIBOR",AUBSW:"AUBSW",BUBOR:"BUBOR",CDOR:"CDOR",CIBOR:"CIBOR",EONIASWAP:"EONIASWAP",ESTR:"ESTR",EURODOLLAR:"EURODOLLAR",EUROSWISS:"EUROSWISS",GCFREPO:"GCFREPO",ISDAFIX:"ISDAFIX",JIBAR:"JIBAR",MOSPRIM:"MOSPRIM",NIBOR:"NIBOR",PRIBOR:"PRIBOR",SOFR:"SOFR",STIBOR:"STIBOR",TELBOR:"TELBOR",TIBOR:"TIBOR",WIBOR:"WIBOR",AONIA:"AONIA",AONIAR:"AONIA-R",BKBM:"BKBM",CD91D:"CD91D",CORRA:"CORRA",DIRRTN:"DIRR-TN",EIBOR:"EIBOR",FixingRepoRate:"FixingRepoRate",HIBOR:"HIBOR",IBR:"IBR",KLIBOR:"KLIBOR",MIBOR:"MIBOR",NZONIA:"NZONIA",PHIREF:"PHIREF",REIBOR:"REIBOR",SAIBOR:"SAIBOR",SARON:"SARON",SORA:"SORA",TLREF:"TLREF",TIIE:"TIIE",THBFIX:"THBFIX",TONAR:"TONAR"});var hp=Object.freeze({Sector:1,Country:2,Index:3});var Ip=Object.freeze({Cancel:"C",New:"N"});var bp=Object.freeze({Agency:"A",VWAPGuarantee:"G",GuaranteedClose:"J",RiskTrade:"R"});var Fp=Object.freeze({NonDisclosed:1,Disclosed:2,NoBiddingProcess:3});var Ep=Object.freeze({BlockToBeAllocated:0,BlockNotToBeAllocated:1,AllocatedTrade:2});var Cp=Object.freeze({RegularBooking:0,CFD:1,TotalReturnSwap:2});var vp=Object.freeze({EachPartialExecutionIsABookableUnit:"0",AggregatePartialExecutionsOnThisOrder:"1",AggregateExecutionsForThisSymbol:"2"});var Tp=Object.freeze({NotApplicable:0,None:1,FollowingDay:2,FloatingRateNote:3,ModifiedFollowingDay:4,PrecedingDay:5,ModifiedPrecedingDay:6,NearestDay:7});var Xp=Object.freeze({Other:0,UnknownID:1,UnknownSecurity:2,UnsupportedMessageType:3,ApplicationNotAvailable:4,ConditionallyRequiredFieldMissing:5,NotAuthorized:6,DeliverToFirmNotAvailableAtThisTime:7,ThrottleLimitExceeded:8,ThrottleLimitExceededSessionDisconnected:9,ThrottledMessagesRejectedOnRequest:10,InvalidPriceIncrement:18});var Dp=Object.freeze({Automatic:0,Manual:1});var Rp=Object.freeze({Yes:"Y",NoExecutionOnly:"N",NoWaiverAgreement:"M",NoInstitutional:"O"});var xp=Object.freeze({Cash:"1",MarginOpen:"2",MarginClose:"3"});var Np=Object.freeze({Close:0,Hedge:1});var Ap=Object.freeze({Bid:0,Mid:1,Offer:2});var wp=Object.freeze({Market:0,Highest:1,AverageMarket:2,AverageHighest:3,BlendedMarket:4,BlendedHighest:5,AverageBlendedMarket:6,AverageBlendedHighest:7});var Mp=Object.freeze({NotCleared:0,Cleared:1,Submitted:2,Rejected:3});var Lp=Object.freeze({Customer:1,Firm:2,MarketMaker:3});var Op=Object.freeze({FirstYearDelegate:"1",SecondYearDelegate:"2",ThirdYearDelegate:"3",FourthYearDelegate:"4",FifthYearDelegate:"5",SixthYearDelegate:"9",CBOEMember:"B",NonMemberAndCustomer:"C",EquityMemberAndClearingMember:"E",FullAndAssociateMember:"F",Firms106HAnd106J:"H",GIM:"I",Lessee106FEmployees:"L",AllOtherOwnershipTypes:"M"});var kp=Object.freeze({ProcessNormally:0,ExcludeFromAllNetting:1,BilateralNettingOnly:2,ExClearing:3,SpecialTrade:4,MultilateralNetting:5,ClearAgainstCentralCounterparty:6,ExcludeFromCentralCounterparty:7,ManualMode:8,AutomaticPostingMode:9,AutomaticGiveUpMode:10,QualifiedServiceRepresentativeQSR:11,CustomerTrade:12,SelfClearing:13,BuyIn:14});var Up=Object.freeze({DoNotIntendToClear:0,IntendToClear:1});var qp=Object.freeze({NoException:0,Exception:1,EndUserException:2,InterAffiliateException:3,TreasuryAffiliateException:4,CooperativeException:5});var Bp=Object.freeze({Retain:0,Add:1,Remove:2});var jp=Object.freeze({SpecificDeposit:0,General:1});var Gp=Object.freeze({Initial:0,Scheduled:1,TimeWarning:2,MarginDeficiency:3,MarginExcess:4,ForwardCollateralDemand:5,EventOfDefault:6,AdverseTaxEvent:7,TransferDeposit:8,TransferWithdrawal:9,Pledge:10});var Qp=Object.freeze({UnknownDeal:0,UnknownOrInvalidInstrument:1,UnauthorizedTransaction:2,InsufficientCollateral:3,InvalidTypeOfCollateral:4,ExcessiveSubstitution:5,Other:99});var Vp=Object.freeze({Received:0,Accepted:1,Declined:2,Rejected:3,TransactionPending:4,TransactionCompletedWithWarning:5});var zp=Object.freeze({New:0,Replace:1,Cancel:2,Release:3,Reverse:4});var Hp=Object.freeze({MarketValuation:0,PortfolioValue:1,ValueConfirmed:2,CollateralCreditValue:3,AdditionalCollateralValue:4,EstimatedMarketValuation:5});var Wp=Object.freeze({MoneyMarketFund:0,OtherComingledPool:1,RepoMarket:2,DirectPurchaseOfSecurities:3,OtherInvestments:4});var _p=Object.freeze({TradeDate:0,GCInstrument:1,CollateralInstrument:2,SubstitutionEligible:3,NotAssigned:4,PartiallyAssigned:5,FullyAssigned:6,OutstandingTrades:7});var Kp=Object.freeze({Successful:0,InvalidOrUnknownInstrument:1,InvalidOrUnknownCollateralType:2,InvalidParties:3,InvalidTransportTypeRequested:4,InvalidDestinationRequested:5,NoCollateralFoundForTheTradeSpecified:6,NoCollateralFoundForTheOrderSpecified:7,CollateralInquiryTypeNotSupported:8,UnauthorizedForCollateralInquiry:9,Other:99});var Yp=Object.freeze({Accepted:0,AcceptedWithWarnings:1,Completed:2,CompletedWithWarnings:3,Rejected:4});var Jp=Object.freeze({UnknownTrade:0,UnknownInstrument:1,UnknownCounterparty:2,UnknownPosition:3,UnacceptableCollateral:4,Other:99});var $p=Object.freeze({Accepted:0,Received:1,Rejected:2});var Zp=Object.freeze({Unassigned:0,PartiallyAssigned:1,AssignmentProposed:2,Assigned:3,Challenged:4,Reused:5});var eu=Object.freeze({ResearchPaymentAccount:0,CommissionSharingAgreement:1,OtherTypeResearchPayment:2});var tu=Object.freeze({Unspecified:0,Acceptance:1,Broker:2,ClearingBroker:3,Retail:4,SalesCommission:5,LocalCommission:6,ResearchPayment:7});var du=Object.freeze({ArgusMcCloskey:0,Baltic:1,Exchange:2,GlobalCoal:3,IHSMcCloskey:4,Platts:5,Other:99});var iu=Object.freeze({PerUnit:"1",Percent:"2",Absolute:"3",PercentageWaivedCashDiscount:"4",PercentageWaivedEnhancedUnits:"5",PointsPerBondOrContract:"6",BasisPoints:"7",AmountPerContract:"8"});var au=Object.freeze({And:1,Or:2});var nu=Object.freeze({SellerNotifies:0,BuyerNotifies:1,SellerOrBuyerNotifies:2});var ru=Object.freeze({Business:0,Calendar:1,CommodityBusiness:2,CurrencyBusiness:3,ExchangeBusiness:4,ScheduledTradingDay:5});var ou=Object.freeze({AsianOut:0,AsianIn:1,BarrierCap:2,BarrierFloor:3,KnockOut:4,KnockIn:5});var su=Object.freeze({LessThanComplexEventPrice:1,LessThanOrEqualToComplexEventPrice:2,EqualToComplexEventPrice:3,GreaterThanOrEqualToComplexEventPrice:4,GreaterThanComplexEventPrice:5});var cu=Object.freeze({Expiration:1,Immediate:2,SpecifiedDate:3,Close:4,Open:5,OfficialSettlPrice:6,DerivativesClose:7,AsSpecifiedMasterConfirmation:8});var pu=Object.freeze({Close:0,HedgeElection:1});var uu=Object.freeze({Currency1PerCurrency2:0,Currency2PerCurrency1:1});var lu=Object.freeze({Capped:1,Trigger:2,KnockInUp:3,KnockInDown:4,KnockOutUp:5,KnockOutDown:6,Underlying:7,ResetBarrier:8,RollingBarrier:9,OneTouch:10,NoTouch:11,DblOneTouch:12,DblNoTouch:13,FXComposite:14,FXQuanto:15,FXCrssCcy:16,StrkSpread:17,ClndrSpread:18,PxObsvtn:19,PassThrough:20,StrkSched:21,EquityValuation:22,DividendValuation:23});var mu=Object.freeze({Close:0,Open:1,OfficialSettl:2,ValuationTime:3,ExcahgneSettlTime:4,DerivativesClose:5,AsSpecified:6});var yu=Object.freeze({NonElectronic:0,Electronic:1,Unconfirmed:2});var Su=Object.freeze({MismatchedAccount:1,MissingSettlementInstructions:2,UnknownOrMissingIndividualAllocId:3,TransactionNotRecognized:4,DuplicateTransaction:5,IncorrectOrMissingInstrument:6,IncorrectOrMissingPrice:7,IncorrectOrMissingCommission:8,IncorrectOrMissingSettlDate:9,IncorrectOrMissingFundIDOrFundName:10,IncorrectOrMissingQuantity:11,IncorrectOrMissingFees:12,IncorrectOrMissingTax:13,IncorrectOrMissingParty:14,IncorrectOrMissingSide:15,IncorrectOrMissingNetMoney:16,IncorrectOrMissingTradeDate:17,IncorrectOrMissingSettlCcyInstructions:18,IncorrectOrMissingCapacity:19,Other:99});var Pu=Object.freeze({Received:1,MismatchedAccount:2,MissingSettlementInstructions:3,Confirmed:4,RequestRejected:5});var fu=Object.freeze({New:0,Replace:1,Cancel:2});var gu=Object.freeze({Status:1,Confirmation:2,ConfirmationRequestRejected:3});var hu=Object.freeze({CommissionAmount:1,CommissionPercent:2,InitialChargeAmount:3,InitialChargePercent:4,DiscountAmount:5,DiscountPercent:6,DilutionLevyAmount:7,DilutionLevyPercent:8,ExitChargeAmount:9,ExitChargePercent:10,FundBasedRenewalCommissionPercent:11,ProjectedFundValue:12,FundBasedRenewalCommissionOnOrder:13,FundBasedRenewalCommissionOnFund:14,NetSettlementAmount:15});var Iu=Object.freeze({OneCancelsTheOther:1,OneTriggersTheOther:2,OneUpdatesTheOtherAbsolute:3,OneUpdatesTheOtherProportional:4,BidAndOffer:5,BidAndOfferOCO:6});var bu=Object.freeze({Shares:0,Hours:1,Days:2});var Fu=Object.freeze({TwoComponentIntercommoditySpread:0,IndexOrBasket:1,TwoComponentLocationBasis:2,Other:99});var Eu=Object.freeze({ExDividend:"A",ExDistribution:"B",ExRights:"C",New:"D",ExInterest:"E",CashDividend:"F",StockDividend:"G",NonIntegerStockSplit:"H",ReverseStockSplit:"I",StandardIntegerStockSplit:"J",PositionConsolidation:"K",LiquidationReorganization:"L",MergerReorganization:"M",RightsOffering:"N",ShareholderMeeting:"O",Spinoff:"P",TenderOffer:"Q",Warrant:"R",SpecialAction:"S",SymbolConversion:"T",CUSIP:"U",LeapRollover:"V",SuccessionEvent:"W"});var Cu=Object.freeze({OneOne:0,ThirtyThreeSixtyUS:1,ThirtyThreeSixtySIA:2,ThirtyThreeSixtyM:3,ThirtyEThreeSixty:4,ThirtyEThreeSixtyISDA:5,ActThreeSixty:6,ActThreeSixtyFiveFixed:7,ActActAFB:8,ActActICMA:9,ActActISMAUltimo:10,ActActISDA:11,BusTwoFiftyTwo:12,ThirtyEPlusThreeSixty:13,ActThreeSixtyFiveL:14,NLThreeSixtyFive:15,NLThreeSixty:16,Act364:17,ThirtyThreeSixtyFive:18,ThirtyActual:19,ThirtyThreeSixtyICMA:20,ThirtyETwoThreeSixty:21,ThirtyEThreeThreeSixty:22,Other:99});var vu=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr",Hour:"H",Minute:"Min",Second:"S",Term:"T"});var Tu=Object.freeze({Zero:0,FixedRate:1,FloatingRate:2,Structured:3});var Xu=Object.freeze({Covered:0,Uncovered:1});var Du=Object.freeze({Program3a3:1,Program42:2,Program3a2:3,Program3a3And3c7:4,Program3a4:5,Program3a5:6,Program3a7:7,Program3c7:8,Other:99});var Ru=Object.freeze({NoCross:0,CrossRejected:1,CrossAccepted:2});var xu=Object.freeze({None:0,BuySideIsPrioritized:1,SellSideIsPrioritized:2});var Nu=Object.freeze({CrossAON:1,CrossIOC:2,CrossOneSide:3,CrossSamePrice:4,BasisCross:5,ContingentCross:6,VWAPCross:7,STSCross:8,CustomerToCustomer:9});var Au=Object.freeze({CUSIP:"1",SEDOL:"2",ISINNumber:"4",ISOCurrencyCode:"6",FinancialInstrumentGlobalIdentifier:"S",DigitalTokenIdentifier:"Y"});var wu=Object.freeze({MemberTradingForTheirOwnAccount:1,ClearingFirmTradingForItsProprietaryAccount:2,MemberTradingForAnotherMember:3,AllOther:4,RetailCustomer:5});var Mu=Object.freeze({PhoneSimple:"A",GOrderAndFCMAPIorFIX:"G",PhoneComplex:"B",AddOnOrder:"ADD",FCMProvidedScreen:"C",AllOrNone:"AON",OtherProvidedScreen:"D",ConditionalOrder:"CND",ClientProvidedPlatformControlledByFCM:"E",CashNotHeld:"CNH",ClientProvidedPlatformDirectToExchange:"F",DeliveryInstructionsCash:"CSH",DirectedOrder:"DIR",AlgoEngine:"H",DiscretionaryLimitOrder:"DLO",PriceAtExecution:"J",ExchangeForPhysicalTransaction:"E.W",DeskElectronic:"W",FillOrKill:"FOK",DeskPit:"X",ClientElectronic:"Y",IntraDayCross:"IDX",ClientPit:"Z",ImbalanceOnly:"IO",ImmediateOrCancel:"IOC",IntermarketSweepOrder:"ISO",LimitOnOpen:"LOO",LimitOnClose:"LOC",MarketAtOpen:"MAO",MarketAtClose:"MAC",MarketOnOpen:"MOO",MarketOnClose:"MOC",MergerRelatedTransferPosition:"MPT",MinimumQuantity:"MQT",MarketToLimit:"MTL",DeliveryInstructionsNextDay:"ND",NotHeld:"NH",OptionsRelatedTransaction:"OPT",OverTheDay:"OVD",Pegged:"PEG",ReserveSizeOrder:"RSV",StopStockTransaction:"S.W",Scale:"SCL",DeliveryInstructionsSellersOption:"SLR",TimeOrder:"TMO",TrailingStop:"TS",Work:"WRK",StayOnOfferside:"F0",GoAlong:"F3",ParticipateDoNotInitiate:"F6",StrictScale:"F7",TryToScale:"F8",StayOnBidside:"F9",NoCross:"FA",OKToCross:"FB",CallFirst:"FC",PercentOfVolume:"FD",ReinstateOnSystemFailure:"FH",InstitutionOnly:"FI",ReinstateOnTradingHalt:"FJ",CancelOnTradingHalf:"FK",LastPeg:"FL",MidPricePeg:"FM",NonNegotiable:"FN",OpeningPeg:"FO",MarketPeg:"FP",CancelOnSystemFailure:"FQ",PrimaryPeg:"FR",Suspend:"FS",FixedPegToLocalBBO:"FT",PegToVWAP:"FW",TradeAlong:"FX",TryToStop:"FY",CancelIfNotBest:"FZ",StrictLimit:"Fb",IgnorePriceValidityChecks:"Fc",PegToLimitPrice:"Fd",WorkToTargetStrategy:"Fe"});var Lu=Object.freeze({Customer:0,Firm:1});var Ou=Object.freeze({NoPriority:0,UnconditionalPriority:1});var ku=Object.freeze({TooLateToCancel:0,UnknownOrder:1,BrokerCredit:2,OrderAlreadyInPendingStatus:3,UnableToProcessOrderMassCancelRequest:4,OrigOrdModTime:5,DuplicateClOrdID:6,PriceExceedsCurrentPrice:7,PriceExceedsCurrentPriceBand:8,InvalidPriceIncrement:18,Other:99});var Uu=Object.freeze({OrderCancelRequest:"1",OrderCancelReplaceRequest:"2"});var qu=Object.freeze({FirstDay:"1",SecondDay:"2",ThirdDay:"3",FourthDay:"4",FifthDay:"5",SixthDay:"6",SeventhDay:"7",EighthDay:"8",NinthDay:"9",TenthDay:"10",EleventhDay:"11",TwelvthDay:"12",ThirteenthDay:"13",ForteenthDay:"14",FifteenthDay:"15",SixteenthDay:"16",SeventeenthDay:"17",EighteenthDay:"18",NineteenthDay:"19",TwentiethDay:"20",TwentyFirstDay:"21",TwentySecondDay:"22",TwentyThirdDay:"23",TwentyFourthDay:"24",TwentyFifthDay:"25",TwentySixthDay:"26",TwentySeventhDay:"27",TwentyEigthDa28y:"28",TwentyNinthDay:"29",ThirtiethDay:"30",EOM:"EOM",FRN:"FRN",IMM:"IMM",IMMCAD:"IMMCAD",IMMAUD:"IMMAUD",IMMNZD:"IMMNZD",SFE:"SFE",NONE:"NONE",TBILL:"TBILL",MON:"MON",TUE:"TUE",WED:"WED",THU:"THU",FRI:"FRI",SAT:"SAT",SUN:"SUN"});var Bu=Object.freeze({Auto:"0",SpeakWithOrderInitiatorBeforeBooking:"1",Accumulate:"2"});var ju=Object.freeze({Agent:"A",Principal:"P",RisklessPrincipal:"R"});var Gu=Object.freeze({Cancellation:"0",Error:"1"});var Qu=Object.freeze({BookEntry:1,Bearer:2});var Vu=Object.freeze({Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6,Sunday:7,AllWeekdays:8,AllDays:9,AllWeekends:10});var zu=Object.freeze({AllTimes:0,OnPeak:1,OffPeak:2,Base:3,BlockHours:4,Other:5});var Hu=Object.freeze({DoNotIncludeHolidays:0,IncludeHolidays:1});var Wu=Object.freeze({Hour:0,Timestamp:1});var _u=Object.freeze({Absolute:0,Percentage:1});var Ku=Object.freeze({Notional:0,Delivery:1,PhysicalSettlPeriods:2});var Yu=Object.freeze({Proprietary:0,EIC:1});var Ju=Object.freeze({Firm:1,NonFirm:2,ForceMajeure:3,SystemFirm:4,UnitFirm:5});var $u=Object.freeze({Buyer:0,Seller:1});var Zu=Object.freeze({Transfers:0,DoesNotTransfer:1});var el=Object.freeze({Buyer:1,Seller:2});var tl=Object.freeze({Periodic:0,Initial:1,Single:2});var dl=Object.freeze({VersusPayment:0,Free:1,TriParty:2,HoldInCustody:3,DeliverByValue:4});var il=Object.freeze({Agency:"A",Arbitrage:"AR",BlockTrading:"B",ConvertibleDesk:"C",CentralRiskBooks:"CR",Derivatives:"D",EquityCapitalMarkets:"EC",International:"IN",Institutional:"IS",Other:"O",PreferredTrading:"PF",Proprietary:"PR",ProgramTrading:"PT",Sales:"S",Swaps:"SW",TradingDeskSystem:"T",Treasury:"TR",FloorBroker:"FB"});var al=Object.freeze({FINRAOATS:1});var nl=Object.freeze({No:0,Yes:1,UseDefaultSetting:2});var rl=Object.freeze({Volume:1,Price:2,Side:3,AON:4,General:5,ClearingAccount:6,CMTAAccount:7});var ol=Object.freeze({RelatedToDisplayedPrice:"0",RelatedToMarketPrice:"1",RelatedToPrimaryPrice:"2",RelatedToLocalPrimaryPrice:"3",RelatedToMidpointPrice:"4",RelatedToLastTradePrice:"5",RelatedToVWAP:"6",AveragePriceGuarantee:"7"});var sl=Object.freeze({OrBetter:0,Strict:1,OrWorse:2});var cl=Object.freeze({Floating:0,Fixed:1});var pl=Object.freeze({Price:0,BasisPoints:1,Ticks:2,PriceTier:3});var ul=Object.freeze({MoreAggressive:1,MorePassive:2});var ll=Object.freeze({Local:1,National:2,Global:3,NationalExcludingLocal:4});var ml=Object.freeze({Initial:"1",New:"2",Random:"3",Undisclosed:"4"});var yl=Object.freeze({Immediate:"1",Exhaust:"2"});var Sl=Object.freeze({CREST:1,NSCC:2,Euroclear:3,Clearstream:4,Cheque:5,TelegraphicTransfer:6,FedWire:7,DirectCredit:8,ACHCredit:9,BPAY:10,HighValueClearingSystemHVACS:11,ReinvestInFund:12,Other:999});var Pl=Object.freeze({RecordAmount:0,ExAmount:1,PaidAmount:2,PerMasterConfirm:3});var fl=Object.freeze({EquityAmountReceiver:0,CalculationAgent:1});var gl=Object.freeze({ExDate:0,RecordDate:1});var hl=Object.freeze({UnknownSymbol:"A",WrongSide:"B",QuantityExceedsOrder:"C",NoMatchingOrder:"D",PriceExceedsLimit:"E",CalculationDifference:"F",NoMatchingExecutionReport:"G",Other:"Z"});var Il=Object.freeze({Cash:"C",Securities:"S"});var bl=Object.freeze({NotRelatedToSecurityHalt:"N",RelatedToSecurityHalt:"Y"});var Fl=Object.freeze({UniqueClOrdID:"N",DuplicateClOrdID:"Y"});var El=Object.freeze({New:"0",Reply:"1",AdminReply:"2"});var Ya=Object.freeze({None:0,PKCS:1,DES:2,PKCSDES:3,PGPDES:4,PGPDESMD5:5,PEM:6});var Cl=Object.freeze({Int:1,Length:2,NumInGroup:3,SeqNum:4,TagNum:5,Float:6,Qty:7,Price:8,PriceOffset:9,Amt:10,Percentage:11,Char:12,Boolean:13,String:14,MultipleCharValue:15,Currency:16,Exchange:17,MonthYear:18,UTCTimestamp:19,UTCTimeOnly:20,LocalMktDate:21,UTCDateOnly:22,Data:23,MultipleStringValue:24,Country:25,Language:26,TZTimeOnly:27,TZTimestamp:28,Tenor:29,DayOfMonth:30,XMLData:31,Pattern:32,Reserved100Plus:33,Reserved1000Plus:34,Reserved4000Plus:35});var vl=Object.freeze({Successful:0,InvalidParty:1,InvalidRelatedParty:2,InvalidEntitlementType:3,InvalidEntitlementID:4,InvalidEntitlementAttribute:5,InvalidInstrumentScope:6,InvalidMarketSegmentScope:7,InvalidStartDate:8,InvalidEndDate:9,InstrumentScopeNotSupported:10,MarketSegmentScopeNotSupported:11,EntitlementNotApprovedForParty:12,EntitlementAlreadyDefinedForParty:13,InstrumentNotApprovedForParty:14,NotAuthorized:98,Other:99});var Tl=Object.freeze({Accepted:0,AcceptedWithChanges:1,Rejected:2,Pending:3,Requested:4,Deferred:5});var Xl=Object.freeze({OrderEntry:1,HItLift:2,ViewIndicativePx:3,ViewExecutablePx:4,SingleQuote:5,StreamingQuotes:6,SingleBroker:7,MultiBrokers:8});var Dl=Object.freeze({Trade:0,MakeMarkets:1,HoldPositions:2,PerformGiveUps:3,SubmitIOIs:4,SubscribeMarketData:5,ShortWithPreBorrow:6,SubmitQuoteRequests:7,RespondToQuoteRequests:8});var Rl=Object.freeze({CustomerOrClient:"C",ExchangeOrExecutionVenue:"E",FirmOrBroker:"F"});var xl=Object.freeze({Hour:"H",Minute:"Min",Second:"S",Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var Nl=Object.freeze({Put:1,Call:2,Tender:3,SinkingFundCall:4,Activation:5,Inactiviation:6,LastEligibleTradeDate:7,SwapStartDate:8,SwapEndDate:9,SwapRollDate:10,SwapNextStartDate:11,SwapNextRollDate:12,FirstDeliveryDate:13,LastDeliveryDate:14,InitialInventoryDueDate:15,FinalInventoryDueDate:16,FirstIntentDate:17,LastIntentDate:18,PositionRemovalDate:19,MinimumNotice:20,DeliveryStartTime:21,DeliveryEndTime:22,FirstNoticeDate:23,LastNoticeDate:24,FirstExerciseDate:25,RedemptionDate:26,TrdCntntnEfctvDt:27,Other:99});var Al=Object.freeze({False:"N",True:"Y"});var wl=Object.freeze({BIC:"B",GeneralIdentifier:"C",Proprietary:"D",ISOCountryCode:"E",MIC:"G"});var Ml=Object.freeze({NoRestriction:0,TradedOnlyOnTradingVenue:1,TradedOnlyOnSI:2,TradedOnTradingVenueOrSI:3});var Ll=Object.freeze({Received:"0",Accepted:"1",DontKnow:"2"});var Ol=Object.freeze({StayOnOfferSide:"0",NotHeld:"1",Work:"2",GoAlong:"3",OverTheDay:"4",Held:"5",ParticipateDoNotInitiate:"6",StrictScale:"7",TryToScale:"8",StayOnBidSide:"9",NoCross:"A",OKToCross:"B",CallFirst:"C",PercentOfVolume:"D",DoNotIncrease:"E",DoNotReduce:"F",AllOrNone:"G",ReinstateOnSystemFailure:"H",InstitutionsOnly:"I",ReinstateOnTradingHalt:"J",CancelOnTradingHalt:"K",LastPeg:"L",MidPricePeg:"M",NonNegotiable:"N",OpeningPeg:"O",MarketPeg:"P",CancelOnSystemFailure:"Q",PrimaryPeg:"R",Suspend:"S",FixedPegToLocalBestBidOrOfferAtTimeOfOrder:"T",CustomerDisplayInstruction:"U",Netting:"V",PegToVWAP:"W",TradeAlong:"X",TryToStop:"Y",CancelIfNotBest:"Z",TrailingStopPeg:"a",StrictLimit:"b",IgnorePriceValidityChecks:"c",PegToLimitPrice:"d",WorkToTargetStrategy:"e",IntermarketSweep:"f",ExternalRoutingAllowed:"g",ExternalRoutingNotAllowed:"h",ImbalanceOnly:"i",SingleExecutionRequestedForBlockTrade:"j",BestExecution:"k",SuspendOnSystemFailure:"l",SuspendOnTradingHalt:"m",ReinstateOnConnectionLoss:"n",CancelOnConnectionLoss:"o",SuspendOnConnectionLoss:"p",Release:"q",ExecuteAsDeltaNeutral:"r",ExecuteAsDurationNeutral:"s",ExecuteAsFXNeutral:"t",MinGuaranteedFillEligible:"u",BypassNonDisplayLiquidity:"v",Lock:"w",IgnoreNotionalValueChecks:"x",TrdAtRefPx:"y",AllowFacilitation:"z"});var kl=Object.freeze({Unspecified:0,Manual:1,Automated:2,VoiceBrokered:3});var Ul=Object.freeze({BidPrice:"B",CreationPrice:"C",CreationPricePlusAdjustmentPercent:"D",CreationPricePlusAdjustmentAmount:"E",OfferPrice:"O",OfferPriceMinusAdjustmentPercent:"P",OfferPriceMinusAdjustmentAmount:"Q",SinglePrice:"S"});var ql=Object.freeze({GTCorporateAction:0,GTRenewal:1,VerbalChange:2,RepricingOfOrder:3,BrokerOption:4,PartialDeclineOfOrderQty:5,CancelOnTradingHalt:6,CancelOnSystemFailure:7,Market:8,Canceled:9,WarehouseRecap:10,PegRefresh:11,CancelOnConnectionLoss:12,CancelOnLogout:13,AssignTimePriority:14,CancelledForTradePriceViolation:15,CancelledForCrossImbalance:16,CxldSMP:17,CxldSMPAggressive:18,CxldSMPPassive:19,CxldSMPAggressivePassive:20,Other:99});var Bl=Object.freeze({New:"0",Cancel:"1",Correct:"2",Status:"3"});var jl=Object.freeze({New:"0",DoneForDay:"3",Canceled:"4",Replaced:"5",PendingCancel:"6",Stopped:"7",Rejected:"8",Suspended:"9",PendingNew:"A",Calculated:"B",Expired:"C",Restated:"D",PendingReplace:"E",Trade:"F",TradeCorrect:"G",TradeCancel:"H",OrderStatus:"I",TradeInAClearingHold:"J",TradeHasBeenReleasedToClearing:"K",TriggeredOrActivatedBySystem:"L",Locked:"M",Released:"N"});var Gl=Object.freeze({OrdAddedOnRequest:1,OrdReplacedOnRequest:2,OrdCxldOnRequest:3,UnsolicitedOrdCxl:4,NonRestingOrdAddedOnRequest:5,OrdReplacedWithNonRestingOrdOnRequest:6,TriggerOrdReplacedOnRequest:7,SuspendedOrdReplacedOnRequest:8,SuspendedOrdCxldOnRequest:9,OrdCxlPending:10,PendingCxlExecuted:11,RestingOrdTriggered:12,SuspendedOrdActivated:13,ActiveOrdSuspended:14,OrdExpired:15});var Ql=Object.freeze({NotRequired:0,NonElectronic:1,Electronic:2,Unknown:3});var Vl=Object.freeze({Automatic:"A",Manual:"M"});var zl=Object.freeze({European:0,American:1,Bermuda:2,Other:99});var Hl=Object.freeze({ExpireOnTradingSessionClose:0,ExpireOnTradingSessionOpen:1,SpecifiedExpiration:2});var Wl=Object.freeze({AutoExercise:1,NonAutoExercise:2,FinalWillBeExercised:3,ContraryIntention:4,Difference:5});var _l=Object.freeze({CalculationAgent:0,OptionsExchange:1});var Kl=Object.freeze({Bankrupt:"1",PendingDelisting:"2",Restricted:"3"});var Yl=Object.freeze({NERCEasternOffPeak:0,NERCWesternOffPeak:1,NERCCalendarAllDaysInMonth:2,NERCEasternPeak:3,NERCWesternPeak:4,AllTimes:5,OnPeak:6,OffPeak:7,Base:8,Block:9,Other:99});var Jl=Object.freeze({DoNotExecuteForexAfterSecurityTrade:"N",ExecuteForexAfterSecurityTrade:"Y"});var $l=Object.freeze({Repo:0,Cash:1,FreeCedits:2,CustomerShortSales:3,BrokerShortSales:4,UnsecuredBorrowing:5,Other:99});var Zl=Object.freeze({No:"N",Yes:"Y"});var em=Object.freeze({Bloomberg:1,CentralBank:2,WMR:3,MitsubishiUFJ:4,LondonBullionMarketAssociation:5,LondonMetalExchange:6,Other:99});var ud=Object.freeze({SequenceReset:"N",GapFillMessage:"Y"});var tm=Object.freeze({BookOutAllTradesOnDayOfExecution:0,AccumulateUntilFilledOrExpired:1,AccumulateUntilVerballyNotifiedOtherwise:2});var dm=Object.freeze({NewsDissemination:0,OrderInflux:1,OrderImbalance:2,AdditionalInformation:3,NewsPending:4,EquipmentChangeover:5});var im=Object.freeze({AutomatedExecutionNoIntervention:"1",AutomatedExecutionInterventionOK:"2",ManualOrder:"3"});var am=Object.freeze({CUSIP:"1",SEDOL:"2",QUIK:"3",ISINNumber:"4",RICCode:"5",ISOCurrencyCode:"6",ISOCountryCode:"7",ExchangeSymbol:"8",ConsolidatedTapeAssociation:"9"});var nm=Object.freeze({NotImplied:0,ImpliedIn:1,ImpliedOut:2,BothImpliedInAndImpliedOut:3});var rm=Object.freeze({Net:1,Gross:2});var om=Object.freeze({SubAllocate:1,ThirdPartyAllocation:2});var sm=Object.freeze({Flat:1,ZeroCoupon:2,InterestBearing:3,NoPeriodicPayments:4,VariableRate:5,LessFeeForPut:6,SteppedCoupon:7,CouponPeriod:8,When:9,OriginalIssueDiscount:10,Callable:11,EscrowedToMaturity:12,EscrowedToRedemptionDate:13,PreRefunded:14,InDefault:15,Unrated:16,Taxable:17,Indexed:18,SubjectToAlternativeMinimumTax:19,OriginalIssueDiscountPrice:20,CallableBelowMaturityValue:21,CallableWithoutNotice:22,PriceTickRulesForSecurity:23,TradeTypeEligibilityDetailsForSecurity:24,InstrumentDenominator:25,InstrumentNumerator:26,InstrumentPricePrecision:27,InstrumentStrikePrice:28,TradeableIndicator:29,InstrumentEligibleAnonOrders:30,MinGuaranteedFillVolume:31,MinGuaranteedFillStatus:32,TradeAtSettlementEligibility:33,TestInstrument:34,DummyInstrument:35,NegativeSettlementPriceEligibility:36,NegativeStrikePriceEligibility:37,USStdContractInd:38,AdmittedToTradingOnTradingVenue:39,AverageDailyNotionalAmount:40,AverageDailyNumberTrades:41,Text:99});var cm=Object.freeze({ProRata:"P",Random:"R"});var pm=Object.freeze({Include:1,Exclude:2});var um=Object.freeze({StandardITM:0,ATMITM:1,ATMCallITM:2,ATMPutITM:3});var lm=Object.freeze({HaltWasNotRelatedToAHaltOfTheCommonStock:"N",HaltWasDueToCommonStockBeingHalted:"Y"});var mm=Object.freeze({NotNatural:"N",Natural:"Y"});var ym=Object.freeze({High:"H",Low:"L",Medium:"M"});var Sm=Object.freeze({Small:"S",Medium:"M",Large:"L",UndisclosedQuantity:"U"});var Pm=Object.freeze({AllOrNone:"A",MarketOnClose:"B",AtTheClose:"C",VWAP:"D",Axe:"E",AxeOnBid:"F",AxeOnOffer:"G",ClientNaturalWorking:"H",InTouchWith:"I",PositionWanted:"J",MarketMaking:"K",Limit:"L",MoreBehind:"M",ClientNaturalBlock:"N",AtTheOpen:"O",TakingAPosition:"P",AtTheMarket:"Q",ReadyToTrade:"R",PortfolioShown:"S",ThroughTheDay:"T",Unwind:"U",Versus:"V",Indication:"W",CrossingOpportunity:"X",AtTheMidpoint:"Y",PreOpen:"Z",QuantityNegotiable:"1",AllowLateBids:"2",ImmediateOrCounter:"3",AutoTrade:"4",AutomaticSpot:"a",PlatformCalculatedSpot:"b",OutsideSpread:"c",DeferredSpot:"d",NegotiatedSpot:"n"});var fm=Object.freeze({Large:"L",Medium:"M",Small:"S"});var gm=Object.freeze({New:"N",Cancel:"C",Replace:"R"});var hm=Object.freeze({Pay:"PAY",Rcv:"RCV",NA:"NA"});var Im=Object.freeze({Agent:"1",CrossAsAgent:"2",CrossAsPrincipal:"3",Principal:"4",RisklessPrincipal:"5"});var bm=Object.freeze({NotLastMessage:"N",LastMessage:"Y"});var Fm=Object.freeze({NeitherAddedNorRemovedLiquidity:0,AddedLiquidity:1,RemovedLiquidity:2,LiquidityRoutedOut:3,Auction:4,TriggeredStopOrder:5,TriggeredContingencyOrder:6,TriggeredMarketOrder:7,RemovedLiquidityAfterFirmOrderCommitment:8,AuctionExecutionAfterFirmOrderCommitment:9,Unknown:10,Other:11});var Em=Object.freeze({NotLastMessage:"N",LastMessage:"Y"});var Cm=Object.freeze({DoesNotConsituteALegalConfirm:"N",LegalConfirm:"Y"});var vm=Object.freeze({ParForPar:1,ModifiedDuration:2,Risk:4,Proceeds:5});var Tm=Object.freeze({Unknown:0,FirstLien:1,SecondLien:2,ThirdLien:3});var Xm=Object.freeze({CreditLimit:0,GrossPositionLimit:1,NetPositionLimit:2,RiskExposureLimit:3,LongPositionLimit:4,ShortPositionLimit:5});var Dm=Object.freeze({FiveDayMovingAverage:1,TwentyDayMovingAverage:2,NormalMarketSize:3,Other:4});var Rm=Object.freeze({Immediate:"1",WaitForInstruction:"2",SellDriven:"3",BuyDrivenCashTopUp:"4",BuyDrivenCashWithdraw:"5"});var xm=Object.freeze({PreListedOnly:0,UserRequested:1});var Nm=Object.freeze({InBiddingProcess:1,ReceivedForExecution:2,Executing:3,Cancelling:4,Alert:5,AllDone:6,Reject:7});var Am=Object.freeze({BrokerCredit:0,ExchangeClosed:2,TooLateToEnter:4,UnknownOrder:5,DuplicateOrder:6,UnsupportedOrderCharacteristic:11,Other:99});var wm=Object.freeze({Ack:1,Response:2,Timed:3,ExecStarted:4,AllDone:5,Alert:6});var Mm=Object.freeze({Add:"A",Delete:"D",Modify:"M",Snapshot:"S"});var Lm=Object.freeze({BridgeLoan:0,LetterOfCredit:1,RevolvingLoan:2,SwinglineFunding:3,TermLoan:4,TradeClaim:5});var Om=Object.freeze({No:"N",Yes:"Y"});var km=Object.freeze({NotLocked:0,AwayMarketNetter:1,ThreeTickLocked:2,LockedByMarketMaker:3,DirectedOrderLock:4,MultilegLock:5,MarketOrderLock:6,PreAssignmentLock:7});var Um=Object.freeze({OddLot:"1",RoundLot:"2",BlockLot:"3",RoundLotBasedUpon:"4"});var qm=Object.freeze({AdditionalMargin:1,AdjustedMargin:2,UnadjustedMargin:3,BinaryAddOnAmount:4,CashBalanceAmount:5,ConcentrationMargin:6,CoreMargin:7,DeliveryMargin:8,DiscretionaryMargin:9,FuturesSpreadMargin:10,InitialMargin:11,LiquidatingMargin:12,MarginCallAmount:13,MarginDeficitAmount:14,MarginExcessAmount:15,OptionPremiumAmount:16,PremiumMargin:17,ReserveMargin:18,SecurityCollateralAmount:19,StressTestAddOnAmount:20,SuperMargin:21,TotalMargin:22,VariationMargin:23,SecondaryVariationMargin:24,RolledUpMarginDeficit:25,SpreadResponseMargin:26,SystemicRiskMargin:27,CurveRiskMargin:28,IndexSpreadRiskMargin:29,SectorRiskMargin:30,JumpToDefaultRiskMargin:31,BasisRiskMargin:32,InterestRateRiskMargin:33,JumpToHealthRiskMargin:34,OtherRiskMargin:35});var Bm=Object.freeze({Posted:0,Received:1});var jm=Object.freeze({Summary:0,Detail:1,ExcessDeficit:2,NetPosition:3});var Gm=Object.freeze({Successful:0,InvalidOrUnknownInstrument:1,InvalidOrUnknownMarginClass:2,InvalidParties:3,InvalidTransportTypeReq:4,InvalidDestinationReq:5,NoMarginReqFound:6,MarginReqInquiryQualifierNotSupported:7,UnauthorizedForMarginReqInquiry:8,Other:99});var Qm=Object.freeze({Summary:0,Detail:1,ExcessDeficit:2});var Vm=Object.freeze({Normal:0,Stressed:1,Exceptional:2});var zm=Object.freeze({MasterAgreement:0,Confirmation:1});var Hm=Object.freeze({Basket:0,Bond:1,Cash:2,Commodity:3,ConvertibleBond:4,Equity:5,ExchangeTradedFund:6,Future:7,Index:8,Loan:9,Mortgage:10,MutualFund:11});var Wm=Object.freeze({NotApplicable:0,Applicable:1,AsInMasterAgreement:2,AsInConfirmation:3});var _m=Object.freeze({NoParticipation:0,BuyParticipation:1,SellParticipation:2,BothBuyAndSellParticipation:3});var Km=Object.freeze({MarketSegmentPoolMember:1,RetailSegment:2,WholesaleSegment:3});var Ym=Object.freeze({Active:1,Inactive:2,Published:3});var Jm=Object.freeze({InterProductSpread:1});var $m=Object.freeze({Pool:1,Retail:2,Wholesale:3});var Zm=Object.freeze({None:0,TradingRiskControl:1,ClearingRiskControl:2,MarketMakerProtection:3,StopTrading:4,EmergencyAction:5,SessionLossLogout:6,DuplicateLogin:7,ProductNotTraded:8,InstrumentNotTraded:9,CompleInstrumentDeleted:10,CircuitBreakerActivated:11,Other:99});var ey=Object.freeze({MassActionNotSupported:0,InvalidOrUnknownSecurity:1,InvalidOrUnknownUnderlyingSecurity:2,InvalidOrUnknownProduct:3,InvalidOrUnknownCFICode:4,InvalidOrUnknownSecurityType:5,InvalidOrUnknownTradingSession:6,InvalidOrUnknownMarket:7,InvalidOrUnknownMarketSegment:8,InvalidOrUnknownSecurityGroup:9,InvalidOrUnknownSecurityIssuer:10,InvalidOrUnknownIssuerOfUnderlyingSecurity:11,Other:99});var ty=Object.freeze({Rejected:0,Accepted:1,Completed:2});var dy=Object.freeze({AllOrdersForASecurity:1,AllOrdersForAnUnderlyingSecurity:2,AllOrdersForAProduct:3,AllOrdersForACFICode:4,AllOrdersForASecurityType:5,AllOrdersForATradingSession:6,AllOrders:7,AllOrdersForAMarket:8,AllOrdersForAMarketSegment:9,AllOrdersForASecurityGroup:10,CancelForSecurityIssuer:11,CancelForIssuerOfUnderlyingSecurity:12});var iy=Object.freeze({SuspendOrders:1,ReleaseOrdersFromSuspension:2,CancelOrders:3});var ay=Object.freeze({MassCancelNotSupported:0,InvalidOrUnknownSecurity:1,InvalidOrUnknownUnderlyingSecurity:2,InvalidOrUnknownProduct:3,InvalidOrUnknownCFICode:4,InvalidOrUnknownSecurityType:5,InvalidOrUnknownTradingSession:6,InvalidOrUnknownMarket:7,InvalidOrUnkownMarketSegment:8,InvalidOrUnknownSecurityGroup:9,InvalidOrUnknownSecurityIssuer:10,InvalidOrUnknownIssuerOfUnderlyingSecurity:11,Other:99});var ny=Object.freeze({CancelOrdersForASecurity:"1",CancelOrdersForAnUnderlyingSecurity:"2",CancelOrdersForAProduct:"3",CancelOrdersForACFICode:"4",CancelOrdersForASecurityType:"5",CancelOrdersForATradingSession:"6",CancelAllOrders:"7",CancelOrdersForAMarket:"8",CancelOrdersForAMarketSegment:"9",CancelOrdersForASecurityGroup:"A",CancelOrdersForSecurityIssuer:"B",CancelForIssuerOfUnderlyingSecurity:"C"});var ry=Object.freeze({CancelRequestRejected:"0",CancelOrdersForASecurity:"1",CancelOrdersForAnUnderlyingSecurity:"2",CancelOrdersForAProduct:"3",CancelOrdersForACFICode:"4",CancelOrdersForASecurityType:"5",CancelOrdersForATradingSession:"6",CancelAllOrders:"7",CancelOrdersForAMarket:"8",CancelOrdersForAMarketSegment:"9",CancelOrdersForASecurityGroup:"A",CancelOrdersForASecuritiesIssuer:"B",CancelOrdersForIssuerOfUnderlyingSecurity:"C"});var oy=Object.freeze({Successful:0,ResponseLevelNotSupported:1,InvalidMarket:2,InvalidMarketSegment:3,Other:99});var sy=Object.freeze({Accepted:1,AcceptedWithAdditionalEvents:2,Rejected:3});var cy=Object.freeze({StatusForOrdersForASecurity:1,StatusForOrdersForAnUnderlyingSecurity:2,StatusForOrdersForAProduct:3,StatusForOrdersForACFICode:4,StatusForOrdersForASecurityType:5,StatusForOrdersForATradingSession:6,StatusForAllOrders:7,StatusForOrdersForAPartyID:8,StatusForSecurityIssuer:9,StatusForIssuerOfUnderlyingSecurity:10});var py=Object.freeze({AccruedInterest:1,DealPrice:2,TradeDate:3,SettlementDate:4,SideIndicator:5,TradedCurrency:6,AccountID:7,ExecutingBrokerID:8,SettlementCurrencyAndAmount:9,InvestmentManagerID:10,NetAmount:11,PlaceOfSettlement:12,Commissions:13,SecurityIdentifier:14,QualityAllocated:15,Principal:16,Fees:17,Tax:18});var uy=Object.freeze({FixedAmount:1,Percentage:2});var ly=Object.freeze({NoMatchingConfirmation:0,NoMatchingAllocation:1,AllocationDataElementMissing:2,ConfirmationDataElementMissing:3,DataDifferenceNotWithinTolerance:4,MatchWithinTolerance:5,Other:99});var my=Object.freeze({Match:1,DoNotMatch:2});var yy=Object.freeze({Mandatory:1,Optional:2});var Sy=Object.freeze({Compared:"0",Uncompared:"1",AdvisoryOrAlert:"2",Mismatched:"3"});var Py=Object.freeze({ExactMatchPlus4BadgesExecTime:"A1",ExactMatchPlus4Badges:"A2",ACTAcceptedTrade:"M3",ExactMatchPlus2BadgesExecTime:"A3",ACTDefaultTrade:"M4",ExactMatchPlus2Badges:"A4",ACTDefaultAfterM2:"M5",ExactMatchPlusExecTime:"A5",ACTM6Match:"M6",StampedAdvisoriesOrSpecialistAccepts:"AQ",A1ExactMatchSummarizedQuantity:"S1",A2ExactMatchSummarizedQuantity:"S2",A3ExactMatchSummarizedQuantity:"S3",A4ExactMatchSummarizedQuantity:"S4",A5ExactMatchSummarizedQuantity:"S5",ExactMatchMinusBadgesTimes:"M1",SummarizedMatchMinusBadgesTimes:"M2",OCSLockedIn:"MT",OnePartyTradeReport:"1",TwoPartyTradeReport:"2",ConfirmedTradeReport:"3",AutoMatch:"4",CrossAuction:"5",CounterOrderSelection:"6",CallAuction:"7",Issuing:"8",SystematicInternaliser:"9",AutoMatchLastLook:"10",CrossAuctionLastLook:"11"});var fy=Object.freeze({YearMonthOnly:0,YearMonthDay:1,YearMonthWeek:2});var gy=Object.freeze({Months:0,Days:1,Weeks:2,Years:3});var hy=Object.freeze({TopOfBook:1,PriceDepth:2,OrderDepth:3});var Iy=Object.freeze({Bid:"0",Offer:"1",Trade:"2",IndexValue:"3",OpeningPrice:"4",ClosingPrice:"5",SettlementPrice:"6",TradingSessionHighPrice:"7",TradingSessionLowPrice:"8",VWAP:"9",Imbalance:"A",TradeVolume:"B",OpenInterest:"C",CompositeUnderlyingPrice:"D",SimulatedSellPrice:"E",SimulatedBuyPrice:"F",MarginRate:"G",MidPrice:"H",EmptyBook:"J",SettleHighPrice:"K",SettleLowPrice:"L",PriorSettlePrice:"M",SessionHighBid:"N",SessionLowOffer:"O",EarlyPrices:"P",AuctionClearingPrice:"Q",SwapValueFactor:"S",DailyValueAdjustmentForLongPositions:"R",CumulativeValueAdjustmentForLongPositions:"T",DailyValueAdjustmentForShortPositions:"U",CumulativeValueAdjustmentForShortPositions:"V",FixingPrice:"W",CashRate:"X",RecoveryRate:"Y",RecoveryRateForLong:"Z",RecoveryRateForShort:"a",MarketBid:"b",MarketOffer:"c",ShortSaleMinPrice:"d",PreviousClosingPrice:"e",ThresholdLimitPriceBanding:"g",DailyFinancingValue:"h",AccruedFinancingValue:"i",TWAP:"t"});var by=Object.freeze({No:"N",Yes:"Y"});var Fy=Object.freeze({Book:0,OffBook:1,Cross:2,QuoteDrivenMarket:3,DarkOrderBook:4,AuctionDrivenMarket:5,QuoteNegotiation:6,VoiceNegotiation:7,HybridMarket:8,OtherMarket:9});var Ey=Object.freeze({StartInstrumentRefData:1,EndInstrumentRefData:2,StartOffMarketTrades:3,EndOffMarketTrades:4,StartOrderBookTrades:5,EndOrderBookTrades:6,StartOpenInterest:7,EndOpenInterest:8,StartSettlementPrices:9,EndSettlementPrices:10,StartStatsRefData:11,EndStatsRefData:12,StartStatistics:13,EndStatistics:14});var Cy=Object.freeze({UnknownSymbol:"0",DuplicateMDReqID:"1",InsufficientBandwidth:"2",InsufficientPermissions:"3",UnsupportedSubscriptionRequestType:"4",UnsupportedMarketDepth:"5",UnsupportedMDUpdateType:"6",UnsupportedAggregatedBook:"7",UnsupportedMDEntryType:"8",UnsupportedTradingSessionID:"9",UnsupportedScope:"A",UnsupportedOpenCloseSettleFlag:"B",UnsupportedMDImplicitDelete:"C",InsufficientCredit:"D"});var vy=Object.freeze({Customer:1,CustomerProfessional:2,DoNotTradeThrough:3});var Ty=Object.freeze({SlidingWindow:1,SlidingWindowPeak:2,FixedDateRange:3,FixedTimeRange:4,CurrentTimeUnit:5,PreviousTimeUnit:6,MaximumRange:7,MaximumRangeUpToPreviousTimeUnit:8});var Xy=Object.freeze({BuyersToSellers:1,UpticksToDownticks:2,MarketMakerToNonMarketMaker:3,AutomatedToNonAutomated:4,OrdersToTrades:5,QuotesToTrades:6,OrdersAndQuotesToTrades:7,FailedToTotalTradedValue:8,BenefitsToTotalTradedValue:9,FeesToTotalTradedValue:10,TradeVolumeToTotalTradedVolume:11,OrdersToTotalNumberOrders:12});var Dy=Object.freeze({Successful:0,InvalidOrUnknownMarket:1,InvalidOrUnknownMarketSegment:2,InvalidOrUnknownSecurityList:3,InvalidOrUnknownInstruments:4,InvalidParties:5,TradeDateOutOfSupportedRange:6,UnsupportedStatisticType:7,UnsupportedScopeOrSubScope:8,UnsupportedScopeType:9,MarketDepthNotSupported:10,FrequencyNotSupported:11,UnsupportedStatisticInterval:12,UnsupportedStatisticDateRange:13,UnsupportedStatisticTimeRange:14,UnsupportedRatioType:15,InvalidOrUnknownTradeInputSource:16,InvalidOrUnknownTradingSession:17,UnauthorizedForStatisticRequest:18,Other:99});var Ry=Object.freeze({BidPrices:1,OfferPrices:2,BidDepth:3,OfferDepth:4,Orders:5,Quotes:6,OrdersAndQuotes:7,Trades:8,TradePrices:9,AuctionPrices:10,OpeningPrices:11,ClosingPrices:12,SettlementPrices:13,UnderlyingPrices:14,OpenInterest:15,IndexValues:16,MarginRates:17,Outages:18,ScheduledAuctions:19,ReferencePrices:20,TradeValue:21,MarketDataFeeItems:22,Rebates:23,Discounts:24,Payments:25,Taxes:26,Levies:27,Benefits:28,Fees:29,OrdersRFQs:30,MarketMakers:31,TradingInterruptions:32,TradingSuspensions:33,NoQuotes:34,RequestForQuotes:35,TradeVolume:36});var xy=Object.freeze({EntryRate:1,ModificationRate:2,CancelRate:3,DownwardMove:4,UpwardMove:5});var Ny=Object.freeze({Active:1,Inactive:2});var Ay=Object.freeze({Visible:1,Hidden:2,Indicative:3,Tradeable:4,Passive:5,MarketConsensus:6,Power:7,HardwareError:8,SoftwareError:9,NetworkError:10,Failed:11,Executed:12,Entered:13,Modified:14,Cancelled:15,MarketDataAccess:16,TerminalAccess:17,Volume:18,Cleared:19,Settled:20,Other:21,Monetary:22,NonMonetary:23,Gross:24,LargeInScale:25,NeitherHiddenNorLargeInScale:26,CorporateAction:27,VenueDecision:28,MinimumTimePeriod:29,Open:30,NotExecuted:31,Aggressive:32,Directed:33});var wy=Object.freeze({Count:1,AverageVolume:2,TotalVolume:3,Distribution:4,Ratio:5,Liquidity:6,VWAP:7,Volatility:8,Duration:9,Tick:10,AverageValue:11,TotalValue:12,High:13,Low:14,Midpoint:15,First:16,Last:17,Final:18,ExchangeBest:19,ExchangeBestWithVolume:20,ConsolidatedBest:21,ConsolidatedBestWithVolume:22,TWAP:23,AverageDuration:24,AveragePrice:25,TotalFees:26,TotalBenefits:27,MedianValue:28,AverageLiquidity:29,MedianDuration:30});var My=Object.freeze({Absolute:1,Percentage:2});var Ly=Object.freeze({New:"0",Change:"1",Delete:"2",DeleteThru:"3",DeleteFrom:"4",Overlay:"5"});var Oy=Object.freeze({FullRefresh:0,IncrementalRefresh:1});var ky=Object.freeze({Range1:1,Range2:2,Range3:3});var Uy=Object.freeze({ISO2022JP:"ISO-2022-JP",EUCJP:"EUC-JP",ShiftJIS:"Shift_JIS",UTF8:"UTF-8"});var qy=Object.freeze({Realtime:1,EndOfDay:2});var By=Object.freeze({Once:1,Multiple:2});var jy=Object.freeze({Absolute:0,PerUnit:1,Percentage:2});var Gy=Object.freeze({Contributes:0,DoesNotContribute:1});var Qy=Object.freeze({Regulatory:"1",Tax:"2",LocalCommission:"3",ExchangeFees:"4",Stamp:"5",Levy:"6",Other:"7",Markup:"8",ConsumptionTax:"9",PerTransaction:"10",Conversion:"11",Agent:"12",TransferFee:"13",SecurityLending:"14",TradeReporting:"15",TaxOnPrincipalAmount:"16",TaxOnAccruedInterestAmount:"17",NewIssuanceFee:"18",ServiceFee:"19",OddLotFee:"20",AuctionFee:"21",ValueAddedTax:"22",SalesTax:"23",ExecutionFee:"24",OrderEntryFee:"25",OrderModificationFee:"26",OrdersCancellationFee:"27",MarketDataAccessFee:"28",MarketDataTerminalFee:"29",MarketDataVolumeFee:"30",ClearingFee:"31",SettlementFee:"32",Rebates:"33",Discounts:"34",Payments:"35",NonMonetaryPayments:"36"});var Vy=Object.freeze({UtilityProvidedStandardModel:0,ProprietaryModel:1});var zy=Object.freeze({Passed:"Y",NotChecked:"N",ExemptBelowLimit:"1",ExemptMoneyType:"2",ExemptAuthorised:"3"});var Hy=Object.freeze({Receive:"R",Send:"S"});var nt=Object.freeze({Heartbeat:"0",TestRequest:"1",ResendRequest:"2",Reject:"3",SequenceReset:"4",Logout:"5",IOI:"6",Advertisement:"7",ExecutionReport:"8",OrderCancelReject:"9",Logon:"A",News:"B",Email:"C",NewOrderSingle:"D",NewOrderList:"E",OrderCancelRequest:"F",OrderCancelReplaceRequest:"G",OrderStatusRequest:"H",AllocationInstruction:"J",ListCancelRequest:"K",ListExecute:"L",ListStatusRequest:"M",ListStatus:"N",AllocationInstructionAck:"P",DontKnowTrade:"Q",QuoteRequest:"R",Quote:"S",SettlementInstructions:"T",MarketDataRequest:"V",MarketDataSnapshotFullRefresh:"W",MarketDataIncrementalRefresh:"X",MarketDataRequestReject:"Y",QuoteCancel:"Z",QuoteStatusRequest:"a",MassQuoteAck:"b",SecurityDefinitionRequest:"c",SecurityDefinition:"d",SecurityStatusRequest:"e",SecurityStatus:"f",TradingSessionStatusRequest:"g",TradingSessionStatus:"h",MassQuote:"i",BusinessMessageReject:"j",BidRequest:"k",BidResponse:"l",ListStrikePrice:"m",XMLnonFIX:"n",RegistrationInstructions:"o",RegistrationInstructionsResponse:"p",OrderMassCancelRequest:"q",OrderMassCancelReport:"r",NewOrderCross:"s",CrossOrderCancelReplaceRequest:"t",CrossOrderCancelRequest:"u",SecurityTypeRequest:"v",SecurityTypes:"w",SecurityListRequest:"x",SecurityList:"y",DerivativeSecurityListRequest:"z",DerivativeSecurityList:"AA",NewOrderMultileg:"AB",MultilegOrderCancelReplace:"AC",TradeCaptureReportRequest:"AD",TradeCaptureReport:"AE",OrderMassStatusRequest:"AF",QuoteRequestReject:"AG",RFQRequest:"AH",QuoteStatusReport:"AI",QuoteResponse:"AJ",Confirmation:"AK",PositionMaintenanceRequest:"AL",PositionMaintenanceReport:"AM",RequestForPositions:"AN",RequestForPositionsAck:"AO",PositionReport:"AP",TradeCaptureReportRequestAck:"AQ",TradeCaptureReportAck:"AR",AllocationReport:"AS",AllocationReportAck:"AT",ConfirmationAck:"AU",SettlementInstructionRequest:"AV",AssignmentReport:"AW",CollateralRequest:"AX",CollateralAssignment:"AY",CollateralResponse:"AZ",CollateralReport:"BA",CollateralInquiry:"BB",NetworkCounterpartySystemStatusRequest:"BC",NetworkCounterpartySystemStatusResponse:"BD",UserRequest:"BE",UserResponse:"BF",CollateralInquiryAck:"BG",ConfirmationRequest:"BH",ContraryIntentionReport:"BO",SecurityDefinitionUpdateReport:"BP",SecurityListUpdateReport:"BK",AdjustedPositionReport:"BL",AllocationInstructionAlert:"BM",ExecutionAck:"BN",TradingSessionList:"BJ",TradingSessionListRequest:"BI",SettlementObligationReport:"BQ",DerivativeSecurityListUpdateReport:"BR",TradingSessionListUpdateReport:"BS",MarketDefinitionRequest:"BT",MarketDefinition:"BU",MarketDefinitionUpdateReport:"BV",ApplicationMessageRequest:"BW",ApplicationMessageRequestAck:"BX",ApplicationMessageReport:"BY",OrderMassActionReport:"BZ",OrderMassActionRequest:"CA",UserNotification:"CB",StreamAssignmentRequest:"CC",StreamAssignmentReport:"CD",StreamAssignmentReportACK:"CE",PartyDetailsListRequest:"CF",PartyDetailsListReport:"CG",MarginRequirementInquiry:"CH",MarginRequirementInquiryAck:"CI",MarginRequirementReport:"CJ",PartyDetailsListUpdateReport:"CK",PartyRiskLimitsRequest:"CL",PartyRiskLimitsReport:"CM",SecurityMassStatusRequest:"CN",SecurityMassStatus:"CO",AccountSummaryReport:"CQ",PartyRiskLimitsUpdateReport:"CR",PartyRiskLimitsDefinitionRequest:"CS",PartyRiskLimitsDefinitionRequestAck:"CT",PartyEntitlementsRequest:"CU",PartyEntitlementsReport:"CV",QuoteAck:"CW",PartyDetailsDefinitionRequest:"CX",PartyDetailsDefinitionRequestAck:"CY",PartyEntitlementsUpdateReport:"CZ",PartyEntitlementsDefinitionRequest:"DA",PartyEntitlementsDefinitionRequestAck:"DB",TradeMatchReport:"DC",TradeMatchReportAck:"DD",PartyRiskLimitsReportAck:"DE",PartyRiskLimitCheckRequest:"DF",PartyRiskLimitCheckRequestAck:"DG",PartyActionRequest:"DH",PartyActionReport:"DI",MassOrder:"DJ",MassOrderAck:"DK",PositionTransferInstruction:"DL",PositionTransferInstructionAck:"DM",PositionTransferReport:"DN",MarketDataStatisticsRequest:"DO",MarketDataStatisticsReport:"DP",CollateralReportAck:"DQ",MarketDataReport:"DR",CrossRequest:"DS",CrossRequestAck:"DT",AllocationInstructionAlertRequest:"DU",AllocationInstructionAlertRequestAck:"DV",TradeAggregationRequest:"DW",TradeAggregationReport:"DX",PayManagementReport:"EA",PayManagementReportAck:"EB",PayManagementRequest:"DY",PayManagementRequestAck:"DZ",SettlementStatusRequest:"EC",SettlementStatusRequestAck:"ED",SettlementStatusReport:"EE",SettlementStatusReportAck:"EF",SecurityRiskMetricsReport:"EG",AlgoCertificateRequest:"EH",AlgoCertificateRequestAck:"EI",AlgoCertificateReport:"EJ",AlgoCertificateReportAck:"EK",TestSuiteDefinitionRequest:"EL",TestSuiteDefinitionRequestAck:"EM",TestActionRequest:"EN",TestActionRequestAck:"EO",TestActionReport:"EP"});var Wy=Object.freeze({NotMultiJrsdctnEligible:0,MultiJrsdctnEligible:1});var _y=Object.freeze({SingleSecurity:"1",IndividualLegOfAMultiLegSecurity:"2",MultiLegSecurity:"3"});var Ky=Object.freeze({ReportByMulitlegSecurityOnly:0,ReportByMultilegSecurityAndInstrumentLegs:1,ReportByInstrumentLegsOnly:2});var Yy=Object.freeze({PredefinedMultilegSecurity:0,UserDefinedMultilegSecurity:1,UserDefined:2});var Jy=Object.freeze({NetPrice:0,ReversedNetPrice:1,YieldDifference:2,Individual:3,ContractWeightedAveragePrice:4,MultipliedPrice:5});var $y=Object.freeze({Bid:0,Offer:1,MidPrice:2});var Zy=Object.freeze({NotApplicable:0,Direct:1,SIP:2,Hybrid:3});var e0=Object.freeze({AutoSpot:0,NegotiatedSpot:1,PhoneSpot:2});var t0=Object.freeze({Net:1,Gross:2});var d0=Object.freeze({Snapshot:1,Subscribe:2,StopSubscribing:4,LevelOfDetail:8});var i0=Object.freeze({Full:1,IncrementalUpdate:2});var a0=Object.freeze({CompanyNews:0,MarketplaceNews:1,FinancialMarketNews:2,TechnicalNews:3,OtherNews:99});var n0=Object.freeze({Replacement:0,OtherLanguage:1,Complimentary:2,Withdrawal:3});var r0=Object.freeze({PotentialAdjustment:0,CashEquivalent:1});var o0=Object.freeze({Unadjusted:0,Adjusted:1});var s0=Object.freeze({OneSide:1,BothSides:2});var c0=Object.freeze({OrderSuspended:0,InstrumentSuspended:1});var p0=Object.freeze({DetailsShouldNotBeCommunicated:"N",DetailsShouldBeCommunicated:"Y"});var u0=Object.freeze({Bond:"0",ConvertBond:"1",Mortgage:"2",Loan:"3"});var l0=Object.freeze({TreatAsRoundLot:"N",TreatAsOddLot:"Y"});var m0=Object.freeze({Offset:0,Onset:1});var y0=Object.freeze({Regular:0,Offshore:1,Onshore:2});var S0=Object.freeze({Close:"C",Open:"O"});var P0=Object.freeze({DailyOpen:"0",SessionOpen:"1",DeliverySettlementEntry:"2"});var f0=Object.freeze({DailyOpen:"0",SessionOpen:"1",DeliverySettlementEntry:"2",ExpectedEntry:"3",EntryFromPreviousBusinessDay:"4",TheoreticalPriceValue:"5"});var g0=Object.freeze({Unadjusted:0,Adjusted:1});var h0=Object.freeze({Vanilla:1,Capped:2,Binary:3,Asian:4,Barrier:5,DigitalBarrier:6,Lookback:7,OtherPathDependent:8,Other:99});var I0=Object.freeze({AggregatedOrder:0,PendingAllocation:1,LiquidityProvisionActivityOrder:2,RiskReductionOrder:3,AlgorithmicOrder:4,SystematicInternaliserOrder:5,AllExecutionsSubmittedToAPA:6,OrderExecutionInstructedByClient:7,LargeInScale:8,Hidden:9,SubjectToEUSTO:10,SubjectToUKSTO:11,RepresentativeOrder:12,LinkageType:13,ExemptFromSTO:14});var b0=Object.freeze({Agency:"A",Proprietary:"G",Individual:"I",Principal:"P",RisklessPrincipal:"R",AgentForOtherMember:"W",MixedCapacity:"M"});var F0=Object.freeze({Order:"1",Quote:"2",PrivatelyNegotiatedTrade:"3",MultilegOrder:"4",LinkedOrder:"5",QuoteRequest:"6",ImpliedOrder:"7",CrossOrder:"8",StreamingPrice:"9",InternalCrossOrder:"A"});var E0=Object.freeze({Seconds:0,TenthsOfASecond:1,HundredthsOfASecond:2,Milliseconds:3,Microseconds:4,Nanoseconds:5,Minutes:10,Hours:11,Days:12,Weeks:13,Months:14,Years:15});var C0=Object.freeze({Add:"1",Modify:"2",Delete:"3",Suspend:"4",Release:"5"});var v0=Object.freeze({AddOrderRequest:1,ModifyOrderRequest:2,DeleteOrderRequest:3,OrderEnteredOOB:4,OrderModifiedOOB:5,OrderDeletedOOB:6,OrderActivatedOrTriggered:7,OrderExpired:8,ReserveOrderRefreshed:9,AwayMarketBetter:10,CorporateAction:11,StartOfDay:12,EndOfDay:13});var T0=Object.freeze({Added:1,Modified:2,Deleted:3,PartiallyFilled:4,Filled:5,Suspended:6,Released:7,Restated:8,Locked:9,Triggered:10,Activated:11});var X0=Object.freeze({FINRAOATS:1,FIAExecutionSourceCode:2});var D0=Object.freeze({OrderReceivedFromCustomer:1,OrderReceivedFromWithinFirm:2,OrderReceivedFromAnotherBrokerDealer:3,OrderReceivedFromCustomerOrWithFirm:4,OrderReceivedFromDirectAccessCustomer:5,OrderReceivedFromForeignDealerEquivalent:6,OrderReceivedFromExecutionOnlyService:7});var R0=Object.freeze({NoChange:0,ExecutingPartyChange:1,EnteringPartyChange:2,SpecifiedPartyChange:3});var x0=Object.freeze({NotSpecified:0,OrderAggregation:1,OrderSplit:2});var N0=Object.freeze({NoAck:0,MinimumAck:1,AckEach:2,SummaryAck:3});var A0=Object.freeze({ProgramTrade:"1",IndexArbitrage:"2",NonIndexArbitrage:"3",CompetingMarketMaker:"4",ActingAsMarketMakerOrSpecialistInSecurity:"5",ActingAsMarketMakerOrSpecialistInUnderlying:"6",ForeignEntity:"7",ExternalMarketParticipant:"8",ExternalInterConnectedMarketLinkage:"9",RisklessArbitrage:"A",IssuerHolding:"B",IssuePriceStabilization:"C",NonAlgorithmic:"D",Algorithmic:"E",Cross:"F",InsiderAccount:"G",SignificantShareholder:"H",NormalCourseIssuerBid:"I"});var w0=Object.freeze({BrokerCredit:0,UnknownSymbol:1,ExchangeClosed:2,OrderExceedsLimit:3,TooLateToEnter:4,UnknownOrder:5,DuplicateOrder:6,DuplicateOfAVerballyCommunicatedOrder:7,StaleOrder:8,TradeAlongRequired:9,InvalidInvestorID:10,UnsupportedOrderCharacteristic:11,SurveillanceOption:12,IncorrectQuantity:13,IncorrectAllocatedQuantity:14,UnknownAccount:15,PriceExceedsCurrentPriceBand:16,InvalidPriceIncrement:18,ReferencePriceNotAvailable:19,NotionalValueExceedsThreshold:20,AlgorithmRiskThresholdBreached:21,ShortSellNotPermitted:22,ShortSellSecurityPreBorrowRestriction:23,ShortSellAccountPreBorrowRestriction:24,InsufficientCreditLimit:25,ExceededClipSizeLimit:26,ExceededMaxNotionalOrderAmt:27,ExceededDV01PV01Limit:28,ExceededCS01Limit:29,LastLook:30,LastLookLatency:31,UnavailablePriceLiquidity:32,InvalidMissingEntitlements:33,Other:99});var M0=Object.freeze({New:"0",PartiallyFilled:"1",Filled:"2",DoneForDay:"3",Canceled:"4",Replaced:"5",PendingCancel:"6",Stopped:"7",Rejected:"8",Suspended:"9",PendingNew:"A",Calculated:"B",Expired:"C",AcceptedForBidding:"D",PendingReplace:"E"});var L0=Object.freeze({Market:"1",Limit:"2",Stop:"3",StopLimit:"4",MarketOnClose:"5",WithOrWithout:"6",LimitOrBetter:"7",LimitWithOrWithout:"8",OnBasis:"9",OnClose:"A",LimitOnClose:"B",ForexMarket:"C",PreviouslyQuoted:"D",PreviouslyIndicated:"E",ForexLimit:"F",ForexSwap:"G",ForexPreviouslyQuoted:"H",Funari:"I",MarketIfTouched:"J",MarketWithLeftOverAsLimit:"K",PreviousFundValuationPoint:"L",NextFundValuationPoint:"M",Pegged:"P",CounterOrderSelection:"Q",StopOnBidOrOffer:"R",StopLimitOnBidOrOffer:"S"});var O0=Object.freeze({MemberTradingForTheirOwnAccount:1,ClearingFirmTradingForItsProprietaryAccount:2,MemberTradingForAnotherMember:3,AllOther:4});var k0=Object.freeze({JointInvestors:"J",TenantsInCommon:"T",JointTrustees:"2"});var U0=Object.freeze({IndividualInvestor:1,PublicCompany:2,PrivateCompany:3,IndividualTrustee:4,CompanyTrustee:5,PensionPlan:6,CustodianUnderGiftsToMinorsAct:7,Trusts:8,Fiduciaries:9,NetworkingSubAccount:10,NonProfitOrganization:11,CorporateBody:12,Nominee:13,InstitutionalCustomer:14,Combined:15,MemberFirmEmployee:16,MarketMakingAccount:17,ProprietaryAccount:18,NonbrokerDealer:19,UnknownBeneficialOwnerType:20,FirmsErrorAccount:21,FirmAgencyAveragePriceAccount:22});var q0=Object.freeze({InvalidParty:0,UnkReqParty:1,NotAuthorized:98,Other:99});var B0=Object.freeze({Accepted:0,Completed:1,Rejected:2});var j0=Object.freeze({Suspend:0,HaltTrading:1,Reinstate:2});var G0=Object.freeze({Accepted:0,AcceptedWithChanges:1,Rejected:2});var Q0=Object.freeze({Successful:0,InvalidParty:1,InvalidRelatedParty:2,InvalidPartyStatus:3,NotAuthorized:98,Other:99});var V0=Object.freeze({Accepted:0,AcceptedWithChanges:1,Rejected:2,AcceptancePending:3});var z0=Object.freeze({Agency:0,Principal:1,RisklessPrincipal:2,ExchangeOrderSubmitter:30,GeneralClearingMember:3,IndividualClearingMember:4,PreferredMarketMaker:5,DirectedMarketMaker:6,Bank:7,Hub:8,PrimaryTrdRepository:9,OrigTrdRepository:10,AddtnlIntlTrdRepository:11,AddtnlDomesticTrdRepository:12,RelatedExchange:13,OptionsExchange:14,SpecifiedExchange:15,ConstituentExchange:16,ExemptFromTradeReporting:17,Current:18,New:19,DesignatedSponsor:20,Specialist:21,Algorithm:22,FirmOrLegalEntity:23,NaturalPerson:24,RegularTrader:25,HeadTrader:26,Supervisor:27,TriParty:28,Lender:29});var H0=Object.freeze({Active:0,Suspended:1,Halted:2});var W0=Object.freeze({UKNationalInsuranceOrPensionNumber:"6",KoreanInvestorID:"1",ISITCAcronym:"I",BIC:"B",USSocialSecurityNumber:"7",TaiwaneseForeignInvestorID:"2",GeneralIdentifier:"C",USEmployerOrTaxIDNumber:"8",TaiwaneseTradingAcct:"3",Proprietary:"D",AustralianBusinessNumber:"9",MalaysianCentralDepository:"4",ISOCountryCode:"E",AustralianTaxFileNumber:"A",ChineseInvestorID:"5",SettlementEntityLocation:"F",TaxID:"J",MIC:"G",CSDParticipant:"H",AustralianCompanyNumber:"K",AustralianRegisteredBodyNumber:"L",CFTCReportingFirmIdentifier:"M",LegalEntityIdentifier:"N",InterimIdentifier:"O",ShortCodeIdentifier:"P",NationalIDNaturalPerson:"Q",IndiaPermanentAccountNumber:"R",FDID:"S",SPSAID:"T",MasterSPSAID:"U",KoreaShortSellingRegistrationNumber:"V"});var _0=Object.freeze({IsAlso:0,ClearsFor:1,ClearsThrough:2,TradesFor:3,TradesThrough:4,Sponsors:5,SponsoredThrough:6,ProvidesGuaranteeFor:7,IsGuaranteedBy:8,MemberOf:9,HasMembers:10,ProvidesMarketplaceFor:11,ParticipantOfMarketplace:12,CarriesPositionsFor:13,PostsTradesTo:14,EntersTradesFor:15,EntersTradesThrough:16,ProvidesQuotesTo:17,RequestsQuotesFrom:18,InvestsFor:19,InvestsThrough:20,BrokersTradesFor:21,BrokersTradesThrough:22,ProvidesTradingServicesFor:23,UsesTradingServicesOf:24,ApprovesOf:25,ApprovedBy:26,ParentFirmFor:27,SubsidiaryOf:28,RegulatoryOwnerOf:29,OwnedByRegulatory:30,Controls:31,IsControlledBy:32,LegalOwnerOf:33,OwnedByLegal:34,BeneficialOwnerOf:35,OwnedByBeneficial:36,SettlesFor:37,SettlesThrough:38});var K0=Object.freeze({Disabled:0,Enabled:1});var Y0=Object.freeze({ExecutingFirm:1,BrokerOfCredit:2,ClientID:3,ClearingFirm:4,InvestorID:5,IntroducingFirm:6,EnteringFirm:7,Locate:8,FundManagerClientID:9,SettlementLocation:10,OrderOriginationTrader:11,ExecutingTrader:12,OrderOriginationFirm:13,GiveupClearingFirmDepr:14,CorrespondantClearingFirm:15,ExecutingSystem:16,ContraFirm:17,ContraClearingFirm:18,SponsoringFirm:19,UnderlyingContraFirm:20,ClearingOrganization:21,Exchange:22,CustomerAccount:24,CorrespondentClearingOrganization:25,CorrespondentBroker:26,Buyer:27,Custodian:28,Intermediary:29,Agent:30,SubCustodian:31,Beneficiary:32,InterestedParty:33,RegulatoryBody:34,LiquidityProvider:35,EnteringTrader:36,ContraTrader:37,PositionAccount:38,ContraInvestorID:39,TransferToFirm:40,ContraPositionAccount:41,ContraExchange:42,InternalCarryAccount:43,OrderEntryOperatorID:44,SecondaryAccountNumber:45,ForeignFirm:46,ThirdPartyAllocationFirm:47,ClaimingAccount:48,AssetManager:49,PledgorAccount:50,PledgeeAccount:51,LargeTraderReportableAccount:52,TraderMnemonic:53,SenderLocation:54,SessionID:55,AcceptableCounterparty:56,UnacceptableCounterparty:57,EnteringUnit:58,ExecutingUnit:59,IntroducingBroker:60,QuoteOriginator:61,ReportOriginator:62,SystematicInternaliser:63,MultilateralTradingFacility:64,RegulatedMarket:65,MarketMaker:66,InvestmentFirm:67,HostCompetentAuthority:68,HomeCompetentAuthority:69,CompetentAuthorityLiquidity:70,CompetentAuthorityTransactionVenue:71,ReportingIntermediary:72,ExecutionVenue:73,MarketDataEntryOriginator:74,LocationID:75,DeskID:76,MarketDataMarket:77,AllocationEntity:78,PrimeBroker:79,StepOutFirm:80,BrokerClearingID:81,CentralRegistrationDepository:82,ClearingAccount:83,AcceptableSettlingCounterparty:84,UnacceptableSettlingCounterparty:85,CLSMemberBank:86,InConcertGroup:87,InConcertControllingEntity:88,LargePositionsReportingAccount:89,SettlementFirm:90,SettlementAccount:91,ReportingMarketCenter:92,RelatedReportingMarketCenter:93,AwayMarket:94,GiveupTradingFirm:95,TakeupTradingFirm:96,GiveupClearingFirm:97,TakeupClearingFirm:98,OriginatingMarket:99,MarginAccount:100,CollateralAssetAccount:101,DataRepository:102,CalculationAgent:103,ExerciseNoticeSender:104,ExerciseNoticeReceiver:105,RateReferenceBank:106,Correspondent:107,BeneficiaryBank:109,Borrower:110,PrimaryObligator:111,Guarantor:112,ExcludedReferenceEntity:113,DeterminingParty:114,HedgingParty:115,ReportingEntity:116,SalesPerson:117,Operator:118,CSD:119,ICSD:120,TradingSubAccount:121,InvestmentDecisionMaker:122,PublishingIntermediary:123,CSDParticipant:124,Issuer:125,ContraCustomerAccount:126,ContraInvestmentDecisionMaker:127,AuthorizingPerson:128});var J0=Object.freeze({Firm:1,Person:2,System:3,Application:4,FullLegalNameOfFirm:5,PostalAddress:6,PhoneNumber:7,EmailAddress:8,ContactName:9,SecuritiesAccountNumber:10,RegistrationNumber:11,RegisteredAddressForConfirmation:12,RegulatoryStatus:13,RegistrationName:14,CashAccountNumber:15,BIC:16,CSDParticipantMemberCode:17,RegisteredAddress:18,FundAccountName:19,TelexNumber:20,FaxNumber:21,SecuritiesAccountName:22,CashAccountName:23,Department:24,LocationDesk:25,PositionAccountType:26,SecurityLocateID:27,MarketMaker:28,EligibleCounterparty:29,ProfessionalClient:30,Location:31,ExecutionVenue:32,CurrencyDeliveryIdentifier:33,AddressCity:34,AddressStateOrProvince:35,AddressPostalCode:36,AddressStreet:37,AddressISOCountryCode:38,ISOCountryCode:39,MarketSegment:40,CustomerAccountType:41,OmnibusAccount:42,FundsSegregationType:43,GuaranteeFund:44,SwapDealer:45,MajorParticipant:46,FinancialEntity:47,USPerson:48,ReportingEntityIndicator:49,ElectedClearingRequirementException:50,BusinessCenter:51,ReferenceText:52,ShortMarkingExemptAccount:53,ParentFirmIdentifier:54,ParentFirmName:55,DealIdentifier:56,SystemTradeID:57,SystemTradeSubID:58,FCMCode:59,DlvryTrmlCode:60,VolntyRptEntity:61,RptObligJursdctn:62,VolntyRptJursdctn:63,CompanyActivities:64,EEAreaDomiciled:65,ContractLinked:66,ContractAbove:67,VolntyRptPty:68,EndUser:69,LocationOrJurisdiction:70,DerivativesDealer:71,Domicile:72,ExemptFromRecognition:73,Payer:74,Receiver:75,SystematicInternaliser:76,PublishingEntityIndicator:77,FirstName:78,Surname:79,DateOfBirth:80,OrderTransmittingFirm:81,OrderTransmittingFirmBuyer:82,OrderTransmitterSeller:83,LegalEntityIdentifier:84,SubSectorClassification:85,PartySide:86,LegalRegistrationCountry:87});var $0=Object.freeze({Business:0,Calendar:1,Commodity:2,Currency:3,Exchange:4,Scheduled:5});var Z0=Object.freeze({Prepaid:0,Postpaid:1,Variable:2,Fixed:3});var eS=Object.freeze({CREST:1,NSCC:2,Euroclear:3,Clearstream:4,Cheque:5,TelegraphicTransfer:6,FedWire:7,DebitCard:8,DirectDebit:9,DirectCredit:10,CreditCard:11,ACHDebit:12,ACHCredit:13,BPAY:14,HighValueClearingSystem:15,CHIPS:16,SWIFT:17,CHAPS:18,SIC:19,EuroSIC:20,Other:999});var tS=Object.freeze({Buy:1,Sell:2});var dS=Object.freeze({Initial:0,Previous:1});var iS=Object.freeze({Notional:0,CashFlow:1,FXLinkedNotional:2,FixedRate:3,FutureValueNotional:4,KnownAmount:5,FloatingRateMultiplier:6,Spread:7,CapRate:8,FloorRate:9,NonDeliverableSettlPaymentDates:10,NonDeliverableSettlCalculationDates:11,NonDeliverableFXFixingDates:12,SettlPeriodNotnl:13,SettlPeriodPx:14,CalcPeriod:15,DividendAccrualRateMultiplier:16,DividendAccrualRateSpread:17,DividendAccrualCapRate:18,DividendAccrualFloorRate:19,CompoundingRateMultiplier:20,CompoundingRateSpread:21,CompoundingCapRate:22,CompoundingFloorRate:23});var aS=Object.freeze({Standard:0,Net:1,StandardfNet:2});var nS=Object.freeze({Unweighted:0,Weighted:1});var rS=Object.freeze({Buyer:1,Seller:2});var oS=Object.freeze({None:0,Flat:1,Straight:2,SpreadExclusive:3});var sS=Object.freeze({Standard:0,FRA:1});var cS=Object.freeze({Buyer:1,Seller:2});var pS=Object.freeze({None:0,ISDA:1,AFMA:2});var uS=Object.freeze({None:0,LinearZeroYield:1});var lS=Object.freeze({Business:0,Calendar:1,CommodityBusiness:2,CurrencyBusiness:3,ExchangeBusiness:4,ScheduledTradingDay:5});var mS=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var yS=Object.freeze({Initial:0,InitialAndFinal:1,Final:2,AnyPeriod:3});var SS=Object.freeze({Volatility:0,Variance:1});var PS=Object.freeze({ZeroInterestRateMethod:0,NegativeInterestRateMethod:1});var fS=Object.freeze({Business:0,Calendar:1,CommodityBusiness:2,CurrencyBusiness:3,ExchangeBusiness:4,ScheduledTradingDay:5});var gS=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var hS=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr",Term:"T"});var IS=Object.freeze({All:0,First:1,Last:2,Penultimate:3});var bS=Object.freeze({EveryDay:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6,Sunday:7});var FS=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var ES=Object.freeze({Bloomberg:0,Reuters:1,Telerate:2,Other:99});var CS=Object.freeze({Short:0,Long:1});var vS=Object.freeze({Absolute:0,Percentage:1});var TS=Object.freeze({BondEquivalentYield:0,MoneyMarketYield:1});var XS=Object.freeze({Previous:0,Last:1,Both:2});var DS=Object.freeze({Monday:"MON",Tuesday:"TUE",Wednesday:"WED",Thursday:"THU",Friday:"FRI",Saturday:"SAT",Sunday:"SUN"});var RS=Object.freeze({Average:0,Maximum:1,Minimum:2,Cumulative:3});var xS=Object.freeze({Periodic:0,Initial:1,Single:2,Dividend:3,Interest:4,DividendReturn:5,PriceReturn:6,TotalReturn:7,Variance:8,Correlation:9});var NS=Object.freeze({Short:0,Long:1});var AS=Object.freeze({Initial:0,Final:1,CompoundingInitial:2,CompoundingFinal:3});var wS=Object.freeze({Initial:0,Intermediate:1,Final:2,Prepaid:3,Postpaid:4,Variable:5,Fixed:6,Swap:7,Conditional:8,FixedRate:9,FloatingRate:10});var MS=Object.freeze({Brokerage:0,UpfrontFee:1,IndependentAmountCollateral:2,PrincipalExchange:3,NovationTermination:4,EarlyTerminationProvision:5,CancelableProvision:6,ExtendibleProvision:7,CapRateProvision:8,FloorRateProvision:9,OptionPremium:10,SettlementPayment:11,CashSettl:12,SecurityLending:13,Rebate:14,Other:99});var LS=Object.freeze({Received:0,Accepted:1,Rejected:2,Disputed:3});var OS=Object.freeze({New:0,Replace:1,Status:2});var kS=Object.freeze({Received:0,Accepted:1,Rejected:2,Disputed:3});var US=Object.freeze({New:0,Cancel:1});var qS=Object.freeze({OrBetter:0,Strict:1,OrWorse:2});var BS=Object.freeze({Floating:0,Fixed:1});var jS=Object.freeze({Price:0,BasisPoints:1,Ticks:2,PriceTier:3,Percentage:4});var GS=Object.freeze({LastPeg:1,MidPricePeg:2,OpeningPeg:3,MarketPeg:4,PrimaryPeg:5,PegToVWAP:7,TrailingStopPeg:8,PegToLimitPrice:9,ShortSaleMinPricePeg:10});var QS=Object.freeze({MoreAggressive:1,MorePassive:2});var VS=Object.freeze({Local:1,National:2,Global:3,NationalExcludingLocal:4});var zS=Object.freeze({OptionsSettlement:0,PendingErosionAdjustment:1,FinalErosionAdjustment:2,TearUpCouponAmount:3,PriceAlignmentInterest:4,DeliveryInvoiceCharges:5,DeliveryStorageCharges:6});var HS=Object.freeze({CashAmount:"CASH",CashResidualAmount:"CRES",FinalMarkToMarketAmount:"FMTM",IncrementalMarkToMarketAmount:"IMTM",PremiumAmount:"PREM",StartOfDayMarkToMarketAmount:"SMTM",TradeVariationAmount:"TVAR",ValueAdjustedAmount:"VADJ",SettlementValue:"SETL",InitialTradeCouponAmount:"ICPN",AccruedCouponAmount:"ACPN",CouponAmount:"CPN",IncrementalAccruedCoupon:"IACPN",CollateralizedMarkToMarket:"CMTM",IncrementalCollateralizedMarkToMarket:"ICMTM",CompensationAmount:"DLV",TotalBankedAmount:"BANK",TotalCollateralizedAmount:"COLAT",LongPairedSwapNotionalValue:"LSNV",ShortPairedSwapNotionalValue:"SSNV",StartOfDayAccruedCoupon:"SACPN",NetPresentValue:"NPV",StartOfDayNetPresentValue:"SNPV",NetCashFlow:"NCF",PresentValueOfFees:"PVFEES",PresentValueOneBasisPoints:"PV01",FiveYearEquivalentNotional:"5YREN",UndiscountedMarkToMarket:"UMTM",MarkToModel:"MTD",MarkToMarketVariance:"VMTM",MarkToModelVariance:"VMTD",UpfrontPayment:"UPFRNT",EndVale:"ENDV",OutstandingMarginLoan:"MGNLN",LoanValue:"LNVL"});var WS=Object.freeze({Principal:0,Agent:1,Customer:2,Counterparty:3});var _S=Object.freeze({Close:"C",FIFO:"F",Open:"O",Rolled:"R",CloseButNotifyOnOpen:"N",Default:"D"});var KS=Object.freeze({New:1,Replace:2,Cancel:3,Reverse:4});var YS=Object.freeze({SuccessfulCompletion:0,Rejected:1,Other:99});var JS=Object.freeze({Accepted:0,AcceptedWithWarnings:1,Rejected:2,Completed:3,CompletedWithWarnings:4});var $S=Object.freeze({Submitted:0,Accepted:1,Rejected:2});var ZS=Object.freeze({ValidRequest:0,InvalidOrUnsupportedRequest:1,NoPositionsFoundThatMatchCriteria:2,NotAuthorizedToRequestPositions:3,RequestForPositionNotSupported:4,Other:99});var e2=Object.freeze({Completed:0,CompletedWithWarnings:1,Rejected:2});var t2=Object.freeze({Positions:0,Trades:1,Exercises:2,Assignments:3,SettlementActivity:4,BackoutMessage:5,DeltaPositions:6,NetPosition:7,LargePositionsReporting:8,ExercisePositionReportingSubmission:9,PositionLimitReportingSubmissing:10});var Ja=Object.freeze({OriginalTransmission:"N",PossibleDuplicate:"Y"});var d2=Object.freeze({OriginalTransmission:"N",PossibleResend:"Y"});var i2=Object.freeze({Exercise:1,DoNotExercise:2,PositionAdjustment:3,PositionChangeSubmission:4,Pledge:5,LargeTraderSubmission:6,LargePositionsReportingSubmission:7,LongHoldings:8,InternalTransfer:9,TransferOfFirm:10,ExternalTransfer:11,CorporateAction:12,Notification:13,PositionCreation:14,Closeout:15,Reopen:16});var a2=Object.freeze({AllocationTradeQty:"ALC",OptionAssignment:"AS",AsOfTradeQty:"ASF",DeliveryQty:"DLV",ElectronicTradeQty:"ETR",OptionExerciseQty:"EX",EndOfDayQty:"FIN",IntraSpreadQty:"IAS",InterSpreadQty:"IES",AdjustmentQty:"PA",PitTradeQty:"PIT",StartOfDayQty:"SOD",IntegralSplit:"SPL",TransactionFromAssignment:"TA",TotalTransactionQty:"TOT",TransactionQuantity:"TQ",TransferTradeQty:"TRF",TransactionFromExercise:"TX",CrossMarginQty:"XM",ReceiveQuantity:"RCV",CorporateActionAdjustment:"CAA",DeliveryNoticeQty:"DN",ExchangeForPhysicalQty:"EP",PrivatelyNegotiatedTradeQty:"PNTN",NetDeltaQty:"DLT",CreditEventAdjustment:"CEA",SuccessionEventAdjustment:"SEA",NetQty:"NET",GrossQty:"GRS",IntradayQty:"ITD",GrossLongNonDeltaAdjustedSwaptionPosition:"NDAS",LongDeltaAdjustedPairedSwaptionPosition:"DAS",ExpiringQuantity:"EXP",QuantityNotExercised:"UNEX",RequestedExerciseQuantity:"REQ",CashFuturesEquivalentQuantity:"CFE",LoanOrBorrowedQuantity:"SECLN"});var n2=Object.freeze({DebitPay:0,CreditReceive:1});var r2=Object.freeze({New:0,Initiated:1,Pending:2,Confirmed:3,Rejected:4});var o2=Object.freeze({ProRata:"0",DoNotProRata:"1"});var s2=Object.freeze({NotReportedToCounterparty:"N",PreviouslyReportedToCounterparty:"Y"});var c2=Object.freeze({Price:0,Ticks:1,Percentage:2});var p2=Object.freeze({Amount:0,Percentage:1});var u2=Object.freeze({None:"0",Local:"1",National:"2",Global:"3"});var l2=Object.freeze({AccruedInterestIsFactored:0,TaxIsFactored:1,BondAmortizationIsFactored:2});var m2=Object.freeze({Standard:"STD",Index:"INX",InterestRateIndex:"INT",PercentOfPar:"PCTPAR"});var y2=Object.freeze({Percentage:1,PerUnit:2,FixedAmount:3,Discount:4,Premium:5,Spread:6,TEDPrice:7,TEDYield:8,Yield:9,FixedCabinetTradePrice:10,VariableCabinetTradePrice:11,PriceSpread:12,ProductTicksInHalves:13,ProductTicksInFourths:14,ProductTicksInEighths:15,ProductTicksInSixteenths:16,ProductTicksInThirtySeconds:17,ProductTicksInSixtyFourths:18,ProductTicksInOneTwentyEighths:19,NormalRateRepresentation:20,InverseRateRepresentation:21,BasisPoints:22,UpfrontPoints:23,InterestRate:24,PercentageNotional:25});var S2=Object.freeze({PriorityUnchanged:0,LostPriorityAsResultOfOrderChange:1});var P2=Object.freeze({PrivateQuote:"Y",PublicQuote:"N"});var f2=Object.freeze({Regular:"0",SoftDollar:"1",StepIn:"2",StepOut:"3",SoftDollarStepIn:"4",SoftDollarStepOut:"5",PlanSponsor:"6"});var g2=Object.freeze({AGENCY:1,COMMODITY:2,CORPORATE:3,CURRENCY:4,EQUITY:5,GOVERNMENT:6,INDEX:7,LOAN:8,MONEYMARKET:9,MORTGAGE:10,MUNICIPAL:11,OTHER:12,FINANCING:13});var h2=Object.freeze({BuySideRequests:1,SellSideSends:2,RealTimeExecutionReports:3});var I2=Object.freeze({Business:0,Calendar:1,CommodityBusiness:2,CurrencyBusiness:3,ExchangeBusiness:4,ScheduledTradingDay:5});var b2=Object.freeze({RestructuringMultipleHoldingObligations:"H",RestructuringMultipleCreditEventNotices:"E",FloatingRateInterestShortfall:"C"});var F2=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var E2=Object.freeze({FlatFee:0,AmortizedFee:1,FundingFee:2,FlatAndFundingFee:3,AmortizedAndFundingFee:4});var C2=Object.freeze({ExercisingParty:0,NonExercisingParty:1,MasterAgreeent:2,Supplement:3});var v2=Object.freeze({CashPrice:0,CashPriceAlternate:1,ParYieldCurveAdjusted:2,ZeroCouponYieldCurveAdjusted:3,ParYieldCurveUnadjusted:4,CrossCurrency:5,CollateralizedPrice:6});var T2=Object.freeze({Unadjusted:0,Adjusted:1});var X2=Object.freeze({Bid:0,Mid:1,Offer:2,ExercisingPartyPays:3});var D2=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var R2=Object.freeze({Day:"D",Week:"Wk",Month:"Mo",Year:"Yr"});var x2=Object.freeze({Unadjusted:0,Adjusted:1});var N2=Object.freeze({Buy:1,Sell:2});var A2=Object.freeze({MandatoryEarlyTermination:0,OptionalEarlyTermination:1,Cancelable:2,Extendable:3,MutualEarlyTermination:4,Evergreen:5,Callable:6,Puttable:7});var w2=Object.freeze({DoNotReportTrade:"N",ReportTrade:"Y"});var M2=Object.freeze({Put:0,Call:1,Other:2,Chooser:3});var L2=Object.freeze({Units:0,Contracts:1,UnitsOfMeasurePerTimeUnit:2});var O2=Object.freeze({ReceivedNotYetProcessed:0,Accepted:1,Rejected:2});var k2=Object.freeze({QuoteAboveStandardMarketSize:0,QuoteAboveSpecificInstrumentSize:1,QuoteApplicableForLiquidtyProvisionActivity:2,QuoteIssuerStatus:3,BidOrAskRequest:4});var U2=Object.freeze({CancelForOneOrMoreSecurities:1,CancelForSecurityType:2,CancelForUnderlyingSecurity:3,CancelAllQuotes:4,CancelSpecifiedSingleQuote:5,CancelByTypeOfQuote:6,CancelForSecurityIssuer:7,CancelForIssuerOfUnderlyingSecurity:8});var q2=Object.freeze({Open:"A",Closed:"B",ExchangeBest:"C",ConsolidatedBest:"D",Locked:"E",Crossed:"F",Depth:"G",FastTrading:"H",NonFirm:"I",Manual:"L",OutrightPrice:"J",ImpliedPrice:"K",DepthOnOffer:"M",DepthOnBid:"N",Closing:"O",NewsDissemination:"P",TradingRange:"Q",OrderInflux:"R",DueToRelated:"S",NewsPending:"T",AdditionalInfo:"U",AdditionalInfoDueToRelated:"V",Resume:"W",ViewOfCommon:"X",VolumeAlert:"Y",OrderImbalance:"Z",EquipmentChangeover:"a",NoOpen:"b",RegularETH:"c",AutomaticExecution:"d",AutomaticExecutionETH:"e",FastMarketETH:"f",InactiveETH:"g",Rotation:"h",RotationETH:"i",Halt:"j",HaltETH:"k",DueToNewsDissemination:"l",DueToNewsPending:"m",TradingResume:"n",OutOfSequence:"o",BidSpecialist:"p",OfferSpecialist:"q",BidOfferSpecialist:"r",EndOfDaySAM:"s",ForbiddenSAM:"t",FrozenSAM:"u",PreOpeningSAM:"v",OpeningSAM:"w",OpenSAM:"x",SurveillanceSAM:"y",SuspendedSAM:"z",ReservedSAM:"0",NoActiveSAM:"1",Restricted:"2",RestOfBookVWAP:"3",BetterPricesInConditionalOrders:"4",MedianPrice:"5",FullCurve:"6",FlatCurve:"7"});var B2=Object.freeze({UnknownSymbol:1,Exchange:2,QuoteExceedsLimit:3,TooLateToEnter:4,UnknownQuote:5,DuplicateQuote:6,InvalidBidAskSpread:7,InvalidPrice:8,NotAuthorizedToQuoteSecurity:9});var j2=Object.freeze({Accepted:0,Rejected:5,RemovedFromMarket:6,Expired:7,LockedMarketWarning:12,CrossMarketWarning:13,CanceledDueToLockMarket:14,CanceledDueToCrossMarket:15,Active:16});var G2=Object.freeze({QuoteEntry:1,QuoteModification:2});var Q2=Object.freeze({Percent:1,PerShare:2,FixedAmount:3,Discount:4,Premium:5,Spread:6,TEDPrice:7,TEDYield:8,YieldSpread:9,Yield:10,PriceSpread:12,ProductTicksInHalves:13,ProductTicksInFourths:14,ProductTicksInEighths:15,ProductTicksInSixteenths:16,ProductTicksInThirtySeconds:17,ProductTicksInSixtyFourths:18,ProductTicksInOneTwentyEighths:19,NormalRateRepresentation:20,InverseRateRepresentation:21,BasisPoints:22,UpFrontPoints:23,InterestRate:24,PercentageOfNotional:25});var V2=Object.freeze({UnknownSymbol:1,Exchange:2,QuoteRequestExceedsLimit:3,TooLateToEnter:4,UnknownQuote:5,DuplicateQuote:6,InvalidBid:7,InvalidPrice:8,NotAuthorizedToQuoteSecurity:9,PriceExceedsCurrentPriceBand:10,QuoteLocked:11,InvalidOrUnknownSecurityIssuer:12,InvalidOrUnknownIssuerOfUnderlyingSecurity:13,NotionalValueExceedsThreshold:14,PriceExceedsCurrentPriceBandDepr:15,ReferencePriceNotAvailable:16,InsufficientCreditLimit:17,ExceededClipSizeLimit:18,ExceededMaxNotionalOrderAmt:19,ExceededDV01PV01Limit:20,ExceededCS01Limit:21,UnavailablePriceLiquidity:22,InvalidMissingEntitlements:23,UnknownAccounts:24,Other:99});var z2=Object.freeze({UnknownSymbol:1,Exchange:2,QuoteRequestExceedsLimit:3,TooLateToEnter:4,InvalidPrice:5,NotAuthorizedToRequestQuote:6,NoMatchForInquiry:7,NoMarketForInstrument:8,NoInventory:9,Pass:10,InsufficientCredit:11,ExceededClipSizeLimit:12,ExceededMaxNotionalOrderAmt:13,ExceededDV01PV01Limit:14,ExceededCS01Limit:15,UnavailablePriceLiquidity:16,UnmetRegulatoryRequirement:17,UnknownAccounts:18,InvalidMissingEntitlements:19,Other:99});var H2=Object.freeze({Manual:1,Automatic:2,ConfirmQuote:3});var W2=Object.freeze({NoAcknowledgement:0,AcknowledgeOnlyNegativeOrErroneousQuotes:1,AcknowledgeEachQuoteMessage:2,SummaryAcknowledgement:3});var _2=Object.freeze({Hit:1,Counter:2,Expired:3,Cover:4,DoneAway:5,Pass:6,EndTrade:7,TimedOut:8,Tied:9,TiedCover:10,Accept:11,TerminateContract:12});var K2=Object.freeze({No:"N",Yes:"Y"});var Y2=Object.freeze({Accepted:0,CancelForSymbol:1,CanceledForSecurityType:2,CanceledForUnderlying:3,CanceledAll:4,Rejected:5,RemovedFromMarket:6,Expired:7,Query:8,QuoteNotFound:9,Pending:10,Pass:11,LockedMarketWarning:12,CrossMarketWarning:13,CanceledDueToLockMarket:14,CanceledDueToCrossMarket:15,Active:16,Canceled:17,UnsolicitedQuoteReplenishment:18,PendingEndTrade:19,TooLateToEnd:20,Traded:21,TradedAndRemoved:22,ContractTerminates:23});var J2=Object.freeze({Indicative:0,Tradeable:1,RestrictedTradeable:2,Counter:3,InitiallyTradeable:4});var $2=Object.freeze({Bloomberg:0,Reuters:1,Telerate:2,ISDARateOption:3,Other:99});var Z2=Object.freeze({Primary:0,Secondary:1});var eP=Object.freeze({AdmitToTradeRequestDate:0,AdmitToTradeApprovalDate:1,AdmitToTradeOrFirstTradeDate:2,TerminationDate:3});var tP=Object.freeze({Asian:1,AustralianNewZealand:2,EuropeanEmergingMarkets:3,Japanese:4,NorthAmericanHighYield:5,NorthAmericanInsurance:6,NorthAmericanInvestmentGrade:7,Singaporean:8,WesternEuropean:9,WesternEuropeanInsurance:10});var dP=Object.freeze({SecondaryOrderID:"0",OrderID:"1",MDEntryID:"2",QuoteEntryID:"3",OriginalOrderID:"4",QuoteID:"5",QuoteReqID:"6",PreviousOrderIdentifier:"7",PreviousQuoteIdentifier:"8",ParentOrderIdentifier:"9",ManualOrderIdentifier:"A"});var iP=Object.freeze({GTCFromPreviousDay:0,PartialFillRemaining:1,OrderChanged:2});var aP=Object.freeze({RiskLimitRequestID:0,RiskLimitCheckID:1,OutOfBandID:3});var nP=Object.freeze({InvalidAccountType:1,InvalidTaxExemptType:2,InvalidOwnershipType:3,NoRegDetails:4,InvalidRegSeqNo:5,InvalidRegDetails:6,InvalidMailingDetails:7,InvalidMailingInstructions:8,InvalidInvestorID:9,InvalidInvestorIDSource:10,InvalidDateOfBirth:11,InvalidCountry:12,InvalidDistribInstns:13,InvalidPercentage:14,InvalidPaymentMethod:15,InvalidAccountName:16,InvalidAgentCode:17,InvalidAccountNum:18,Other:99});var rP=Object.freeze({Accepted:"A",Rejected:"R",Held:"H",Reminder:"N"});var oP=Object.freeze({New:"0",Cancel:"2",Replace:"1"});var sP=Object.freeze({RT:0,PET:1,Snapshot:2,Confirmation:3,RTPET:4,PETConfirmation:5,RTPETConfirmation:6,PostTrade:7,Verification:8,PstTrdEvnt:9,PstTrdEvntRTReportable:10,LMTF:11,DATF:12,VOLO:13,FWAF:14,IDAF:15,VOLW:16,FULF:17,FULA:18,FULV:19,FULJ:20,COAF:21,Order:22,ChildOrder:23,OrderRoute:24,Trade:25,Quote:26,Supplement:27,NewTransaction:28,TransactionCorrection:29,TransactionModification:30,CollateralUpdate:31,MarginUpdate:32,TransactionReportedInError:33,TerminationEarlyTermination:34});var cP=Object.freeze({InitialBlockTrade:0,Allocation:1,Clearing:2,Compression:3,Novation:4,Termination:5,PostTrdVal:6});var pP=Object.freeze({ClearingMember:1,Client:2});var uP=Object.freeze({UniqueTransactionIdentifier:"1"});var lP=Object.freeze({Current:0,Previous:1,Block:2,Related:3,ClearedBlockTrade:4,TradingVenueTransactionIdentifier:5,ReportTrackingNumber:6});var mP=Object.freeze({None:0,SEFRequiredTransaction:1,SEFPermittedTransaction:2});var yP=Object.freeze({HedgesForInstrument:1,Underlier:2,EquityEquivalent:3,NearestExchangeTradedContract:4,RetailEquivalent:5,Leg:6});var SP=Object.freeze({NonFIXSource:0,SystemOrderIdentifier:1,ClientOrderIdentifier:2,SecondaryOrderIdentifier:3,SecondaryClientOrderIdentifier:4});var PP=Object.freeze({PosMaintRptID:1,TransferID:2,PositionEntityID:3});var fP=Object.freeze({NBBid:1,NBOffer:2});var gP=Object.freeze({NonFIXSource:0,TradeID:1,SecondaryTradeID:2,TradeReportID:3,FirmTradeID:4,SecondaryFirmTradeID:5,RegulatoryTradeID:6});var hP=Object.freeze({Bid:1,Mid:2,Offer:3});var IP=Object.freeze({ASWSpread:1,OIS:2,ZSpread:3,DiscountMargin:4,ISpread:5,OAS:6,GSpread:7,CDSBasis:8,CDSInterpolatedBasis:9,DV01:10,PV01:11,CS01:12});var bP=Object.freeze({ISO:1,NoAwayMarketBetterCheck:2});var FP=Object.freeze({NoRemunerationPaid:0,RemunerationPaid:1});var EP=Object.freeze({SenderReports:"N",ReceiverReports:"Y"});var CP=Object.freeze({ValidRequest:0,InvalidOrUnsupportedRequest:1,NoDataFound:2,NotAuthorized:3,DataTemporarilyUnavailable:4,RequestForDataNotSupported:5,Other:99});var ea=Object.freeze({No:"N",Yes:"Y"});var vP=Object.freeze({AllMarketParticipants:1,SpecifiedMarketParticipants:2,AllMarketMakers:3,PrimaryMarketMaker:4});var TP=Object.freeze({Inband:0,OutOfBand:1});var XP=Object.freeze({FullRestructuring:"FR",ModifiedRestructuring:"MR",ModifiedModRestructuring:"MM",NoRestructuringSpecified:"XR"});var DP=Object.freeze({PriceValuation:0,DividendValuation:1});var RP=Object.freeze({Gross:0,Net:1,Accrued:2,CleanNet:3});var xP=Object.freeze({Initial:0,Interim:1,Final:2});var NP=Object.freeze({AbsoluteTerms:0,PercentageOfNotional:1});var AP=Object.freeze({Open:0,OfficialSettlPx:1,Xetra:2,Close:3,DerivativesClose:4,High:5,Low:6,AsSpecifiedInMasterConfirmation:7});var wP=Object.freeze({None:0,FuturesPrice:1,OptionsPrice:2});var MP=Object.freeze({Dividend:1,Variance:2,Volatility:3,TotalReturn:4,ContractForDifference:5,CreditDefault:6,SpreadBet:7,Price:8,ForwardPriceUnderlyingInstrument:9,Other:99});var LP=Object.freeze({QueueInbound:0,QueueOutbound:1,Reject:2,Disconnect:3,Warning:4,PingCreditCheckWithRevalidation:5,PingCreditCheckNoRevalidation:6,PushCreditCheckWithRevalidation:7,PushCreditCheckNoRevalidation:8,Suspend:9,HaltTrading:10});var OP=Object.freeze({None:0,PlusOneModel:1,PingModel:2,PushModel:3});var kP=Object.freeze({Successful:0,InvalidParty:1,ReqExceedsCreditLimit:2,ReqExceedsClipSizeLimit:3,ReqExceedsMaxNotional:4,Other:99});var UP=Object.freeze({Approved:0,PartiallyApproved:1,Rejected:2,ApprovalPending:3,Cancelled:4});var qP=Object.freeze({AllOrNone:0,Partial:1});var BP=Object.freeze({Accepted:0,Rejected:1,ClaimRequired:2,PreDefinedLimitCheckSucceeded:3,PreDefinedLimitCheckFailed:4,PreDefinedAutoAcceptRuleInvoked:5,PreDefinedAutoRejectRuleInvoked:6,AcceptedByClearingFirm:7,RejectedByClearingFirm:8,Pending:9,AcceptedByCreditHub:10,RejectedByCreditHub:11,PendingCreditHubCheck:12,AcceptedByExecVenue:13,RejectedByExecVenue:14});var jP=Object.freeze({New:0,Cancel:1,Replace:2});var GP=Object.freeze({Submit:0,LimitConsumed:1});var QP=Object.freeze({UnkRiskLmtRprtID:0,UnkPty:1,Other:99});var VP=Object.freeze({Accepted:0,Rejected:1});var zP=Object.freeze({Successful:0,InvalidParty:1,InvalidRelatedParty:2,InvalidRiskLimitType:3,InvalidRiskLimitID:4,InvalidRiskLimitAmount:5,InvalidRiskWarningLevelAction:6,InvalidRiskInstrumentScope:7,RiskLimitActionsNotSupported:8,WarningLevelsNotSupported:9,WarningLevelActionsNotSupported:10,RiskInstrumentScopeNotSupported:11,RiskLimitNotApprovedForParty:12,RiskLimitAlreadyDefinedForParty:13,InstrumentNotApprovedForParty:14,NotAuthorized:98,Other:99});var HP=Object.freeze({Definitions:1,Utilization:2,DefinitionsAndUtilizations:3});var WP=Object.freeze({CreditLimit:0,GrossLimit:1,NetLimit:2,Exposure:3,LongLimit:4,ShortLimit:5,CashMargin:6,AdditionalMargin:7,TotalMargin:8,LimitConsumed:9,ClipSize:10,MaxNotionalOrderSize:11,DV01PV01Limit:12,CS01Limit:13,VolumeLimitPerTimePeriod:14,VolFilledPctOrdVolTmPeriod:15,NotlFilledPctNotlTmPeriod:16,TransactionExecutionLimitPerTimePeriod:17});var _P=Object.freeze({RoundToNearest:"0",RoundDown:"1",RoundUp:"2"});var KP=Object.freeze({NoRoutingArrangementInPlace:0,RoutingArrangementInPlace:1});var YP=Object.freeze({TargetFirm:1,TargetList:2,BlockFirm:3,BlockList:4,TargetPerson:5,BlockPerson:6});var JP=Object.freeze({AgencySingleOrder:"A",ShortExemptTransactionAType:"B",ProprietaryNonAlgo:"C",ProgramOrderMember:"D",ShortExemptTransactionForPrincipal:"E",ShortExemptTransactionWType:"F",ShortExemptTransactionIType:"H",IndividualInvestor:"I",ProprietaryAlgo:"J",AgencyAlgo:"K",ShortExemptTransactionMemberAffliated:"L",ProgramOrderOtherMember:"M",AgentForOtherMember:"N",ProprietaryTransactionAffiliated:"O",Principal:"P",TransactionNonMember:"R",SpecialistTrades:"S",TransactionUnaffiliatedMember:"T",AgencyIndexArb:"U",AllOtherOrdersAsAgentForOtherMember:"W",ShortExemptTransactionMemberNotAffliated:"X",AgencyNonAlgo:"Y",ShortExemptTransactionNonMember:"Z"});var $P=Object.freeze({LocalMarket:"1",National:"2",Global:"3"});var ZP=Object.freeze({Fee:0,CreditControls:1,Margin:2,EntitlementOrEligibility:3,MarketData:4,AccountSelection:5,DeliveryProcess:6,Sector:7});var ef=Object.freeze({CUSIP:"1",SEDOL:"2",QUIK:"3",ISINNumber:"4",RICCode:"5",ISOCurrencyCode:"6",ISOCountryCode:"7",ExchangeSymbol:"8",ConsolidatedTapeAssociation:"9",BloombergSymbol:"A",Wertpapier:"B",Dutch:"C",Valoren:"D",Sicovam:"E",Belgian:"F",Common:"G",ClearingHouse:"H",ISDAFpMLSpecification:"I",OptionPriceReportingAuthority:"J",ISDAFpMLURL:"K",LetterOfCredit:"L",MarketplaceAssignedIdentifier:"M",MarkitREDEntityCLIP:"N",MarkitREDPairCLIP:"P",CFTCCommodityCode:"Q",ISDACommodityReferencePrice:"R",FinancialInstrumentGlobalIdentifier:"S",LegalEntityIdentifier:"T",Synthetic:"U",FidessaInstrumentMnemonic:"V",IndexName:"W",UniformSymbol:"X",DigitalTokenIdentifier:"Y"});var tf=Object.freeze({Symbol:0,SecurityTypeAnd:1,Product:2,TradingSessionID:3,AllSecurities:4,MarketIDOrMarketID:5});var df=Object.freeze({IndustryClassification:1,TradingList:2,Market:3,NewspaperList:4});var af=Object.freeze({ICB:1,NAICS:2,GICS:3});var nf=Object.freeze({InvalidInstrumentRequested:1,InstrumentAlreadyExists:2,RequestTypeNotSupported:3,SystemUnavailableForInstrumentCreation:4,IneligibleInstrumentGroup:5,InstrumentIDUnavailable:6,InvalidOrMissingDataOnOptionLeg:7,InvalidOrMissingDataOnFutureLeg:8,InvalidOrMissingDataOnFXLeg:10,InvalidLegPriceSpecified:11,InvalidInstrumentStructureSpecified:12});var rf=Object.freeze({ValidRequest:0,InvalidOrUnsupportedRequest:1,NoInstrumentsFound:2,NotAuthorizedToRetrieveInstrumentData:3,InstrumentDataTemporarilyUnavailable:4,RequestForInstrumentDataNotSupported:5});var of=Object.freeze({RequestSecurityIdentityAndSpecifications:0,RequestSecurityIdentityForSpecifications:1,RequestListSecurityTypes:2,RequestListSecurities:3,Symbol:4,SecurityTypeAndOrCFICode:5,Product:6,TradingSessionID:7,AllSecurities:8,MarketIDOrMarketID:9});var sf=Object.freeze({AcceptAsIs:1,AcceptWithRevisions:2,RejectSecurityProposal:5,CannotMatchSelectionCriteria:6});var cf=Object.freeze({Active:"1",Inactive:"2",ActiveClosingOrdersOnly:"3",Expired:"4",Delisted:"5",KnockedOut:"6",KnockOutRevoked:"7",PendingExpiry:"8",Suspended:"9",Published:"10",PendingDeletion:"11"});var pf=Object.freeze({OrderImbalance:1,TradingResumes:2,PriceVolatilityInterruption:3,ChangeOfTradingSession:4,ChangeOfTradingSubsession:5,ChangeOfSecurityTradingStatus:6,ChangeOfBookType:7,ChangeOfMarketDepth:8,CorporateAction:9});var uf=Object.freeze({OpeningDelay:1,TradingHalt:2,Resume:3,NoOpen:4,PriceIndication:5,TradingRangeIndication:6,MarketImbalanceBuy:7,MarketImbalanceSell:8,MarketOnCloseImbalanceBuy:9,MarketOnCloseImbalanceSell:10,NoMarketImbalance:12,NoMarketOnCloseImbalance:13,ITSPreOpening:14,NewPriceIndication:15,TradeDisseminationTime:16,ReadyToTrade:17,NotAvailableForTrading:18,NotTradedOnThisMarket:19,UnknownOrInvalid:20,PreOpen:21,OpeningRotation:22,FastMarket:23,PreCross:24,Cross:25,PostClose:26,NoCancel:27});var lf=Object.freeze({EuroSupranationalCoupons:"EUSUPRA",CorporateBond:"CORP",ForeignExchangeContract:"FOR",CommonStock:"CS",Repurchase:"REPO",BradyBond:"BRADY",TermLoan:"TERM",BankersAcceptance:"BA",AssetBackedSecurities:"ABS",OtherAnticipationNotes:"AN",MutualFund:"MF",FederalAgencyCoupon:"FAC",CorporatePrivatePlacement:"CPP",NonDeliverableForward:"FXNDF",Cap:"CAP",PreferredStock:"PS",Forward:"FORWARD",CanadianTreasuryNotes:"CAN",RevolverLoan:"RVLV",BankDepositoryNote:"BDN",CanadianMortgageBonds:"CMB",CertificateOfObligation:"COFO",MultilegInstrument:"MLEG",FederalAgencyDiscountNote:"FADN",ConvertibleBond:"CB",FXSpot:"FXSPOT",CreditDefaultSwap:"CDS",DepositoryReceipts:"DR",BuySellback:"BUYSELL",CanadianTreasuryBills:"CTB",Revolver:"RVLVTRM",BankNotes:"BN",Corp:"CMBS",CertificateOfParticipation:"COFP",NoSecurityType:"NONE",USTreasuryNoteOld:"UST",PrivateExportFunding:"PEF",DualCurrency:"DUAL",FXForward:"FXFWD",Collar:"CLLR",SecuritiesLoan:"SECLOAN",EuroSovereigns:"EUSOV",BridgeLoan:"BRIDGE",BillOfExchanges:"BOX",CollateralizedMortgageObligation:"CMO",GeneralObligationBonds:"GO",USTreasuryBillOld:"USTB",USDSupranationalCoupons:"SUPRA",EuroCorporateBond:"EUCORP",FXSwap:"FXSWAP",CommoditySwap:"CMDTYSWAP",SecuritiesPledge:"SECPLEDGE",CanadianProvincialBonds:"PROV",LetterOfCredit:"LOFC",CanadianMoneyMarkets:"CAMM",IOETTEMortgage:"IET",MandatoryTender:"MT",EuroCorporateFloatingRateNotes:"EUFRN",NonDeliverableSwap:"FXNDS",Exotic:"EXOTIC",DeliveryVersusPledge:"DVPLDG",TreasuryBill:"TB",SwingLineFacility:"SWING",CertificateOfDeposit:"CD",MortgageBackedSecurities:"MBS",RevenueAnticipationNote:"RAN",Wildcard:"?",USCorporateFloatingRateNotes:"FRN",FXBankNote:"FXBN",OptionsOnCombo:"OOC",Floor:"FLR",CollateralBasket:"COLLBSKT",USTreasuryBond:"TBOND",DebtorInPossession:"DINP",CallLoans:"CL",MortgageInterestOnly:"MIO",RevenueBonds:"REV",Cash:"CASH",IndexedLinked:"XLINKD",ForeignCurrencyDiscountNote:"FXDN",FRA:"FRA",StructuredFinanceProduct:"SFP",InterestStripFromAnyBondOrNote:"TINT",Defaulted:"DEFLTED",CommercialPaper:"CP",MortgagePrincipalOnly:"MPO",SpecialAssessment:"SPCLA",Other:"Other",StructuredNotes:"STRUCT",Future:"FUT",USTreasuryBill:"TBILL",TreasuryInflationProtectedSecurities:"TIPS",Withdrawn:"WITHDRN",DepositNotes:"DN",MortgagePrivatePlacement:"MPP",SpecialObligation:"SPCLO",ExchangeTradedNote:"ETN",YankeeCorporateBond:"YANK",DerivativeForward:"FWD",MarginLoan:"MRGNLOAN",PrincipalStripOfACallableBondOrNote:"TCAL",Replaced:"REPLACD",EuroCertificateOfDeposit:"EUCD",MiscellaneousPassThrough:"MPT",SpecialTax:"SPCLT",OffshoreIssuedChineseYuanCorporateBond:"DIMSUMCORP",InterestRateSwap:"IRS",TotalReturnSwap:"TRS",PrincipalStripFromANonCallableBondOrNote:"TPRN",Matured:"MATURED",EuroCommercialPaper:"EUCP",Pfandbrief:"PFAND",TaxAnticipationNote:"TAN",SecuritizedDerivative:"SECDERIV",PreferredCorporateBond:"PRCORP",LoanLease:"LOANLEASE",USTreasuryNote:"TNOTE",Amended:"AMENDED",LiquidityNote:"LQN",ToBeAnnounced:"TBA",TaxAllocation:"TAXA",ExchangeTradedFund:"ETF",OffshoreIssuedChineseYuanSovereignBond:"DIMSUMSOV",Retired:"RETIRED",MediumTermNotes:"MTN",TaxExemptCommercialPaper:"TECP",DigitalAsset:"DIGITAL",OptionsOnFutures:"OOF",SovereignBond:"SOV",Overnight:"ONITE",TaxableMunicipalCP:"TMCP",OptionsOnPhysical:"OOP",USTreasuryFloatingRateNote:"TFRN",PromissoryNote:"PN",ShortTermLoanNote:"STN",TaxRevenueAnticipationNote:"TRAN",Option:"OPT",PlazosFijos:"PZFJ",VariableRateDemandNote:"VRDN",SpotForward:"SPOTFWD",SecuredLiquidityNote:"SLQN",Warrant:"WAR",SwapOption:"SWAPTION",TimeDeposit:"TD",MunicipalInterestBearingCommercialPaper:"MCPIB",Transmission:"XMISSION",TaxableMunicipalBond:"TMB",Index:"INDEX",TermLiquidityNote:"TLQN",VariableRateDemandObligation:"VRDO",BondBasket:"BDBSKT",ExtendedCommNote:"XCN",ContractForDifference:"CFD",YankeeCertificateOfDeposit:"YCD",CorrelationSwap:"CRLTNSWAP",BankAcceptedBill:"BAB",DiviendSwap:"DVDNDSWAP",ShortTermBankNote:"BNST",EquityBasket:"EQBSKT",CallableCommercialPaper:"CLCP",EquityForward:"EQFWD",CommercialNote:"CN",ReturnSwap:"RTRNSWAP",InterestBearingCommercialPaper:"CPIB",VarianceSwap:"VARSWAP",EuroMediumTermNote:"EUMTN",PortfolioSwaps:"PRTFLIOSWAP",EuroNegotiableCommercialPaper:"EUNCP",FuturesOnASwap:"FUTSWAP",EuroStructuredLiquidityNote:"EUSTLQN",ForwardsOnASwap:"FWDSWAP",EuroTimeDeposit:"EUTD",ForwardFreightAgreement:"FWDFRTAGMT",JumboCertificateOfDeposit:"JCD",SpreadBetting:"SPREADBET",MoneyMarketFund:"MMF",ExchangeTradedCommodity:"ETC",MasterNote:"MN",NegotiableCertificateOfDeposit:"NCD",NegotiableCommercialPaper:"NCP",RetailCertificateOfDeposit:"RCD",TermDepositReceipt:"TDR"});var mf=Object.freeze({Add:"A",Delete:"D",Modify:"M"});var yf=Object.freeze({CancelAggressive:1,CancelPassive:2,CancelAggressivePassive:3});var Sf=Object.freeze({SeniorSecured:"SD",Senior:"SR",Subordinated:"SB",Junior:"JR",Mezzanine:"MZ",SeniorNonPreferred:"SN"});var Pf=Object.freeze({InvalidTagNumber:0,RequiredTagMissing:1,TagNotDefinedForThisMessageType:2,UndefinedTag:3,TagSpecifiedWithoutAValue:4,ValueIsIncorrect:5,IncorrectDataFormatForValue:6,DecryptionProblem:7,SignatureProblem:8,CompIDProblem:9,SendingTimeAccuracyProblem:10,InvalidMsgType:11,XMLValidationError:12,TagAppearsMoreThanOnce:13,TagSpecifiedOutOfRequiredOrder:14,RepeatingGroupFieldsOutOfOrder:15,IncorrectNumInGroupCountForRepeatingGroup:16,NonDataValueIncludesFieldDelimiter:17,InvalidUnsupportedApplVer:18,Other:99});var ff=Object.freeze({SessionActive:0,SessionPasswordChanged:1,SessionPasswordDueToExpire:2,NewSessionPasswordDoesNotComplyWithPolicy:3,SessionLogoutComplete:4,InvalidUsernameOrPassword:5,AccountLocked:6,LogonsAreNotAllowedAtThisTime:7,PasswordExpired:8,ReceivedMsgSeqNumTooLow:9,ReceivedNextExpectedMsgSeqNumTooHigh:10});var gf=Object.freeze({Multiply:"M",Divide:"D"});var hf=Object.freeze({Versus:0,Free:1,TriParty:2,HoldInCustody:3});var If=Object.freeze({Negotiation:1,Cancellation:2});var bf=Object.freeze({Default:"0",StandingInstructionsProvided:"1",SpecificAllocationAccountOverriding:"2",SpecificAllocationAccountStanding:"3",SpecificOrderForASingleAccount:"4",RequestReject:"5"});var Ff=Object.freeze({UnableToProcessRequest:0,UnknownAccount:1,NoMatchingSettlementInstructionsFound:2,Other:99});var Ef=Object.freeze({BrokerCredit:"1",Institution:"2",Investor:"3"});var Cf=Object.freeze({New:"N",Cancel:"C",Replace:"R",Restate:"T"});var vf=Object.freeze({CEDEL:"CED",DepositoryTrustCompany:"DTC",EuroClear:"EUR",FederalBookEntry:"FED",LocalMarketSettleLocation:"ISO Country Code",Physical:"PNY",ParticipantTrustCompany:"PTC"});var Tf=Object.freeze({CashSettlementRequired:"C",PhysicalSettlementRequired:"P",Election:"E"});var Xf=Object.freeze({Regular:"0",Cash:"1",NextDay:"2",TPlus2:"3",TPlus3:"4",TPlus4:"5",Future:"6",WhenAndIfIssued:"7",SellersOption:"8",TPlus5:"9"});var Df=Object.freeze({Preliminary:1,Final:2});var Rf=Object.freeze({InstructionsOfBroker:"1",InstructionsForInstitution:"2",Investor:"3",BuyersSettlementInstructions:"4",SellersSettlementInstructions:"5"});var xf=Object.freeze({Cancel:"C",New:"N",Replace:"R",Restate:"T"});var Nf=Object.freeze({Unknown:0,LastTradePrice:1,LastBidPrice:2,LastOfferPrice:3,MidPrice:4,AverageLastTradePrice:5,AverageLastTradePeriod:6,UnderlyingPrice:7,CalculatedPrice:8,ManualPrice:9});var Af=Object.freeze({Final:1,Theoretical:2});var wf=Object.freeze({Intraday:"ITD",RegularTradingHours:"RTH",ElectronicTradingHours:"ETH",EndOfDay:"EOD"});var Mf=Object.freeze({Received:0,Accepted:1,Rejected:2});var Lf=Object.freeze({Received:0,Accepted:1,Rejected:2});var Of=Object.freeze({Shares:1,Derivatives:2,PaymentVsPayment:3,Notional:4,Cascade:5,Repurchase:6,Other:99});var kf=Object.freeze({Regular:"0",Cash:"1",NextDay:"2",TPlus2:"3",TPlus3:"4",TPlus4:"5",Future:"6",WhenAndIfIssued:"7",SellersOption:"8",TPlus5:"9",BrokenDate:"B",FXSpotNextSettlement:"C"});var Uf=Object.freeze({ExemptionReasonUnknown:0,IncomingSSE:1,AboveNationalBestBid:2,DelayedDelivery:3,OddLot:4,DomesticArbitrage:5,InternationalArbitrage:6,UnderwriterOrSyndicateDistribution:7,RisklessPrincipal:8,VWAP:9});var qf=Object.freeze({DealerSoldShort:0,DealerSoldShortExempt:1,SellingCustomerSoldShort:2,SellingCustomerSoldShortExempt:3,QualifiedServiceRepresentative:4,QSROrAGUContraSideSoldShortExempt:5});var Bf=Object.freeze({NoRestrictions:0,SecurityNotShortable:1,SecurityNotShortableAtOrBelowBestBid:2,SecurityNotShortableWithoutPreBorrow:3});var jf=Object.freeze({Buy:"1",Sell:"2",BuyMinus:"3",SellPlus:"4",SellShort:"5",SellShortExempt:"6",Undisclosed:"7",Cross:"8",CrossShort:"9",CrossShortExempt:"A",AsDefined:"B",Opposite:"C",Subscribe:"D",Redeem:"E",Lend:"F",Borrow:"G",SellUndisclosed:"H"});var Gf=Object.freeze({TradeClearingAtExecutionPrice:0,TradeClearingAtAlternateClearingPrice:1});var Qf=Object.freeze({SingleSecurity:1,IndividualLegOfAMultilegSecurity:2,MultilegSecurity:3});var Vf=Object.freeze({SideValue1:1,SideValue2:2});var zf=Object.freeze({MultipleQuotesAllowed:"N",OnlyOneQuoteAllowed:"Y"});var Hf=Object.freeze({WasNotSolicited:"N",WasSolicited:"Y"});var Wf=Object.freeze({Other:0,DTCSID:1,ThomsonALERT:2,AGlobalCustodian:3,AccountNet:4});var _f=Object.freeze({ExchangeLast:1,High:2,AveragePrice:3,Turnover:4});var Kf=Object.freeze({Connected:1,NotConnectedUnexpected:2,NotConnectedExpected:3,InProcess:4});var Yf=Object.freeze({AlternativeMinimumTax:"AMT",IncurredRecovery:"INCURRCVY",AbsolutePrepaymentSpeed:"ABS",AutoReinvestment:"AUTOREINV",AdditionalTerm:"ADDTRM",ConstantPrepaymentPenalty:"CPP",BankQualified:"BANKQUAL",ModifiedEquityDelivery:"MODEQTYDLVY",ConstantPrepaymentRate:"CPR",BargainConditions:"BGNCON",NoReferenceOblication:"NOREFOBLIG",ConstantPrepaymentYield:"CPY",CouponRange:"COUPON",UnknownReferenceObligation:"UNKREFOBLIG",FinalCPROfHomeEquityPrepaymentCurve:"HEP",ISOCurrencyCode:"CURRENCY",AllGuarantees:"ALLGUARANTEES",PercentOfManufacturedHousingPrepaymentCurve:"MHP",CustomStart:"CUSTOMDATE",ReferencePrice:"REFPX",MonthlyPrepaymentRate:"MPR",Geographics:"GEOG",ReferencePolicy:"REFPOLICY",PercentOfProspectusPrepaymentCurve:"PPC",ValuationDiscount:"HAIRCUT",SecuredList:"SECRDLIST",PercentOfBMAPrepaymentCurve:"PSA",Insured:"INSURED",SingleMonthlyMortality:"SMM",IssueDate:"ISSUE",Issuer:"ISSUER",IssueSizeRange:"ISSUESIZE",LookbackDays:"LOOKBACK",ExplicitLotIdentifier:"LOT",LotVariance:"LOTVAR",MaturityYearAndMonth:"MAT",MaturityRange:"MATURITY",MaximumSubstitutions:"MAXSUBS",MinimumDenomination:"MINDNOM",MinimumIncrement:"MININCR",MinimumQuantity:"MINQTY",PaymentFrequency:"PAYFREQ",NumberOfPieces:"PIECES",PoolsMaximum:"PMAX",PoolsPerLot:"PPL",PoolsPerMillion:"PPM",PoolsPerTrade:"PPT",PriceRange:"PRICE",PricingFrequency:"PRICEFREQ",ProductionYear:"PROD",CallProtection:"PROTECT",Purpose:"PURPOSE",BenchmarkPriceSource:"PXSOURCE",RatingSourceAndRange:"RATING",TypeOfRedemption:"REDEMPTION",Restricted:"RESTRICTED",MarketSector:"SECTOR",SecurityTypeIncludedOrExcluded:"SECTYPE",Structure:"STRUCT",SubstitutionsFrequency:"SUBSFREQ",SubstitutionsLeft:"SUBSLEFT",FreeformText:"TEXT",TradeVariance:"TRDVAR",WeightedAverageCoupon:"WAC",WeightedAverageLifeCoupon:"WAL",WeightedAverageLoanAge:"WALA",WeightedAverageMaturity:"WAM",WholePool:"WHOLE",YieldRange:"YIELD",OriginalAmount:"ORIGAMT",AverageFICOScore:"AVFICO",PoolEffectiveDate:"POOLEFFDT",AverageLoanSize:"AVSIZE",PoolInitialFactor:"POOLINITFCTR",MaximumLoanBalance:"MAXBAL",Tranche:"TRANCHE",PoolIdentifier:"POOL",Substitution:"SUBSTITUTION",TypeOfRollTrade:"ROLLTYPE",MULTEXCHFLLBCK:"MULTEXCHFLLBCK",ReferenceToRollingOrClosingTrade:"REFTRADE",COMPSECFLLBCK:"COMPSECFLLBCK",PrincipalOfRollingOrClosingTrade:"REFPRIN",LOCLJRSDCTN:"LOCLJRSDCTN",InterestOfRollingOrClosingTrade:"REFINT",RELVJRSDCTN:"RELVJRSDCTN",AvailableOfferQuantityToBeShownToTheStreet:"AVAILQTY",BrokerCredit:"BROKERCREDIT",OfferPriceToBeShownToInternalBrokers:"INTERNALPX",OfferQuantityToBeShownToInternalBrokers:"INTERNALQTY",TheMinimumResidualOfferQuantity:"LEAVEQTY",MaximumOrderSize:"MAXORDQTY",OrderQuantityIncrement:"ORDRINCR",PrimaryOrSecondaryMarketIndicator:"PRIMARY",BrokerSalesCreditOverride:"SALESCREDITOVR",TraderCredit:"TRADERCREDIT",DiscountRate:"DISCOUNT",YieldToMaturity:"YTM",InterestPayoffOfRollingOrAmendingTrade:"PAYOFF"});var Jf=Object.freeze({Int:1,Length:2,NumInGroup:3,SeqNum:4,TagNum:5,Float:6,Qty:7,Price:8,PriceOffset:9,Amt:10,Percentage:11,Char:12,Boolean:13,String:14,MultipleCharValue:15,Currency:16,Exchange:17,MonthYear:18,UTCTimestamp:19,UTCTimeOnly:20,LocalMktDate:21,UTCDateOnly:22,Data:23,MultipleStringValue:24,Country:25,Language:26,TZTimeOnly:27,TZTimestamp:28,Tenor:29});var $f=Object.freeze({Straddle:"STD",Strangle:"STG",Butterfly:"BF",Condor:"CNDR",CallableInversibleSnowball:"CISN",Other:"OTHER"});var Zf=Object.freeze({AssignmentAccepted:0,AssignmentRejected:1});var eg=Object.freeze({UnknownClient:0,ExceedsMaximumSize:1,UnknownOrInvalidCurrencyPair:2,NoAvailableStream:3,Other:99});var tg=Object.freeze({StreamAssignmentForNewCustomer:1,StreamAssignmentForExistingCustomer:2});var dg=Object.freeze({Assignment:1,Rejected:2,Terminate:3});var ig=Object.freeze({City:0,Airport:1,WeatherStation:2,WeatherIndex:3});var ag=Object.freeze({Week:"Wk",Month:"Mo"});var ng=Object.freeze({Day:"D"});var rg=Object.freeze({Execution:0,PortfolioRebalancing:1,Standard:2});var og=Object.freeze({Term:0,PerBusinessDay:1,PerCalculationPeriod:2,PerSettlPeriod:3,PerCalendarDay:4,PerHour:5,PerMonth:6});var sg=Object.freeze({PaymentCashSettlement:0,PhysicalDelivery:1});var cg=Object.freeze({Bid:0,Mid:1,Offer:2});var pg=Object.freeze({LessThan:1,LessThanOrEqual:2,Equal:3,GreaterThanOrEqual:4,GreaterThan:5});var ug=Object.freeze({FixedStrike:1,StrikeSetAtExpiration:2,StrikeSetToAverageAcrossLife:3,StrikeSetToOptimalValue:4});var lg=Object.freeze({Snapshot:"0",SnapshotAndUpdates:"1",DisablePreviousSnapshot:"2"});var mg=Object.freeze({BasisSwap:"BS",IndexSwap:"IX",BroadBasedSecuritySwap:"BB",BasketSwap:"SK"});var yg=Object.freeze({Amortizing:"AMTZ",Compounding:"COMP",ConstantNotionalSchedule:"CNST",AccretingNotionalSchedule:"ACRT",CustomNotionalSchedule:"CUST"});var Sg=Object.freeze({EUCPWithLumpSumInterest:"CD",WhenIssued:"WI"});var Pg=Object.freeze({VWAP:1,Participate:2,MininizeMarketImpact:3});var fg=Object.freeze({None:0,MaxiISA:1,TESSA:2,MiniCashISA:3,MiniStocksAndSharesISA:4,MiniInsuranceISA:5,CurrentYearPayment:6,PriorYearPayment:7,AssetTransfer:8,EmployeePriorYear:9,EmployeeCurrentYear:10,EmployerPriorYear:11,EmployerCurrentYear:12,NonFundPrototypeIRA:13,NonFundQualifiedPlan:14,DefinedContributionPlan:15,IRA:16,IRARollover:17,KEOGH:18,ProfitSharingPlan:19,US401K:20,SelfDirectedIRA:21,US403b:22,US457:23,RothIRAPrototype:24,RothIRANonPrototype:25,RothConversionIRAPrototype:26,RothConversionIRANonPrototype:27,EducationIRAPrototype:28,EducationIRANonPrototype:29,Other:999});var gg=Object.freeze({ISINOrAltInstrmtID:"I",InterimTaxonomy:"E"});var hg=Object.freeze({Overnight:1,Term:2,Flexible:3,Open:4});var Ig=Object.freeze({Received:0,Accepted:1,Rejected:2});var bg=Object.freeze({Start:0,Stop:1,State:2});var Fg=Object.freeze({MarketDataGatewayIPAddress:0,MarketDataGatewayPortNumber:1,MarketDataGatewayDataFormat:2,MarketDataGatewayFormatVersion:3,MarketDataGatewayRoutingIPAddress:4,OrderEntryGatewayIPAddress:5,OrderEntryGatewayPortNumber:6,OrderEntryGatewaydataFormat:7,OrderEntryGatewayFormatVersion:8,OrderEntryGatewayRoutingIPAddress:9});var Eg=Object.freeze({False:"N",True:"Y"});var Cg=Object.freeze({Scheduled:0,Running:1,Completed:2,Cancelled:3});var vg=Object.freeze({Received:0,Accepted:1,Rejected:2});var Tg=Object.freeze({New:0,Cancel:1});var Xg=Object.freeze({Undefined:0,Pass:1,Fail:2,Warning:3});var Dg=Object.freeze({Under:0,Over:1});var Rg=Object.freeze({QueueInbound:0,QueueOutbound:1,Reject:2,Disconnect:3,Warning:4});var xg=Object.freeze({OutstandingRequestsUnchanged:0,OutstandingRequestsDecreased:1});var Ng=Object.freeze({RejectIfThrottleLimitExceeded:0,QueueIfThrottleLimitExceeded:1});var Ag=Object.freeze({ThrottleLimitNotExceededNotQueued:0,QueuedDueToThrottleLimitExceeded:1});var wg=Object.freeze({InboundRate:0,OutstandingRequests:1});var Mg=Object.freeze({PlusTick:"0",ZeroPlusTick:"1",MinusTick:"2",ZeroMinusTick:"3"});var Lg=Object.freeze({RegularTrading:0,VariableCabinet:1,FixedCabinet:2,TradedAsASpreadLeg:3,SettledAsASpreadLeg:4,TradedAsSpread:5});var Og=Object.freeze({Day:"0",GoodTillCancel:"1",AtTheOpening:"2",ImmediateOrCancel:"3",FillOrKill:"4",GoodTillCrossing:"5",GoodTillDate:"6",AtTheClose:"7",GoodThroughCrossing:"8",AtCrossing:"9",GoodForTime:"A",GoodForAuction:"B",GoodForMonth:"C"});var kg=Object.freeze({Hour:"H",Minute:"Min",Second:"S",Day:"D",Week:"Wk",Month:"Mo",Year:"Yr",Quarter:"Q",EndOfMonth:"EOM",Flexible:"F"});var Ug=Object.freeze({UnknownOrders:0,UnknownExecutionFills:1,Other:99});var qg=Object.freeze({Accepted:0,Rejected:1});var Bg=Object.freeze({New:0,Cancel:1,Replace:2});var jg=Object.freeze({Add:0,DoNotAdd:1});var Gg=Object.freeze({AllocationNotRequired:0,AllocationRequired:1,UseAllocationProvidedWithTheTrade:2,AllocationGiveUpExecutor:3,AllocationFromExecutor:4,AllocationToClaimAccount:5,TradeSplit:6});var Qg=Object.freeze({PendingClear:0,Claimed:1,Cleared:2,Rejected:3});var Vg=Object.freeze({Uncollateralized:0,PartiallyCollateralized:1,OneWayCollaterallization:2,FullyCollateralized:3,NetExposure:4});var zg=Object.freeze({Cash:"A",AveragePriceTrade:"B",CashTrade:"C",NextDay:"D",Opening:"E",IntradayTradeDetail:"F",Rule127Trade:"G",Rule155Trade:"H",SoldLast:"I",NextDayTrade:"J",Opened:"K",Seller:"L",Sold:"M",StoppedStock:"N",ImbalanceMoreBuyers:"P",ImbalanceMoreSellers:"Q",OpeningPrice:"R",BargainCondition:"S",ConvertedPriceIndicator:"T",ExchangeLast:"U",FinalPriceOfSession:"V",ExPit:"W",Crossed:"X",TradesResultingFromManual:"Y",TradesResultingFromIntermarketSweep:"Z",VolumeOnly:"a",DirectPlus:"b",Acquisition:"c",Bunched:"d",Distribution:"e",BunchedSale:"f",SplitTrade:"g",CancelStopped:"h",CancelETH:"i",CancelStoppedETH:"j",OutOfSequenceETH:"k",CancelLastETH:"l",SoldLastSaleETH:"m",CancelLast:"n",SoldLastSale:"o",CancelOpen:"p",CancelOpenETH:"q",OpenedSaleETH:"r",CancelOnly:"s",CancelOnlyETH:"t",LateOpenETH:"u",AutoExecutionETH:"v",Reopen:"w",ReopenETH:"x",Adjusted:"y",AdjustedETH:"z",Spread:"AA",SpreadETH:"AB",Straddle:"AC",StraddleETH:"AD",Stopped:"AE",StoppedETH:"AF",RegularETH:"AG",Combo:"AH",ComboETH:"AI",OfficialClosingPrice:"AJ",PriorReferencePrice:"AK",StoppedSoldLast:"AL",StoppedOutOfSequence:"AM",OfficialClosingPriceDup:"AN",CrossedOld:"AO",FastMarket:"AP",AutomaticExecution:"AQ",FormT:"AR",BasketIndex:"AS",BurstBasket:"AT",TradeThroughExempt:"AU",QuoteSpread:"AV",LastAuctionPrice:"AW",HighPrice:"AX",LowPrice:"AY",SystematicInternaliser:"AZ",AwayMarket:"BA",MidpointPrice:"BB",TradedBeforeIssueDate:"BC",PreviousClosingPrice:"BD",NationalBestBidOffer:"BE",Cancel:"0",ImpliedTrade:"1",MarketplaceEnteredTrade:"2",MultiAssetClassMultilegTrade:"3",MultilegToMultilegTrade:"4",ShortSaleMinPrice:"5",Benchmark:"6"});var Hg=Object.freeze({DoesNotApply:0,ContingentTrade:1,NonContingentTrade:2});var Wg=Object.freeze({Novation:0,PartialNovation:1,TradeUnwind:2,PartialTradeUnwind:3,Exercise:4,Netting:5,FullNetting:6,PartialNetting:7,Amendment:8,Increase:9,CreditEvent:10,StrategicRestructuring:11,SuccessionEventReorganization:12,SuccessionEventRenaming:13,Porting:14,Withdrawl:15,Void:16,AccountTransfer:17,GiveUp:18,TakeUp:19,AveragePricing:20,Reversal:21,AllocTrdPosting:22,Cascade:23,Delivery:24,OptionAsgn:25,Expiration:26,Maturity:27,EqualPosAdj:28,UnequalPosAdj:29,Correction:30,EarlyTermination:31,Rerate:32,Other:99});var _g=Object.freeze({NotTradedFlat:"N",TradedFlat:"Y"});var Kg=Object.freeze({TradeConfirmation:"0",TwoPartyReport:"1",OnePartyReportForMatching:"2",OnePartyReportForPassThrough:"3",AutomatedFloorOrderRouting:"4",TwoPartyReportForClaim:"5",OnePartyReport:"6",ThirdPtyRptForPassThrough:"7",OnePartyReportAutoMatch:"8"});var Yg=Object.freeze({ReceivedNotProcessed:0,Accepted:1,Rejected:2});var Jg=Object.freeze({Successful:0,InvalidPartyInformation:1,UnknownInstrument:2,Unauthorized:3,InvalidTradeType:4,Other:99});var $g=Object.freeze({SpecialCumDividend:0,SpecialCumRights:1,SpecialExDividend:2,SpecialExRights:3,SpecialCumCoupon:4,SpecialCumCapitalRepayments:5,SpecialExCoupon:6,SpecialExCapitalRepayments:7,CashSettlement:8,SpecialCumBonus:9,SpecialPrice:10,SpecialExBonus:11,GuaranteedDelivery:12,SpecialDividend:13,PriceImprovement:14,NonPriceFormingTrade:15,TradeExemptedFromTradingObligation:16,PricePending:17,PriceNotApplicable:18});var Zg=Object.freeze({PercentPar:0,DealSpread:1,UpfrontPnts:2,UpfrontAmt:3,ParUpfrontAmt:4,SpreadUpfrontAmt:5,UpfrontPntsAmt:6});var e1=Object.freeze({DoNotPublishTrade:0,PublishTrade:1,DeferredPublication:2,Published:3});var t1=Object.freeze({ClearedQuantity:0,LongSideClaimedQuantity:1,ShortSideClaimedQuantity:2,LongSideRejectedQuantity:3,ShortSideRejectedQuantity:4,PendingQuantity:5,TransactionQuantity:6,RemainingQuantity:7,PreviousRemainingQuantity:8});var d1=Object.freeze({NotReported:0,OnBook:1,SISeller:2,SIBuyer:3,NonSISeller:4,SubDelegationByFirm:5,Reportable:6,NonSIBuyer:7,OffBook:8,NotReportable:9});var i1=Object.freeze({Successful:0,InvalidPartyInformation:1,UnknownInstrument:2,UnauthorizedToReportTrades:3,InvalidTradeType:4,PriceExceedsCurrentPriceBand:5,ReferencePriceNotAvailable:6,NotionalValueExceedsThreshold:7,Other:99});var a1=Object.freeze({New:0,Cancel:1,Replace:2,Release:3,Reverse:4,CancelDueToBackOutOfTrade:5});var n1=Object.freeze({Submit:0,Alleged:1,Accept:2,Decline:3,Addendum:4,No:5,TradeReportCancel:6,LockedIn:7,Defaulted:8,InvalidCMTA:9,Pended:10,AllegedNew:11,AllegedAddendum:12,AllegedNo:13,AllegedTradeReportCancel:14,AllegedTradeBreak:15,Verify:16,Dispute:17,NonMaterialUpdate:18});var r1=Object.freeze({Successful:0,InvalidOrUnknownInstrument:1,InvalidTypeOfTradeRequested:2,InvalidParties:3,InvalidTransportTypeRequested:4,InvalidDestinationRequested:5,TradeRequestTypeNotSupported:8,NotAuthorized:9,Other:99});var o1=Object.freeze({Accepted:0,Completed:1,Rejected:2});var s1=Object.freeze({AllTrades:0,MatchedTradesMatchingCriteria:1,UnmatchedTradesThatMatchCriteria:2,UnreportedTradesThatMatchCriteria:3,AdvisoriesThatMatchCriteria:4});var c1=Object.freeze({Agency:"A",VWAPGuarantee:"G",GuaranteedClose:"J",RiskTrade:"R"});var p1=Object.freeze({NumberOfUnits:0,NumberOfRoundLots:1});var u1=Object.freeze({Customer:1,CustomerProfessional:2,BrokerDealer:3,CustomerBrokerDealer:4,Principal:5,MarketMaker:6,AwayMarketMaker:7,SystematicInternaliser:8});var l1=Object.freeze({Day:"1",HalfDay:"2",Morning:"3",Afternoon:"4",Evening:"5",AfterHours:"6",Holiday:"7"});var m1=Object.freeze({PreTrading:"1",OpeningOrOpeningAuction:"2",Continuous:"3",ClosingOrClosingAuction:"4",PostTrading:"5",ScheduledIntradayAuction:"6",Quiescent:"7",AnyAuction:"8",UnscheduledIntradayAuction:"9",OutOfMainSessionTrading:"10",PrivateAuction:"11",PublicAuction:"12",GroupAuction:"13",OrderInitiatedAuction:"14"});var y1=Object.freeze({Automatic:0,Manual:1});var S1=Object.freeze({TradingResumes:0,ChangeOfTradingSession:1,ChangeOfTradingSubsession:2,ChangeOfTradingStatus:3});var P1=Object.freeze({Electronic:1,OpenOutcry:2,TwoParty:3,Voice:4});var f1=Object.freeze({Testing:1,Simulated:2,Production:3});var g1=Object.freeze({Unknown:0,Halted:1,Open:2,Closed:3,PreOpen:4,PreClose:5,RequestRejected:6});var h1=Object.freeze({UnknownOrInvalidTradingSessionID:1,Other:99});var I1=Object.freeze({ExclusiveArrangement:0,CollateralReuse:1,CollateralArrangementType:2});var b1=Object.freeze({Success:0,InvalidParty:1,UnknownInstrument:2,UnauthorizedToSubmitXfer:3,UnknownPosition:4,Other:99});var F1=Object.freeze({Submit:0,Alleged:1});var E1=Object.freeze({InterFirmTransfer:0,IntraFirmTransfer:1,CMTA:2});var C1=Object.freeze({Received:0,RejectedByIntermediary:1,AcceptPending:2,Accepted:3,Declined:4,Cancelled:5});var v1=Object.freeze({New:0,Replace:1,Cancel:2});var T1=Object.freeze({RequestTransfer:0,AcceptTransfer:1,DeclineTransfer:2});var X1=Object.freeze({Accepted:0,Rejected:1,Received:2});var D1=Object.freeze({NoBookOrderDueToAverageSpreadPrice:0,NoBookOrderDueToRefPrice:1,NoBookOrderDueToOtherConditions:2,NoPublicPriceDueToRefPrice:3,NoPublicPriceDueToIlliquid:4,NoPublicPriceDueToOrderSize:5,DeferralDueToLargeInScale:6,DeferralDueToIlliquid:7,DeferralDueToSizeSpecific:8,NoPublicPriceDueToLargeInScale:9,NoPublicPriceSizeDueToOrderHidden:10,ExemptedDueToSecuritiesFinancingTransaction:11,ExemptedDueToESCBPolicyTransaction:12,ExceptionDueToReportByPaper:13,ExceptionDueToTradeExecutedWithNonReportingParty:14,ExceptionDueToIntraFirmOrder:15,ReportedOutsideReportingHours:16,NoPublicPxDueToPreTradeWaiver:17});var R1=Object.freeze({PreTradeTransparencyWaiver:0,PostTradeDeferral:1,ExemptFromPublication:2,OrderLevelPublicationToSubscribers:3,PriceLevelPublicationToSubscribers:4,OrderLevelPublicationToThePublic:5,PublicationInternalToExecutionVenue:6});var x1=Object.freeze({NotManuallyCaptured:"N",ManuallyCaptured:"Y"});var N1=Object.freeze({ExecutionTime:1,TimeIn:2,TimeOut:3,BrokerReceipt:4,BrokerExecution:5,DeskReceipt:6,SubmissionToClearing:7,TimePriority:8,OrderbookEntryTime:9,OrderSubmissionTime:10,PubliclyReported:11,PublicReportUpdated:12,NonPubliclyReported:13,NonPublicReportUpdated:14,SubmittedForConfirmation:15,UpdatedForConfirmation:16,Confirmed:17,UpdatedForClearing:18,Cleared:19,AllocationsSubmitted:20,AllocationsUpdated:21,AllocationsCompleted:22,SubmittedToRepository:23,PostTrdContntnEvnt:24,PostTradeValuation:25,PreviousTimePriority:26,IdentifierAssigned:27,PreviousIdentifierAssigned:28,OrderCancellationTime:29,OrderModificationTime:30,OrderRoutingTime:31,TradeCancellationTime:32,TradeModificationTime:33,ReferenceTimeForNBBO:34,Affirmed:35});var A1=Object.freeze({Accepted:0,Rejected:1,Cancelled:2,AcceptedWithErrors:3,PendingNew:4,PendingCancel:5,PendingReplace:6,Terminated:7,PendingVerification:8,DeemedVerified:9,Verified:10,Disputed:11});var w1=Object.freeze({CMTA:0,InternalTransferOrAdjustment:1,ExternalTransferOrTransferOfAccount:2,RejectForSubmittingSide:3,AdvisoryForContraSide:4,OffsetDueToAnAllocation:5,OnsetDueToAnAllocation:6,DifferentialSpread:7,ImpliedSpreadLegExecutedAgainstAnOutright:8,TransactionFromExercise:9,TransactionFromAssignment:10,ACATS:11,AI:14,B:15,K:16,LC:17,M:18,N:19,NM:20,NR:21,P:22,PA:23,PC:24,PN:25,R:26,RO:27,RT:28,SW:29,T:30,WN:31,WT:32,OffHoursTrade:33,OnHoursTrade:34,OTCQuote:35,ConvertedSWAP:36,CrossedTrade:37,InterimProtectedTrade:38,LargeInScale:39,WashTrade:40,TradeAtSettlement:41,AuctionTrade:42,TradeAtMarker:43,CreditDefault:44,CreditRestructuring:45,Merger:46,SpinOff:47,MultilateralCompression:48,Balancing:50,BasisTradeIndexClose:51,TradeAtCashOpen:52,TrdSubmitVenueClrSettl:53,BilateralCompression:54});var M1=Object.freeze({RegularTrade:0,BlockTrade:1,EFP:2,Transfer:3,LateTrade:4,TTrade:5,WeightedAveragePriceTrade:6,BunchedTrade:7,LateBunchedTrade:8,PriorReferencePriceTrade:9,AfterHoursTrade:10,ExchangeForRisk:11,ExchangeForSwap:12,ExchangeOfFuturesFor:13,ExchangeOfOptionsForOptions:14,TradingAtSettlement:15,AllOrNone:16,FuturesLargeOrderExecution:17,ExchangeOfFuturesForFutures:18,OptionInterimTrade:19,OptionCabinetTrade:20,PrivatelyNegotiatedTrades:22,SubstitutionOfFuturesForForwards:23,ErrorTrade:24,SpecialCumDividend:25,SpecialExDividend:26,SpecialCumCoupon:27,SpecialExCoupon:28,CashSettlement:29,SpecialPrice:30,GuaranteedDelivery:31,SpecialCumRights:32,SpecialExRights:33,SpecialCumCapitalRepayments:34,SpecialExCapitalRepayments:35,SpecialCumBonus:36,SpecialExBonus:37,LargeTrade:38,WorkedPrincipalTrade:39,BlockTrades:40,NameChange:41,PortfolioTransfer:42,ProrogationBuy:43,ProrogationSell:44,OptionExercise:45,DeltaNeutralTransaction:46,FinancingTransaction:47,NonStandardSettlement:48,DerivativeRelatedTransaction:49,PortfolioTrade:50,VolumeWeightedAverageTrade:51,ExchangeGrantedTrade:52,RepurchaseAgreement:53,OTC:54,ExchangeBasisFacility:55,OpeningTrade:56,NettedTrade:57,BlockSwapTrade:58,CreditEventTrade:59,SuccessionEventTrade:60,GiveUpGiveInTrade:61,DarkTrade:62,TechnicalTrade:63,Benchmark:64,PackageTrade:65,RollTrade:66,ClosingPriceTrade:67,InterFundTransferTrade:68,NetAssetValueCalculatedTrade:69});var L1=Object.freeze({Activate:"1",Modify:"2",Cancel:"3"});var O1=Object.freeze({NotTriggered:0,Triggered:1,StopOrderTriggered:2,OCOOrderTriggered:3,OTOOrderTriggered:4,OUOOrderTriggered:5});var k1=Object.freeze({Market:"1",Limit:"2"});var U1=Object.freeze({Up:"U",Down:"D"});var q1=Object.freeze({BestOffer:"1",LastTrade:"2",BestBid:"3",BestBidOrLastTrade:"4",BestOfferOrLastTrade:"5",BestMid:"6"});var B1=Object.freeze({None:"0",Local:"1",National:"2",Global:"3"});var j1=Object.freeze({ThisOrder:0,OtherOrder:1,AllOtherOrdersForGivenSecurity:2,AllOtherOrdersForGivenSecurityAndPrice:3,AllOtherOrdersForGivenSecurityAndSide:4,AllOtherOrdersForGivenSecurityPriceAndSide:5});var G1=Object.freeze({PartialExecution:"1",SpecifiedTradingSession:"2",NextAuction:"3",PriceMovement:"4",OnOrderEntryOrModification:"5"});var Q1=Object.freeze({FIXED:"FIXED",DIFF:"DIFF"});var V1=Object.freeze({Divide:"D",Multiply:"M"});var z1=Object.freeze({Execution:0,PortfolioRebalancing:1,Standard:2});var H1=Object.freeze({Bond:"0",ConvertibleBond:"1",Mortgage:"2",Loan:"3"});var W1=Object.freeze({Regular:1,SpecialReference:2,OptimalValue:3,AverageValue:4});var _1=Object.freeze({TPlus1:2,TPlus3:4,TPlus4:5});var K1=Object.freeze({BillionCubicFeet:"Bcf",Allowances:"Alw",CubicMeters:"CBM",Barrels:"Bbl",Gigajoules:"GJ",BoardFeet:"BDFT",HeatRate:"kHR",Bushels:"Bu",KilowattHours:"kWh",Currency:"Ccy",MegaHeatRate:"MHR",CoolingDegreeDay:"CDD",OneMillionBTU:"MMBtu",CertifiedEmissionsReduction:"CER",MegawattHours:"MWh",CriticalPrecipDay:"CPD",Therms:"thm",ClimateReserveTonnes:"CRT",TonsOfCarbonDioxide:"tnCO2",Hundredweight:"cwt",Day:"day",DryMetricTons:"dt",EnvAllwncCert:"EnvAllwnc",EnvironmentalCredit:"EnvCrd",EnvironmentalOffset:"EnvOfst",Grams:"g",Gallons:"Gal",GrossTons:"GT",HeatingDegreeDay:"HDD",IndexPoint:"IPNT",Kilograms:"kg",Kiloliters:"kL",KilowattYear:"kW-a",KilowattDay:"kW-d",KilowattHour:"kW-h",KilowattMonth:"kW-M",KilowattMinute:"kW-min",Liters:"L",Pounds:"lbs",MegawattYear:"MW-a",MegawattDay:"MW-d",MegawattHour:"MW-h",MegawattMonth:"MW-M",MegawattMinute:"MW-min",TroyOunces:"oz_tr",PrincipalWithRelationToDebtInstrument:"PRINC",MetricTons:"t",Tons:"tn",Are:"a",Acre:"ac",Centiliter:"cL",Centimeter:"cM",DieselGallonEquivalent:"DGE",Foot:"ft",GBGallon:"Gal_gb",GasolineGallonEquivalent:"GGE",Hectare:"ha",Inch:"in",Kilometer:"kM",Meter:"M",Mile:"mi",Milliliter:"mL",Millimeter:"mM",USOunce:"oz",Piece:"pc",USPint:"pt",GBPint:"pt_gb",USQuart:"qt",GBQuart:"qt_gb",SquareCentimeter:"SqcM",SquareFoot:"Sqft",SquareInch:"Sqin",SquareKilometer:"SqkM",SquareMeter:"SqM",SquareMile:"Sqmi",SquareMillimeter:"SqmM",SquareYard:"Sqyd",Yard:"yd",MillionBarrels:"MMbbl",USDollars:"USD"});var Y1=Object.freeze({MessageIsBeingSentAsAResultOfAPriorRequest:"N",MessageIsBeingSentUnsolicited:"Y"});var J1=Object.freeze({Percentage:1,FixedAmount:3});var $1=Object.freeze({Normal:"0",Flash:"1",Background:"2"});var Z1=Object.freeze({LogOnUser:1,LogOffUser:2,ChangePasswordForUser:3,RequestIndividualUserStatus:4,RequestThrottleLimit:5});var eh=Object.freeze({LoggedIn:1,NotLoggedIn:2,UserNotRecognised:3,PasswordIncorrect:4,PasswordChanged:5,Other:6,ForcedUserLogoutByExchange:7,SessionShutdownWarning:8,ThrottleParametersChanged:9});var th=Object.freeze({PremiumStyle:"EQTY",FuturesStyleMarkToMarket:"FUT",FuturesStyleWithAnAttachedCashAdjustment:"FUTDA",CDSStyleCollateralization:"CDS",CDSInDeliveryUseRecoveryRateToCalculate:"CDSD"});var dh=Object.freeze({DoNotCheck:0,Check:1,BestEffort:2});var ih=Object.freeze({PriceCheck:1,NotionalValueCheck:2,QuantityCheck:3});var ah=Object.freeze({Electronic:"E",Pit:"P",ExPit:"X",ClearingHouse:"C",RegisteredMarket:"R",OffMarket:"O",CentralLimitOrderBook:"B",QuoteDrivenMarket:"Q",DarkOrderBook:"D",AuctionDrivenMarket:"A",QuoteNegotiation:"N",VoiceNegotiation:"V",HybridMarket:"H",OtherMarket:"z"});var nh=Object.freeze({NonElectronic:0,Electronic:1});var rh=Object.freeze({NotWorking:"N",Working:"Y"});var oh=Object.freeze({AfterTaxYield:"AFTERTAX",AnnualYield:"ANNUAL",YieldAtIssue:"ATISSUE",YieldToAverageMaturity:"AVGMATURITY",BookYield:"BOOK",YieldToNextCall:"CALL",YieldChangeSinceClose:"CHANGE",ClosingYield:"CLOSE",CompoundYield:"COMPOUND",CurrentYield:"CURRENT",GvntEquivalentYield:"GOVTEQUIV",TrueGrossYield:"GROSS",YieldWithInflationAssumption:"INFLATION",InverseFloaterBondYield:"INVERSEFLOATER",MostRecentClosingYield:"LASTCLOSE",ClosingYieldMostRecentMonth:"LASTMONTH",ClosingYieldMostRecentQuarter:"LASTQUARTER",ClosingYieldMostRecentYear:"LASTYEAR",YieldToLongestAverageLife:"LONGAVGLIFE",MarkToMarketYield:"MARK",YieldToMaturity:"MATURITY",YieldToNextRefund:"NEXTREFUND",OpenAverageYield:"OPENAVG",PreviousCloseYield:"PREVCLOSE",ProceedsYield:"PROCEEDS",YieldToNextPut:"PUT",SemiAnnualYield:"SEMIANNUAL",YieldToShortestAverageLife:"SHORTAVGLIFE",SimpleYield:"SIMPLE",TaxEquivalentYield:"TAXEQUIV",YieldToTenderDate:"TENDER",TrueYield:"TRUE",YieldValueOf32nds:"VALUE1_32",YieldToWorst:"WORST"});var $a=(d,e)=>{if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);let t=[new _(k.BeginString,d.fixVersion),new _(k.MsgType,fe.Heartbeat),new _(k.MsgSeqNum,d.getNextTargetMsgSeqNum()),new _(k.SenderCompID,d.sender),new _(k.TargetCompID,d.target),new _(k.SendingTime,d.getTimestamp(new Date))];return e&&t.push(e),d.createMessage(...t)},jr=(d,e,t,i=ud.GapFillMessage)=>{if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);let a=[new _(k.BeginString,d.fixVersion),new _(k.MsgType,fe.SequenceReset),new _(k.MsgSeqNum,e),new _(k.SenderCompID,d.sender),new _(k.TargetCompID,d.target),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.GapFillFlag,i),new _(k.NewSeqNo,t+1)];return d.createMessage(...a)};var sF=(d,e,t)=>{if(d.isLoggedIn)return d.connectionType==="acceptor"?t.getField(k.ResetSeqNumFlag)&&t.getField(k.ResetSeqNumFlag).value.toString()==="Y"&&(d.logger.log({level:"info",message:`FIXServer (${d.protocol.toUpperCase()}): -- Logon acknowledged by acceptor.`,fix:t.encode("|")}),d.messageStoreIn.setNextMsgSeqNum(1)):d.logger.log({level:"info",message:`FIXServer (${d.protocol.toUpperCase()}): -- Logon acknowledged by initiator.`,fix:t.encode("|")}),!0;let i=String(t.getField(k.BeginString)?.value),a=!0,n=!0;i&&(d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): -- FIX version set to ${i}`,fix:t.encode("|")}),d.fixVersion=i,d.fixParser&&(d.fixParser.fixVersion=i));let r=t.getField(k.TargetCompID)?.value?.toString()??d.sender,o=t.getField(k.SenderCompID)?.value?.toString()??d.target;if(r&&r!==d.sender&&(d.logger.logWarning({message:`FIXServer (${d.protocol.toUpperCase()}): -- Expected TargetCompID=${d.sender}, but got ${r}`,fix:t.encode("|")}),n=!1),o&&o!==d.target&&(d.logger.logWarning({message:`FIXServer (${d.protocol?.toUpperCase()}): -- Expected SenderCompID=${d.target}, but got ${o}`,fix:t.encode("|")}),a=!1),a&&n){if(d.connectionType==="acceptor"){let p=d.createMessage(new _(k.MsgType,fe.Logon),new _(k.MsgSeqNum,t.getField(k.MsgSeqNum)?.value?.toString()),new _(k.SenderCompID,r),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.TargetCompID,o),new _(k.ResetSeqNumFlag,t.getField(k.ResetSeqNumFlag)?.value?.toString()==="Y"?ea.Yes:ea.No),new _(k.EncryptMethod,Ya.None),new _(k.HeartBtInt,t.getField(k.HeartBtInt)?t.getField(k.HeartBtInt)?.value:d.heartBeatInterval));d.send(p),d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): >> sent Logon acknowledge`,fix:p.encode("|")})}t.getField(k.ResetSeqNumFlag)&&t.getField(k.ResetSeqNumFlag)?.value?.toString()==="Y"&&(d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): -- Logon contains ResetSeqNumFlag=Y, resetting sequence numbers to 1`,fix:t.encode("|")}),d.messageStoreIn.setNextMsgSeqNum(1),d.setNextTargetMsgSeqNum(2)),d.isLoggedIn=!0,d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): >> Logon successful by ${d.connectionType}`,fix:t.encode("|")});let c=t.getField(k.HeartBtInt)?Number(t.getField(k.HeartBtInt)?.value):d.heartBeatInterval;return d.heartBeatInterval=c,d.fixParser&&(d.fixParser.heartBeatInterval=c),d.startHeartbeat(c),!0}let s=d.createMessage(new _(k.MsgType,fe.Logout),new _(k.MsgSeqNum,d.getNextTargetMsgSeqNum()),new _(k.SenderCompID,a?o:"INVALID_SENDER"),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.TargetCompID,n?r:"INVALID_TARGET"),new _(k.Text,"Invalid Logon TARGET or SENDER."));return d.isLoggedIn=!1,d.send(s),d.logger.logWarning({message:`FIXServer (${d.protocol?.toUpperCase()}): >> sent Logout due to invalid Logon`,fix:t.encode("|")}),d.stopHeartbeat(),d.close(),!1};var cF=(d,e)=>{if(d.isLoggedIn=!1,!d.requestedLogout){let t=d.createMessage(new _(k.MsgType,fe.Logout),new _(k.MsgSeqNum,d.getNextTargetMsgSeqNum()),new _(k.SenderCompID,e.getField(k.SenderCompID)?e.getField(k.SenderCompID).value.toString():d.sender),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.TargetCompID,e.getField(k.TargetCompID)?e.getField(k.TargetCompID).value.toString():d.target),new _(k.Text,"Logout acknowledgement"));d.send(t),d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): >> sent Logout acknowledge`,fix:t.encode("|")})}d.stopHeartbeat(),d.close()};var pF=(d,e,t)=>{let i=t.getField(k.BeginSeqNo)?Number(t.getField(k.BeginSeqNo)?.value):void 0,a=t.getField(k.EndSeqNo)?Number(t.getField(k.EndSeqNo)?.value):void 0;if(i===void 0||a===void 0){d.logger.logWarning({message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- Ignoring ResendRequest - Invalid BeginSeqNo or EndSeqNo`});return}if(a===0&&(a=d.getNextTargetMsgSeqNum()>i?d.getNextTargetMsgSeqNum()-1:i),e.size()===0){d.logger.logWarning({message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- Message Store does not contain the messages requested by the ResendRequest. Sending SequenceReset.`}),d.send(jr(d,i,a,ud.SequenceReset)),d.setNextTargetMsgSeqNum(a+1);return}if(i>=1&&a>=i){let n=i,r=a;for(n;n<=a;n++){let o=e.getByMsgSequence(n);if(o){let s=o,c=s.getField(k.MsgType)?.value;if(c===nt.Heartbeat||c===nt.Logon||c===nt.Logout||c===nt.Reject||c===nt.ResendRequest||c===nt.SequenceReset||c===nt.TestRequest||c===nt.XMLnonFIX||c===nt.MarketDataSnapshotFullRefresh||c===nt.SecurityDefinition){if(i===a||n<a){let p=jr(d,n,n,ud.GapFillMessage);d.send(p),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> resending message with sequence ${n} (replaced administrative message)`,fix:p.encode("|")})}}else{if(s.removeFieldByTag(k.PossDupFlag),s.addField(new _(k.PossDupFlag,Ja.PossibleDuplicate)),s.getField(k.SendingTime)){let p=`${s.getField(k.SendingTime)?.value}`;s.removeFieldByTag(k.SendingTime),s.addField(new _(k.SendingTime,d.getTimestamp(new Date))),s.removeFieldByTag(k.OrigSendingTime),s.addField(new _(k.OrigSendingTime,p))}d.send(s),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> resending message with sequence ${n}`,fix:s.encode("|")})}r=n+1}else{d.send(jr(d,n,a,ud.GapFillMessage)),d.logger.logWarning({message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- Could not find message with sequence ${n}. Sending SequenceReset-GapFill from ${n} to ${a}...`}),r=a+1;break}}d.setNextTargetMsgSeqNum(r),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> sent message sequence from ${i} to ${a}`})}else d.logger.logWarning({message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- BeginSeqNo<${i}> or EndSeqNo<${a}> out of range`})};var uF=(d,e)=>{if(e.messageSequence!==d.messageStoreIn.getNextMsgSeqNum()&&e.messageType!==fe.Logon&&e.messageType!==fe.SequenceReset){d.logger.logWarning({message:`FIXServer (${d.protocol?.toUpperCase()}): Expected MsgSeqNum ${d.messageStoreIn.getNextMsgSeqNum()}, but got ${e.messageSequence}`,fix:e.encode("|")});let t=d.createMessage(new _(k.MsgType,fe.ResendRequest),new _(k.MsgSeqNum,d.getNextTargetMsgSeqNum()),new _(k.SenderCompID,d.sender),new _(k.SendingTime,d.getTimestamp(new Date)),new _(k.TargetCompID,d.target),new _(k.BeginSeqNo,d.messageStoreIn.getNextMsgSeqNum()),new _(k.EndSeqNo,0));return d.logger.log({level:"info",message:`FIXServer (${d.protocol?.toUpperCase()}): Sending ResendRequest from ${d.messageStoreIn.getNextMsgSeqNum()} to 0`,fix:t.encode("|")}),d.send(t),!1}return!0};var lF=(d,e)=>{let t=e.getField(k.NewSeqNo)?.value;t&&Number.isFinite(t)&&(d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): -- SequenceReset: new sequence number ${t}`,fix:e.encode("|")}),d.messageStoreIn.setNextMsgSeqNum(Number(t)-1))};var mF=(d,e)=>{let t=$a(d),i=e.getField(k.TestReqID)?.value??null;if(i!==null&&i!==""){let a=new _(k.TestReqID,i);t=$a(d,a),d.send(t),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> responded to TestRequest with Heartbeat<TestReqID=${i}>`,fix:t.encode("|")})}else d.send(t),d.logger.log({level:"info",message:`${d.parserName} (${d.protocol?.toUpperCase()}): >> responded to TestRequest with Heartbeat`,fix:t.encode("|")})};var Gr=(d,e)=>{uF(d,e),d.logger.log({level:"info",message:`FIXParser (${d.protocol?.toUpperCase()}): << received ${e.description}`,fix:e.encode("|")}),d.restartHeartbeat(),e.messageType===fe.SequenceReset?lF(d,e):e.messageType===fe.TestRequest?mF(d,e):e.messageType===fe.Logon?sF(d,d.messageStoreOut,e):e.messageType===fe.Logout?cF(d,e):e.messageType===fe.ResendRequest&&pF(d,d.messageStoreOut,e),d.messageStoreIn.setNextMsgSeqNum(d.messageStoreIn.getNextMsgSeqNum()+1)};var yF=require("node:stream"),Za=class extends yF.Transform{data;constructor(e){super(e),this.data=""}_transform(e,t,i){let a=(String(this.data)+e).split(/(8=.+?\x0110=\d\d\d\x01)/gs),n=0;for(n;n<a.length-1;n++)this.push(a[n]);this.data=a[a.length-1],i()}destroy(e){return this.data=void 0,super.destroy(e)}};var sh=class{static version=$5;parserName="FIXParser";fixParserBase=new Br;heartBeatIntervalId=void 0;socket=void 0;connected=!1;host;port;protocol="tcp";sender=void 0;target=void 0;heartBeatInterval=cc;fixVersion=kd;messageStoreIn=new fi;messageStoreOut=new fi;requestedLogout=!1;connectionType="initiator";logger=new Pi;logging=!0;logOptions;proxy;tlsOptions;tlsSkipStdInPipe;tlsTimeout;tlsEncoding=uc;onMessageCallbacks=[];onOpenCallbacks=[];onErrorCallbacks=[];onCloseCallbacks=[];onReadyCallbacks=[];constructor(e={logging:!0,logOptions:void 0,fixVersion:kd,skipValidation:!1,plugins:[]}){if(this.logging=e.logging??!0,this.logOptions=e.logOptions,this.fixParserBase.fixVersion=li(e.fixVersion),this.fixVersion=this.fixParserBase.fixVersion,this.fixParserBase.skipValidation=e.skipValidation,e.plugins)for(let t of e.plugins)t.register(this)}addOnMessageCallback(e){this.onMessageCallbacks.push(e)}addOnOpenCallback(e){this.onOpenCallbacks.push(e)}addOnErrorCallback(e){this.onErrorCallbacks.push(e)}addOnCloseCallback(e){this.onCloseCallbacks.push(e)}addOnReadyCallback(e){this.onReadyCallbacks.push(e)}triggerOnMessage(e){for(let t of this.onMessageCallbacks)t?.(e)}triggerOnOpen(){for(let e of this.onOpenCallbacks)e?.()}triggerOnError(e){for(let t of this.onErrorCallbacks)t?.(e)}triggerOnClose(){for(let e of this.onCloseCallbacks)e?.()}triggerOnReady(){for(let e of this.onReadyCallbacks)e?.()}onMessageCallback=()=>{};onOpenCallback=()=>{};onErrorCallback=()=>{};onCloseCallback=()=>{};onReadyCallback=()=>{};connect(e={}){let{host:t="localhost",port:i=9878,protocol:a="tcp",sender:n="SENDER",target:r="TARGET",heartbeatIntervalSeconds:o=cc,fixVersion:s=this.fixVersion,messageStoreIn:c=new fi,messageStoreOut:p=new fi,tlsOptions:l={},tlsSkipStdInPipe:m=!1,tlsTimeout:P=pc,tlsEncoding:g=uc,proxy:y=void 0,onMessage:f=this.onMessageCallback,onOpen:h=this.onOpenCallback,onError:I=this.onErrorCallback,onClose:b=this.onCloseCallback,onReady:F=this.onReadyCallback}=e;if(this.logger=new Pi(this.logOptions?{name:this.logOptions.name??"fixparser",...this.logOptions}:{name:"fixparser",format:"json"}),this.logging||(this.logger.silent=!0),se.setLogger(this.logger),!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);switch(this.connectionType="initiator",this.fixVersion=li(s),this.fixParserBase.fixVersion=li(s),this.messageStoreIn=c,this.messageStoreOut=p,this.protocol=a,this.sender=n,this.target=r,this.port=i,this.host=t,this.proxy=y,l&&(this.tlsOptions=l),m&&(this.tlsSkipStdInPipe=m),P&&(this.tlsTimeout=P),g&&(this.tlsEncoding=g),this.heartBeatInterval=o,this.onMessageCallback=f,this.onOpenCallback=h,this.onErrorCallback=I,this.onCloseCallback=b,this.onReadyCallback=F,a){case"tcp":this.connectTcp();break;case"ssl-tcp":case"tls-tcp":this.connectTlsTcp();break;case"websocket":this.connectWebsocket();break;default:throw new Error(`Unsupported protocol: ${a}`)}}connectTcp(){this.socket=new SF.Socket,this.socket.setEncoding(this.tlsEncoding),this.socket.pipe(new Za).on("data",e=>{let t=this.parse(e.toString()),i=0;for(i;i<t.length;i++)Gr(this,t[i]),this.messageStoreIn.add(t[i]),this.onMessageCallback?.(t[i]),this.triggerOnMessage(t[i])}),this.socket.connect(Number(this.port),String(this.host),()=>{this.connected=!0,this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connected to ${this.host}:${this.port}`}),this.onOpenCallback?.(),this.triggerOnOpen()}),this.socket.on("close",()=>{this.connected=!1,this.onCloseCallback?.(),this.triggerOnClose(),this.stopHeartbeat()}),this.socket.on("ready",()=>{setTimeout(()=>{this.onReadyCallback?.(),this.triggerOnReady()},lc)}),this.socket.on("timeout",()=>{this.connected=!1;let e=this.socket;this.onCloseCallback?.(),this.triggerOnClose(),e.end(),this.stopHeartbeat()}),this.socket.on("error",e=>{this.connected=!1,this.onErrorCallback?.(e),this.triggerOnError(e),this.stopHeartbeat()})}connectTlsTcp(){this.tlsOptions||(this.tlsOptions={}),this.tlsOptions.host||(this.tlsOptions.host=this.host),this.tlsOptions.port||(this.tlsOptions.port=this.port);let e=Number(this.tlsOptions.port),t=String(this.tlsOptions.host);try{let i=(0,PF.connect)(e,t,this.tlsOptions,()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connected to ${t}:${e} via TLS.`}),this.tlsSkipStdInPipe||(process.stdin.pipe(i),process.stdin.resume()),this.addTcpListeners(i),this.connected=!0,this.onOpenCallback?.(),this.triggerOnOpen()});this.socket=i,i.setEncoding(this.tlsEncoding),i.setTimeout(this.tlsTimeout??pc),this.addTlsListener(i)}catch(i){i instanceof Error?this.logger.logError({level:"error",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Client connection to ${this.host}:${this.port} failed with error: ${i.message}.`}):this.logger.logError({level:"error",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Client connection to ${this.host}:${this.port} failed with unspecified error.`}),this.connected=!1;return}}addTcpListeners(e){let t=new Za;t.setEncoding(this.tlsEncoding),e.on("ready",()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connection ready to ${this.host}:${this.port}.`})}),e.pipe(t).on("data",i=>{try{let a=this.parse(i);for(let n of a)Gr(this,n),this.messageStoreIn.add(n),this.onMessageCallback?.(n),this.triggerOnMessage(n)}catch(a){this.logger.logError({level:"warn",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Failed to parse/process incoming data \u2014 ${a.message}`})}}),e.on("end",()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Server closed the connection (END). ${this.host}:${this.port}.`}),this.disconnectTlsTcp(e)}),e.on("close",i=>{this.logger.log({level:i?"error":"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connection closed: ${this.host}:${this.port}. HadError? '${i}`}),this.disconnectTlsTcp(e)}),e.on("timeout",()=>{this.logger.logError({level:"warn",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connection timeout for ${this.host}:${this.port}.`}),this.disconnectTlsTcp(e)}),e.on("error",i=>{this.logger.logError({level:"error",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connection error for ${this.host}:${this.port}. error: ${i.message}`}),this.onErrorCallback?.(i),this.triggerOnError(i),this.disconnectTlsTcp(e)})}addTlsListener(e){e.on("secureConnect",()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- TLS handshake completed to ${this.host}:${this.port}.`}),this.onReadyCallback?.(),this.triggerOnReady()})}disconnectTlsTcp(e){e?(this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Disconnected from ${this.host}:${this.port}.`}),this.connected=!1,e.removeAllListeners(),e.destroy(),this.onCloseCallback?.(),this.triggerOnClose(),this.stopHeartbeat(),this.socket=void 0):this.logger.logError({level:"error",message:`FIXParser (${this.protocol?.toUpperCase()}): -- No active connection to disconnect.`})}connectWebsocket(){let e=String(this.host).indexOf("ws://")===-1&&String(this.host).indexOf("wss://")===-1?`ws://${String(this.host)}:${Number(this.port)}`:`${String(this.host)}:${Number(this.port)}`;this.proxy?this.socket=new zt.default(e,{agent:this.proxy}):this.socket=new zt.default(e),this.socket.on("message",t=>{let i=this.parse(t.toString()),a=0;for(a;a<i.length;a++)Gr(this,i[a]),this.messageStoreIn.add(i[a]),this.onMessageCallback?.(i[a]),this.triggerOnMessage(i[a])}),this.socket.on("open",()=>{this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Connected to ${this.host}:${this.port}`}),this.connected=!0,this.onOpenCallback?.(),this.triggerOnOpen()}),this.socket.on("close",()=>{this.connected=!1,this.onCloseCallback?.(),this.triggerOnClose(),this.stopHeartbeat()}),this.socket.readyState===(zt.default.OPEN||zt.default.CLOSED||zt.default.CLOSING||zt.default.CONNECTING)&&setTimeout(()=>{this.onReadyCallback?.(),this.triggerOnReady()},lc)}getNextTargetMsgSeqNum(){return this.messageStoreOut.getNextMsgSeqNum()}setNextTargetMsgSeqNum(e){return this.messageStoreOut.setNextMsgSeqNum(e)}getNextSenderMsgSeqNum(){return this.messageStoreIn.getNextMsgSeqNum()}setNextSenderMsgSeqNum(e){return this.messageStoreIn.setNextMsgSeqNum(e)}getTimestamp(e=new Date){return sc(e,this.logger)}createMessage(...e){let t=new Si(this.fixVersion,...e);return t.messageSequence=this.getNextTargetMsgSeqNum(),t}parse(e){if(!se.validateFreeLicense())throw new Error(se.ERROR_MESSAGE_NO_FREE_LICENSE);return this.fixParserBase.parse(e)}send(e){if(!se.validateLicense())throw new Error(se.ERROR_MESSAGE_NO_LICENSE);let t=e.getField(k.MsgType);t&&t.value===fe.Logout&&(this.requestedLogout=!0);let i=e.encode();this.protocol==="tcp"&&this.connected?(this.setNextTargetMsgSeqNum(this.getNextTargetMsgSeqNum()+1),this.socket.write(i),this.messageStoreOut.add(e.clone()),this.restartHeartbeat(),this.logger.log({level:"info",message:`FIXParser (${this.protocol.toUpperCase()}): >> sent`,fix:i.replace(/\x01/g,"|")})):this.protocol==="websocket"&&this.socket.readyState===zt.default.OPEN?(this.setNextTargetMsgSeqNum(this.getNextTargetMsgSeqNum()+1),this.socket.send(i),this.messageStoreOut.add(e.clone()),this.restartHeartbeat(),this.logger.log({level:"info",message:`FIXParser (${this.protocol.toUpperCase()}): >> sent`,fix:i.replace(/\x01/g,"|")})):(this.protocol==="ssl-tcp"||this.protocol==="tls-tcp")&&this.connected?(this.setNextTargetMsgSeqNum(this.getNextTargetMsgSeqNum()+1),this.socket.write(i),this.messageStoreOut.add(e.clone()),this.restartHeartbeat(),this.logger.log({level:"info",message:`FIXParser (${this.protocol.toUpperCase()}): >> sent`,fix:i.replace(/\x01/g,"|")})):this.logger.logError({message:`FIXParser (${this.protocol?.toUpperCase()}): -- Could not send message, no connection`,fix:i.replace(/\x01/g,"|")})}isConnected(){return this.connected}close(){if(this.protocol==="tcp"){let e=this.socket;e?(e.destroy(),this.connected=!1):this.logger.logError({message:`FIXParser (${this.protocol.toUpperCase()}): -- Could not close socket, connection not open`})}else if(this.protocol==="websocket"){let e=this.socket;if(e){try{e.close()}catch(t){this.logger.logError({message:`FIXParser (${this.protocol.toUpperCase()}): -- Could not close socket,`,error:t})}this.connected=!1}else this.logger.logError({message:`FIXParser (${this.protocol.toUpperCase()}): -- Could not close socket, connection not open`})}else if(this.protocol==="ssl-tcp"||this.protocol==="tls-tcp"){let e=this.socket;e?(e.destroy(),this.connected=!1):this.logger.logError({message:`FIXParser (${this.protocol.toUpperCase()}): -- Could not close socket, connection not open`})}}stopHeartbeat(){clearInterval(this.heartBeatIntervalId)}restartHeartbeat(){this.stopHeartbeat(),this.startHeartbeat(this.heartBeatInterval,!0)}startHeartbeat(e=this.heartBeatInterval,t){this.stopHeartbeat(),t||this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): -- Heartbeat configured to ${e} seconds`}),this.heartBeatInterval=e,this.heartBeatIntervalId=setInterval(()=>{let i=$a(this);this.send(i);let a=i.encode();this.logger.log({level:"info",message:`FIXParser (${this.protocol?.toUpperCase()}): >> sent Heartbeat`,fix:a.replace(/\x01/g,"|")})},this.heartBeatInterval*1e3)}};0&&(module.exports={AccountType,AcctIDSource,Adjustment,AdjustmentType,AdvSide,AdvTransType,AffirmStatus,AggregatedBook,AggressorIndicator,AlgoCertificateReportStatus,AlgoCertificateReportTransType,AlgoCertificateReportType,AlgoCertificateRequestStatus,AlgoCertificateRequestTransType,AlgoCertificateRequestType,AlgoCertificateStatus,AlgorithmicTradeIndicator,AllocAccountType,AllocCancReplaceReason,AllocGroupStatus,AllocGroupSubQtyType,AllocHandlInst,AllocIntermedReqType,AllocLinkType,AllocMethod,AllocNoOrdersType,AllocPositionEffect,AllocRejCode,AllocReportType,AllocRequestStatus,AllocReversalStatus,AllocSettlInstType,AllocStatus,AllocTransType,AllocType,AllocationRollupInstruction,ApplLevelRecoveryIndicator,ApplQueueAction,ApplQueueResolution,ApplReportType,ApplReqType,ApplResponseError,ApplResponseType,ApplVerID,AsOfIndicator,AssetClass,AssetGroup,AssetSubClass,AssetValuationModel,AssignmentMethod,AttachmentEncodingType,AuctionInstruction,AuctionType,AveragePriceType,AvgPxIndicator,BasisPxType,BatchProcessMode,BeginString,Benchmark,BenchmarkCurveName,BidDescriptorType,BidRequestTransType,BidTradeType,BidType,BlockTrdAllocIndicator,BookingType,BookingUnit,BusinessDayConvention,BusinessRejectReason,CPProgram,CalculationMethod,CancellationRights,CashMargin,CashSettlPriceDefault,CashSettlQuoteMethod,CashSettlValuationMethod,ClearedIndicator,ClearingAccountType,ClearingFeeIndicator,ClearingInstruction,ClearingIntention,ClearingRequirementException,CollAction,CollApplType,CollAsgnReason,CollAsgnRejectReason,CollAsgnRespType,CollAsgnTransType,CollInquiryQualifier,CollInquiryResult,CollInquiryStatus,CollRptRejectReason,CollRptStatus,CollStatus,CollateralAmountType,CollateralReinvestmentType,CommType,CommissionAmountSubType,CommissionAmountType,CommodityFinalPriceType,ComplexEventCondition,ComplexEventCreditEventNotifyingParty,ComplexEventDateOffsetDayType,ComplexEventPVFinalPriceElectionFallback,ComplexEventPeriodType,ComplexEventPriceBoundaryMethod,ComplexEventPriceTimeType,ComplexEventQuoteBasis,ComplexEventType,ComplexOptPayoutTime,ConfirmRejReason,ConfirmStatus,ConfirmTransType,ConfirmType,ConfirmationMethod,ContAmtType,ContingencyType,ContractMultiplierUnit,ContractRefPosType,CorporateAction,CouponDayCount,CouponFrequencyUnit,CouponType,CoveredOrUncovered,CrossPrioritization,CrossType,CrossedIndicator,CurrencyCodeSource,CustOrderCapacity,CustOrderHandlingInst,CustomerOrFirm,CustomerPriority,CxlRejReason,CxlRejResponseTo,DKReason,DateRollConvention,DayBookingInst,DealingCapacity,DeleteReason,DeliveryForm,DeliveryScheduleSettlDay,DeliveryScheduleSettlFlowType,DeliveryScheduleSettlHolidaysProcessingInstruction,DeliveryScheduleSettlTimeType,DeliveryScheduleToleranceType,DeliveryScheduleType,DeliveryStreamDeliveryPointSource,DeliveryStreamDeliveryRestriction,DeliveryStreamElectingPartySide,DeliveryStreamTitleTransferCondition,DeliveryStreamToleranceOptionSide,DeliveryStreamType,DeliveryType,DeskType,DeskTypeSource,DisclosureInstruction,DisclosureType,DiscretionInst,DiscretionLimitType,DiscretionMoveType,DiscretionOffsetType,DiscretionRoundDirection,DiscretionScope,DisplayMethod,DisplayWhen,DistribPaymentMethod,DividendAmountType,DividendComposition,DividendEntitlementEvent,DlvyInstType,DueToRelated,DuplicateClOrdIDIndicator,EmailType,EncryptMethod,EntitlementAttribDatatype,EntitlementRequestResult,EntitlementStatus,EntitlementSubType,EntitlementType,EventInitiatorType,EventTimeUnit,EventType,ExDestinationIDSource,ExDestinationType,ExchangeForPhysical,ExecAckStatus,ExecInst,ExecMethod,ExecPriceType,ExecRestatementReason,ExecTransType,ExecType,ExecTypeReason,ExerciseConfirmationMethod,ExerciseMethod,ExerciseStyle,ExpirationCycle,ExpirationQtyType,ExtraordinaryEventAdjustmentMethod,FIXParser,FXBenchmark,Field,Fields,FinancialStatus,FlowScheduleType,ForexReq,FundRenewWaiv,FundingSource,GTBookingInst,GapFillFlag,HaltReason,HandlInst,IDSource,IOINaturalFlag,IOIQltyInd,IOIQty,IOIQualifier,IOIShares,IOITransType,IRSDirection,ImpliedMarketIndicator,InTheMoneyCondition,InViewOfCommon,IncTaxInd,IndividualAllocType,InstrAttribType,InstrmtAssignmentMethod,InstrumentScopeOperator,LastCapacity,LastFragment,LastLiquidityInd,LastRptRequested,LegSwapType,LegalConfirm,LicenseManager,LienSeniority,LimitAmtType,LiquidityIndType,ListExecInstType,ListMethod,ListOrderStatus,ListRejectReason,ListStatusType,ListUpdateAction,LoanFacility,LocateReqd,LockType,Logger,LotType,MDBookType,MDEntryType,MDImplicitDelete,MDOriginType,MDReportEvent,MDReqRejReason,MDSecSizeType,MDStatisticIntervalType,MDStatisticRatioType,MDStatisticRequestResult,MDStatisticScope,MDStatisticScopeType,MDStatisticStatus,MDStatisticSubScope,MDStatisticType,MDStatisticValueType,MDUpdateAction,MDUpdateType,MDValueTier,MarginAmtType,MarginDirection,MarginReqmtInqQualifier,MarginReqmtInqResult,MarginReqmtRptType,MarketCondition,MarketDisruptionFallbackProvision,MarketDisruptionFallbackUnderlierType,MarketDisruptionProvision,MarketMakerActivity,MarketSegmentRelationship,MarketSegmentStatus,MarketSegmentSubType,MarketSegmentType,MassActionReason,MassActionRejectReason,MassActionResponse,MassActionScope,MassActionType,MassCancelRejectReason,MassCancelRequestType,MassCancelResponse,MassOrderRequestResult,MassOrderRequestStatus,MassStatusReqType,MatchExceptionElementType,MatchExceptionToleranceValueType,MatchExceptionType,MatchInst,MatchStatus,MatchType,MatchingDataPointIndicator,MaturityMonthYearFormat,MaturityMonthYearIncrementUnits,Message,MessageBuffer,MessageEncoding,Messages,MetricsCalculationPriceSource,MinQtyMethod,MiscFeeBasis,MiscFeeQualifier,MiscFeeType,ModelType,MoneyLaunderingStatus,MsgDirection,MsgType,MultiJurisdictionReportingIndicator,MultiLegReportingType,MultiLegRptTypeReq,MultilegModel,MultilegPriceMethod,NBBOEntryType,NBBOSource,NegotiationMethod,NetGrossInd,NetworkRequestType,NetworkStatusResponseType,NewsCategory,NewsRefType,NoSides,NonCashDividendTreatment,NonDeliverableFixingDateType,NotAffectedReason,NotifyBrokerOfCredit,ObligationType,OddLot,OffsetInstruction,OffshoreIndicator,OpenClose,OpenCloseSettlFlag,OpenCloseSettleFlag,OptPayoutType,OptionExerciseDateType,OrdRejReason,OrdStatus,OrdType,OrderAttributeType,OrderCapacity,OrderCategory,OrderDelayUnit,OrderEntryAction,OrderEventReason,OrderEventType,OrderHandlingInstSource,OrderOrigination,OrderOwnershipIndicator,OrderRelationship,OrderResponseLevel,OrderRestrictions,OrigCustOrderCapacity,OwnerType,OwnershipType,PartyActionRejectReason,PartyActionResponse,PartyActionType,PartyDetailDefinitionStatus,PartyDetailRequestResult,PartyDetailRequestStatus,PartyDetailRoleQualifier,PartyDetailStatus,PartyIDSource,PartyRelationship,PartyRiskLimitStatus,PartyRole,PartySubIDType,PayReportStatus,PayReportTransType,PayRequestStatus,PayRequestTransType,PaymentDateOffsetDayType,PaymentForwardStartType,PaymentMethod,PaymentPaySide,PaymentScheduleStepRelativeTo,PaymentScheduleType,PaymentSettlStyle,PaymentStreamAveragingMethod,PaymentStreamCapRateBuySide,PaymentStreamCompoundingMethod,PaymentStreamDiscountType,PaymentStreamFRADiscounting,PaymentStreamFloorRateBuySide,PaymentStreamInflationInterpolationMethod,PaymentStreamInflationLagDayType,PaymentStreamInflationLagUnit,PaymentStreamInterpolationPeriod,PaymentStreamLinkStrikePriceType,PaymentStreamNegativeRateTreatment,PaymentStreamPaymentDateOffsetDayType,PaymentStreamPaymentDateOffsetUnit,PaymentStreamPaymentFrequencyUnit,PaymentStreamPricingDayDistribution,PaymentStreamPricingDayOfWeek,PaymentStreamRateIndexCurveUnit,PaymentStreamRateIndexSource,PaymentStreamRateSpreadPositionType,PaymentStreamRateSpreadType,PaymentStreamRateTreatment,PaymentStreamRealizedVarianceMethod,PaymentStreamResetWeeklyRollConvention,PaymentStreamSettlLevel,PaymentStreamType,PaymentStubLength,PaymentStubType,PaymentSubType,PaymentType,PegLimitType,PegMoveType,PegOffsetType,PegPriceType,PegRoundDirection,PegScope,PosAmtReason,PosAmtType,PosMaintAction,PosMaintResult,PosMaintStatus,PosQtyStatus,PosReqResult,PosReqStatus,PosReqType,PosTransType,PosType,PositionCapacity,PositionEffect,PossDupFlag,PossResend,PostTradePaymentDebitOrCredit,PostTradePaymentStatus,PreallocMethod,PreviouslyReported,PriceLimitType,PriceMovementType,PriceProtectionScope,PriceQualifier,PriceQuoteMethod,PriceType,PriorityIndicator,PrivateQuote,ProcessCode,Product,ProgRptReqs,ProtectionTermEventDayType,ProtectionTermEventQualifier,ProtectionTermEventUnit,ProvisionBreakFeeElection,ProvisionCalculationAgent,ProvisionCashSettlMethod,ProvisionCashSettlPaymentDateType,ProvisionCashSettlQuoteType,ProvisionDateTenorUnit,ProvisionOptionExerciseEarliestDateOffsetUnit,ProvisionOptionExerciseFixedDateType,ProvisionOptionSinglePartyBuyerSide,ProvisionType,PublishTrdIndicator,PutOrCall,QtyType,QuoteAckStatus,QuoteAttributeType,QuoteCancelType,QuoteCondition,QuoteEntryRejectReason,QuoteEntryStatus,QuoteModelType,QuotePriceType,QuoteRejectReason,QuoteRequestRejectReason,QuoteRequestType,QuoteRespType,QuoteResponseLevel,QuoteSideIndicator,QuoteStatus,QuoteType,RateSource,RateSourceType,RefOrdIDReason,RefOrderIDSource,RefRiskLimitCheckIDType,ReferenceDataDateType,ReferenceEntityType,RegistRejReasonCode,RegistStatus,RegistTransType,RegulatoryReportType,RegulatoryTradeIDEvent,RegulatoryTradeIDScope,RegulatoryTradeIDSource,RegulatoryTradeIDType,RegulatoryTransactionType,RelatedInstrumentType,RelatedOrderIDSource,RelatedPositionIDSource,RelatedPriceSource,RelatedTradeIDSource,RelativeValueSide,RelativeValueType,ReleaseInstruction,RemunerationIndicator,ReportToExch,RequestResult,ResetSeqNumFlag,RespondentType,ResponseTransportType,RestructuringType,ReturnRateDateMode,ReturnRatePriceBasis,ReturnRatePriceSequence,ReturnRatePriceType,ReturnRateQuoteTimeType,ReturnRateValuationPriceOption,ReturnTrigger,RiskLimitAction,RiskLimitCheckModelType,RiskLimitCheckRequestResult,RiskLimitCheckRequestStatus,RiskLimitCheckRequestType,RiskLimitCheckStatus,RiskLimitCheckTransType,RiskLimitCheckType,RiskLimitReportRejectReason,RiskLimitReportStatus,RiskLimitRequestResult,RiskLimitRequestType,RiskLimitType,RoundingDirection,RoutingArrangementIndicator,RoutingType,Rule80A,Scope,SecurityClassificationReason,SecurityIDSource,SecurityListRequestType,SecurityListType,SecurityListTypeSource,SecurityRejectReason,SecurityRequestResult,SecurityRequestType,SecurityResponseType,SecurityStatus,SecurityTradingEvent,SecurityTradingStatus,SecurityType,SecurityUpdateAction,SelfMatchPreventionInstruction,Seniority,SessionRejectReason,SessionStatus,SettlCurrFxRateCalc,SettlDeliveryType,SettlDisruptionProvision,SettlInstMode,SettlInstReqRejCode,SettlInstSource,SettlInstTransType,SettlLocation,SettlMethod,SettlObligMode,SettlObligSource,SettlObligTransType,SettlPriceDeterminationMethod,SettlPriceType,SettlSessID,SettlStatusReportStatus,SettlStatusRequestStatus,SettlSubMethod,SettlType,SettlmntTyp,ShortSaleExemptionReason,ShortSaleReason,ShortSaleRestriction,Side,SideClearingTradePriceType,SideMultiLegReportingType,SideValueInd,SingleQuoteIndicator,SolicitedFlag,StandInstDbType,StatsType,StatusValue,StipulationType,StrategyParameterType,StrategyType,StreamAsgnAckType,StreamAsgnRejReason,StreamAsgnReqType,StreamAsgnType,StreamCommodityDataSourceIDType,StreamCommodityNearbySettlDayUnit,StreamCommoditySettlDateRollUnit,StreamNotionalAdjustments,StreamNotionalCommodityFrequency,StreamType,StrikeIndexQuote,StrikePriceBoundaryMethod,StrikePriceDeterminationMethod,SubscriptionRequestType,SwapClass,SwapSubClass,SymbolSfx,TargetStrategy,TaxAdvantageType,TaxonomyType,TerminationType,TestActionRequestStatus,TestActionType,TestGatewayDetailType,TestMessageIndicator,TestSuiteActivityState,TestSuiteRequestStatus,TestSuiteRequestTransType,TestSuiteStatus,TestThresholdType,ThrottleAction,ThrottleCountIndicator,ThrottleInst,ThrottleStatus,ThrottleType,TickDirection,TickRuleType,TimeInForce,TimeUnit,TradSesControl,TradSesEvent,TradSesMethod,TradSesMode,TradSesStatus,TradSesStatusRejReason,TradeAggregationRejectReason,TradeAggregationRequestStatus,TradeAggregationTransType,TradeAllocGroupInstruction,TradeAllocIndicator,TradeAllocStatus,TradeCollateralization,TradeCondition,TradeContingency,TradeContinuation,TradeHandlingInstr,TradeMatchAckStatus,TradeMatchRejectReason,TradePriceCondition,TradePriceNegotiationMethod,TradePublishIndicator,TradeQtyType,TradeReportRejectReason,TradeReportTransType,TradeReportType,TradeReportingIndicator,TradeRequestResult,TradeRequestStatus,TradeRequestType,TradeType,TradeVolType,TradedFlatSwitch,TradingCapacity,TradingSessionID,TradingSessionSubID,TransactionAttributeType,TransferRejectReason,TransferReportType,TransferScope,TransferStatus,TransferTransType,TransferType,TrdAckStatus,TrdRegPublicationReason,TrdRegPublicationType,TrdRegTimestampManualIndicator,TrdRegTimestampType,TrdRptStatus,TrdSubType,TrdType,TriggerAction,TriggerOrderType,TriggerPriceDirection,TriggerPriceType,TriggerPriceTypeScope,TriggerScope,TriggerType,Triggered,UnderlyingCashType,UnderlyingFXRateCalc,UnderlyingNotionalAdjustments,UnderlyingObligationType,UnderlyingPriceDeterminationMethod,UnderlyingSettlementType,UnitOfMeasure,UnsolicitedIndicator,UpfrontPriceType,Urgency,UserRequestType,UserStatus,ValuationMethod,ValueCheckAction,ValueCheckType,VenueType,VerificationMethod,WorkingIndicator,YieldType});
10113
10113
  /*! Bundled license information:
10114
10114
 
10115
10115
  openpgp/dist/openpgp.mjs: