Socket
Socket
Sign inDemoInstall

@adraffy/ens-normalize

Package Overview
Dependencies
Maintainers
1
Versions
51
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@adraffy/ens-normalize - npm Package Compare versions

Comparing version 1.3.2 to 1.3.4

dist/ens-normalize-ens0.js

43

dist/ens-normalize-2003.js

@@ -262,6 +262,10 @@ function decode_arithmetic(bytes) {

function hex_cp(cp) {
return cp.toString(16).toUpperCase().padStart(2, '0');
}
// my suggested inline ascii-safe unicode escape
// this is ES6 \u{X} without the \u
function quote_cp(cp) {
return `{${cp.toString(16).padStart(2, '0').toUpperCase()}}`;
return `{${hex_cp(cp)}}`;
}

@@ -782,3 +786,3 @@

// built: 2021-12-23T21:04:50.983Z
// built: 2021-12-25T07:41:57.843Z
let r = decode_payload(PAYLOAD);

@@ -796,4 +800,4 @@ const STOP = read_member_function(r);

// string but you'd have to retokenize
function flatten_label_tokens(tokens) {
return tokens.flatMap(token => token.e ?? nfc(token.v));
function flatten_tokens(tokens) {
return tokens.flatMap(({e, v}) => e ?? nfc(v));
}

@@ -848,3 +852,3 @@

}).map(tokens => {
let cps = flatten_label_tokens(tokens);
let cps = flatten_tokens(tokens);
// [Processing] 4.) Convert/Validate

@@ -862,3 +866,3 @@ if (cps.length >= 4 && cps[2] == HYPHEN && cps[3] == HYPHEN) { // "**--"

[tokens] = tokenized_idna(cps_decoded, EMOJI_PARSER, cp => VALID(cp) ? [cp] : []);
let expected = flatten_label_tokens(tokens);
let expected = flatten_tokens(tokens);
if (cps_decoded.length != expected.length || !cps_decoded.every((x, i) => x == expected[i])) throw new Error('not normalized');

@@ -874,2 +878,6 @@ } catch (err) {

}
// flatten textual part of token to a single list of code-points
// emoji should be invisible to context and bidi rules
// could replace emoji w/a generic character
let text = tokens.flatMap(({v}) => v ?? []);
if (cps.length > 0) {

@@ -893,5 +901,3 @@ // [Validity] 1.) The label must be in Unicode Normalization Form NFC.

try {
// emoji should be invisible to context rules
// IDEA: replace emoji w/a generic character
validate_context(tokens.flatMap(({v}) => v ?? []));
validate_context(text);
} catch (err) {

@@ -902,3 +908,3 @@ throw label_error(cps, err.message);

}
return tokens;
return {tokens, cps, text};
});

@@ -912,9 +918,8 @@ // [Validity] 8.) If CheckBidi, and if the domain name is a Bidi domain name, then the label

// A Bidi domain name is a domain name containing at least one character with BIDI_Class R, AL, or AN
let text_labels = labels.map(tokens => tokens.flatMap(({v}) => v ?? []));
if (text_labels.some(is_bidi_label)) {
for (let i = 0; i < labels.length; i++) {
if (labels.some(x => is_bidi_label(x.text))) {
for (let {text, cps} of labels) {
try {
validate_bidi_label(text_labels[i]);
validate_bidi_label(text);
} catch (err) {
throw label_error(flatten_label_tokens(labels[i]), `bidi: ${err.message}`);
throw label_error(cps, `bidi: ${err.message}`);
}

@@ -924,3 +929,3 @@ }

/*~BIDI*/
return labels.map(tokens => String.fromCodePoint(...flatten_label_tokens(tokens))).join('.');
return labels.map(x => String.fromCodePoint(...x.cps)).join('.');
}

@@ -932,10 +937,10 @@

// this is much nicer than exposing the predicates
// [[{m:0x52, to:[0x72]},{e:[0x1F4A9]},{t:[61,66,66]}],[{t:[65,74,68]}]]
// [{m:[0x72], u:[0x52]},{e:[0x1F4A9],u:[0x1F4A9]},{t:[61,66,66]},{},{t:[65,74,68]}]
function ens_tokenize(name) {
return tokenized_idna(explode_cp(name), EMOJI_PARSER, cp => {
if (STOP(cp)) return {};
if (VALID(cp)) return [cp];
if (VALID(cp)) return [cp]; // this gets merged into v
if (IGNORED(cp)) return {i: cp};
let mapped = lookup_mapped(MAPPED, cp);
if (mapped) return {m: cp, u: mapped};
if (mapped) return {m: mapped, u: [cp]};
return {d: cp};

@@ -942,0 +947,0 @@ })[0];

@@ -1,1 +0,1 @@

function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let Q=g(),C=1,E=[0,1];for(let A=1;A<Q;A++)E.push(C+=g());let w=g(),e=B;B+=w;let D=0,r=0;function t(){return 0==D&&(r=r<<8|A[B++],D=8),r>>--D&1}const o=2**31,i=o>>>1,I=o-1;let M=0;for(let A=0;A<31;A++)M=M<<1|t();let c=[],f=0,F=o;for(;;){let A=Math.floor(((M-f+1)*C-1)/F),B=0,g=Q;for(;g-B>1;){let Q=B+g>>>1;A<E[Q]?g=Q:B=Q}if(0==B)break;c.push(B);let w=f+Math.floor(F*E[B]/C),e=f+Math.floor(F*E[B+1]/C)-1;for(;0==((w^e)&i);)M=M<<1&I|t(),w=w<<1&I,e=e<<1&I|1;for(;w&~e&536870912;)M=M&i|M<<1&I>>>1|t(),w=w<<1^i,e=(e^i)<<1|i|1;f=w,F=1+e-w}let n=Q-4;return c.map((B=>{switch(B-n){case 3:return n+65792+(A[e++]<<16|A[e++]<<8|A[e++]);case 2:return n+256+(A[e++]<<8|A[e++]);case 1:return n+A[e++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let Q=0;Q<A;Q++)g[Q]=1+B();return g}function Q(A,B){let g=Array(A);for(let Q=0,C=-1;Q<A;Q++)g[Q]=C+=1+B();return g}function C(A,g){let Q=Array(A);for(let C=0,E=0;C<A;C++)Q[C]=E+=B(g());return Q}function E(A){let B=Q(A(),A),C=A(),E=Q(C,A),w=g(C,A);return[...B.map((A=>[A,1])),...E.map(((A,B)=>[A,w[B]]))].sort(((A,B)=>A[0]-B[0]))}function w(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(r(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(D(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function e(A,g,Q){if(0==g)return[];let E=[C(A,Q)];for(let C=1;C<g;C++){let g=Array(A),w=E[C-1];for(let C=0;C<A;C++)g[C]=w[C]+B(Q());E.push(g)}return E}function D(A,B){let g=1+B(),C=Q(g,B),E=e(g,A,B);return C.map(((A,B)=>[A,E.map((A=>A[B]))]))}function r(A,B){let C=1+B(),E=B(),w=1+B(),D=Q(w,B),r=g(w,B),t=e(w,A,B);return D.map(((A,B)=>[A,t.map((A=>A[B])),r[B],C,E]))}function t(A){let B=E(A);return A=>o(B,A)}function o(A,B){for(let[g,Q]of A){let A=B-g;if(A<0)break;if(A<Q)return!0}return!1}function i(A,B){for(let[g,Q,C,E,w]of A){let A=B-g;if(A<0)break;if(C>0){if(A<E*C&&A%E==0){let B=A/E;return Q.map((A=>A+B*w))}}else if(0==A)return Q}}function I(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>`{${A.codePointAt(0).toString(16).padStart(2,"0").toUpperCase()}}`))}function M(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function c(A,B,g){let Q=[],C=[],E=[C];function w(){Q.length>0&&(C.push({v:Q}),Q=[])}for(let e=0;e<A.length;e++){if(B){let[g,Q]=B(A,e);if(g>0){w(),C.push({e:Q,u:A.slice(e,e+g)}),e+=g-1;continue}}let D=g(A[e]);Array.isArray(D)?Q.push(...D):(w(),D?C.push(D):(C=[],E.push(C)))}return w(),E}let f=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const F=t(f),n=t(f),Y=t(f),N=t(f),T=t(f),P=t(f),u=t(f);let l=A("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");const s=Array(1+l()).fill().map((()=>E(l))),R=w(l),G=E(l),U=44032;function h(A){return A>=U&&A<55204}function L(A,B){if(A<128)B(A);else if(h(A)){let g=A-U,Q=g%588/28|0,C=g%28;B(4352+(g/588|0)),B(4449+Q),C>0&&B(4519+C)}else{let g=i(R,A);if(g)for(let A of g)L(A,B);else B(A)}}function H(A,B){let g=[];function Q(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function C(A){let C=1+s.findIndex((B=>o(B,A)));0==C?(Q(),B(C,A)):g.push([C,A])}A.forEach((A=>L(A,C))),Q()}let a=A("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");const k=E(a),K=E(a),z=E(a),J=E(a),O=E(a),S=E(a);function d(A){return A.some((A=>o(k,A)||o(z,A)))}function y(A){if(0==A.length)return;let B=A.length-1;if(o(k,A[0])){if(!A.every((A=>o(k,A)||o(z,A)||o(J,A)||o(O,A)||o(S,A))))throw new Error("RTL: disallowed properties");for(;o(S,A[B]);)B--;if(B=A[B],!(o(k,B)||o(J,B)||o(z,B)))throw new Error("RTL: disallowed ending");let g=A.some((A=>o(J,A))),Q=A.some((A=>o(z,A)));if(g&&Q)throw new Error("RTL: AN+EN")}else{if(!o(K,A[0]))throw new Error("unknown direction");if(!A.every((A=>o(K,A)||o(J,A)||o(O,A)||o(S,A))))throw new Error("LTR: disallowed properties");for(;o(S,A[B]);)B--;if(B=A[B],!o(K,B)&&!o(J,B))throw new Error("LTR: disallowed ending")}}let W=A("AEQLAgQ2Ak4BLAFNAIQA/QCSAIIAiwCKAFQAbgBGAFoAZwBpADsARwAlAEAAHgA7ACEALABTAEIAEwAhACMAPgAzAC4AGQAlAB0ANAANABoAEAAdABoAIQAYABgAJAAbADwAJAAgACYAGgAVABYAMAAVABsADAAtAA0AHAALABcAFgP8BW8AzhFEASQ7tAYoAe4AExozi0UAH21tAaMnBT8CrnIyhrMI8gIBUAEHcoFHUPe8AXBjAewCjgDQR8IICIcEcQLwATXCDgzvBYABTRYUAykgEAxKGyQyCjwBjyOoBB8BQB8fDwEPDzsyKgaUIg8HBmB61GoD4SklWFgsDl8AIhckSg8XAHdvTwBcIQEiDT4OPhUqbyECAEoAS34Aej8Ybx83JgT/Xw8gHxZ/7w8RICxPHA9vBw+Pfw8PHwAPFv+fAsAvCc8vEr8ivwD/EQ8Bol8OEBa/A78hrwAPCU8vESNvvwWfHwNfAVoDHr+ZAAED34YaAdJPAK7PLwQUOV8CnD8fDwAfUwMrpb8O/58VTzAPIBoXIyQJNF8hpwIVAT8YGAUADDNbeLsD4CYkVig9EhUeA29MABsZBTMNJipjOhc19gcIDR8bBwQHEggCWi6DIgLuAQYA+BAFCha3A5XiAEsqM7UFFgFLhAMjApczGAATUqWfDvidFUEb8BIKbQFhE38HEN1aFssGv9y0vV8LQx+vxgEwcABOBxngDYYHSjIACw9LLgBr9hUF7z0CereWKnc0TaGPGAEnAtZvfwCsA4kK31RfZH8PyQO/AToJf/r4FzMPYg+CHQAcAXworAAaAE8AagEiG94eHRfeGh/xAngClwKuNDY4AwU8BWEFOgF7N6AAYAA+FzYJlgmXXgpebSBWXlKhoMqDRwAYABEAGgATcFkAJgATAEzzGt09+AA5Xcqa5jMAFihRSFKlCvEiUQgLzvwAXT3xABgAEQAaABNwIGFAnADD8AAgAD4BBJWzaCcIAIEBFMAWwKoAAdq9BWAF5QLQpALEtQAKUSGkahR4GnIViDYywCl/J0cXP29feC7ZChMqeBRhBlJBEwps5YMACKQKCgDCKB4UCAJ9BNKQ0BQuB4c56AAAACACNgsFf1a4lvFqQAAETgBBcQw0BwUGApkyApOOBB/M1okAFbIBTdeXAB86V2CQBUIANpI5BfbPFgPNxgALA5miDgo0Ao6mAobdP5MDNp4Cg/fyRPfTpAACAHiSCiZWAPQAHgQAAgAAAAQAFAYIAwH8EQsUBhFqfSseCdEAegpDY5uVHicCKgY1NDzvEyC6ZHJnkgIiTFYGNQEfaRYGVMuhSgAdFPgBL5UABG6CBXYF1Tzg1wKAAFdiuABRAFwAXQBsAG8AdgBrAHYAbwCEAHEwfxQBVE5TEQADVFhTBwBDANILAqcCzgLTApQCrQL6vAAMAL8APLhNBKkE6glGKTAU4Dr4N2EYEwBCkABKk8rHAbYBmwIoAiU4Ajf/Aq4CowCAANIChzgaNBsCsTgeODcFXrgClQKdAqQBiQGYAqsCsjTsNHsfNPA0ixsAWTWiOAMFPDQSNCk2BDZHNow2TTZUNhk28JnoPn8yQhJCB0IIQiECggKhArABJwA1BV4FXbS/BW47YkIZOVciUqs05DS/FwABUwJW11e6nHuYZmSh/RAYA8oMKvZ8KASoUAJYWAJ6ILAsAZSoqjpgA0ocBIhmDgDWAAawRDQoAAcuAj5iAHABZiR2AIgiHgCaAU68ACxuHAG0ygM8MiZIAlgBdF4GagJqAPZOHAMuBgoATkYAsABiAHgAMLoGDPj0HpKEBAAOJgAuALggTAHWAeAMEDbd20Uege0ADwAWADkAQgA9OHd+2MUQZBBhBgNNDkxxPxUQArEPqwvqERoM1irQ090ANK4H8ANYB/ADWANYB/AH8ANYB/ADWANYA1gDWBwP8B/YxRBkD00EcgWTBZAE2wiIJk4RhgctCNdUEnQjHEwDSgEBIypJITuYMxAlR0wRTQgIATZHbKx9PQNMMbBU+pCnA9AyVDlxBgMedhKlAC8PeCE1uk6DekxxpQpQT7NX9wBFBgASqwAS5gBJDSgAUCwGPQBI4zTYABNGAE2bAE3KAExdGABKaAbgAFBXAFCOAFBJABI2SWdObALDOq0//QomCZhvwHdTBkIQHCemEPgMNAG2ATwN7kvZBPIGPATKH34ZGg/OlZ0Ipi3eDO4m5C6igFsj9iqEBe5L9TzeC05RaQ9aC2YJ5DpkgU8DIgEOIowK3g06CG4Q9ArKbA3mEUYHOgPWSZsApgcCCxIdNhW2JhFirQsKOXgG/Br3C5AmsBMqev0F1BoiBk4BKhsAANAu6IWxWjJcHU9gBgQLJiPIFKlQIQ0mQLh4SRocBxYlqgKSQ3FKiFE3HpQh9zw+DWcuFFF9B/Y8BhlQC4I8n0asRQ8R0z6OPUkiSkwtBDaALDAnjAnQD4YMunxzAVoJIgmyDHITMhEYN8YIOgcaLpclJxYIIkaWYJsE+KAD9BPSAwwFQAlCBxQDthwuEy8VKgUOgSXYAvQ21i60ApBWgQEYBcwPJh/gEFFH4Q7qCJwCZgOEJewALhUiABginAhEZABgj9lTBi7MCMhqbSN1A2gU6GIRdAeSDlgHqBw0FcAc4nDJXgyGCSiksAlcAXYJmgFgBOQICjVcjKEgQmdUi1kYnCBiQUBd/QIyDGYVoES+h3kCjA9sEhwBNgF0BzoNAgJ4Ee4RbBCWCOyGBTW2M/k6JgRQIYQgEgooA1BszwsoJvoM+WoBpBJjAw00PnfvZ6xgtyUX/gcaMsZBYSHyC5NPzgydGsIYQ1QvGeUHwAP0GvQn60FYBgADpAQUOk4z7wS+C2oIjAlAAEoOpBgH2BhrCnKM0QEyjAG4mgNYkoQCcJAGOAcMAGgMiAV65gAeAqgIpAAGANADWAA6Aq4HngAaAIZCAT4DKDABIuYCkAOUCDLMAZYwAfQqBBzEDBYA+DhuSwLDsgKAa2ajBd5ZAo8CSjYBTiYEBk9IUgOwcuIA3ABMBhTgSAEWrEvMG+REAeBwLADIAPwABjYHBkIBzgH0bgC4AWALMgmjtLYBTuoqAIQAFmwB2AKKAN4ANgCA8gFUAE4FWvoF1AJQSgESMhksWGIBvAMgATQBDgB6BsyOpsoIIARuB9QCEBwV4gLvLwe2AgMi4BPOQsYCvd9WADIXAGBRHB6ZHpwemT6NXmgAtGE0BzJzPVEADx+pPsgHcvwWSIkCJksAUOYAUEM0mjUxVkk2AacBqikCt/ABbasASP8Ct+4Ct60Ct7ACutvNAtICt9wCt88QAFBCAFA/UpJSgwK3pAK8OQBEAMwBwjteO0c7PjtZO147Rzs+O1k7XjtHOz47WTteO0c7PjtZO147Rzs+O1kDmChYI03AVU0oJqkKbV9GYewMpw3VRMk6ShPcYFJgMxPJLbgUwhXPJVcZPhq9JwYl5VUKDwUt1GYxCC00dhe9AEApaYNCY4ceMQpMHOhTklT5LRwAskujM7ANrRsWREEFSHXuYisWDwojAmSCAmJDXE6wXDchAqH4AmiZAmYKAp+FOBwMAmY8AmYnBG8EgAN/FAN+kzkHOXgYOYM6JCQCbBoCMjc4CwJtyAJtr/CLADRoRiwBaADfAOIASwYHmQyOAP8MwwAOtgJ3MAJ2o0ACeUxEAni7Hl3cRa9G9AJ8QAJ6yQJ9CgJ88UgBSH5kJQAsFklZSlwWGErNAtECAtDNSygDiFADh+dExpEzAvKiXQQDA69Lz0wuJgTQTU1NsAKLQAKK2cIcCB5EaAa4Ao44Ao5dQZiCAo7aAo5deVG1UzYLUtVUhgKT/AKTDQDqAB1VH1WwVdEHLBwplocy4nhnRTw6ApegAu+zWCKpAFomApaQApZ9nQCqWa1aCoJOADwClrYClk9cRVzSApnMApllXMtdCBoCnJw5wzqeApwXAp+cAp65iwAeEDIrEAKd8gKekwC2PmE1YfACntQCoG8BqgKeoCACnk+mY8lkKCYsAiewAiZ/AqD8AqBN2AKmMAKlzwKoAAB+AqfzaH1osgAESmodatICrOQCrK8CrWgCrQMCVx4CVd0CseLYAx9PbJgCsr4OArLnFmzhbWRtSWADJc4Ctl08QG6RAylGArhfArlIFgK5K3hwN3DiAr0aAy2zAzISAr6JcgMDM3ICvhtzI3NQAsPMAsMFc4N0TDZGdOEDPKgDPJsDPcACxX0CxkgCxhGKAshqUgLIRQLJUALJLwJkngLd03h6YniveSZL0QMYpGcDAmH1GfSVJXsMXpNevBICz2wCz20wTFTT9BSgAMeuAs90ASrrA04TfkwGAtwoAtuLAtJQA1JdA1NgAQIDVY2AikABzBfuYUZ2AILPg44C2sgC2d+EEYRKpz0DhqYAMANkD4ZyWvoAVgLfZgLeuXR4AuIw7RUB8zEoAfScAfLTiALr9ALpcXoAAur6AurlAPpIAboC7ooC652Wq5cEAu5AA4XhmHpw4XGiAvMEAGoDjheZlAL3FAORbwOSiAL3mQL52gL4Z5odmqy8OJsfA52EAv77ARwAOp8dn7QDBY4DpmsDptoA0sYDBmuhiaIGCgMMSgFhnxAAugECrQGfPBO9AZU/JQ2goTEacQD5BSgEgh8AEcXXTfXRnhseMC+mA2ZYA3oARAK+uQRWpMYDAKwFFsAD7iJCQwIdHTvaMjY9NtQ2yTZGNjk28DbdNko2JTcQNxk3kj5FPENFMEImQrlUFgoWFl/BAJbKBTcAkFEem747K2A3FrrUDjQYyxiOyfsFXAVdBVwFXQVoBV0FXAVdBVwFXQVcBV0FXAVdSxoI3IoArgABBQcHApTuggKhbV7uMAP8A1taGGUUDgwKAAwKAKqWjIJ4qiMlCgoDejVNNU81UTVTNVU1VzVZNVs1TTVPNVE1UzVVNVc1WTVbNY01jzWRNZM1lTWXNZk1mzWNNY81kTWTNZU1lzWZNZs2DTYPNhE2EzYVNhc2GTYbNg02DzYRNhM2FTYXNhk2GzYtNrk2NTbZNkU3OVlTPuZOCT1vAgfMbsxszGrMaMxmzGTMYsxgzF4KEEAEFgEp39Lf0N/O38zfyt/I38bfxN/C38AF+iIBIzgMGgV1BWsFaQVfBV01MwVRBUsFSQV8BXjKKMomyiTKIsogyh7KHMoayhgJNQ8NAwcJDQ8TFRcZGwllBggCBABAPg4ABggCBAAOAhICZ2kfvXwNeA96qWMO3zjFwwCEG9ImGB4psSIdvh++PkEpJE9CtkI7PShfLGA7LB8oCcZuApUGggJCC14HXgg+5j7mPuJBQz7mPuY+5j7kPuY+5D7iPuA+5j7ePuY+4j7ePto+6HReUmRCTjJWMFIwMDgVFgkEBgICM0cXQhBB/kIoGRlnaWdpXgFs8DqqO7BVqoAKYz6MRkRSaUY+3z7jPt8+2T7VPuE+4T7dPt0+3T7dPts+2z7XPtc+1z7XPuHMcMxuzGwjVDNMIkUBIxVFAC84DTNHOQUTTjclYhDf0t/Q387fzN/K38jfxt/E38LfwN/S39Dfzt/M38o1MzU1NTMzM0IDQg9CD8oqyijKJsokyiLKIMoeyhzKGsoYyirKKMomyiTKIsogyh7KHMoayhjKKsoo3NxeBGztOqc7rVWngAdjO4xDRE9pQx8XugdUB7PI6z8kPsFKQiobrm0+zj0KSD7mHlJiDmg8RDA6PCYYIzEzHykNEPVCEEIk9j7lFhBhCxVyXjwnCx6pQgNCEwAJJycvRWI4HThFJxU8FgYGUwhBMccXYBBfs0BAMjg8FiMnETkdI0FQNxVaMhc2MAs6IBhCIiUWUhUGSEJCAzHWWGAaXzVAQiInQgMGQQR/aGCrAH4GPwUUJD9aMho/Q0yIBg2LAJUBLQ9KeUKSpR0sTxwFnqIGHgTwEXCK2MYDoWMiAbJQx1RpUAbpqgHAD/LNC0oFNQQWGw0BLA9RAYICdAOOWqYPDwRriAHPCt6wAQkudJUR8hwFNa1Q8wQVBUpsAP4ARlo9Dx1yhDq+EzoxzsNOAGQZRwoAH0q8AuAgS2wRIgD0VwZ9HwQeyQB7BKMzDlQyEYS8RlYSY4l39CUbcQmG5uaELpMdN69pQWnCzPughuY9jru6ZnHOC40f4oSvH27qP220EmoEpux2euJwjilirFONEtKWnGG/+0t095ftf6uSt3DA1+BKXr0UQkkYvk89J9qF/6TTQ2lTXa7u+JxT2YnhQ8NT1J3JZNeGkdKXq6EYAc6DqicTcHHNL4kK1vX71OjCgtpvaJNuoQri+MNeAUeYWyToTUZsGT3ngjqpNcpfmet244ZYjMMH1/7ycZVdw1BAV8Nm2rO1wF6yhAbEDwcSkb2oEqvZwMOvk+fmYxFQksC4QRG6Fuil9B3EgFEEiNM12JV21wW83I276BLwH4MvhQdq3PWn1R4dHabvTME2xt3+lBOkXrx1pIGCQtCHOYXuFKa7pwGCM16arZRP4rS10Icny1nldh6VNLlCqi0WtXapjMVDOPFNr/2XfGePBP/hapyV/Zvzt2tmnbBiZQBsD7ZowsocR8FEv4KXHE3o4UEZM0ZwTBT5WLaj2x0MM+nbwD8K9F5bZ9gXSTFifwHJTSlLHr9mnOGOkGbeFtbRWUfp3UGlfIwY5tpodeO9Gtnj3N5RzY9Q7utas5OJrYTDrzPpFHbnlk8gYMRAo7TAEYTqMK9hThD0JL5HMJS5rL9HkqGAEZqAh5BG+yI4m7K9rM4ZaaIuR5A66XgaCzChPgD0CfLPWP9KlLbRgFc9aVCrjH4LPkRCK0XpT9f48ctmcUc2yn/1eGjWj54CrZhb8jokPrMwlKn2oJMcLHwfq2j7XJ8AiwywIhjTZUaVxSw6Q0PUIYAxUnhDFTanqYwGWnYzaKbwdhpp0kTO4Esc5pUZFLJp7MtQxPsZLOtRMuAYdaDpEW02RTEGO81S0fFFXDXvKPMNL/11cbWZ+sUhX5DYVZBTn/kMw7CJQhxAVLPC8CBtBRaqrPeQ5ISaeNTbNR4UFHzKBipPbKMowSP2YX2XLde6g32arZee7xgcXxuHuFRVwHlE9T4G+rVvxWm1d1hU+sZx1tT5M51mpb9xpRyss3KxKfb5pwbcs6qAGQJAdRpOAx8auhyg7HeEKZrTbyvXvGBWvU6XN4xN01Xy+Pitt1gKPVDRtTepjjOJpRU/jdqweema+h9jmWpdeRRICQ/iGxD5ang3jCho8A+cYLL0+00+8MM3CyBztI84yH1BIuPpd3++bvSkrsyf+NO5zK/SW9CEu3ySw1pNUfUmh1FXw6a2x1AVMe7rOE7y4FohF/2Jr0PUX39OM8iJirV0hBUqGV2ImPDl8z7miXgm3/WqLGGwAy9m6lNN0nP+8+BXgEsKDqoXOG6eZoPAHtttZuE4IOMmA+1105j/tDN6Que6lIpzBC5tpIi4zf2yLMUzS8M+7ZbiHQpSNclHJtvFzz3rC9+UUFF4cvwzUf5IRFMMvOIsuUJL8Pg+11oC8MU/FIWg2HMtgm2azUsJnnAIfbWPRLgcQ4ow3LKp1YFYYezGPri2citZaQcWIA/FlD2syuITb1dKnFhxet6i7ZxUKm2NbLDGl/imr5Nat4ROZbPXklU1nrOOkuX+rLrAHMMACB0TODJL3WiCAzQ8QKTt00L+B7g/5ggJnsRg10DLTIMdR0YQ5/GIg+t+b0reBNCDzg/2pTb65eLjlUiSZnh1VsXQZL3n3gPi7AFoHbNcrhVqUT8PQNEOxzJRIjJ2y/7Gc9ZAIToFUDW5mwQ98cXQBfMSHQ+PraEmi02pCrqfU5MQyPx4OVxW2SaZfmeXtDpYqCUbNkjGfAqfv+3pJQFht3tH9VK7DUDmLuGwAY+i/BT5+/zApz+wETCnhLdrEUBrzPhj5aIfw5F7xaIEI8QtJK7YrwYaYeuj5/dfU7YxfksHJAxyfnAbMKbPZrg/VlNevaAy+ciEsP5khWuU/LAta0fJ8tF9LrkqBn61E5V2xI4FCirC3FcdegfrTPAe9WCd/D4aRl2rQp6Y6ZDbH4CUZ7WHifbOlbI4JoJtIdH+OEe4eippUm67x0G7iep6LBKqkMpkYa9SyoWb506bRbV4SgK6gmyCWOUQ/xIV4zL9ACV90AlqLf0/NSAM+qFbz8cUTkWlI1gqzIzMce/gmxAfufN8BXBNlL0ylyFMeqeEDOwcp+Ihyx0RnezE63HaIG9d9aUzTRilTP/ncFBMiktnFh3afMf7gpOrpXw9gJ0OKEYOvfvj9FFFmiMKPrdBMMkElBcz1ejVcT2T557Y+pYNfiVk+iRB5BLmtqykBvLiMYwsYIChtlc9RCr/PoAeRRu/jVzTU8opwSnfQsnoYGbChzsATX3BZ7Q0sRgv9/d5hN9HNBwNCtjkFwLc+o2NrtNcjPRgnZ9qwsbkf/GqtLgx3Jb0auRzoDnaAFUOJPRDZOdr9tDd59PZ5Qzi0MZ3sLLK0JKSNo5l7cgfUkUlEVS7xWFI5+rxhcx6jDyn3dScBLSKC5FWJ7sCY2g2MrODl8hPJ7SkelXd9e+/M4rnpKRIAaR6P29pzHB61nGDac+Ee28X8wiogj8+iPabmbK1dvfHm2ZryiF33bk8VyvYBDaXxMoVs4qMoedE33OF43SqJzEji/kd90qbWnYA88Pj1FEqDlOXjtW1CX8XjqUBPi9g76TdK6HhlkDxB0kr7OTsRJoRnZXGdgtRBi6LPFlcug1XfO0TK49lr6ML2B/L7HLfpGgGzvuIF21weSqiRfGTD1qIGuLpUhAWGLEogSUQ/5ehsZ8jOr5e1cX41GJkADEU0bn8atZFm4tAsDwfStUpjvS2vsJYfr2y7AooyTrYFHFMYCCTuzT9zTtCuREJavncS8G2wyYsI5cjWU1yjPwRN4Nc4TvKB6dzpHzWpfyKCsIC7quQBOHIjgBd9EvfB/1GrfB/UFeAIId2iId5OXlGzsfcj3UVbpvcHH0RnsRmQewUwbJ4gs0bHrS/YRtF2nfHhru/s/L8FtJVmOZ1lww81rJDwpq2sPsBAiv0lPQclJZcYKmD/jmpgiMuFugZWuGGJ0uMIyEYORJ5ysjWaeUwCVNuf0fTYnokKqJ8TO07gYRYaWI1hY/YP14d9Gr4yjT5O20p2BJMsZs66aPc/laQT1F2Y858x82PxdiImvAowXDE7DhABLkcRX554pjYM3LaKf4DWMy0LZ1cRMxrQC0puAf2r9snWSq/9cFSw0nNLQR9LKHQius0CEmF8MEcTCc8XHm0ASBfQdXyI8eFTkrGMeHe2XicJitMJCeXk3BWYVB9HLa5ntrRjF9tO+FS3obnyhfBrZSS9B9kl0w58MD4YjsFfxsVe0XqRMnHr7+0fWL0u893Z+oLPZvZ7OgcRwkg7Bktgn/FUq8KOBNcx7ujmv2VzNk24W8zBz8bneDaf0X3bR+VEi4fCtFmRZcsQu6kQhiuzVuDvIEF1DZBgz3/4ZpJsqPm4AwMwYqdK5Zbjl2JZGTrIBCcrqOdZFmbx2dvpzn7Mha2MRHj9Qpg+S5Q1JCdE/Y8FX+npI/RxX3OjGOVfexyMeeQNQVzQzpz579b+FOv6aNMFuFMVwJCYmdaN9JaV1W6yZeTKuckjbobcPIYRIyrWyfDcZz+96OOF3tBWqjVerfzDwaOR6TTWMPJZ2+FM/m2PMPD/1GMc9A/2VwE5RDnLIoWDwB+sNEeT+tidTYSfha3egKGMTuOgXV6zwaIwMjM4z3IIJc9whuEiGANWFn7uiPKrWtDnzqozBZiPjajg2flHq6LmFSsQBGxNuIQn86yrGusv/8VbBNR/vtUZAmq/5YU7/GofniZIyfKUBpvpBiL6hPyPspGFaJWXdCfPxjIkdCYvYT9aT3kH95UD1Q/dqF3A9lYneBmepfgcB6eJ6Ph6hhBevUhwwACE4hHSpWK2osbPM1Ci4/qZiBn47D5IQ5D4Tr5w0pvRaHD1WJiIjsCtQAKrlOkTgB7D612qvpmC89ImE0N50zWOZTp+MOoQMapu87n9Buz8lgjRK5yx+TvqisYoiWLIL/iYlJI15IoSwUMl2sSvCFS7EXuDeKlgN0ZG3+0PT+4c5xrmsN6EKMvdBvVZf3Yagb/SxJs5O+jEsndimC0zeBFqQQ+yLp9gUY7+1CzOyeD3AOWSTbaVQlZtPelQuun9LcCAN4ZGHbATiVJnmlFM1mPjkJmgbeUBONlDeP7YOes1bKSG6Td6YCDCPQX3vwO1pC/b2c4OAIxDxsSWsYuHr6vBhGdBZMVcyDRFtrT0ylddO84LISlSoWvEuYbZbP27eVCXpGaMBOrzxjMl/zMbN5Wwr7t8K6H2sUShg+ZMJyYPif5JU8mIEkAQUikKFilpCCNKeZp0t2Jg8fCEdc3Px15QHoOHQg2c/skUt734jsCBTLVDf//7zcy3cMv3pr51MTDq75rs2V8D/fAdErFTDax4cbVCXS/IBKvYzv/jdxjpoHxyQxGGcoSINv4h+pfvOfzSOpcUnvmxhcDgHUQFNU3cWpvs4g5s3Ke1q0anIyFQdQmZ8y6vTgsy18hM3I9k1OG/ZIM/goweUrjBYGfnDcQ+EN9Dvt5jGnZsuQBxoS66+MYiPW4qMiaZoaYxaD3zGpyAxL6k9ozkOwGB3GL6ZzV/THf3iXrgmdh8u0E1T3wOYZJVzgTN9eKZr3qNqRF9nR9r0w+MAIOpSz6yWrr4DPkC9rGtyaUstXwVGW4v4KHMJcWjsJNPu1d3/CAkZ+W+cXDBlG06/Tu45vpNCgAUf7lji/8W9A2WQJCuvW5+QKVNHEFQIzfjm2z26llCvvE8UMTq1LmLZozjXrJ//dWjTeqfjtoqkuVSN8ksBjTk0JnMFEgS//8yzWt8heA8TnnHLZOsaSYcs6NuFnboImc0PddgoAl7zoXf9noKTT6d/sxB+8Wn5koO3Si3pUs9tFb7E1RlZqWEEazL1Xz8Q2M9cwl29ET90mLTKjjw9cRCJIq0h2X7SglqsCGvb09Jf80dJbsxJ1Td/+l2SZ14bU0kyC1To3Q8u5uyLXhrPtrraOke/bkJvW7Od6uz8tlAU4vN7t5AlFOeNGBR1guthn1HJdT6keX6MgbAQ3zNI0jWhzWl7I7vQawIstfA7XpTX3xHolDha1XJhs5YqWl3aDGdf1Eold7SCR7nRHx3bpRzOUcUgGuzSmNWB5EX2eiS9ISSR6KfMCN0PXGs0z45I3Ht2YQCXuFF3Z/CZyb/xhQyFqw5jSdylcY+/E4IqDJy2iTvJV9KyC/NMURt8CyDbpP7rKrNJo1XFT9Nh89HKP8zCDfkN/w9M7paE37/w46EglNG+PI2Bg1RnO5Ae/l0rl8EeFilNIY46v+5Nmtic/BcXPfnF/QKvP80icPXO+cQveakqdX5wIv0dPlxriXsvzMF+PH7NEQFjJc03+gGKM5/05rPAyHcKKsrQKPRzwep7nOQoQ9tmaml79FDraB+K5JrWyETQRlrFVMIb7+efSYMvvWs+72llhG0jg5VHewiSJVOhNCkIkItBNabZHOqF27CqI7Rboq+jajsbuR0yffmb18jDXJm6ng41nssdmPUZDY24cWeQ2Rn4X7C2y/kbDsPWcSSNeMI8RlXQIogBfOH1iZLyiu6PXRLzhC92KI6Wr2nnUJ4BI2wnJHfdmLtLihR5ETAuKoCR/hlU9uf+d7+XHnxRyw0GwSkauN90aeedk3s+SbfBUtze4qpN3eVMLQa5uvhrP1X3OerYy+/p4+/g/DjManSsdMJS+IpbKo7sw5VjWLDpRVH1ZGMi9pf/8xwc+TdFdis+1trNeRUEDIbzA2wUx+K2VRl49QXITSpAgNTPWm9JzDiUPRM9foNoQ8zfgXCHYw0mqc6alPTH7G6zP2STDKIRLuuwzVMclGv+qYJMk7JNfmZGnYujB/IcTdWRto3P12m2e5bqe+cWq+/pH3v0UtboXCZ2dPIYc78ntCIkSgw95v6u3yOZDEMWr3gWra1iN8tlPi3v45ewir4yDWRldvoKBh42ssrJt+9xoPzRcHF9OGJoGlz7bdjRxWf9WcSnjDj+5e0my6/XKXgoniaPja6adFJ11vvFm9bOBaHuxfaC3Kr6q/KTWcC8Q88KKYm0svnoo1Zi6CvBFzlVl+PrRZzTB93Sv8uL9+vDkiMH/wjAOuaTswvSDQ8aYXztVlTJ3daEHsW7L7fUst+8kePzwgv/EF6jP8cutd1dFzIEPmds3yW/ORm8Dc91wJBTOA3LGdV3y/4EhE/EmIGfJT7y+5/C0IsQNAwtAJJgLe6SsC3arLq0BzfJmCaiyr1qWMTy5Bf4o/JJY0sk09AM6ZhCSLyCMFG0qMY0nc9X4uQJ1ATOiww/QDhy43Vcm2JLtjaJTi6xMLGpzYwG+taoLFbZrvPB6jEkELzVE2SSPvINUyt+fDYWnq3KZiy+3Xb+x9EFVPGz1yVcGnZ4o6Nv8dkkGXkiZKBJuzVGEvwpTKZLYJSS8IVvOvDRWeHcPuFy2hHniDPMCGr53F7hrStuVuocURnK9gjboZgsgGoTtPsbfKHvmcfiz1YMKmlbDDqDOgrcXj1gTG3KQfjg5h7RfLMdxYc6QQ++sE47wsa8Y2Asg+Uru6zFXHX8JcpWPUXAUN69DQjVwouQ+qS+FVOgOiuyy31Y4LM0EYqf0lx3ICNqWxd3P2QdUS/4ILIlwqZPwkoOjFTeFaw5EKTS6Dzi0KW2YmUW4HTKlCXt4R0GimfIPMpU/F9GaLQgTR5QUQRX3WRHRFSAlpnBZR6Z32tBT2p/ps15fgVKKcwgqrjbhQkClLlEfYgPrtyI1Cr8GoT4sUvMD+21ylykYOo3zvBdIRERdV6et3FL1iN0ghhOlYjecNKaHAovJZ3fR/Tf1T0LoBarZqfKq4ejb0c2UeHo5WVGf2O+8H0hDncdWSuRZ1Tq3gNgo3TTojLwWDiPcQZAI5CwgZx5fIG+OyWMcoWTjo+oKlqoumtBLBEuMdYhlQDCctNLVDS4FbRBKR5IT0deJHPZPpHuWV+4g3m3sgzeN8EyqtJYB3RoBMy6sayoJWI9+7M6P/Y9DOJDngaTlPlf4aFyvBfq93BAzaw1QzpGjCU18gjWNeMnxpqOn58kGp+aaD88v8yMDuWHRs32aF+/sbrBMjPTlr29tAqWqI0mMA7m0F+M3FVpuJhpW9bbSd2Ccp/Ed6TiqTN/4dIkPOVY+DxJfKk9OfKg0AQ9Sa8d4lUkyyUZqVa4s13X4Icm6siTZ3TQ9PJEC2eTo7jFbzwKmGNIGBGB9e5YREmqJ3HonxpULZ20Bsz3uoosjQ+7y4dCFgAIUjf6ziyZNaINnOys2swz4CcaHLiMmSSEZ9tdt8j7q2bPHj+hHDrGeZmrBC2F1I9HwowjSC8pz4yxVohB51HWSfN6T/4A4Bcb+GB91Ib20+R+PA8KSDYJufo+rtqwAYzuUCzXuAnwiou58kwMNyo8EFfvMERMXPijIRWgyloAP8kgSJy8CZPTaMPQ22kmthgj5mz3Uz8Sbg1ey3DM4pwDWYNsgfi4/f9banzLrpx3veW7GRMuyjZyeFWyw6kGIiiOAJ63K+44BmTYj5k4Wol/nzl9PYk1MLe8hPZjKDbXEBB+v9PavxGwKL18lBbC/7eKk1DJ7IuyJ9YKG1Ej2LefAbUG6yBG4drShvNqf7+iiqGH6oDsEXGGgqI9tiNZaysE8h9SYT3s+FkNRHj7TwmyQcYjKaY4xrN3NFY6j6/NB8RV84cBPySkMDrMvc0ccgeQlflF1prGuez4uNukOkrijaVEC6A30NWSEHfM7tDN5qgttd78hmNhm3IcPghGfyhk9d4fZm7uiKP4avxUd0Jb8OBFODZsAyNV/5bjYmgOiKwA==");const p=t(W),Z=t(W),x=t(W),j=w(W),X=t(W),b=W()&&function(A){const B=t(A),g=t(A),Q=t(A),C=t(A),E=t(A),w=t(A),e=t(A),D=t(A),r=65039,o=8419;function i(A,g){let Q=A[g],D=A[g+1],t=e(Q);if(t&&D&&w(D))return[2,[Q,D]];let o=t||C(Q);if(D==r){if(o)return[2,[Q]];if(E(Q))return[2,[Q,r]]}return t||o||B(Q)||w(Q)?[1,[Q]]:void 0}return function(A,C){let E=A[C],w=A.length;if(C+1<w&&B(E)){let g=A[C+1];if(B(g))return[2,[E,g]]}let e=g(E);if(C+1<w&&e&&A[C+1]==o)return[2,[E,o]];if(C+2<w&&(e||Q(E))&&A[C+1]==r&&A[C+2]==o)return[3,e?[E,o]:[E,r,o]];let t=i(A,C);if(!t)return[0];let[I,M]=t;I+=C;let c=!1;for(;I+1<w&&8205===A[I];){let B=i(A,I+1);if(!B)break;c=!0,I+=1+B[0],M.push(8205,...B[1])}if(!c&&I+2<w&&D(A[I])){let B=I+1;for(;B+1<w&&D(A[B]);)B++;if(917631==A[B++])return[B-C,M]}return[I-C,M]}}(W);function v(A){return A.flatMap((A=>A.e??function(A){let B=[],g=[],Q=-1,C=0;return H(A,(function(A,E){if(-1===Q)0==A?Q=E:B.push(E);else if(C>0&&C>=A)0==A?(B.push(Q,...g),g.length=0,Q=E):g.push(E),C=A;else{let w=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return U+(588*(A-4352)+28*(B-4449));if(h(A)&&B>4519&&B<4547&&(A-U)%28==0)return A+(B-4519);for(let[g,Q]of R)if(2==Q.length&&Q[0]==A&&Q[1]==B){if(o(G,g))break;return g}return-1}(Q,E);w>=0?Q=w:0==C&&0==A?(B.push(Q),Q=E):(g.push(E),C=A)}})),Q>=0&&B.push(Q),B.push(...g),B}(A.v)))}function V(A,B){return new Error(`Disallowed label "${I(String.fromCodePoint(...A))}": ${B}`)}function m(A){const B=45;let g=c(M(A),b,(A=>{if(p(A))return;if(x(A))return[];if(Z(A))return[A];let B=i(j,A);if(B)return B;throw new Error(`Disallowed character "${I(String.fromCodePoint(A))}"`)})).map((A=>{let g=v(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=function(A){let B=[],g=A.lastIndexOf(45);for(let Q=0;Q<g;Q++){let g=A[Q];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let Q=0,C=128,E=72;for(;g<A.length;){let w=Q;for(let B=1,C=36;;C+=36){if(g>=A.length)throw new Error("invalid encoding");let w=A[g++];if(w>=48&&w<=57)w-=22;else{if(!(w>=97&&w<=122))throw new Error(`invalid character ${w}`);w-=97}Q+=w*B;const e=C<=E?1:C>=E+26?26:C-E;if(w<e)break;B*=36-e}let e=B.length+1,D=0==w?Q/700|0:Q-w>>1;D+=D/e|0;let r=0;for(;D>455;r+=36)D=D/35|0;E=r+36*D/(D+38)|0,C+=Q/e|0,Q%=e,B.splice(Q++,0,C)}return B}(g.slice(4)),[A]=c(B,b,(A=>Z(A)?[A]:[]));let Q=v(A);if(B.length!=Q.length||!B.every(((A,B)=>A==Q[B])))throw new Error("not normalized")}catch(A){throw V(g,`punycode: ${A.message}`)}g=B}if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw V(g,"invalid label extension");if(g[0]==B)throw V(g,"leading hyphen");if(g[g.length-1]==B)throw V(g,"trailing hyphen");if(X(g[0]))throw V(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&F(A[B-1]))continue;if(B>0&&B<g){let Q=B-1;for(;Q>0&&n(A[Q]);)Q--;if(Y(A[Q])){let Q=B+1;for(;Q<g&&n(A[Q]);)Q++;if(N(A[Q]))continue}}break;case 8205:if(B>0&&F(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&T(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&P(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${I(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>u(A))))throw new Error("Disallowed katakana")}(A.flatMap((({v:A})=>A??[])))}catch(A){throw V(g,A.message)}}return A})),Q=g.map((A=>A.flatMap((({v:A})=>A??[]))));if(Q.some(d))for(let A=0;A<g.length;A++)try{y(Q[A])}catch(B){throw V(v(g[A]),`bidi: ${B.message}`)}return g.map((A=>String.fromCodePoint(...v(A)))).join(".")}function q(A){return c(M(A),b,(A=>{if(p(A))return{};if(Z(A))return[A];if(x(A))return{i:A};let B=i(j,A);return B?{m:A,u:B}:{d:A}}))[0]}export{m as ens_normalize,q as ens_tokenize};
function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let Q=g(),C=1,E=[0,1];for(let A=1;A<Q;A++)E.push(C+=g());let w=g(),e=B;B+=w;let D=0,t=0;function r(){return 0==D&&(t=t<<8|A[B++],D=8),t>>--D&1}const o=2**31,i=o>>>1,I=o-1;let M=0;for(let A=0;A<31;A++)M=M<<1|r();let c=[],f=0,F=o;for(;;){let A=Math.floor(((M-f+1)*C-1)/F),B=0,g=Q;for(;g-B>1;){let Q=B+g>>>1;A<E[Q]?g=Q:B=Q}if(0==B)break;c.push(B);let w=f+Math.floor(F*E[B]/C),e=f+Math.floor(F*E[B+1]/C)-1;for(;0==((w^e)&i);)M=M<<1&I|r(),w=w<<1&I,e=e<<1&I|1;for(;w&~e&536870912;)M=M&i|M<<1&I>>>1|r(),w=w<<1^i,e=(e^i)<<1|i|1;f=w,F=1+e-w}let n=Q-4;return c.map((B=>{switch(B-n){case 3:return n+65792+(A[e++]<<16|A[e++]<<8|A[e++]);case 2:return n+256+(A[e++]<<8|A[e++]);case 1:return n+A[e++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let Q=0;Q<A;Q++)g[Q]=1+B();return g}function Q(A,B){let g=Array(A);for(let Q=0,C=-1;Q<A;Q++)g[Q]=C+=1+B();return g}function C(A,g){let Q=Array(A);for(let C=0,E=0;C<A;C++)Q[C]=E+=B(g());return Q}function E(A){let B=Q(A(),A),C=A(),E=Q(C,A),w=g(C,A);return[...B.map((A=>[A,1])),...E.map(((A,B)=>[A,w[B]]))].sort(((A,B)=>A[0]-B[0]))}function w(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(t(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(D(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function e(A,g,Q){if(0==g)return[];let E=[C(A,Q)];for(let C=1;C<g;C++){let g=Array(A),w=E[C-1];for(let C=0;C<A;C++)g[C]=w[C]+B(Q());E.push(g)}return E}function D(A,B){let g=1+B(),C=Q(g,B),E=e(g,A,B);return C.map(((A,B)=>[A,E.map((A=>A[B]))]))}function t(A,B){let C=1+B(),E=B(),w=1+B(),D=Q(w,B),t=g(w,B),r=e(w,A,B);return D.map(((A,B)=>[A,r.map((A=>A[B])),t[B],C,E]))}function r(A){let B=E(A);return A=>o(B,A)}function o(A,B){for(let[g,Q]of A){let A=B-g;if(A<0)break;if(A<Q)return!0}return!1}function i(A,B){for(let[g,Q,C,E,w]of A){let A=B-g;if(A<0)break;if(C>0){if(A<E*C&&A%E==0){let B=A/E;return Q.map((A=>A+B*w))}}else if(0==A)return Q}}function I(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>{return`{${B=A.codePointAt(0),B.toString(16).toUpperCase().padStart(2,"0")}}`;var B}))}function M(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function c(A,B,g){let Q=[],C=[],E=[C];function w(){Q.length>0&&(C.push({v:Q}),Q=[])}for(let e=0;e<A.length;e++){if(B){let[g,Q]=B(A,e);if(g>0){w(),C.push({e:Q,u:A.slice(e,e+g)}),e+=g-1;continue}}let D=g(A[e]);Array.isArray(D)?Q.push(...D):(w(),D?C.push(D):(C=[],E.push(C)))}return w(),E}let f=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const F=r(f),n=r(f),Y=r(f),N=r(f),T=r(f),P=r(f),u=r(f);let s=A("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");const l=Array(1+s()).fill().map((()=>E(s))),R=w(s),G=E(s),U=44032;function h(A){return A>=U&&A<55204}function L(A,B){if(A<128)B(A);else if(h(A)){let g=A-U,Q=g%588/28|0,C=g%28;B(4352+(g/588|0)),B(4449+Q),C>0&&B(4519+C)}else{let g=i(R,A);if(g)for(let A of g)L(A,B);else B(A)}}function H(A,B){let g=[];function Q(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function C(A){let C=1+l.findIndex((B=>o(B,A)));0==C?(Q(),B(C,A)):g.push([C,A])}A.forEach((A=>L(A,C))),Q()}let a=A("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");const k=E(a),K=E(a),z=E(a),J=E(a),O=E(a),S=E(a);function d(A){if(0==A.length)return;let B=A.length-1;if(o(k,A[0])){if(!A.every((A=>o(k,A)||o(z,A)||o(J,A)||o(O,A)||o(S,A))))throw new Error("RTL: disallowed properties");for(;o(S,A[B]);)B--;if(B=A[B],!(o(k,B)||o(J,B)||o(z,B)))throw new Error("RTL: disallowed ending");let g=A.some((A=>o(J,A))),Q=A.some((A=>o(z,A)));if(g&&Q)throw new Error("RTL: AN+EN")}else{if(!o(K,A[0]))throw new Error("unknown direction");if(!A.every((A=>o(K,A)||o(J,A)||o(O,A)||o(S,A))))throw new Error("LTR: disallowed properties");for(;o(S,A[B]);)B--;if(B=A[B],!o(K,B)&&!o(J,B))throw new Error("LTR: disallowed ending")}}let p=A("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");const y=r(p),W=r(p),x=r(p),Z=w(p),j=r(p),X=p()&&function(A){const B=r(A),g=r(A),Q=r(A),C=r(A),E=r(A),w=r(A),e=r(A),D=r(A),t=65039,o=8419;function i(A,g){let Q=A[g],D=A[g+1],r=e(Q);if(r&&D&&w(D))return[2,[Q,D]];let o=r||C(Q);if(D==t){if(o)return[2,[Q]];if(E(Q))return[2,[Q,t]]}return r||o||B(Q)||w(Q)?[1,[Q]]:void 0}return function(A,C){let E=A[C],w=A.length;if(C+1<w&&B(E)){let g=A[C+1];if(B(g))return[2,[E,g]]}let e=g(E);if(C+1<w&&e&&A[C+1]==o)return[2,[E,o]];if(C+2<w&&(e||Q(E))&&A[C+1]==t&&A[C+2]==o)return[3,e?[E,o]:[E,t,o]];let r=i(A,C);if(!r)return[0];let[I,M]=r;I+=C;let c=!1;for(;I+1<w&&8205===A[I];){let B=i(A,I+1);if(!B)break;c=!0,I+=1+B[0],M.push(8205,...B[1])}if(!c&&I+2<w&&D(A[I])){let B=I+1;for(;B+1<w&&D(A[B]);)B++;if(917631==A[B++])return[B-C,M]}return[I-C,M]}}(p);function b(A){return A.flatMap((({e:A,v:B})=>A??function(A){let B=[],g=[],Q=-1,C=0;return H(A,(function(A,E){if(-1===Q)0==A?Q=E:B.push(E);else if(C>0&&C>=A)0==A?(B.push(Q,...g),g.length=0,Q=E):g.push(E),C=A;else{let w=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return U+(588*(A-4352)+28*(B-4449));if(h(A)&&B>4519&&B<4547&&(A-U)%28==0)return A+(B-4519);for(let[g,Q]of R)if(2==Q.length&&Q[0]==A&&Q[1]==B){if(o(G,g))break;return g}return-1}(Q,E);w>=0?Q=w:0==C&&0==A?(B.push(Q),Q=E):(g.push(E),C=A)}})),Q>=0&&B.push(Q),B.push(...g),B}(B)))}function v(A,B){return new Error(`Disallowed label "${I(String.fromCodePoint(...A))}": ${B}`)}function V(A){const B=45;let g=c(M(A),X,(A=>{if(y(A))return;if(x(A))return[];if(W(A))return[A];let B=i(Z,A);if(B)return B;throw new Error(`Disallowed character "${I(String.fromCodePoint(A))}"`)})).map((A=>{let g=b(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=function(A){let B=[],g=A.lastIndexOf(45);for(let Q=0;Q<g;Q++){let g=A[Q];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let Q=0,C=128,E=72;for(;g<A.length;){let w=Q;for(let B=1,C=36;;C+=36){if(g>=A.length)throw new Error("invalid encoding");let w=A[g++];if(w>=48&&w<=57)w-=22;else{if(!(w>=97&&w<=122))throw new Error(`invalid character ${w}`);w-=97}Q+=w*B;const e=C<=E?1:C>=E+26?26:C-E;if(w<e)break;B*=36-e}let e=B.length+1,D=0==w?Q/700|0:Q-w>>1;D+=D/e|0;let t=0;for(;D>455;t+=36)D=D/35|0;E=t+36*D/(D+38)|0,C+=Q/e|0,Q%=e,B.splice(Q++,0,C)}return B}(g.slice(4)),[A]=c(B,X,(A=>W(A)?[A]:[]));let Q=b(A);if(B.length!=Q.length||!B.every(((A,B)=>A==Q[B])))throw new Error("not normalized")}catch(A){throw v(g,`punycode: ${A.message}`)}g=B}let Q=A.flatMap((({v:A})=>A??[]));if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw v(g,"invalid label extension");if(g[0]==B)throw v(g,"leading hyphen");if(g[g.length-1]==B)throw v(g,"trailing hyphen");if(j(g[0]))throw v(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&F(A[B-1]))continue;if(B>0&&B<g){let Q=B-1;for(;Q>0&&n(A[Q]);)Q--;if(Y(A[Q])){let Q=B+1;for(;Q<g&&n(A[Q]);)Q++;if(N(A[Q]))continue}}break;case 8205:if(B>0&&F(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&T(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&P(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${I(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>u(A))))throw new Error("Disallowed katakana")}(Q)}catch(A){throw v(g,A.message)}}return{tokens:A,cps:g,text:Q}}));if(g.some((A=>A.text.some((A=>o(k,A)||o(z,A))))))for(let{text:A,cps:B}of g)try{d(A)}catch(A){throw v(B,`bidi: ${A.message}`)}return g.map((A=>String.fromCodePoint(...A.cps))).join(".")}function m(A){return c(M(A),X,(A=>{if(y(A))return{};if(W(A))return[A];if(x(A))return{i:A};let B=i(Z,A);return B?{m:B,u:[A]}:{d:A}}))[0]}export{V as ens_normalize,m as ens_tokenize};

@@ -262,6 +262,10 @@ function decode_arithmetic(bytes) {

function hex_cp(cp) {
return cp.toString(16).toUpperCase().padStart(2, '0');
}
// my suggested inline ascii-safe unicode escape
// this is ES6 \u{X} without the \u
function quote_cp(cp) {
return `{${cp.toString(16).padStart(2, '0').toUpperCase()}}`;
return `{${hex_cp(cp)}}`;
}

@@ -780,5 +784,5 @@

var PAYLOAD = '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';
var PAYLOAD = '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';
// built: 2021-12-23T21:04:51.395Z
// built: 2021-12-25T07:41:57.843Z
let r = decode_payload(PAYLOAD);

@@ -796,4 +800,4 @@ const STOP = read_member_function(r);

// string but you'd have to retokenize
function flatten_label_tokens(tokens) {
return tokens.flatMap(token => token.e ?? nfc(token.v));
function flatten_tokens(tokens) {
return tokens.flatMap(({e, v}) => e ?? nfc(v));
}

@@ -848,3 +852,3 @@

}).map(tokens => {
let cps = flatten_label_tokens(tokens);
let cps = flatten_tokens(tokens);
// [Processing] 4.) Convert/Validate

@@ -862,3 +866,3 @@ if (cps.length >= 4 && cps[2] == HYPHEN && cps[3] == HYPHEN) { // "**--"

[tokens] = tokenized_idna(cps_decoded, EMOJI_PARSER, cp => VALID(cp) ? [cp] : []);
let expected = flatten_label_tokens(tokens);
let expected = flatten_tokens(tokens);
if (cps_decoded.length != expected.length || !cps_decoded.every((x, i) => x == expected[i])) throw new Error('not normalized');

@@ -874,2 +878,6 @@ } catch (err) {

}
// flatten textual part of token to a single list of code-points
// emoji should be invisible to context and bidi rules
// could replace emoji w/a generic character
let text = tokens.flatMap(({v}) => v ?? []);
if (cps.length > 0) {

@@ -893,5 +901,3 @@ // [Validity] 1.) The label must be in Unicode Normalization Form NFC.

try {
// emoji should be invisible to context rules
// IDEA: replace emoji w/a generic character
validate_context(tokens.flatMap(({v}) => v ?? []));
validate_context(text);
} catch (err) {

@@ -902,3 +908,3 @@ throw label_error(cps, err.message);

}
return tokens;
return {tokens, cps, text};
});

@@ -912,9 +918,8 @@ // [Validity] 8.) If CheckBidi, and if the domain name is a Bidi domain name, then the label

// A Bidi domain name is a domain name containing at least one character with BIDI_Class R, AL, or AN
let text_labels = labels.map(tokens => tokens.flatMap(({v}) => v ?? []));
if (text_labels.some(is_bidi_label)) {
for (let i = 0; i < labels.length; i++) {
if (labels.some(x => is_bidi_label(x.text))) {
for (let {text, cps} of labels) {
try {
validate_bidi_label(text_labels[i]);
validate_bidi_label(text);
} catch (err) {
throw label_error(flatten_label_tokens(labels[i]), `bidi: ${err.message}`);
throw label_error(cps, `bidi: ${err.message}`);
}

@@ -924,3 +929,3 @@ }

/*~BIDI*/
return labels.map(tokens => String.fromCodePoint(...flatten_label_tokens(tokens))).join('.');
return labels.map(x => String.fromCodePoint(...x.cps)).join('.');
}

@@ -932,10 +937,10 @@

// this is much nicer than exposing the predicates
// [[{m:0x52, to:[0x72]},{e:[0x1F4A9]},{t:[61,66,66]}],[{t:[65,74,68]}]]
// [{m:[0x72], u:[0x52]},{e:[0x1F4A9],u:[0x1F4A9]},{t:[61,66,66]},{},{t:[65,74,68]}]
function ens_tokenize(name) {
return tokenized_idna(explode_cp(name), EMOJI_PARSER, cp => {
if (STOP(cp)) return {};
if (VALID(cp)) return [cp];
if (VALID(cp)) return [cp]; // this gets merged into v
if (IGNORED(cp)) return {i: cp};
let mapped = lookup_mapped(MAPPED, cp);
if (mapped) return {m: cp, u: mapped};
if (mapped) return {m: mapped, u: [cp]};
return {d: cp};

@@ -942,0 +947,0 @@ })[0];

@@ -1,1 +0,1 @@

function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let E=g(),Q=1,w=[0,1];for(let A=1;A<E;A++)w.push(Q+=g());let C=g(),D=B;B+=C;let e=0,t=0;function r(){return 0==e&&(t=t<<8|A[B++],e=8),t>>--e&1}const o=2**31,i=o>>>1,I=o-1;let f=0;for(let A=0;A<31;A++)f=f<<1|r();let n=[],c=0,M=o;for(;;){let A=Math.floor(((f-c+1)*Q-1)/M),B=0,g=E;for(;g-B>1;){let E=B+g>>>1;A<w[E]?g=E:B=E}if(0==B)break;n.push(B);let C=c+Math.floor(M*w[B]/Q),D=c+Math.floor(M*w[B+1]/Q)-1;for(;0==((C^D)&i);)f=f<<1&I|r(),C=C<<1&I,D=D<<1&I|1;for(;C&~D&536870912;)f=f&i|f<<1&I>>>1|r(),C=C<<1^i,D=(D^i)<<1|i|1;c=C,M=1+D-C}let Y=E-4;return n.map((B=>{switch(B-Y){case 3:return Y+65792+(A[D++]<<16|A[D++]<<8|A[D++]);case 2:return Y+256+(A[D++]<<8|A[D++]);case 1:return Y+A[D++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let E=0;E<A;E++)g[E]=1+B();return g}function E(A,B){let g=Array(A);for(let E=0,Q=-1;E<A;E++)g[E]=Q+=1+B();return g}function Q(A,g){let E=Array(A);for(let Q=0,w=0;Q<A;Q++)E[Q]=w+=B(g());return E}function w(A){let B=E(A(),A),Q=A(),w=E(Q,A),C=g(Q,A);return[...B.map((A=>[A,1])),...w.map(((A,B)=>[A,C[B]]))].sort(((A,B)=>A[0]-B[0]))}function C(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(t(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(e(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function D(A,g,E){if(0==g)return[];let w=[Q(A,E)];for(let Q=1;Q<g;Q++){let g=Array(A),C=w[Q-1];for(let Q=0;Q<A;Q++)g[Q]=C[Q]+B(E());w.push(g)}return w}function e(A,B){let g=1+B(),Q=E(g,B),w=D(g,A,B);return Q.map(((A,B)=>[A,w.map((A=>A[B]))]))}function t(A,B){let Q=1+B(),w=B(),C=1+B(),e=E(C,B),t=g(C,B),r=D(C,A,B);return e.map(((A,B)=>[A,r.map((A=>A[B])),t[B],Q,w]))}function r(A){let B=w(A);return A=>o(B,A)}function o(A,B){for(let[g,E]of A){let A=B-g;if(A<0)break;if(A<E)return!0}return!1}function i(A,B){for(let[g,E,Q,w,C]of A){let A=B-g;if(A<0)break;if(Q>0){if(A<w*Q&&A%w==0){let B=A/w;return E.map((A=>A+B*C))}}else if(0==A)return E}}function I(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>`{${A.codePointAt(0).toString(16).padStart(2,"0").toUpperCase()}}`))}function f(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function n(A,B,g){let E=[],Q=[],w=[Q];function C(){E.length>0&&(Q.push({v:E}),E=[])}for(let D=0;D<A.length;D++){if(B){let[g,E]=B(A,D);if(g>0){C(),Q.push({e:E,u:A.slice(D,D+g)}),D+=g-1;continue}}let e=g(A[D]);Array.isArray(e)?E.push(...e):(C(),e?Q.push(e):(Q=[],w.push(Q)))}return C(),w}let c=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const M=r(c),Y=r(c),N=r(c),F=r(c),u=r(c),h=r(c),U=r(c);let k=A("AEQHZwEcASIANQBwABkANwAVACAAGQAaAAgAGgAKABQABgALAA0AEQAIAA8AAwAPAAIADAAGAA0AAgAIAAQACwAEAA0AAwAPAAYACAABAAMABgAKAAUACwADAAUAAgACAAYABAADAAQACQAHAAoADgAOAAEABQAFAAoAAgAfAAYAagLPBikArxEuG5TsJLEkAfQYbQKvAEjFZTYAbrAH/D8/Pz+/PwI6CbxxEIw7ZcZ4FityABw8vLYAQsgCvsrHABH7L1kIDT8/Pz8/Pz8/PC8/iQZvXQFNoxD6eUZXTiz1tl0RBMbGNHQitD+8PzY0zQBmExEAZQAXC/sBvQWaA1UH9AAGyQLGBHAEcQRyBHMEdAR1BHYEdwR4BHkEewR8BH0EfwSBBIL53gULAWQFDAFkBQ0BZATYBNkE2gURBRIFMAXRCxULFgz4DQgNeA2IDjEOMg46DjQckAHhHI4B2wrdANAlHLoQ7wRRVkMDaaUbBKJOhgdtnCZhAECUAaiIi1YIogXsawMkAdYBCHKh3QTeClwA0QLPhv5Tuw/ewO0WBQRaEksVsy7uANAtBG4RuhZBHLcCBgET3wtrZHhsDJ4AHJwAEwA0xgGihD4DAF4NbAMmA5nNDxgBwN/OJAI4BmEyFwTuApYF12EAIocBvgrTsHdTEQCvAJFSIQQHCG0ARlwAdwElVn9lFFcMfckAewUXAdUZXRD1AhwZWRyNAh0CBQIAG38B6NXoAPyWFzMPYgTAOMQezJHKS88UeBpyFYg2MvfHABUA/JNXYAA9+DkFXLMCygo0Ao6mAobdP5MDNp4Cg/cCowIDGqno1pQA++YE5nMDu7gEqk8mIQwDBQkFGAR1BKoFe7QAFcZJZ05sAsM6rT/9CiYJmG/Ad1MGQhAcJ6YQ+Aw0AbYBPA3uS9kE8gY8BMoffhkaD86VnQimLd4M7ibkLqKAWyP2KoQF7kv1PN4LTlFpD1oLZgnkOmSBTwMiAQ4ijAreDToIbhD0CspsDeYRRgc6A9ZJmwCmBwILEh02FbYmEWKtCwo5eAb8GvcLkCawEyp6/QXUGiIGTgEqGwAA0C7ohbFaMlwdT2AGBAsmI8gUqVAhDSZAuHhJGhwHFiWqApJDcUqIUTcelCH3PD4NZy4UUX0H9jwGGVALgjyfRqxFDxHTPo49SSJKTC0ENoAsMCeMCdAPhgy6fHMBWgkiCbIMchMyERg3xgg6BxoulyUnFggiRpZgmwT4oAP0E9IDDAVACUIHFAO2HC4TLxUqBQ6BJdgC9DbWLrQCkFaBARgFzA8mH+AQUUfhDuoInAJmA4Ql7AAuFSIAGCKcCERkAGCP2VMGLswIyGptI3UDaBToYhF0B5IOWAeoHDQVwBzicMleDIYJKKSwCVwBdgmaAWAE5AgKNVyMoSBCZ1SLWRicIGJBQF39AjIMZhWgRL6HeQKMD2wSHAE2AXQHOg0CAngR7hFsEJYI7IYFNbYz+TomBFAhhCASCigDUGzPCygm+gz5agGkEmMDDTQ+d+9nrGC3JRf+BxoyxkFhIfILk0/ODJ0awhhDVC8Z5QfAA/Qa9CfrQVgGAAOkBBQ6TjPvBL4LagiMCUAASg6kGAfYGGsKcozRATKMAbiaA1iShAJwkAY4BwwAaAyIBXrmAB4CqAikAAYA0ANYADoCrgeeABoAhkIBPgMoMAEi5gKQA5QIMswBljAB9CoEHMQMFgD4OG5LAsOyAoBrZqMF3lkCjwJKNgFOJgQGT0hSA7By4gDcAEwGFOBIARasS8wb5EQB4HAsAMgA/AAGNgcGQgHOAfRuALgBYAsyCaO0tgFO6ioAhAAWbAHYAooA3gA2AIDyAVQATgVa+gXUAlBKARIyGSxYYgG8AyABNAEOAHoGzI6mygggBG4H1AIQHBXiAu8vB7YCAyLgE85CxgK931ahYQJkggJiQ1xOsFw3IQKh+AJomQJmCgKfhTgcDAJmPAJmJwRvBIADfxQDfpM5Bzl4GDmDOiQkAmweAjI3OAsCbcgCba/wiwA0aEYsAWgA3wDiAEsGB5kMjgD/DMMADrYCdzACdqNAAnlMRAJ4ux5d3EWvRtgCfEACeskCfQoCfPEFWgUhSAFIfmQlAoFuAoABAoAGAn+vSVlKXBYYSs0C0QIC0M1LKAOIUAOH50TGkTMC8qJdBAMDr0vPTC4mBNBNTU2wAotAAorZwhwIHkRoBrgCjjgCjl1BmIICjtoCjl15UbVTNgtS1VSGApP8ApMNAOoAHVUfVbBV0QcsHCmWhzLieGdFPDoCl6AC77NYIqkAWiYClpACln2dAKpZrVoKgk4APAKWtgKWT1xFXNICmcwCmWVcy10IGgKcnDnDOp4CnBcCn5wCnrmLAB4QMisQAp3yAp6TALY+YTVh8AKe1AKgbwGqAp6gIAKeT6ZjyWQoJiwCJ7ACJn8CoPwCoE0Cot4CocUCpjACpc8CqAAAfgKn82h9aLIABEpqHWrSAqzkAqyvAq1oAq0DAlceAlXdArHi2AMfT2yYArK+DgKy5xZs4W1kbUlgAyXOArZdPEBukQMpRgK4XwK5SBYCuSt4cDdw4gK9GgK723CXAzISAr6JcgMDM3ICvhtzI3NQAsPMAsMFc4N0TDZGdOEDPKgDPJsDPcACxX0CxkgCxhGKAshqUgLIRQLJUALJLwJkngLd03h6YniveSZL0QMYpGcDAmH1GfSVJXsMXpNevBICz2wCz20wTFTT9BSgAMeuAs90ASrrA04TfkwGAtwoAtuLAtJQA1JdA1NgAQIDVY2AikABzBfuYUaCHYLUAILPg44C2sgC2d+EEYRKpz0DhqYAMANkD4ZyWvoAVgLfZgLeuXR4AuIw7RUB8zEoAfScAfLTiALr9ALpcXoAAur6AurlAPpIAboC7ooC652Wq5cEAu5AA4XhmHpw4XGiAvMEAGoDjheZlAL3FAORbwOSiAL3mQL52gL4Z5odmqy8OJsfA52EAv77ARwAOp8dn7QDBY4DpmsDptoA0sYDBmuhiaIGCgMMSgLBgNAACehZARUrE6k7Nz5NACQsCZ8BfABdBq4EL8jeFAtCANsALrsCPLblFkIvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAAAnAAAAAI4AAAAALwABRAGBAP0AAAABticAdgMPBQAAbgAAAAAtAAAAAAAAAAAAAAAAAwAAFwANAACiAAEAAAsAAj4CawAD3gN/BJICIUYABiJ9AAsAAAAABgBFAAAAAAAAFAA3ABMAAAAAAAJ4AgEG1gNs8AvGAwD4C6AowLK45gGSIkJDAuoUgBI0wQAAAACKAAAFAAAAAAAAHABbAAACRgKFAAAAAAAAAACMAAAHAAAAADpUOpUAAAAAAAAAAACOAABuALkAAAAAOpA60QAAAACOOMI63QAAAAAAAAAApgDpAAAAAAAAAAAAAAAAAADMATsAAIIAAAAAOjw5/Tn6O3cAAACKAAAAADpcO58AAAAAigAAAAA6cDkZAVcAAAE0AW0AAAAABTA1XjWfNa41ZzV2Nbc1xjWDNZI10zXiNZ81rjXvNf41szXCNgM2EjXHNdY2FzYoNd817jYvNj42LzUuIjY7Nj42PTbKNwkEkTxYNjk23jchNxA2yyE3ijcxCwSxPGg2JTcaN206jjgiQtVDCELhQwwdAA8QCZwpbilSVQcA6YAA6bEBFCrYAuoBpAC+BbgAbwR0BD4EQARCBEQETgRSBIgENgQ4BDoERgQuBDAEMgQ+BCoEIgQkBCYEKAQyBBYEGAQaBCYEEAP+BAAEAgQEBA4EEgRIA/YD+AP6BAYD7gPwA/ID/gPqA+ID5APmA+gD8gPWA9gD2gPmA9AD3gRGBAYESgQKBI4ETgQ8A/wEPgP+BEgECARSBBIEUAQQBD4D/gRCBAIERAQEBIYERgROBA4ENgP2BD4D/gRABAAEgARABDQD9AQ0A/QENgP2BDoD+gR+BD4EPAQwA/AEeAQ4BCoD6gR2BDYEQAQABCYD5gRyBDIEPAP8BCoD6gQuA+4EOAP4BB4D3gRqBCoENAP0BBwD3AQeA94EaAQoBDID8gRmBCYEMAPwBBwD3AQeA94EIgPiBCoD6gQsA+wEZgQmBBYD1gQSA9IEHgQOA84EGgPaBCQD5ARYBBgETAQMBFYEFgRGBAYEOgP6BC4D7gMQAtADCgLKAyAC4AMIAsgDQAMAAHwAegM8AvwESgQKBEIEAgRyBDIA9ADyAWq0BAQENAP0BCQD5AM4AvgDNgL2AxIC0gRcBBwEYAQgBFQEFARYBBgETAQMBFAEEARABAAERAQEBDoD+gQ+A/4ENAP0BDgD+ARmBCYEZAQkBEgECARMBAwEhAREAxwC3AMeAt4EMAPwAGwAagQWA9YDct/n6+/7AAcADwBR4fkAHwAnACsALwBTACEAOQA7AEcATwBhAFMA6QDZAOMAuwDxAO8A+QDjASMBKQEZASMBWwExAS8BOQGJAYsA3wEfANMBEwDPAQ8A3QEdAl8CYQDbARsA3QEdAOcBJwDfAR8A6wErAn8CgQEJAUkA/QE9APUBNQDvAS8A/QE9AQUBRRgaHMGZuw4MCgAMCgBKqpaMgniqIyUKCiAcGBQQCASIBEgESgQKBIIEQgSeBF4DNAL0BEYEBgR+BD4EmgRaBIYERgSSBFICnAKaAp4CnASQBFAElgRWAHwAegRCBAIEOgP6BD4D/gR2BDYEQAQABH4EPgSMBEwEjgROAyQC5AQsA+wEcAQwBIwETARuBC41IzUlBIoESgSCBEIEKAPoBDQD9ARsBCwEMgPyBGoEKgSGBEYEfgQ+AxgC2AMmAuYCKAImAioCKAQiA+IELgPuBCoD6gRiBCI1azVtBH4EPgQoA+gEYAQgAhoCGAIOAgw1dTV3BCYD5gReBB4EegQ6BHIEMgReBB4EdgQ2BHAEMAHyAfAB/AH6BBoD2gRaBBoEEgPSBBQD1AQiA+IEIAPgBFgEGAQeA94EIAPgBBwD3AQQA9AEUgQSBG4ELgRSA+gD5gPiAdAEhAREBFAEEAM+Av4DPAL8A04DDgNCAwI1+zX9Ar4CvAK8AroCzgLMAsICwDXzNfUEfAQ8BEgECAQ8A/wDLgLuAywC7AM+Av4DMgLyNis2LQRABAAEdAQ0BGgEKAQ0A/QDGgLaAxgC2AMqAuoDHgLeNlM2VQGCAYABgAF+AZIBkAGGAYQBxgHEBFwEHAQoA+gBZAFiAWIBYAF0AXIBaAFmAagBpgQOA84EVAQUBCAD4AQUA9T7+Ta/NsE2vTa/Njs2Pbu5Ns820TbNNs82SzZNAAMAATbfNuE23Tbfw8E27zbxNu027wAHAAU2/zcBNv02/zZ7Nn3HxTcPNxE3DTcPNos2jQALAAk3HzchNx03HzabNp3LyTcvNzE3LTcvNqs2rQAXABU3PzdBNz03P9fVN083UTdNN08AIwAhN183YTddN1822zbd4TdxN2827QArACk3fzeBN303fzb7Nv3r6TePN5E3jTePNws3DQAhACkALQAxAD0ASQBRNjU2NzY5Njs2PTY/NkE2QzZFNkc2STZLNk02TzZRNlM2dTZ3Nnk2ezZ9Nn82gTaDNoU2hzaJNos2jTaPNpE2kzb1Nvc2+Tb7Nv02/zcBNwM3BTcHNwk3CzcNNw83ETcTABUAGTcVl42dN6HV2eFXA/Q3HaORqTfB6e1jOD04Oze5ACUAKQBTrc/l6fE4uzi5ODcAPQBBAFUAGwAZxdH9AAEACdkDcDctx9HNOCH9ABGHO287czt3O+879zvzPFU8XzxlPJU8mTzHPNU82TzfBLY9ETzpBLgEtD0XPRk9Mz01PTs9PT1DPUU9Uz1VPVs9XT2TPZ89oT2lPUc9ST1xPXM9sz21Pbc9uU4JXFhUUExIREA8ODQwKiYiFBYOEAgKAgRmAwcLDxUZHSspMS83NT07Q0FrbW9xhwk1Dw0A6c8A6c0DBwkNDxMVFxkbCQJnaVlbV1kInxMDpBnizwAIGEM8wu6N1Ncci1LFtwnGtNCfO47E51h1ZKcKpb4puvaZKoOzUMuB+ritzrtbdARAKyMEAftAemEXOvi6eu0c/FkwKtXwIUAN49j6eh3DxuDaTfgvjMfODv/q7yCVJlP3ZQLN0We2YGkUFIRtORTUne/2C1y00jvHsiVhpY46NUbuH91wbkPHQwRCEa5iLISWK6uPu47Q2pI6RW/4dO4hgQ9qYTl92SdSfTynOkZEN0vd3KgC4FjMQfqK+w0BHui7Vtn0b/WnQVrYmRO61jakJLXAYQoFcc/13OEbTB7aoEaPecBmd50AhWupAVQ4C8Y516kMLfuZfL5gQuRfkIc+RlKGT/ia+C/aiA2XguQYiCks9jfIO/L5UWTfsdf3Ihd9euNMfw95BnOIjco4rCCTtQJQVXyPax0epJ2RZPAfQHeOBN2EPFsSOQwWLhAEVzxBPl5PijCKv8pTpCrl0CSpouvdPA0zTss8A+IkAIAbNTQoONvz/tLHofGbfpY2Qgug5oRdtpaHhllz1SJoJX7f9SUuiDTGDIqG/7oLRLR0Y5EQOAu8T+2wQyjU5yTbaFB/ch4YUbn4p0abct0wM53WoYweOYYyR3UYCUaJg/AxHNMYt1WKuSLXRZWEWDfl4ViNOYZzSbhJ6RrMUMsB4eYD9J6c+ITJm3yu6nqzL0r69OLJyjeBLTes7B3lHBzO13zm5EFYmQVL3OZJpy21TzuZf/pVfOKYADOetO/ZQW3Kl6fukZSIW9MBTq0UJ+LQUIK1Pz0w1bOgsawq3Fp3tHqMcQdGUkeqYdQqy5RF71cutedatMkRiLy2Im5ilGRUdDqQ67EJjkCgBx2gX+N67q3GKuUfkfthdI/qrARCn7fCoPboKdfb0cm04N7/9aAmvyMq+t7z/ReBWuY7bcrdcBBu3WDigIrn9HeP0fqKgKYDTa9BUKKS88N34PbUVPt3ijwzcM0wQcRqeu3XPzmftfPnIiXEa8UwvZ/zxZKVJ9jH73CSreIXOUACobt5WBH/j/5xdLqRBDtGBznFwxIZ3hX7+SlIJzkL3H2QjHCHna/0ipUSfeB3tfr4yshfXfKTiw2FcYl2wtFeSa/ia5+ZA9StkHuKcSpd0d8ltmztlOKEpFwW09pOhpQE/CmUIFusMmC36RHT1baX9XAFtzfFkPIHGX5bMoyf52SUKcDYT3RODW3juLy8iCuBX1mF7CAo0e/HokZQtR7F7L52voyEqkPHsgedmsMYuR5ebzy/GD0ysy8hnQyv9+qLRez/25/skAUmcvPPjUaD76e4pKd7JNh+xfowm29SemAZxL37W2JH25zUZ2CPkixALwGqrXzCjsf8IgcWX6vXi7WtKRleQQF4MogMtZuoWbI43DBCSUOhk7y3wE+K/0qKlK5rZgZX7GxrgOp+fiidHjG7Hkwr1DTrLs1S8j2xfUusalvv1/d3MMj0f53ow26ebF2pcgjmR0FoO1TtTNMbtYGvU8TFdThuDIcLj5ytsAr72Q5jlTOOcgpcAXnlM0IiBKGF9PFxKLUl7jsWcK7OjeW7uip/q4w9qfcU2b4EaShB+KZ6Xto7tNrWoMazrdRdI0azLngkHELOTGZ7xRYFsidaKUe9cd1wFLv1gu41ksw94+2qIe64FrRLYQ/G4WU7a3OhdSzo3rxvfzcHoKAMvpqc6Dr+tIsV3qCccYj4vFvkYLpmVzsyNkHGUIrDsSj3hrWy3Br2NcHoe+DLgCkHqxf4bCelVxKWjzBhTJhigSseFBGOwKJwJC2hzdBMw+tl0SfS1+BwxUXGkgt1UGN+CL+DxvWdGkSpM/nXvtgjuJHVAyJjlv12fizNLPPMlUraqzJsgzDM1MC/RqdfR7Ay9pasP8HdraHj9HuFxzFN3hT1HNk0Be8Q3rswa0MWuqUKmIeSVFv/fbjdJLqk41872buY4/z1+TG1gxqs0kXrCXYkNVkPswY0l6ydxb37C3Jfx48Y1DO3LhkoC/pjqZsyukLh6NexHPztIx6zG3iN86GIdruJDQXWiiRyNm3u/byXbBg+72eYtztgc+DddlB5GZQAZ+qt61eGZx+vHScafUbcyIML5TPtDwBFr7TDuhZeV6PoXfieZnUQj9IDzEd4Vt6uYJVGD6yfj1sEReAYvGWEL08Gux0GwhvVPPSvgvkijzTw9XrB3ufQSzMNMFu7/FXA76HOBAWPSHZ/7gkvDY5jLcMdTH1/7qxa1PTDU13UJFiDwIndfag8Cla0tUZriSODOmRjGA141EwyjLuHZgSsWxune4pBmEcqtOjrliBLkZtAeQwq/dDCoz5Xi6utath5xdeJl1bHmiNS11Vrd/VHgXqZy92cTszu1UzZVUreHMxtYLVB+v1pJPLB6xQaRGv39Z86teBbwVaXtEhkNhRBKP4PhT9mKethlgfJdEbTZivWeD8uUA3TOxyjd37Ct/NoI+mzSIgC+C00v3OMkMiFPNeHPtmWik4htP9C7EsJEipzw5ie4VbDfqIxlp1fV23dH36UHvxxk7gH4zKIPzYzKsyTew8KbYJKXlYLFvcg3guELlU45nCpOY/pb4CpNvm3JZ93Gm/whLKdBFCsN6XxekyK504R1x118k+zzvg/uck09iYilo6RgfpLZqI29K93gm1BR5hbbyjQV8bty9z8LoGrPEqf76V+HvZc3lPE9GbgfvnZqxTAFQbY1h7z5KacqH/DL/If5I06os86sUp2kST9fpO9Z8tJozEFlVD6tQA+q7d8LhY43rpWp/UvK/UFlHgBFA46rdUiW7KN6lWQ3PdMZkolu7xRkvyD2W5mF+OSs9x/EUFNDtrk19D43oPQmUWUnQMAnqZHfIcCM3nw4D0LnEoOmSWfAyj6Fw6tyWNR3CvzCPmLvGLOdGq4TMvdqbYe6UbfJOYyn34WuuPF3c/UU+aQixGIoZRRzu+IKD0e4rfLbCEhdE78I/DaxMl3hObpoKzE58kecUOZagMW1tQ+EnylBgBQqb0mRLTwae/GK1Pmfj6dtuGfgAjlagGBTY/TbDXIIAZ/rIsr0AXK1D7vDPUECxRI80k9h4gGELY0ZKy27iLKRObKIV5g42jK5s+L1OQz+EPTtAGWVV2MxGaR1w==");const R=Array(1+k()).fill().map((()=>w(k))),G=C(k),H=w(k),l=44032;function P(A){return A>=l&&A<55204}function s(A,B){if(A<128)B(A);else if(P(A)){let g=A-l,E=g%588/28|0,Q=g%28;B(4352+(g/588|0)),B(4449+E),Q>0&&B(4519+Q)}else{let g=i(G,A);if(g)for(let A of g)s(A,B);else B(A)}}function K(A,B){let g=[];function E(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function Q(A){let Q=1+R.findIndex((B=>o(B,A)));0==Q?(E(),B(Q,A)):g.push([Q,A])}A.forEach((A=>s(A,Q))),E()}let a=A("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");const L=w(a),T=w(a),S=w(a),z=w(a),O=w(a),x=w(a);function J(A){return A.some((A=>o(L,A)||o(S,A)))}function d(A){if(0==A.length)return;let B=A.length-1;if(o(L,A[0])){if(!A.every((A=>o(L,A)||o(S,A)||o(z,A)||o(O,A)||o(x,A))))throw new Error("RTL: disallowed properties");for(;o(x,A[B]);)B--;if(B=A[B],!(o(L,B)||o(z,B)||o(S,B)))throw new Error("RTL: disallowed ending");let g=A.some((A=>o(z,A))),E=A.some((A=>o(S,A)));if(g&&E)throw new Error("RTL: AN+EN")}else{if(!o(T,A[0]))throw new Error("unknown direction");if(!A.every((A=>o(T,A)||o(z,A)||o(O,A)||o(x,A))))throw new Error("LTR: disallowed properties");for(;o(x,A[B]);)B--;if(B=A[B],!o(T,B)&&!o(z,B))throw new Error("LTR: disallowed ending")}}let W=A("AEQLAQQ6AksBLQFJAHsA8wCQAIUAlwCHAEwAawBAAFgAVwBlADYASAAkAEEAHgA5ACAALABOAD4AEQAgACQAOAA1ACsAFwAhABsAMQANABkAEgAbABkAIwAVABcAIgAYADsAJQAeACEAHAAUABIALwASABoADAAuAAoAGgAKABQAGAPJBWcAzhEBAS1JCV4TBigA9QB0M2BFAB9tEQFRJwPWAY8BR3IyABcJnMEAzHTERxKOT9W8AhQCSaIDX0cAwgOnAFpzJSEJhwAvADwBhP0VAVwBNbmEBYkA+j0UAykFDhIKURsyCjwFDz/CCQQgAS0QHw8ADz9CKgaUIg8K4ywOAOQXI1oPAM8Yv1WPzxwRASIFDw8OIB9MzQK4AJ8Avx8fNyYE/18fHwE/fwAPDyUQCCxPDw9vD39/Dw8fAA8W/98DPwnPLxK/Ir8A/w8Bol8OEBa/A78hrwAPCU8vESIJjx8DHr+ZAA8D348RFW+lvw7/nxVPMA8gGiQJNAkNCAIVASsKGAUMMxUdGH9VTMwHBQAIKmM6NfYIBgQKBQAJCAJZgyAC7gEGAPgOCha3A5XiAEsqhKWfDvidFUEb8BIKbQFhE38GuxTdWhbL5LS9XwtDH6/GATBwAE4HGeANhgdKMgALD0suAGv2FQXvPQJ6t5YqdzRNoY8YAScC1m9/AKwDiQrfVF9kfw/JA78BOgl/+vgXMw9iD4IdABwBfCisABoATwBqASIb3h4dF94aH/ECeAKXAq40NjgDBTwFYQU6AXs3oABgAD4XNgmWCZdeCl5tIFZeUqGgyoNHABgAEQAaABNwWQAmABMATPMa3T34ADldyprmMwAWKFFIUqUK8SJRCAvO/ABdPfEAGAARABoAE3AgYUCcAMPwACAAPgEElbNoJwgAgQEUwBbAqgAB2r0FYAXlAtCkAsS1AApRIaRqFHgachWINjLAKX8nRxc/b194LtkKEyp4FGEGUkETCmzlgwAIpAoKAMIoHhQIAn0E0pDQFC4HhznoAAAAIAI2CwV/VriW8WpAAAROAEFxDDQHBQYCmTICk44EH8zWiQAVsgFN15cAHzpXYJAFQgA2kjkF9s8WA83GAAsDmaIOCjQCjqYCht0/kwM2ngKD9/JE99OkAAIAeJIKJlYA9AAeBAACAAAABAAUBggDAfwRCxQGEGp9Kx4CCdEAegpDY5uVHicCKgY1NDzvEyC6ZHJnkgIiTFYGNQEfaRYGVMuhSgAdFPgBL5UABG6CBXYF1Tzg1wKAAFdiuABRAFwAXQBsAG8AdgBrAHYAbwCEAHEwfxQBVE5TEQADVFhTBwBDANILAqcCzgLTApQCrQL6vAAMAL8APLhNBKkE6glGKTAU4Dr4N2EYEwBCkABKk8rHAbYBmwIoAiU4Ajf/Aq4CowCAANIChzgaNBsCsTgeODcFXrgClQKdAqQBiQGYAqsCsjTsNHsfNPA0ixsAWTWiOAMFPDQSNCk2BDZHNow2TTZUNhk28JnoPn8yQhJCB0IIQiECggKhArABJwA1BV4FXbS/BW47YkIZOVciUqs05DS/FwABUwJW11e6nHuYZmSh/RAYA8oMKvZ8KASoUAJYWAJ6ILAsAZSoqjpgA0ocBIhmDgDWAAawRDQoAAcuAj5iAHABZiR2AIgiHgCaAU68ACxuHAG0ygM8MiZIAlgBdF4GagJqAPZOHAMuBgoATkYAsABiAHgAMLoGDPj0HpKEBAAOJgAuALggTAHWAeAMEDbd20Uege0ADwAWADkAQgA9OHd+2MUQZBBhBgNNDkxxPxUQArEPqwvqERoM1irQ090ANK4H8ANYB/ADWANYB/AH8ANYB/ADWANYA1gDWBwP8B/YxRBkD00EcgWTBZAE2wiIJk4RhgctCNdUEnQjHEwDSgEBIypJITuYMxAlR0wRTQgIATZHbKx9PQNMMbBU+pCnA9AyVDlxBgMedhKlAC8PeCE1uk6DekxxpQpQT7NX9wBFBgASqwAS5gBJDSgAUCwGPQBI4zTYABNGAE2bAE3KAExdGABKaAbgAFBXAFCOAFBJABI2SWdObALDOq0//QomCZhvwHdTBkIQHCemEPgMNAG2ATwN7kvZBPIGPATKH34ZGg/OlZ0Ipi3eDO4m5C6igFsj9iqEBe5L9TzeC05RaQ9aC2YJ5DpkgU8DIgEOIowK3g06CG4Q9ArKbA3mEUYHOgPWSZsApgcCCxIdNhW2JhFirQsKOXgG/Br3C5AmsBMqev0F1BoiBk4BKhsAANAu6IWxWjJcHU9gBgQLJiPIFKlQIQ0mQLh4SRocBxYlqgKSQ3FKiFE3HpQh9zw+DWcuFFF9B/Y8BhlQC4I8n0asRQ8R0z6OPUkiSkwtBDaALDAnjAnQD4YMunxzAVoJIgmyDHITMhEYN8YIOgcaLpclJxYIIkaWYJsE+KAD9BPSAwwFQAlCBxQDthwuEy8VKgUOgSXYAvQ21i60ApBWgQEYBcwPJh/gEFFH4Q7qCJwCZgOEJewALhUiABginAhEZABgj9lTBi7MCMhqbSN1A2gU6GIRdAeSDlgHqBw0FcAc4nDJXgyGCSiksAlcAXYJmgFgBOQICjVcjKEgQmdUi1kYnCBiQUBd/QIyDGYVoES+h3kCjA9sEhwBNgF0BzoNAgJ4Ee4RbBCWCOyGBTW2M/k6JgRQIYQgEgooA1BszwsoJvoM+WoBpBJjAw00PnfvZ6xgtyUX/gcaMsZBYSHyC5NPzgydGsIYQ1QvGeUHwAP0GvQn60FYBgADpAQUOk4z7wS+C2oIjAlAAEoOpBgH2BhrCnKM0QEyjAG4mgNYkoQCcJAGOAcMAGgMiAV65gAeAqgIpAAGANADWAA6Aq4HngAaAIZCAT4DKDABIuYCkAOUCDLMAZYwAfQqBBzEDBYA+DhuSwLDsgKAa2ajBd5ZAo8CSjYBTiYEBk9IUgOwcuIA3ABMBhTgSAEWrEvMG+REAeBwLADIAPwABjYHBkIBzgH0bgC4AWALMgmjtLYBTuoqAIQAFmwB2AKKAN4ANgCA8gFUAE4FWvoF1AJQSgESMhksWGIBvAMgATQBDgB6BsyOpsoIIARuB9QCEBwV4gLvLwe2AgMi4BPOQsYCvd9WADIXAGBRHB6ZHpwemT6NXmgAtGE0BzJzPVEADx+pPsgHcvwWSIkCJksAUOYAUEM0mjUxVkk2AacBqikCt/ABbasASP8Ct+4Ct60Ct7ACutvNAtICt9wCt88QAFBCAFA/UpJSgwK3pAK8OQBEAMwBwjteO0c7PjtZO147Rzs+O1k7XjtHOz47WTteO0c7PjtZO147Rzs+O1kDmChYI03AVU0oJqkKbV9GYewMpw3VRMk6ShPcYFJgMxPJLbgUwhXPJVcZPhq9JwYl5VUKDwUt1GYxCC00dhe9AEApaYNCY4ceMQpMHOhTklT5LRwAskujM7ANrRsWREEFSHXuYisWDwojAmSCAmJDXE6wXDchAqH4AmiZAmYKAp+FOBwMAmY8AmYnBG8EgAN/FAN+kzkHOXgYOYM6JCQCbBoCMjc4CwJtyAJtr/CLADRoRiwBaADfAOIASwYHmQyOAP8MwwAOtgJ3MAJ2o0ACeUxEAni7Hl3cRa9G9AJ8QAJ6yQJ9CgJ88UgBSH5kJQAsFklZSlwWGErNAtECAtDNSygDiFADh+dExpEzAvKiXQQDA69Lz0wuJgTQTU1NsAKLQAKK2cIcCB5EaAa4Ao44Ao5dQZiCAo7aAo5deVG1UzYLUtVUhgKT/AKTDQDqAB1VH1WwVdEHLBwplocy4nhnRTw6ApegAu+zWCKpAFomApaQApZ9nQCqWa1aCoJOADwClrYClk9cRVzSApnMApllXMtdCBoCnJw5wzqeApwXAp+cAp65iwAeEDIrEAKd8gKekwC2PmE1YfACntQCoG8BqgKeoCACnk+mY8lkKCYsAiewAiZ/AqD8AqBN2AKmMAKlzwKoAAB+AqfzaH1osgAESmodatICrOQCrK8CrWgCrQMCVx4CVd0CseLYAx9PbJgCsr4OArLnFmzhbWRtSWADJc4Ctl08QG6RAylGArhfArlIFgK5K3hwN3DiAr0aAy2zAzISAr6JcgMDM3ICvhtzI3NQAsPMAsMFc4N0TDZGdOEDPKgDPJsDPcACxX0CxkgCxhGKAshqUgLIRQLJUALJLwJkngLd03h6YniveSZL0QMYpGcDAmH1GfSVJXsMXpNevBICz2wCz20wTFTT9BSgAMeuAs90ASrrA04TfkwGAtwoAtuLAtJQA1JdA1NgAQIDVY2AikABzBfuYUZ2AILPg44C2sgC2d+EEYRKpz0DhqYAMANkD4ZyWvoAVgLfZgLeuXR4AuIw7RUB8zEoAfScAfLTiALr9ALpcXoAAur6AurlAPpIAboC7ooC652Wq5cEAu5AA4XhmHpw4XGiAvMEAGoDjheZlAL3FAORbwOSiAL3mQL52gL4Z5odmqy8OJsfA52EAv77ARwAOp8dn7QDBY4DpmsDptoA0sYDBmuhiaIGCgMMSgFg8AC6AQKtAZ88E70BlT8lDaChMRpxAPkFKASCHwARxddN9dGeGx4wL5IDZlgDegBEAr65BFakxgMArAUWwAPuIkJDAh0dO9oyNj021DbJNkY2OTbwNt02SjYlNxA3GTeSPkU8Q0UwQiZCuVQWChYWX8EAlsoFNwCQUR6bvjsrYDcWutQONBjLGI7J+wVcBV0FXAVdBWgFXQVcBV0FXAVdBVwFXQVcBV1LGgjcigCuAAEFBwcClO6CAqFtXu4wA/wDW1oYZRQODAoADAoAqpaMgniqIyUKCgN6NU01TzVRNVM1VTVXNVk1WzVNNU81UTVTNVU1VzVZNVs1jTWPNZE1kzWVNZc1mTWbNY01jzWRNZM1lTWXNZk1mzYNNg82ETYTNhU2FzYZNhs2DTYPNhE2EzYVNhc2GTYbNi02uTY1Ntk2RTc5WVM+5k4JPW8CB8xuzGzMasxozGbMZMxizGDMXgoQQAQWASnf0t/Q387fzN/K38jfxt/E38LfwAX6IgEjOAwaBXUFawVpBV8FXTUzBVEFSwVJBXwFeMooyibKJMoiyiDKHsocyhrKGAk1Dw0DBwkNDxMVFxkbCWUGCAIEAEA+DgAGCAIEAA4CEgJnaR+9fA14D3qpYw7fOMXDAIQb0iYYHimxIh2+H74+QSkkT0K2Qjs9KF8sYDssHygJxm4ClQaCAkILXgdeCD7mPuY+4kFDPuY+5j7mPuQ+5j7kPuI+4D7mPt4+5j7iPt4+2j7odF5SZEJOMlYwUjAwOBUWCQQGAgIzRxdCEEH+QigZGWdpZ2leAWzwOqo7sFWqgApjPoxGRFJpRj7fPuM+3z7ZPtU+4T7hPt0+3T7dPt0+2z7bPtc+1z7XPtc+4cxwzG7MbCNUM0wiRQEjFUUALzgNM0c5BRNONyViEN/S39Dfzt/M38rfyN/G38Tfwt/A39Lf0N/O38zfyjUzNTU1MzMzQgNCD0IPyirKKMomyiTKIsogyh7KHMoayhjKKsooyibKJMoiyiDKHsocyhrKGMoqyijc3F4EbO06pzutVaeAB2M7jENET2lDHxe6B1QHs8jrPyQ+wUpCKhuubT7OPQpIPuYeUmIOaDxEMDo8JhgjMTMfKQ0Q9UIQQiT2PuUWEGELFXJePCcLHqlCA0ITAAknJy9FYjgdOEUnFTwWBgZTCEExxxdgEF+zQEAyODwWIycROR0jQVA3FVoyFzYwCzogGEIiJRZSFQZIQkIDMdZYYBpfNUBCIidCAwZBBH9oYKsAfgY/BRQkP1oyGj9DTIgGDYsAlQEtD0p3rwBSkqUdLE8cBZ6iBh4E8BFwitjGA6FjIgGyUMdUaVAG6aMBwA/yzQtKBTUEFhsNASwPUQGCAnQDjlqmDwAEa4gN7rABCS50mhHyHAU1rVDzBBUFSmwA/gBGWj0PHXKEOr4TOjHOw04AZBlHCgAfSrwC4CBLbBEiCY8fBB7JAHsEozMOVbJ1t0CiIm+lnkLKg67YDpF4YcpD/W7CE59/5LNUjJlwxxHvAJZqmJXRHy9f/lRK2bi9qdzQA1Iq5l2gxyzk1UAEZ0Q+Lx3WGHGrMFtWpZaqHFQ2V2odghN0QFjZT5mLy+jPY1EpV73VHIqpRvWd7Mg241aiCERM59kYTClnW4mTAYXLSIYV8VNdr5hZ+qE8AkV0Nx4w0hJuiXe27ubYIEC7s5GGl9RM6zol+qm9zR4+Ql6OizhUccOqMNhCUnUf2jEWTbAZSE+ZdqZdqiBnfi4vbbYn3dPhJsNl28ZgoFhGseMkGfM+LW2LoU4JrDiuI9UqcKRrr1bKtfcwmg7euT216S9Bv/yUTCz8UpycnripN9K4L6ThAe6RmGv1aumLNCHyiKnRIhQ0PiCSyEm1AVxmhW1Fz37II62IEqik8IEbCRMfG63SBfRdE1TFbyAO4bwz7QcfOo+flNXMkzmdjeXxj7ENzmzWiXDJH8r2oCP6YgM2/64/T0TBmsAXswB2GvfXsCro04aqJIqSmoBOoAiYdpXVTF5Hfvd9V9Jv2n84vchm9aNmeHXuFazfXgeQevQ5GXpzZaHU6a+Ii1IDGf3hjPbPPxsuLErNqQBuu1CT/vK6fwUOn5/YD1Y0FSbcoBRCOIBOKu+0xi9aDGib+dAya5Er4ddeJgiv13usyPk6TTJoD9WgQ5C33hP/d9In+/vYtCAsTWIYR5SVbULodVys9ZXMYY0dEsQl0WN1VJi/0KBKK/BEm1ynU0WsYtJVKzSIQpfuXG/vRauDjbTQiAuihkUJ8PKg/+ogd9VcLO7DjNn+ZcBflgn6zTi0JOjKggRS3NfhqCVqiM/qf2iiRBgI/E76lBk5xshjnqnwZ9yHoE8xcxjHwF67yjrnYsfUFeCHRulAn2eVnWcpEIgPh7ZvgkSByC6053Di+MKXpSqcAeX8KYIBP3GxgXG1xDUJj3wZlsgUPdFM2Z4utd3N2YZyEOngWQljArCGF5rItkKf+TEsEDzlA3r6Qq8PC590H0VoWm4KF+vvT5qA154JAZf0eKxbp5Eby/Fj0XoYUjdURZtn9gbLF5ALUcQ0JLA9jHwF56XhhBSwGwXV7/O+KMSgg/gobVJl7N1Eyt5e9mLdyzB+98owiBWH4jqS66y9QPNqOFXMawQlrKudeL7iniIXpeQIVScZ5fFEhwjZfiHHMggFc+l8a/+bICowPUEBPeNQNeYtUqycviEuE4pIMh5h/RzaMlZ/Zh0QVCL1uuolu8BddmGlIo4wR6t1XNojxWI3A7ODLZYwQSDsS29ZpsbnhU2HHLd/NeJ7fx2ImTH9u6e41mgAMLlI00IgitSOXGJVhvoDX8k0Pi3+qWsyJemLfyOSC9MjyuIYmfiPyjTsV5g4SMRPYZYAG8jZwyj1G4sSmbTvnfFw78+NFAsoiteeLMFM3DuKCbzSNDqIB5c5IWehZrEjmkjcQlUzAW6sP+JwOZD22ZFvzQrE9+k5gCIBglxRYNRYa4xJ50xj6HutmZGspZwt368j4W9dNIEYTMHZGkWWNHqmHMqs8HWhqDyhSLwGQghOcQaHU8GtHjoWnhQzJXi8j84bDypAZxSAvtJ4rgmmm3sikU4oiAWSMp+kvZtaB+7dgvTWcWBWyjWGic7wlIsGU1yWE0ILzJgeZOi+PJ0MDnt6A7V2chScbOXQxUopjgT+VHyIzYJkOUmNH0KQJvVoSllWQcyG6DKjyJNbSQaSNtykK+g6VTScn4iZXhJaHYzwttdEpoYiyp4YaQMrZ3gQdsvGG+sFbifNieTTpocNOcryfoAYQg7aUIW90CbdHFwkRqetnZDqvX7RSjXPcgLpoJ/CkRr6wwUluVQKPs7xxvRK5JW/BaPLomeD6606BnOqf7FSuMeA3Oz+t50/A5SRLwUOYuy2yryBqncn2Sc7zNWR6EZR+EKiPzRG1tTc5xPBZH34JZYqAborHN5IIQGLhv5fmDmsjYtIsKe3wu26mW66xn7/w6Tm4C7Yjf6vdbrpfrD5if52F+3Z+Vc5Z2r+nJ3cvRNurDAoBBXGjQy1jau6+4hHNjM6AeD7yOBZKyuryr5P2uNaV9Ae60LmEDJ82zy6PehiP9T2DMUooaSJTKrjZmdcaCb7LXuc+/bDV0nmD1h2MpIvP12Ld5V8X8fksgMphYXK1Eis0Gn+r8AkurXvIh0XBGW4h6/9caEZpb2e8xoMiWAzRsS/4YsgkluZd5Wc02PZnW3wyb4VqJvvuohV891p+J2UIXR2FWbx8L9Dbwf0wqefqp+Rj87uY2x+5dAPHU7001uersgz5tfZ6d6VoXGTBCHjaYucz21KzWUZORMlXiw1tPD7HKoGGICAxM/wVckXuj77z5juF0oN42WQPb6/KdeZqDWHyUiFXDa/mp2qnzucdMSWOaX1rNlbmVukFqSZQWCScsJHrtJH3Vax9BWrgWf/0D3LvrG6XzOicn64aYU/t3nbBoQxgPcUsJwUZAOlQQOhxtcQyT1jEPjhjkiNOq8yYbGu5aH/1dXLCEQwCYwz5f4qAqoSJBpXaA4t+szoTWt2raQnw9zyDafc+tfB6Bjhz9/UWBdV1Ah5FHLwqN2HTGpLJQIec94JQMdJ2IplijhkwVDJhHzw76ydQfKTFESWzQNmjU2KERxi0SjrGEZP1wcemP+NiJpRUY6rDY66Of2HSTDJM94mYyKVUEkOM6RBPkwQOyieV7HO8IRjGpy4zVUuNKZuOK27vkbhkjxeCu7VLNe2VILO9reD85zZmif7Z3hAEwCtrxu4DvUaxDYxAZvD8xJJtk8fbOme7EjcSoPDeqk1sL2skSGYRnY/LDhEpWfZI4zPD6MWy5LlwkRYiYAwOYfW/AXUUrB1J61+G/kCaGE26NNUSzEdsyziFyeOSRM3HDoE16T6Yohz1HzqihUntORBufs9IgbxysijyFlWZVeEgvG/NittHUdRDjJx0IWYav7VdxLhevoR4NpmqlStW3RBshZ5CXA4RfNTslZWLk7DfmgLy/4xZEJtLZ1PVeH+X8DfxrglX/r+C93qmdKVMM6z4Zo7Lb9XdSRGv/EoOpRwE1w/k9GU2ptM9EaBxiV5gftueA/yK+BetEGQgZcowXxILcW2r7MiwITGtj/h96c0aActqDbhpwg0tRufKloK46IAdBx5PEtawrNQzd4MJGmKtryw+HX4nMYHGx9EabpLmj3XCznbehoaNaoa6V1/fJHThJ7DAJzxZ/7Wk4fsWjhN0hjBmXsFgruiqaggZNaKFgmw8t8FfB1pKg5WHKeC6+ZeWip0N4QekBUafkB/1KGirnwBgYFjNAIgrlFkioJ2jyneVkh3O5W9xVImdGwpN6yg/ksmV4mVqEhb3wvUTUPH36HyHsPRCgHD2rMvxOvLQruHc4Q6eScJBDgNCWKJ2O9iuYv/jI7RDtfjXrUKdrGHUxiH89aBsV0hIUm9+h71aeP2Ph29nCwWceIuefejkJoDKpBZS9sP0kQ3pvwjAYixNIka8FqN+PGleqy4fVSmDDRGafxK8yEuavWdxc5ZyJtS7ieSdPzoYNZSomZiCtuvI8SZp/mUz+oaqUg58Qi/9hG2wj9X94yEpYja87NEiEnsYTaFGc61+Fkp595NXSw9sRkwQ3ex8RS08AoAlmR2FFQG7aY6GFYbguFWLNN7cwE/Yv/ebNJjjbmFSBUwKpic5jisZY3C4bOkc6fARWCbeUyze81sBZKG910XZSPsfi5qguGm7bLsdUzGkmVXLj9rFvauBCvQQv3hwu3WkHx/5I1vJKt2/FFjCxbtEqptDDcLIlmpfdEHvGSmCqY/EzgPoKTELf7ySq8pmqhAQjOzV9qfzrf7JlOaYkAjaLMFgS+q5BmwVvi6fZq0k38Uz5jjZ4qk1XIlvMRT7qIk/gHylmVUjvE+avETdrysmLzM5I15R9Ixy+oZz3yxaEHAUwvLAZNdrVq1WtEFt/+gkRx7J4VHk/IJSmQNBv1csrzG2lzUmIw7Xqoxn5kSB2BspnlNqel9R8INU/7ewplCFvU7wv70AqCkt0D2Rl0VwvNwjj3CAARemzrz9emWrjAM+qaezecOKee/snWG02lDvkXAMkknyWbhbvQtkNcHAIF9Uv9A7C8OxpzWVi8l+I19QldFR04i2XKVoIUwshqqS7si9hP///A/2yclzs5BslckfCtk0YZeah8MotEYS5RitqViyIRFit5aQLQzQ5Rccx3tNkBCJiqbnCDc6dUeXmZyV0nQpiUigGi2mvhK3X9ucfK11NFdFBNA0P1oc3o9DtgOH7fUGdjG8QW3YMj7Axc6AqD+YYcFE0FvpaqgXivvjLVMddc2asVo23q6K55KpE8lNz1fmx8Aa5pftMWXmqYiLUEfyESRSmTq1kfoYNjgcUu1ERJPz5+7srDm3YvUxvTyTTqAvrF4NhWNoBmpmi9RoM70wtbeZbyrRfaNVAtZ4r9ssWQb+KBPaEpp7z8viwaG82wXmOif/KFJRBwKe9obHBZ0qc/7iVeHR6e8tb1InKPmIbWojWVn26eb/AhuHrWadjF+KDMPatryDNyjwDERfMGUv/cp/cXc/jX7wvpw5fQWphhFYuf2zD5sDuT/aMFN18on/+3by6I18Toz8bwvr077WEYzdcK3KkATIwt13/OgBbOaa1//FJbPSLuP4XDmG55BeN303w6PcflEBCz9GfM/tnHhwhPPRLYh5Mhh4OfKL7ltOfZxEFqMMVabqr+5yzihy0pw9ioHOD03IDlDVo/QdLC//jXgTxCIk0DHHGfW4M82Oq2LPE0QnMnZnLrXcUgr1YDQ9/z27Wjdf4kiJlGtYAfx2cWbjVAznUp44jtX2Sw57b2WsZzpkbeIA1DhxUeDg6HkUDjQDFPbqR5kdks6TwF9xUVhrSYMozczg3CX3+Zgnf4ADydfnDWv1r7W2pL4hlcafGKjqLaG0E9qkjBi+BPxKxDXzfb+EyMVizwtugerHeLcKbOKNJGnP5awoaf5Jp9u/P7Mu76MOrFdNR3y/y3nn2IRWK5rul0PaPHG0dGuHs/A0nJaVL9P2mRn2aLhrcJJGMJNHjyr6oV0SQcdqB30qpHinIF5poQ8l2lD/HPqlKmdlhFKG85e+Bx5pkchEcDGNeqR2/elbOUQaRgxUNUd+qqBRbvZntMpGLaWDxCT6fxKhO9Vt6MhBKWojpbWwaw9ho6zg2JDXOlKImbAgz1vx7VZRFyyErt2DPdh93bdKBigBYuLVRAUX7pNyU6d5b3tnS+gqAx2O5Ri6tXLaS/+N17zEFBOYl/aCmnw4HrZXXUbB3z+c6xtorEgWFyv7rBVDNKSRzJ03N/2xmvU7m2pUcedkXnRlkLGFxHjTzEsZkz5nkgg9tvLny59ZPmVyM+foFw2CfXh6C6si101qwdu96LirbMe0Wzs/A44dEkF3XMdW8rOldDKpyRH7WOzcr7qHywmlUwMelKU5hvMG5gGJRtqqOdnVVwns8TQzmFwLInkVi49A8xQPR1TmfJaJEsUIkhdJXCrGSIl3Em8Mkh7Cvv2NMSnbw2tBo7UZuWtO5fvWgmRjlG72eMkNDb1wbzU3C360nM5bWHLOrDaFIRMuWnzHK48m2N0Ul43c2Amrs+yE4imbN1YlHg0IamCBK7Yh4NhswSDg4CHfnZ/+qB7gHw08hUQ+DKnl44lg/0uFndlT23luoV/V2m9JyBIvkwuyNWOjEeuC1g+j2AplLXrTSP4Mn9b9qI64R38X+sNWZ5qAHfXqohpxWRPDU0dMyW6VlHfkls6seB2rx2AcSD5aiDHgwBaBbiPZ+0QezRcZQ1840aZurDMs0XBja2DPwYp1ogERDdhI7pKYtXzpJi3mVTStRQyUpu8o78fm6Dhuon+7y0Bzjp/EZ3OfojU1UksGv80S1PlDo98jxTI/xSp90T1F4kuxowUgPz35uF3KtdvPnSpUeCuWdHeHNM0UT9sBU4RqeWyKzNuAyfOf/7zO6fm61awkzAmrhQYagpIjf3yX3kykNH8unoqbpboaO3d6HSFtuHtiNG7V2FWHw3mgDlGfaDZEyIdkEGwJ8iGfRaPnqm/nUA40hHhLNL3vCk9VMP+xgouH4rzSnqzQbHkqDGz0KL65wiFdtrposZMh0gZIxGKFcPNQpbkyXo9SxgSOmeODZE5rQcwF+HxRCc47hA/S+RI4/sb1TsoklUzTsNWy+9uJmEx/t+k74LtyO1uYXkKqDBA8W5GRrGDoW6/vOd4QoF5oIj/+ItCP0Y2vwDhMIV3g4DEZMDe/MWvIYqtxbtREhsHE41bJTkabbgY9iEOiZkLAokqAjbIQw245aHHa6Bz6+kQSMPIa9zpSNViwC0OubK/M6sX/WqTbY+c0/T2pSLVKvUOkACchtCxQF0C0Xyq6gxCt4Ub3oeSuMzWpIsWGyGY2r7L7Kk0rcO/Bjk7yVxjXqPp9oSMp+sotJ/0QkctDL0rOmxJoCC1B7EbF3/AXBsp4QORm1gxKKWrySNW+F6JCV3P2EEuT/d1nXbp9HxtP/8RTkOMxDKRDhDow2FVH6hHFh9p+7G37mQH5krMKofngQpLSYyYiWggcpuMQj6oHQUY4jktyW6DONyBAW5Q5gIThnrYXUEl1ZEgCFOl1dhLpbNG/+E0Zwuak8aa2tKbrabhrrO3QmfZQqdZwu8YTuhs0etGn0cK+kxdAbz+TbGsa8RFzfjaSdwJnlCipIr4mdP1ewtSMpb8dpWKldoaOIFnkvtaNwudp1HbwdpxPBZul1Zc7oyAI/LZyLIn+CGn8D8Kq1oh6UEXq4gLZ/wXYAw9586luzAiQciARDNqBe7d6hfOMRGnh3170bLTvVoXYQ/x7mcE9a00j8CLub66UOC8iwXlmVyqs+rr0C/4hMjJc9+raOHWB0yWweyShae6uU8nVKMIO0hiIotmy01HpKOmimGvDd7dxnG0MT46F02SHx9jZh0TOPkyQwJHoS1dfw/Ws6MWBImhBjR9NxoRE1nYYkUS5IJGrYfH6yefgmE+0yZOQKYGky0FuU0d0dzYGh7VdZyA04il3Gd9qQu/9aeApQ2140rEP/th8SKVg4+78Iqb9FDvUp49h4TGGr+LEtVO2Xn4EOdbtfeEf1rfqs9bxxAZW3BkRxOvUIIaJzz+/9+fChOgCD/f9D1ZX8whoGy7DSi576kSdgpsQl090gtv42WxQ26mC3bH8EljsFwRaPDIujQOouNflIahUKf3VMhMOiRactKoVLEsSPp3T7lZR995EIZ3n6CmuCyFyNrXY6rIVzOBrfaf+BUVWqkOPEtRLAxFjkat1JcHgNTR+VF9dVrKWTHYMcDPIsGv+n6SREV7qxUwaJlShsU+BDxmECsgeBnkEygD64mmdQMbVQTEnyhr/nwPgJG3elMv3erbYIRLgoGxH7Y5+BZAqzOsdhmdgzUZCH0GV1jyaP+PKYK1IpFRN6RvALJKJRM6PPRDqFbbK7f6EXMeY0ru7JBY6A9HY9MZ2W3QcyCWrjQDBSBHxVlpIRLdKE+rkVQ771pV1Qf+Q56Eu6ze0f+ngm/38vqk51vDKiWoms/XXk3hAH4QPhFg+SXqLz98u6K/4PJ+MpEcGXfNyb7a5VP0n6o=");const y=r(W),Z=r(W),j=r(W),p=C(W),b=r(W),m=W()&&function(A){const B=r(A),g=r(A),E=r(A),Q=r(A),w=r(A),C=r(A),D=r(A),e=r(A),t=65039,o=8419;function i(A,g){let E=A[g],e=A[g+1],r=D(E);if(r&&e&&C(e))return[2,[E,e]];let o=r||Q(E);if(e==t){if(o)return[2,[E]];if(w(E))return[2,[E,t]]}return r||o||B(E)||C(E)?[1,[E]]:void 0}return function(A,Q){let w=A[Q],C=A.length;if(Q+1<C&&B(w)){let g=A[Q+1];if(B(g))return[2,[w,g]]}let D=g(w);if(Q+1<C&&D&&A[Q+1]==o)return[2,[w,o]];if(Q+2<C&&(D||E(w))&&A[Q+1]==t&&A[Q+2]==o)return[3,D?[w,o]:[w,t,o]];let r=i(A,Q);if(!r)return[0];let[I,f]=r;I+=Q;let n=!1;for(;I+1<C&&8205===A[I];){let B=i(A,I+1);if(!B)break;n=!0,I+=1+B[0],f.push(8205,...B[1])}if(!n&&I+2<C&&e(A[I])){let B=I+1;for(;B+1<C&&e(A[B]);)B++;if(917631==A[B++])return[B-Q,f]}return[I-Q,f]}}(W);function V(A){return A.flatMap((A=>A.e??function(A){let B=[],g=[],E=-1,Q=0;return K(A,(function(A,w){if(-1===E)0==A?E=w:B.push(w);else if(Q>0&&Q>=A)0==A?(B.push(E,...g),g.length=0,E=w):g.push(w),Q=A;else{let C=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return l+(588*(A-4352)+28*(B-4449));if(P(A)&&B>4519&&B<4547&&(A-l)%28==0)return A+(B-4519);for(let[g,E]of G)if(2==E.length&&E[0]==A&&E[1]==B){if(o(H,g))break;return g}return-1}(E,w);C>=0?E=C:0==Q&&0==A?(B.push(E),E=w):(g.push(w),Q=A)}})),E>=0&&B.push(E),B.push(...g),B}(A.v)))}function X(A,B){return new Error(`Disallowed label "${I(String.fromCodePoint(...A))}": ${B}`)}function v(A){const B=45;let g=n(f(A),m,(A=>{if(y(A))return;if(j(A))return[];if(Z(A))return[A];let B=i(p,A);if(B)return B;throw new Error(`Disallowed character "${I(String.fromCodePoint(A))}"`)})).map((A=>{let g=V(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=function(A){let B=[],g=A.lastIndexOf(45);for(let E=0;E<g;E++){let g=A[E];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let E=0,Q=128,w=72;for(;g<A.length;){let C=E;for(let B=1,Q=36;;Q+=36){if(g>=A.length)throw new Error("invalid encoding");let C=A[g++];if(C>=48&&C<=57)C-=22;else{if(!(C>=97&&C<=122))throw new Error(`invalid character ${C}`);C-=97}E+=C*B;const D=Q<=w?1:Q>=w+26?26:Q-w;if(C<D)break;B*=36-D}let D=B.length+1,e=0==C?E/700|0:E-C>>1;e+=e/D|0;let t=0;for(;e>455;t+=36)e=e/35|0;w=t+36*e/(e+38)|0,Q+=E/D|0,E%=D,B.splice(E++,0,Q)}return B}(g.slice(4)),[A]=n(B,m,(A=>Z(A)?[A]:[]));let E=V(A);if(B.length!=E.length||!B.every(((A,B)=>A==E[B])))throw new Error("not normalized")}catch(A){throw X(g,`punycode: ${A.message}`)}g=B}if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw X(g,"invalid label extension");if(g[0]==B)throw X(g,"leading hyphen");if(g[g.length-1]==B)throw X(g,"trailing hyphen");if(b(g[0]))throw X(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&M(A[B-1]))continue;if(B>0&&B<g){let E=B-1;for(;E>0&&Y(A[E]);)E--;if(N(A[E])){let E=B+1;for(;E<g&&Y(A[E]);)E++;if(F(A[E]))continue}}break;case 8205:if(B>0&&M(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&u(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&h(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${I(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>U(A))))throw new Error("Disallowed katakana")}(A.flatMap((({v:A})=>A??[])))}catch(A){throw X(g,A.message)}}return A})),E=g.map((A=>A.flatMap((({v:A})=>A??[]))));if(E.some(J))for(let A=0;A<g.length;A++)try{d(E[A])}catch(B){throw X(V(g[A]),`bidi: ${B.message}`)}return g.map((A=>String.fromCodePoint(...V(A)))).join(".")}function q(A){return n(f(A),m,(A=>{if(y(A))return{};if(Z(A))return[A];if(j(A))return{i:A};let B=i(p,A);return B?{m:A,u:B}:{d:A}}))[0]}export{v as ens_normalize,q as ens_tokenize};
function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let Q=g(),C=1,E=[0,1];for(let A=1;A<Q;A++)E.push(C+=g());let w=g(),e=B;B+=w;let D=0,t=0;function o(){return 0==D&&(t=t<<8|A[B++],D=8),t>>--D&1}const r=2**31,n=r>>>1,i=r-1;let I=0;for(let A=0;A<31;A++)I=I<<1|o();let f=[],M=0,c=r;for(;;){let A=Math.floor(((I-M+1)*C-1)/c),B=0,g=Q;for(;g-B>1;){let Q=B+g>>>1;A<E[Q]?g=Q:B=Q}if(0==B)break;f.push(B);let w=M+Math.floor(c*E[B]/C),e=M+Math.floor(c*E[B+1]/C)-1;for(;0==((w^e)&n);)I=I<<1&i|o(),w=w<<1&i,e=e<<1&i|1;for(;w&~e&536870912;)I=I&n|I<<1&i>>>1|o(),w=w<<1^n,e=(e^n)<<1|n|1;M=w,c=1+e-w}let F=Q-4;return f.map((B=>{switch(B-F){case 3:return F+65792+(A[e++]<<16|A[e++]<<8|A[e++]);case 2:return F+256+(A[e++]<<8|A[e++]);case 1:return F+A[e++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let Q=0;Q<A;Q++)g[Q]=1+B();return g}function Q(A,B){let g=Array(A);for(let Q=0,C=-1;Q<A;Q++)g[Q]=C+=1+B();return g}function C(A,g){let Q=Array(A);for(let C=0,E=0;C<A;C++)Q[C]=E+=B(g());return Q}function E(A){let B=Q(A(),A),C=A(),E=Q(C,A),w=g(C,A);return[...B.map((A=>[A,1])),...E.map(((A,B)=>[A,w[B]]))].sort(((A,B)=>A[0]-B[0]))}function w(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(t(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(D(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function e(A,g,Q){if(0==g)return[];let E=[C(A,Q)];for(let C=1;C<g;C++){let g=Array(A),w=E[C-1];for(let C=0;C<A;C++)g[C]=w[C]+B(Q());E.push(g)}return E}function D(A,B){let g=1+B(),C=Q(g,B),E=e(g,A,B);return C.map(((A,B)=>[A,E.map((A=>A[B]))]))}function t(A,B){let C=1+B(),E=B(),w=1+B(),D=Q(w,B),t=g(w,B),o=e(w,A,B);return D.map(((A,B)=>[A,o.map((A=>A[B])),t[B],C,E]))}function o(A){let B=E(A);return A=>r(B,A)}function r(A,B){for(let[g,Q]of A){let A=B-g;if(A<0)break;if(A<Q)return!0}return!1}function n(A,B){for(let[g,Q,C,E,w]of A){let A=B-g;if(A<0)break;if(C>0){if(A<E*C&&A%E==0){let B=A/E;return Q.map((A=>A+B*w))}}else if(0==A)return Q}}function i(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>{return`{${B=A.codePointAt(0),B.toString(16).toUpperCase().padStart(2,"0")}}`;var B}))}function I(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function f(A,B,g){let Q=[],C=[],E=[C];function w(){Q.length>0&&(C.push({v:Q}),Q=[])}for(let e=0;e<A.length;e++){if(B){let[g,Q]=B(A,e);if(g>0){w(),C.push({e:Q,u:A.slice(e,e+g)}),e+=g-1;continue}}let D=g(A[e]);Array.isArray(D)?Q.push(...D):(w(),D?C.push(D):(C=[],E.push(C)))}return w(),E}let M=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const c=o(M),F=o(M),N=o(M),Y=o(M),u=o(M),l=o(M),s=o(M);let G=A("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");const K=Array(1+G()).fill().map((()=>E(G))),L=w(G),U=E(G),H=44032;function P(A){return A>=H&&A<55204}function a(A,B){if(A<128)B(A);else if(P(A)){let g=A-H,Q=g%588/28|0,C=g%28;B(4352+(g/588|0)),B(4449+Q),C>0&&B(4519+C)}else{let g=n(L,A);if(g)for(let A of g)a(A,B);else B(A)}}function T(A,B){let g=[];function Q(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function C(A){let C=1+K.findIndex((B=>r(B,A)));0==C?(Q(),B(C,A)):g.push([C,A])}A.forEach((A=>a(A,C))),Q()}let k=A("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");const R=E(k),h=E(k),x=E(k),S=E(k),O=E(k),y=E(k);function z(A){if(0==A.length)return;let B=A.length-1;if(r(R,A[0])){if(!A.every((A=>r(R,A)||r(x,A)||r(S,A)||r(O,A)||r(y,A))))throw new Error("RTL: disallowed properties");for(;r(y,A[B]);)B--;if(B=A[B],!(r(R,B)||r(S,B)||r(x,B)))throw new Error("RTL: disallowed ending");let g=A.some((A=>r(S,A))),Q=A.some((A=>r(x,A)));if(g&&Q)throw new Error("RTL: AN+EN")}else{if(!r(h,A[0]))throw new Error("unknown direction");if(!A.every((A=>r(h,A)||r(S,A)||r(O,A)||r(y,A))))throw new Error("LTR: disallowed properties");for(;r(y,A[B]);)B--;if(B=A[B],!r(h,B)&&!r(S,B))throw new Error("LTR: disallowed ending")}}let J=A("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");const p=o(J),Z=o(J),V=o(J),d=w(J),b=o(J),W=J()&&function(A){const B=o(A),g=o(A),Q=o(A),C=o(A),E=o(A),w=o(A),e=o(A),D=o(A),t=65039,r=8419;function n(A,g){let Q=A[g],D=A[g+1],o=e(Q);if(o&&D&&w(D))return[2,[Q,D]];let r=o||C(Q);if(D==t){if(r)return[2,[Q]];if(E(Q))return[2,[Q,t]]}return o||r||B(Q)||w(Q)?[1,[Q]]:void 0}return function(A,C){let E=A[C],w=A.length;if(C+1<w&&B(E)){let g=A[C+1];if(B(g))return[2,[E,g]]}let e=g(E);if(C+1<w&&e&&A[C+1]==r)return[2,[E,r]];if(C+2<w&&(e||Q(E))&&A[C+1]==t&&A[C+2]==r)return[3,e?[E,r]:[E,t,r]];let o=n(A,C);if(!o)return[0];let[i,I]=o;i+=C;let f=!1;for(;i+1<w&&8205===A[i];){let B=n(A,i+1);if(!B)break;f=!0,i+=1+B[0],I.push(8205,...B[1])}if(!f&&i+2<w&&D(A[i])){let B=i+1;for(;B+1<w&&D(A[B]);)B++;if(917631==A[B++])return[B-C,I]}return[i-C,I]}}(J);function X(A){return A.flatMap((({e:A,v:B})=>A??function(A){let B=[],g=[],Q=-1,C=0;return T(A,(function(A,E){if(-1===Q)0==A?Q=E:B.push(E);else if(C>0&&C>=A)0==A?(B.push(Q,...g),g.length=0,Q=E):g.push(E),C=A;else{let w=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return H+(588*(A-4352)+28*(B-4449));if(P(A)&&B>4519&&B<4547&&(A-H)%28==0)return A+(B-4519);for(let[g,Q]of L)if(2==Q.length&&Q[0]==A&&Q[1]==B){if(r(U,g))break;return g}return-1}(Q,E);w>=0?Q=w:0==C&&0==A?(B.push(Q),Q=E):(g.push(E),C=A)}})),Q>=0&&B.push(Q),B.push(...g),B}(B)))}function j(A,B){return new Error(`Disallowed label "${i(String.fromCodePoint(...A))}": ${B}`)}function m(A){const B=45;let g=f(I(A),W,(A=>{if(p(A))return;if(V(A))return[];if(Z(A))return[A];let B=n(d,A);if(B)return B;throw new Error(`Disallowed character "${i(String.fromCodePoint(A))}"`)})).map((A=>{let g=X(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=function(A){let B=[],g=A.lastIndexOf(45);for(let Q=0;Q<g;Q++){let g=A[Q];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let Q=0,C=128,E=72;for(;g<A.length;){let w=Q;for(let B=1,C=36;;C+=36){if(g>=A.length)throw new Error("invalid encoding");let w=A[g++];if(w>=48&&w<=57)w-=22;else{if(!(w>=97&&w<=122))throw new Error(`invalid character ${w}`);w-=97}Q+=w*B;const e=C<=E?1:C>=E+26?26:C-E;if(w<e)break;B*=36-e}let e=B.length+1,D=0==w?Q/700|0:Q-w>>1;D+=D/e|0;let t=0;for(;D>455;t+=36)D=D/35|0;E=t+36*D/(D+38)|0,C+=Q/e|0,Q%=e,B.splice(Q++,0,C)}return B}(g.slice(4)),[A]=f(B,W,(A=>Z(A)?[A]:[]));let Q=X(A);if(B.length!=Q.length||!B.every(((A,B)=>A==Q[B])))throw new Error("not normalized")}catch(A){throw j(g,`punycode: ${A.message}`)}g=B}let Q=A.flatMap((({v:A})=>A??[]));if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw j(g,"invalid label extension");if(g[0]==B)throw j(g,"leading hyphen");if(g[g.length-1]==B)throw j(g,"trailing hyphen");if(b(g[0]))throw j(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&c(A[B-1]))continue;if(B>0&&B<g){let Q=B-1;for(;Q>0&&F(A[Q]);)Q--;if(N(A[Q])){let Q=B+1;for(;Q<g&&F(A[Q]);)Q++;if(Y(A[Q]))continue}}break;case 8205:if(B>0&&c(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&u(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&l(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${i(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>s(A))))throw new Error("Disallowed katakana")}(Q)}catch(A){throw j(g,A.message)}}return{tokens:A,cps:g,text:Q}}));if(g.some((A=>A.text.some((A=>r(R,A)||r(x,A))))))for(let{text:A,cps:B}of g)try{z(A)}catch(A){throw j(B,`bidi: ${A.message}`)}return g.map((A=>String.fromCodePoint(...A.cps))).join(".")}function v(A){return f(I(A),W,(A=>{if(p(A))return{};if(Z(A))return[A];if(V(A))return{i:A};let B=n(d,A);return B?{m:B,u:[A]}:{d:A}}))[0]}export{m as ens_normalize,v as ens_tokenize};

@@ -262,6 +262,17 @@ function decode_arithmetic(bytes) {

function compare_arrays(a, b) {
let {length: n} = a;
let c = n - b.length;
for (let i = 0; c == 0 && i < n; i++) c = a[i] - b[i];
return c;
}
function hex_cp(cp) {
return cp.toString(16).toUpperCase().padStart(2, '0');
}
// my suggested inline ascii-safe unicode escape
// this is ES6 \u{X} without the \u
function quote_cp(cp) {
return `{${cp.toString(16).padStart(2, '0').toUpperCase()}}`;
return `{${hex_cp(cp)}}`;
}

@@ -277,8 +288,9 @@

function escape_name_for_html(s) {
function escape_name_for_html(s, quoter) {
// printable w/o:
// html: 0x26 &, 0x3C <, 0x3E >
// quote: 0x00-0x20 control, 0x7F DEL, whitespace, joiners
return s.replace(/[\x00-\x20\x7F\xA0\u200C\u200D\s]/gu, x => quote_cp(x.codePointAt(0)))
.replace(/[^\x21-\x25\x27-\x3B\x3D\x3F-\x7E]/gu, x => `&#${x.codePointAt(0)};`);
if (!quoter) quoter = quote_cp;
return s.replace(/(?:([\x00-\x20\x7F\xA0\u200C\u200D\s])|([^\x21-\x25\x27-\x3B\x3D\x3F-\x7E]))/gu,
(_, a, b) => a ? quoter(a.codePointAt(0)) : `&#${b.codePointAt(0)};`);
}

@@ -795,4 +807,20 @@

var PAYLOAD = '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';
var PAYLOAD = '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';
// this is a polyfill for normalized forms
// it exists because the ES6 implementation fails many tests
// see: https://adraffy.github.io/ens-normalize.js/test/report-nf.html
// but lib-nf.js is approx 13KB as of 20211221
function norm(form, cps) {
return explode_cp(String.fromCodePoint(...cps).normalize(form));
}
function nfc(cps) { return norm('NFC', cps); }
function nfd(cps) { return norm('NFD', cps); }
const BUILT = '2021-12-25T07:41:57.843Z';
const UNICODE = '14.0.0';
const VERSION = '1.3.4';
const IDNA = 'adraffy';
let r = decode_payload(PAYLOAD);

@@ -810,4 +838,4 @@ const STOP = read_member_function(r);

// string but you'd have to retokenize
function flatten_label_tokens(tokens) {
return tokens.flatMap(token => token.e ?? nfc$1(token.v));
function flatten_tokens(tokens) {
return tokens.flatMap(({e, v}) => e ?? nfc$1(v));
}

@@ -862,3 +890,3 @@

}).map(tokens => {
let cps = flatten_label_tokens(tokens);
let cps = flatten_tokens(tokens);
// [Processing] 4.) Convert/Validate

@@ -876,3 +904,3 @@ if (cps.length >= 4 && cps[2] == HYPHEN && cps[3] == HYPHEN) { // "**--"

[tokens] = tokenized_idna(cps_decoded, EMOJI_PARSER, cp => VALID(cp) ? [cp] : []);
let expected = flatten_label_tokens(tokens);
let expected = flatten_tokens(tokens);
if (cps_decoded.length != expected.length || !cps_decoded.every((x, i) => x == expected[i])) throw new Error('not normalized');

@@ -888,2 +916,6 @@ } catch (err) {

}
// flatten textual part of token to a single list of code-points
// emoji should be invisible to context and bidi rules
// could replace emoji w/a generic character
let text = tokens.flatMap(({v}) => v ?? []);
if (cps.length > 0) {

@@ -907,5 +939,3 @@ // [Validity] 1.) The label must be in Unicode Normalization Form NFC.

try {
// emoji should be invisible to context rules
// IDEA: replace emoji w/a generic character
validate_context(tokens.flatMap(({v}) => v ?? []));
validate_context(text);
} catch (err) {

@@ -916,3 +946,3 @@ throw label_error(cps, err.message);

}
return tokens;
return {tokens, cps, text};
});

@@ -926,9 +956,8 @@ // [Validity] 8.) If CheckBidi, and if the domain name is a Bidi domain name, then the label

// A Bidi domain name is a domain name containing at least one character with BIDI_Class R, AL, or AN
let text_labels = labels.map(tokens => tokens.flatMap(({v}) => v ?? []));
if (text_labels.some(is_bidi_label)) {
for (let i = 0; i < labels.length; i++) {
if (labels.some(x => is_bidi_label(x.text))) {
for (let {text, cps} of labels) {
try {
validate_bidi_label(text_labels[i]);
validate_bidi_label(text);
} catch (err) {
throw label_error(flatten_label_tokens(labels[i]), `bidi: ${err.message}`);
throw label_error(cps, `bidi: ${err.message}`);
}

@@ -938,3 +967,3 @@ }

/*~BIDI*/
return labels.map(tokens => String.fromCodePoint(...flatten_label_tokens(tokens))).join('.');
return labels.map(x => String.fromCodePoint(...x.cps)).join('.');
}

@@ -946,10 +975,10 @@

// this is much nicer than exposing the predicates
// [[{m:0x52, to:[0x72]},{e:[0x1F4A9]},{t:[61,66,66]}],[{t:[65,74,68]}]]
// [{m:[0x72], u:[0x52]},{e:[0x1F4A9],u:[0x1F4A9]},{t:[61,66,66]},{},{t:[65,74,68]}]
function ens_tokenize(name) {
return tokenized_idna(explode_cp(name), EMOJI_PARSER, cp => {
if (STOP(cp)) return {};
if (VALID(cp)) return [cp];
if (VALID(cp)) return [cp]; // this gets merged into v
if (IGNORED(cp)) return {i: cp};
let mapped = lookup_mapped(MAPPED, cp);
if (mapped) return {m: cp, u: mapped};
if (mapped) return {m: mapped, u: [cp]};
return {d: cp};

@@ -959,19 +988,2 @@ })[0];

// this is a polyfill for normalized forms
// it exists because the ES6 implementation fails many tests
// see: https://adraffy.github.io/ens-normalize.js/test/report-nf.html
// but lib-nf.js is approx 13KB as of 20211221
function norm(form, cps) {
return explode_cp(String.fromCodePoint(...cps).normalize(form));
}
function nfc(cps) { return norm('NFC', cps); }
function nfd(cps) { return norm('NFD', cps); }
const BUILT = '2021-12-23T21:04:48.791Z';
const UNICODE = '14.0.0';
const VERSION = '1.3.2';
const IDNA = '1.3.2';
export { BUILT, IDNA, UNICODE, VERSION, ens_normalize, ens_tokenize, escape_name_for_html, escape_unicode, nfc$1 as nfc, nfc as nfc0, nfd$1 as nfd, nfd as nfd0, puny_decode, tokenized_idna };
export { BUILT, IDNA, UNICODE, VERSION, compare_arrays, ens_normalize, ens_tokenize, escape_name_for_html, escape_unicode, nfc$1 as nfc, nfc as nfc0, nfd$1 as nfd, nfd as nfd0, puny_decode, quote_cp, tokenized_idna };

@@ -1,1 +0,1 @@

function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let C=g(),Q=1,E=[0,1];for(let A=1;A<C;A++)E.push(Q+=g());let w=g(),e=B;B+=w;let t=0,r=0;function o(){return 0==t&&(r=r<<8|A[B++],t=8),r>>--t&1}const D=2**31,I=D>>>1,n=D-1;let i=0;for(let A=0;A<31;A++)i=i<<1|o();let f=[],c=0,M=D;for(;;){let A=Math.floor(((i-c+1)*Q-1)/M),B=0,g=C;for(;g-B>1;){let C=B+g>>>1;A<E[C]?g=C:B=C}if(0==B)break;f.push(B);let w=c+Math.floor(M*E[B]/Q),e=c+Math.floor(M*E[B+1]/Q)-1;for(;0==((w^e)&I);)i=i<<1&n|o(),w=w<<1&n,e=e<<1&n|1;for(;w&~e&536870912;)i=i&I|i<<1&n>>>1|o(),w=w<<1^I,e=(e^I)<<1|I|1;c=w,M=1+e-w}let N=C-4;return f.map((B=>{switch(B-N){case 3:return N+65792+(A[e++]<<16|A[e++]<<8|A[e++]);case 2:return N+256+(A[e++]<<8|A[e++]);case 1:return N+A[e++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let C=0;C<A;C++)g[C]=1+B();return g}function C(A,B){let g=Array(A);for(let C=0,Q=-1;C<A;C++)g[C]=Q+=1+B();return g}function Q(A,g){let C=Array(A);for(let Q=0,E=0;Q<A;Q++)C[Q]=E+=B(g());return C}function E(A){let B=C(A(),A),Q=A(),E=C(Q,A),w=g(Q,A);return[...B.map((A=>[A,1])),...E.map(((A,B)=>[A,w[B]]))].sort(((A,B)=>A[0]-B[0]))}function w(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(r(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(t(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function e(A,g,C){if(0==g)return[];let E=[Q(A,C)];for(let Q=1;Q<g;Q++){let g=Array(A),w=E[Q-1];for(let Q=0;Q<A;Q++)g[Q]=w[Q]+B(C());E.push(g)}return E}function t(A,B){let g=1+B(),Q=C(g,B),E=e(g,A,B);return Q.map(((A,B)=>[A,E.map((A=>A[B]))]))}function r(A,B){let Q=1+B(),E=B(),w=1+B(),t=C(w,B),r=g(w,B),o=e(w,A,B);return t.map(((A,B)=>[A,o.map((A=>A[B])),r[B],Q,E]))}function o(A){let B=E(A);return A=>D(B,A)}function D(A,B){for(let[g,C]of A){let A=B-g;if(A<0)break;if(A<C)return!0}return!1}function I(A,B){for(let[g,C,Q,E,w]of A){let A=B-g;if(A<0)break;if(Q>0){if(A<E*Q&&A%E==0){let B=A/E;return C.map((A=>A+B*w))}}else if(0==A)return C}}function n(A){return`{${A.toString(16).padStart(2,"0").toUpperCase()}}`}function i(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>n(A.codePointAt(0))))}function f(A){return A.replace(/[\x00-\x20\x7F\xA0\u200C\u200D\s]/gu,(A=>n(A.codePointAt(0)))).replace(/[^\x21-\x25\x27-\x3B\x3D\x3F-\x7E]/gu,(A=>`&#${A.codePointAt(0)};`))}function c(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function M(A){let B=[],g=A.lastIndexOf(45);for(let C=0;C<g;C++){let g=A[C];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let C=0,Q=128,E=72;for(;g<A.length;){let w=C;for(let B=1,Q=36;;Q+=36){if(g>=A.length)throw new Error("invalid encoding");let w=A[g++];if(w>=48&&w<=57)w-=22;else{if(!(w>=97&&w<=122))throw new Error(`invalid character ${w}`);w-=97}C+=w*B;const e=Q<=E?1:Q>=E+26?26:Q-E;if(w<e)break;B*=36-e}let e=B.length+1,t=0==w?C/700|0:C-w>>1;t+=t/e|0;let r=0;for(;t>455;r+=36)t=t/35|0;E=r+36*t/(t+38)|0,Q+=C/e|0,C%=e,B.splice(C++,0,Q)}return B}function N(A,B,g){let C=[],Q=[],E=[Q];function w(){C.length>0&&(Q.push({v:C}),C=[])}for(let e=0;e<A.length;e++){if(B){let[g,C]=B(A,e);if(g>0){w(),Q.push({e:C,u:A.slice(e,e+g)}),e+=g-1;continue}}let t=g(A[e]);Array.isArray(t)?C.push(...t):(w(),t?Q.push(t):(Q=[],E.push(Q)))}return w(),E}let u=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const F=o(u),l=o(u),Y=o(u),G=o(u),h=o(u),s=o(u),U=o(u);let K=A("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");const T=Array(1+K()).fill().map((()=>E(K))),P=w(K),k=E(K),L=44032;function R(A){return A>=L&&A<55204}function H(A,B){if(A<128)B(A);else if(R(A)){let g=A-L,C=g%588/28|0,Q=g%28;B(4352+(g/588|0)),B(4449+C),Q>0&&B(4519+Q)}else{let g=I(P,A);if(g)for(let A of g)H(A,B);else B(A)}}function S(A,B){let g=[];function C(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function Q(A){let Q=1+T.findIndex((B=>D(B,A)));0==Q?(C(),B(Q,A)):g.push([Q,A])}A.forEach((A=>H(A,Q))),C()}function a(A){let B=[];return S(A,((A,g)=>B.push(g))),B}function O(A){let B=[],g=[],C=-1,Q=0;return S(A,(function(A,E){if(-1===C)0==A?C=E:B.push(E);else if(Q>0&&Q>=A)0==A?(B.push(C,...g),g.length=0,C=E):g.push(E),Q=A;else{let w=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return L+(588*(A-4352)+28*(B-4449));if(R(A)&&B>4519&&B<4547&&(A-L)%28==0)return A+(B-4519);for(let[g,C]of P)if(2==C.length&&C[0]==A&&C[1]==B){if(D(k,g))break;return g}return-1}(C,E);w>=0?C=w:0==Q&&0==A?(B.push(C),C=E):(g.push(E),Q=A)}})),C>=0&&B.push(C),B.push(...g),B}let x=A("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");const y=E(x),z=E(x),J=E(x),V=E(x),d=E(x),Z=E(x);function m(A){return A.some((A=>D(y,A)||D(J,A)))}function b(A){if(0==A.length)return;let B=A.length-1;if(D(y,A[0])){if(!A.every((A=>D(y,A)||D(J,A)||D(V,A)||D(d,A)||D(Z,A))))throw new Error("RTL: disallowed properties");for(;D(Z,A[B]);)B--;if(B=A[B],!(D(y,B)||D(V,B)||D(J,B)))throw new Error("RTL: disallowed ending");let g=A.some((A=>D(V,A))),C=A.some((A=>D(J,A)));if(g&&C)throw new Error("RTL: AN+EN")}else{if(!D(z,A[0]))throw new Error("unknown direction");if(!A.every((A=>D(z,A)||D(V,A)||D(d,A)||D(Z,A))))throw new Error("LTR: disallowed properties");for(;D(Z,A[B]);)B--;if(B=A[B],!D(z,B)&&!D(V,B))throw new Error("LTR: disallowed ending")}}let j=A("AEQLBwRwAnABPQFcAIUBBACcAI0ApgCNAFMAcgBFAF8AYgBqADYATQAqAEcAIwA9ACQALwBSAD8AEgAjACgAOQA5ADAAGgAjACAAMwAOABsAEwAcABkAJQAVABgAIgAYADwAKAAeACEAHAAUABIALwATABoADAAuAAsAHAAKABUAGAP+BX4A1RF5ATNJCV4TBigA9QB0M2BFAB9tEQFRJwPWAY8BR3IyABcAwwE8BLLBAMx0xEcSjk/VvAIUAkmiA19HAMIDpwBacyUhCYcALwA8AYT9FQFcATW5hAWJAQU9FAMpBQ4SClEbMgo8BQ8/wgkEIAEtEB8PAA8/QioGlCIPBPYEhiwOAOQXI1oPAM8Yv1WPzxwRASIFDw8OIB9MzQK4AJ8Avx8fNyYE/18fHwE/fwAPDyUQCCxPDw9vD39/Dw8fAA8W/98DPwnPLxK/Ir8A/w8Bol8OEBa/A78hrwAPCU8vESIJjx8DHr+ZAA8D348RBW8vDe6lvw7/nxVPMA8gGiQJNAkNCAIVASsKGAUMMxUdGH9VTMwHBQAIKmM6NfYIBgQKBQAJCAJZgyAC7gEGAPgOCha3A5XiAEsqhCOlnw74nRVBG/ASCm0BYRN/BrsU3VoWy+S0vV8LQx+vyAEwcABOBxngDYYHSjIACw9LLgBr9hUBQANJPQJ6t5YqdzRNoY8YAScC1m9/AKwDiQrfVF9kfw/JA78BOgl/+vgXMw9iD4IdABwBfCisABoATwBqASIb3h4dF94aH/ECeAKXAq40NjgDBTwFYQU6AXs3oABgAD4XNgmWCZdeCl5tIEz+CAxSoaDKg0cAGAARABoAE3BZACYAEwBM8xrdPfgAOV3KmuYzABYoUUhSpQrxIlEIC878AF098QAYABEAGgATcCBhQJwAw/AAIAA+AQSVs2gnCACBARTAFsCqAAHavQVgBeUC0KQCxLUAClEhpGoUeBpyFYg2MsApfydHFz9vX3gu2QoTKngUYQZSQRMKbOWDAAikCgoAwigeFAgCfQTSkNAULgeHOegAAAAgAjYLBX9WuJbxakAABE4AQXEMNAcFBgKZMgKTjgQfzNaJABWyAU3XlwAfOldgkAVCADaSOQX2zxYDzcYACwOZog4KNAKOpgKG3T+TAzaeAoP38kT306QAAgB4kgomVgD0AB4EAAIAAAAEABQGCAMB/BELFAYRan0rHgIJ0QB6CkNjm5UeJwIqAEIEsjQ87xMgumRyZ5ICIkxWBjUBH2kWBlTLoUoAHRT4AS+VAARuggV2BdU84NcCgABXYrgAUQBcAF0AbABvAHYAawB2AG8AhABxMH8UAVROUxEAA1RYUwcAQwDSCwKnAs4C0wKUAq0C+rwADAC/ADy4TQSpBOoJRikwFOA6+DdhGBMAQpAASpPKxwG2AZsCKAIlOAI3/wKuAqMAgADSAoc4GjQbArE4Hjg3BV64ApUCnQKkAYkBmAKrArI07DR7HzTwNIsbAFk1ojgDBTw0EjQpNgQ2RzaMNk02VDYZNvCZ6D5/MkISQgdCCEIhAoICoQKwAScANQVeBV20vwVuO2JCGTkkVr5SqzTkNL8XAAFTAlbXV7qce5hmZKH9EBgDygwq9nwoBKhQAlhYAnogsCwBlKiqOmADShwEiGYOANYABrBENCgABy4CPmIAcAFmJHYAiCIeAJoBTrwALG4cAbTKAzwyJkgCWAF0XgZqAmoA9k4cAy4GCgBORgCwAGIAeAAwugYM+PQekoQEAA4mAC4AuCBMAdYB4AwQNt3bRR6B7QAPABYAOQBCAD04d37YxRBkEGEGA00OTHE/FRACsQ+rC+oRGgzWKtDT3QA0rgfwA1gH8ANYA1gH8AfwA1gH8ANYA1gDWANYHA/wH9jFEGQPTQRyBZMFkATbCIgmThGGBy0I11QSdCMcTANKAQEjKkkhO5gzECVHTBFNCAgBNkdsrH09A0wxsFT6kKcD0DJUOXEGAx52EqUALw94ITW6ToN6THGlClBPs1f3AEUGABKrABLmAEkNKABQLAY9AEjjNNgAE0YATZsATcoATF0YAEpoBuAAUFcAUI4AUEkAEjZJZ05sAsM6rT/9CiYJmG/Ad1MGQhAcJ6YQ+Aw0AbYBPA3uS9kE8gY8BMoffhkaD86VnQimLd4M7ibkLqKAWyP2KoQF7kv1PN4LTlFpD1oLZgnkOmSBTwMiAQ4ijAreDToIbhD0CspsDeYRRgc6A9ZJmwCmBwILEh02FbYmEWKtCwo5eAb8GvcLkCawEyp6/QXUGiIGTgEqGwAA0C7ohbFaMlwdT2AGBAsmI8gUqVAhDSZAuHhJGhwHFiWqApJDcUqIUTcelCH3PD4NZy4UUX0H9jwGGVALgjyfRqxFDxHTPo49SSJKTC0ENoAsMCeMCdAPhgy6fHMBWgkiCbIMchMyERg3xgg6BxoulyUnFggiRpZgmwT4oAP0E9IDDAVACUIHFAO2HC4TLxUqBQ6BJdgC9DbWLrQCkFaBARgFzA8mH+AQUUfhDuoInAJmA4Ql7AAuFSIAGCKcCERkAGCP2VMGLswIyGptI3UDaBToYhF0B5IOWAeoHDQVwBzicMleDIYJKKSwCVwBdgmaAWAE5AgKNVyMoSBCZ1SLWRicIGJBQF39AjIMZhWgRL6HeQKMD2wSHAE2AXQHOg0CAngR7hFsEJYI7IYFNbYz+TomBFAhhCASCigDUGzPCygm+gz5agGkEmMDDTQ+d+9nrGC3JRf+BxoyxkFhIfILk0/ODJ0awhhDVC8Z5QfAA/Qa9CfrQVgGAAOkBBQ6TjPvBL4LagiMCUAASg6kGAfYGGsKcozRATKMAbiaA1iShAJwkAY4BwwAaAyIBXrmAB4CqAikAAYA0ANYADoCrgeeABoAhkIBPgMoMAEi5gKQA5QIMswBljAB9CoEHMQMFgD4OG5LAsOyAoBrZqMF3lkCjwJKNgFOJgQGT0hSA7By4gDcAEwGFOBIARasS8wb5EQB4HAsAMgA/AAGNgcGQgHOAfRuALgBYAsyCaO0tgFO6ioAhAAWbAHYAooA3gA2AIDyAVQATgVa+gXUAlBKARIyGSxYYgG8AyABNAEOAHoGzI6mygggBG4H1AIQHBXiAu8vB7YCAyLgE85CxgK931YAMhcAYFEcHpkenB6ZPo1eaAC0YTQHMnM9UQAPH6k+yAdy/BZIiQImSwBQ5gBQQzSaNTFWSTYBpwGqKQK38AFtqwBI/wK37gK3rQK3sAK6280C0gK33AK3zxAAUEIAUD9SklKDArekArw5AEQAzAHCO147Rzs+O1k7XjtHOz47WTteO0c7PjtZO147Rzs+O1k7XjtHOz47WQOYKFgjTcBVTSgmqQptX0Zh7AynDdVEyTpKE9xgUmAzE8ktuBTCFc8lVxk+Gr0nBiXlVQoPBS3UZjEILTR2F70AQClpg0Jjhx4xCkwc6FOSVPktHACyS6MzsA2tGxZEQQVIde5iKxYPCiMCZIICYkNcTrBcNyECofgCaJkCZgoCn4U4HAwCZjwCZicEbwSAA38UA36TOQc5eBg5gzokJAJsGgIyNzgLAm3IAm2v8IsANGhGLAFoAN8A4gBLBgeZDI4A/wzDAA62AncwAnajQAJ5TEQCeLseXdxFr0b0AnxAAnrJAn0KAnzxSAFIfmQlACwWSVlKXBYYSs0C0QIC0M1LKAOIUAOH50TGkTMC8qJdBAMDr0vPTC4mBNBNTU2wAotAAorZwhwIHkRoBrgCjjgCjl1BmIICjtoCjl15UbVTNgtS1VSGApP8ApMNAOoAHVUfVbBV0QcsHCmWhzLieGdFPDoCl6AC77NYIqkAWiYClpACln2dAKpZrVoKgk4APAKWtgKWT1xFXNICmcwCmWVcy10IGgKcnDnDOp4CnBcCn5wCnrmLAB4QMisQAp3yAp6TALY+YTVh8AKe1AKgbwGqAp6gIAKeT6ZjyWQoJiwCJ7ACJn8CoPwCoE3YAqYwAqXPAqgAAH4Cp/NofWiyAARKah1q0gKs5AKsrwKtaAKtAwJXHgJV3QKx4tgDH09smAKyvg4CsucWbOFtZG1JYAMlzgK2XTxAbpEDKUYCuF8CuUgWArkreHA3cOICvRoDLbMDMhICvolyAwMzcgK+G3Mjc1ACw8wCwwVzg3RMNkZ04QM8qAM8mwM9wALFfQLGSALGEYoCyGpSAshFAslQAskvAmSeAt3TeHpieK95JkvRAxikZwMCYfUZ9JUlewxek168EgLPbALPbTBMVNP0FKAAx64Cz3QBKusDThN+TAYC3CgC24sC0lADUl0DU2ABAgNVjYCKQAHMF+5hRnYAgs+DjgLayALZ34QRhEqnPQOGpgAwA2QPhnJa+gBWAt9mAt65dHgC4jDtFQHzMSgB9JwB8tOIAuv0AulxegAC6voC6uUA+kgBugLuigLrnZarlwQC7kADheGYenDhcaIC8wQAagOOF5mUAvcUA5FvA5KIAveZAvnaAvhnmh2arLw4mx8DnYQC/vsBHAA6nx2ftAMFjgOmawOm2gDSxgMGa6GJogYKAwxKAWDwALoBAq0BnzwTvQGVPyUNoKExGnEA+QUoBIIfABHF10310Z4bHjAvkgNmWAN6AEQCvrkEVqTGAwCsBRbAA+4iQkMCHR072jI2PTbUNsk2RjY5NvA23TZKNiU3EDcZN5I+RTxDRTBCJkK5VBYKFhZfwQCWygU3AJBRHpu+OytgNxa61A40GMsYjsn7BVwFXQVcBV0FaAVdBVwFXQVcBV0FXAVdBVwFXUsaCNyKAK4AAQUHBwKU7oICoW1e7jAD/ANbWhhlFA4MCgAMCgCqloyCeKojJQoKA3o1TTVPNVE1UzVVNVc1WTVbNU01TzVRNVM1VTVXNVk1WzWNNY81kTWTNZU1lzWZNZs1jTWPNZE1kzWVNZc1mTWbNg02DzYRNhM2FTYXNhk2GzYNNg82ETYTNhU2FzYZNhs2LTa5NjU22TZFNzlZUz7mTgk9bwIHzG7MbMxqzGjMZsxkzGLMYMxeChBABBYBKd/S39Dfzt/M38rfyN/G38Tfwt/ABfoiASM4DBoFdQVrBWkFXwVdNTMFUQVLBUkFfAV4yijKJsokyiLKIMoeyhzKGsoYCTUPDQMHCQ0PExUXGRsJZQYIAgQAQD4OAAYIAgQADgISAmdpH718DXgPeqljDt84xcMAhBvSJhgeKbEiHb4fvj5BKSRPQrZCOz0oXyxgOywfKAnGbgKVBoICQgteB14IPuY+5j7iQUM+5j7mPuY+5D7mPuQ+4j7gPuY+3j7mPuI+3j7aPuh0XlJkQk4yVjBSMDA4FRYJBAYCAjNHF0IQQf5CKBkZZ2lnaV4BbPA6qjuwVaqACmM+jEZEUmlGPt8+4z7fPtk+1T7hPuE+3T7dPt0+3T7bPts+1z7XPtc+1z7hzHDMbsxsI1QzTCJFASMVRQAvOA0zRzkFE043JWIQ39Lf0N/O38zfyt/I38bfxN/C38Df0t/Q387fzN/KNTM1NTUzMzNCA0IPQg/KKsooyibKJMoiyiDKHsocyhrKGMoqyijKJsokyiLKIMoeyhzKGsoYyirKKNzcXgRs7TqnO61Vp4AHYzuMQ0RPaUMfF7oHVAezyOs/JD7BSkIqG65tPs49Ckg+5h5SYg5oPEQwOjwmGCMxMx8pDRD1QhBCJPY+5RYQYQsVcl48JwseqUIDQhMACScnL0ViOB04RScVPBYGBlMIQTHHF2AQX7NAQDI4PBYjJxE5HSNBUDcVWjIXNjALOiAYQiIlFlIVBkhCQgMx1lhgGl81QEIiJ0IDBkEEf2hgqwB+Bj8FFCQ/WjIaP0NMiAYNiwCVAS0PSnevAFKSpR0sTxwFnqIGHgTwEXCK2MYDoWMiAbJQx1RpUAbpowHAD/LNC0oFNQQWGw0BLA9RAYICdAOOWqYPAARriA3usAEJLnSaEfIcBTWtUPMEFQVKbAD+AEZaPQ8dcoQ6vhM6Mc7DTgBkGUcKAB9KvALgIEtsESIJjx8EHskAewSjMw4A8KYLaR8zpMlmsnYNCQJQA5oBGQC8Kop+SwEUope/AAk8KB7iADEAMI6yfhAAXgCQAMT0L28hAxMJDazsA1EgARIKHvwA8rsk3ZsAy0sBdI/SAP8QAyXKAMt3N65vKAEjOLEM/uAeU6Cd/+hobDlBnS+i1T3kAkbMvetp0U9QbmpUq12CXN/KAtU4+FSVaXIQyFv8SPqkkFx4YRDcfRkUtpcHPLq9sS7vZmUEmByyjqEHhmjBQbqtvBq5mrbrmcXW+6vfmrOoAsCB5YpyMDImNxHzAjaBh0Ajamrk5awp0f86nOy9PeS2HALKy7Dd4D5IUuAvhI0bcFNCZEZJd7TlJJVYXUda2wKcCUGtihaIyKHyHSjUiHhmCzI2ohlMXrdua2p519SYjlhN+2ryZzfzhJ5Sbvkp2ABRlyPJLq3CqsAPuG2mFVdgmGTToXD/WVVK6PkbIe9VBei9zHMn416IorX7wOlweXluVxvAddJ4IQv1sYCT86QdAcUf7/Dxh6l42NGmZsDJMy8EpEehsEnjqQuA3vJcIBudVk9q3A2hU3C3nGijqlhSa/ofZ73nrhNanE73tkZTEkLxxPlBESgbbhb9Qd3MQ+7iJ14O9XsuttIhoOYMeLzGrrt1hRp85D7s9PO2KsjZgK1N/o5irsshfycgzJrChSxPR6Zf+526AYTI7mJbaTJurzEygPqT8/jL06RKeejsW/FbiGkVIrbt2/wAY/hfzuHnN0L6FNGm7ebppemuAhS3bPB19KEdRCpFhFrwSAHNjl3LX3r9BiDCkwSFjxvRveADTQ7U7Qrsq7LoUNgm4bi+hoiC+QKVN7F8HXI1MRXaImkKtM2BNehxgXWkdlU0gydA7NMVBZZNYxf8UL363iAqDxeXtaU5ykEQv5KPAaMTiiID6dcmOJlpq+ylbYlwycbIlBzhzgE/k7DWkDuTaw7kQnep+RNDhrFk19FXR/W7bbvBYD2yrOObcdaTKBfyOCDO5usBwMP08n5O1Bx5B2P+ewJRAhUGlnNdIhXTnju2al/pKdFKKjqtBOZlDg71pt+FRyJGXEUKmFEYfMSWHRFiYZonxMtCYpScBvJAloDehlZl5j22tqJbO3kXuhK1yc5XvRbqAHUqjM+S0rUr9eyjlQ/KmzIi+pLh1giVN4O8/agO2d+wWOJJFoAy+BuhFMlTtK/gs9WJUgKHTbhhdsKeyV0KrQyQx87OE94ytD2Bsc7TRWWG6pHM89QQ0bzbRNHRLAG+0fLlcLimGlL/Mp3dJcPTVGsN96S/01x3KY1sAAjQE44iZ3TUZ0syOHGs3GJ2PY9wcI6CWJtfzIRgEZojFvmjiJFPG/670ya0T285N63oYCG0cAnj6ze6o9WiM6Ivlo9bbim+ZvuL0Uva+9jWR97lH88oCCyYYWo+RST/AmdC28ABaudlFwciu9/P6GQSxu5Y9t6D/tMbw7G4DVrvp+a/VKw3nVePuRgt14a8oBuR9Uo6iPx2382uK4WulxwgyxJZwBZpgE3lDNbWPtfZY7c/ZKLUKVemDB/IN7hjqlyek+NLjTq1y3R2gpF29GHBqko//98F/+btNHU0xhFrZ0pPfTYmj7TKOQh3GjJa2T+dJNBceEkJN0kEKeI6+8lhJDG6nnFOBsPf8AuM2MhhnV8s5RQocf9rHYMpNu5oACKtIwMixj9RUK4L5bS1UV9i2TkHwrorayDzRQmT9LWWb3v3VoUi8GQprxJ+QOwso83bf/cQwW++3SCGFpLi1lyeLUfCaHJTsT2LueueIqM0Q5r2xnylHLzitOL2p5V8+3HIu5YNvgwkLh4e5iE1lzjEJ98GRfrWq5oQ0CyNnbHYhN4Ev72GcDBGzZsnApodNdL66In6BkoXY/QnfNNNy5dH2UQznCL3QIFzZqC6p1eyZQN4rGmEB6+HFjt+u6nEpn77kK0KuIBT0V4Onz5bK9gQnY598Z6dVelfBFU/o76XAgtCsbVjteIe56ygRnOUoyRsQJn7C+eA0URIDX7Q2IIuDUb4H8bEFPON17XuuaNFD8XoH7TKjKwvGLR1sKEAVb0PK8qCyLVW1HbCmL/iXDzXUhMW0wlnagyVjAsJUN7pvHauOI35ffK/L9a99EzkBXnHuG9FZhKNXhBZb6KzV/QO4MXX64ZoR7OT6JGokIk6Vsag9MqR74i5l+YU/EohdoYyboYN0ZW264YWO7xEwQH/S6QqIACQ8jp6fu7lLl7nk8b38Gt7asaiV0UNPKE4PIWShGIf/3Mz/PlW8ivDSA/D4mWojfILh5yBgOFfpGPqgX3YJp62PksIwvZu+r+x8iQQ8TFFlcyCe97OSf3D9r9XRojdVngyY4vs8lu9WqKnWD4wQBZdcaWki3HH+59LIuyPW5Hcf7OxU6myS0ff9rZYzzbXh8HBrjYc5mgqjRh1unoTGfUSnwLD67+t9FCn0fuu5cWfvuk26t+8gY3ig946XKfSfWUQirjxD5zmNDAv9vM+ITziafbGP91a8pMkhVA4zJEHdpLDHhNduqPbxs6MoAhfKWD+yy6ao7lLzGhwnYr/SaQdNP11pm/mZRQEgjVyAIcA3969IBLKVlrWhDZNGM0Rnfd+7w2Aklxl9pmhQ30tQ2es9OQRbo9LUlGqtViPGXC4YDG7z2SdQgWsL7l/ZQCC584lOPpfMeTEEhBRimmKzFo9aX/5QmfezzxP3UR7w9cnpt/ky/IUXgP+bIu78B5mMG1tddtYj12N7XduSGmB85Wd9B32bN9yIUJ0EUA+G8XOA9K5Htd54y2dWn7Z6sSQa8qhy9DB7AulFRBxsvuOMeHkHZBDb9waGph0fkz36NSBxtCmlXoVlYNBduj+ZGGC50SkMG7irl0O2KK0TWXwZcIZucPx+ari7u6sOb3FKCKExdtQgscgTjZQDJS8NhrYZloZmUdAQmc66FbQIAeGKukbhsNC+0mJm4zmUT4ZnAC70GhVlimLZO/ESe0A9nSsIle9qOuPhkg9HNbrQwjQ0ZAbkRb5lJI9B85vsrYZGwQzBcmC+M53hKnh3hlXbgz1hPAXNi43slvpCsBnyCAXa/vvdhX7kVpJVWd7Ug2qdaVfzlV6C+ORConbw2POltGRJBcWMiJC6Fw5M1KcIAmUaUH0r7JjZj3lSbmhCKRFaX8jBJvDQM9GWaB7JITdOhV2MyNJS1N6N/tbD1ldLAjShBf09w3E45fRTL7S9zcCNV7GJCfB00O7Zla4K84F96tPESguiLd8crnjyNJaFHQLVdvKcqC0xqAwlCjnvT1Gof9nc2erw3gFM7rHt/0CtWCPSxnm2Px2u5wKhXOWh6TdhhmARuOalgSmYmRE8Oi8JW7lq2trpud+CSesys1U93uOhhtD0FolwTOzgNGc6f8Npj2QUlLpSZJ8qwMFiuWGsiF7HNuPAGYRLGQ/bEhySDF4naB7CnTmwqvOTkkYN87oChU+3YcebMD3fGbiWJuqUpblUh7hINrLi+0sQs+TGhb/2UFCXmek6kC1GqtYqNRKG5Lj12H4Eu+lw7BjB6o+kWr9L6p8CDgMaF0Zz7Z0RZWqdtIAftdAUCjtloJKbbGWeQOf1arfcCAPpmHPCb4qj9VJj+zqGqgIrKQyVFjQv79q6huZkOIgJqaElK/EqE8q4cro+1CDMiNjpNDfqhcYpZas9OolOHdXtj4rBXqy8fkHvZyO+BLk6s6m5GncyNiuRyv0yGjUCPVU8swmziQJV04SGvk4C2Sz+pLbILiZuX8ceEmEihde+5CV8RyWE7ulVOFDA/b8Zef0kB9TcMpM2GS+UvvdHySvu4X9xNTILq649yzSC2gPgdG1YKGdNgn0OSEgeR6v1hFKPG3GG/32WVt3Z67hEWa3PdoezDSmcXgjBTfj1TXf8WAjnGTg402XT8hh8GLRG5n+vDAf7uHCLq+5EyGE6rPmKXRluF4/tOPhr8UDsMzD91VN6sNBFHhEP+iXWONErNF6mXjoOvmiD2yXKCqYd0ARmPiqzryQ6Ya0XfatoMgxB9SnCrfqbC9K79hGB8tANMUvF81KB1e7iMLY4LZDTWdW9t83AHHP8IwH45iwh7G0AcN2jfscgGPrwAL4Ae85EMvqnZYxgHmq6f2tJAKEYYjMZInZjD6dq1NGSv/tL3Ugp7Jp9a5POff/xCW8J8D4UR4KKtryYmCW100o76GjCuR4StYSMesmU2mSYhi3jD7NRTZ14IEYiJVro7WZuSzPpoYNtScspz/7BfqHky+kwkN2SSbtzwracsyLU4cBT7EARxhh58/TNlTdQ4E+X1Raf7E+fF/jRlLOBvprhc0wvch6beIGvxfhFp/77yERqLLXkbXfP//8fW9hdxThtuK7RkEdBd6DLSV9bnHBJweEtM5y1eMoi8Jlk7sU/IYg/5o0Hp+LOr/7yPpJzOgtGTXyG6GEbA5W0J7/ysfe5bdhBqTy9ANw5dgfkV/tjD3H55lWQ/8ORqXQVaZ2bloB4PrXuYLUd6mVZE00e4x+WtU4KIAB+6RkV3Po9C48b58rZVqxqKp9gCLIwwFVDFLaqVZgCuGGkrBbpV+pARR4n1NbsW80AZDcbyLYIJFzhsBzj3rVBPEJlrgfoPIcTMkxfB/2N86oWp/xPSk01b7UuhHktrnQnBok9u1u3K6aodr6jeNzHteqrnAx+TOgOVtuQp3qMqE5rBB+ImXIFta7ewbvLr/kdlMZMxafOJTyYqE/ucEV8nHZC4+L03/muHpNSd9rsEfiqaUWI0CxBKqaPTHnMZoEiOLOxqbh0svmKWOJduzlHuUij//d8UgKeBl4sRWJ5Mc7J5VRrbKj0zikL1UoumIAs3mYs+aj/nxZExBVn8w4QV+qAXVIjONtGGSgMF1j6IMtdISsg1YZ/DZUcjbw8Q0KrUPJuSirV+UTCCX8fvNLe68qL99OPW+FtRX97bmVdjyc8tbXv/x7ccQ6v07XYLz2CrqpxXGD2i1EByjiF4jEe5clgPnyoPhO3DxVswiREZOEebkhecewtIjlRwtwyS9dYVtJOFX7NHGamSsW+1yR9R9Q5bmYnFhFA2dyCitzPT7TcCoeJfz/wVqwUb510DFO2XrJKgYqPFp1DS36d6lCxq4kkKqChXkMAHiQ9JOGS+WPc0Yl6VGLoe3/oEwl8hsiTGcyXxqep67FmrCZpBAt3tIYEIm4aQl6aUNXNNyxsJZoVAO9qV2GZK9t/8c6JzEL13ZJpxwLgMC441MnPprVp8oFEDwGmLTiabZwCWw5PHYsRO7NLBmWjeiVO6qoCnulVNnKmty+3+wMhIskyEI0FYm9YlL1XZE0DwYasvZeAOTo4rN3+e+rOl7QXAvf4azScEypoT9lcPecoOUOxAlhhs8ToaT1EHESEqYP97sG2K+dyqutcqKMjrMHPuFZaXZugm0afFCCFUdJODNXYqrq+gOmlDBySBHQujc9YDIrkBnmK9saiIWf/hZlY7GcCqy6s+nXjVR5r48rKFVtiFnayXgJKxEUbKQVwC2u5l+zrAF23clfLh6u6xnv7qnoPKLRf9PF/AuuC6SOPeiIb3Q6BWV/Abs2o0tOYronaVgw1qKTD7PzmA03ld6ZR6VyrKjBJCgx5jts7QKqpdS+Lj14MGZzfeaxLxJZefzAHBrJAmAIkfjmib+PI+W9S3KndWDXiz5yGRG0nJH46sx74ewpqqbU+MvCNZaC1/QKJmu1nXSWT8UxjEdCZ+BAEO/oZxyTCJHFriCf/VqcN7l4Aq32+NfSL5m05Ox22UhCAdz+AOUEvPxT81uNeh8VOFwpJctTG3fYzdPDm7R1IFMRJHOKFZaZZZ4WWA/ogKFbCo/zFhaOKO6sAD1G0vYpmpUYWArtGezrmbZYSwQ4JrrIOW98OkeyHK/pQqvJrSDZNeISkJ0oEuiA0U2Vv9HTJpzINZDeolJisXoNIEnQms6wBMeArBuUQreHiQEp+D3ZEY62IA9gob1AVBMSrUaEfeU77rLxbXmKFYG4LwjMBNdhmoL/aJBYoO4l3ufJYs/jb+m7rbqQaBf6NceTi82UESoejXL9w/FEjDzFnk7zfOjIpNlPro3gm3Ji0TE7hLlG77FyOwiAh4zKv6+50XlliKaAzftTKGmTqhEdrmimlTduUQmIMgx52iHRJ3zF8M2Vg9SUW2mHA87Xv/fTH0PwaZwnstFry7DmGHYHuh8g/978+v4Ml/USTD1woqcRaN+4eksz6kKgwbcnmru3DNwFStDhSsiGtlhffNTX/z+4jZkV5QWkuNADKl+nt0shnO7PtVQzemlwF/AJzCCAuyekC9wrxm4yd1KPsixMzsruF7nhVYFXpMhnt59YUFd4lDhSEBmmRQUUY5006RUEGmMIWsphnOtlq/I6JNk0p7P6dsdOIhBYNar4rRUZvuyhrqcAPXf4yoJ1PDBpcZs8ji+hyhIPUXCD2bld7nXtL3a92VYI/XFVVss3tuizHHYcqOzOTZu7JUd1NlHbmZ6A5xoqpkong6+sD5c5qf1JcAkHmHZ5ScKvyJP44eeWPPWA5OwnzxCXsLfyephftskr5iSK759AzWXHXqIViAyWxmJe+Sbpkf7T5NrsaVNdNURId0LPqlgPbOBLILFGWspmfEUoF8y7DyWZ8q2uRMwnhqFJfCPE+PzmiaWfc1NyiMvZsWPX2/I2erZACURF3ZsEHduMvGLmLEbbqYIBDFhJydtNIf3qBhITx5gQIoBe/9u93rzOqAtgtsUZBUKAkTjV6mtUGS3B8npQjfNnEvVrPHuVH/9ufZUfHaaUBhCpjmaetMpBWEBuKUy1tPkU5pRe1XOtE0LiAopPvxxBqjRTtZ3E22cKFGjdwEkbUWsCGPXZ80Hor6q8OdbclxGxCQdMUaZJfPbNsIl+dxR3dNMrc9lm0x/0SpKPWdT3P5GmbbRr3rv5fEc/KqPaFZ9ng72zBlzxRZklMjseG8yuWGPCR1Zf0JdiR3y/8JZrTSJoR7ku7LSSzAsidzYS1sjs0NBNysxY2tNYektCMxNemNCKxd3eSBMsWYc8aAuwELbFVUSrtVn3z7psDA0t6UaVheAzOgeAt8Iop5Pc0JY95n3umn6aIpdDOUAjy5BHw5gtMj6vsQtwM8WtusufmOiu7ElI8uBY8MuPIwL1SGP29WE3xEcvdL/ObUz4FK8bI5CpRmsiqW+YKwZmEXe9mSspoTmTVu+HtpUzghLMyBFMUURA4G3yiygusD2aOkjwCCx7ER2YenF1INC/a+z6iMUansFFZfdc6WG7/9nCo20hjcAySzXO7BMMm+ExP+vEwXd4cNXvDexmicVNCJyCYcs7Bjvu+KL8GlVNGuVk64eMIPOQW1rsaOacnipdn3n+QCD4flBZ5sHbP0qaJjiC2zsR7zMDlV5nkoHb9GDkKFoo6OE8CsieM/tWHUNFqg6I0EwrdYASRXZaEzyLlmsyqy1RTpswscUABw5G4wIoWyKpWSBSQPJLgPk7jyC1GVqMc49hJgBixk4WQt0E8T7n5bkUHlE2CKySLpAlucidTFzmgQojE1gZp3XcSPw+L/IPv4mMgLnsqn5hGMtpOGAvJr8BjIe4/ebuwz8pHy28MVKVTz+uRkTgKvJo3TdrV8FvX4bmVjctXTws8zZP2EWrQJezpavhlW7Zb4GrDMX+plbIuoEi30fzZlLLnLc1aS2qkfmu6aKJ762r98arxqUewhfgSWPXzPdA6rF4/vvIttaw9+Rx8AfuFw7Qe9+0V+fnfnb/3OswN016GdWeIEnS3tLOFtIv7wHMF4g4jXmdjt+cQWPUDDVFkaqkg+fVJuVWOSLwb1/EhkZ6Luw1VvcxgaV3emKavztecv6JBJuB3XFE9nNgHb9rKq7UIuc9n/eNQo4pNKqteaGJYQsa/lozY5/baS+5d+f/gimVmMNUl0wiA2CogCkSiFOC/Chh9Q5YXBpHeWXIvBHN8N1vcZlpNBcdQLfvKotEcMjKPxSjKEXqZHgiY5KL4lkyCJAxhl4RAsaZ2ICV8UTDQdAecdKOP9efdOlvxCQY1wZt1iWxLYfxIztWRqeAlbFATfF6mAHCOJLwcAME4fzpXUiwdtmY+kNGVIb9sHvZWwsRjfxlutSBCV6pTK7TaSb0fr+JaV56Fw==");const W=o(j),X=o(j),p=o(j),v=w(j),q=o(j),$=j()&&function(A){const B=o(A),g=o(A),C=o(A),Q=o(A),E=o(A),w=o(A),e=o(A),t=o(A),r=65039,D=8419;function I(A,g){let C=A[g],t=A[g+1],o=e(C);if(o&&t&&w(t))return[2,[C,t]];let D=o||Q(C);if(t==r){if(D)return[2,[C]];if(E(C))return[2,[C,r]]}return o||D||B(C)||w(C)?[1,[C]]:void 0}return function(A,Q){let E=A[Q],w=A.length;if(Q+1<w&&B(E)){let g=A[Q+1];if(B(g))return[2,[E,g]]}let e=g(E);if(Q+1<w&&e&&A[Q+1]==D)return[2,[E,D]];if(Q+2<w&&(e||C(E))&&A[Q+1]==r&&A[Q+2]==D)return[3,e?[E,D]:[E,r,D]];let o=I(A,Q);if(!o)return[0];let[n,i]=o;n+=Q;let f=!1;for(;n+1<w&&8205===A[n];){let B=I(A,n+1);if(!B)break;f=!0,n+=1+B[0],i.push(8205,...B[1])}if(!f&&n+2<w&&t(A[n])){let B=n+1;for(;B+1<w&&t(A[B]);)B++;if(917631==A[B++])return[B-Q,i]}return[n-Q,i]}}(j);function _(A){return A.flatMap((A=>A.e??O(A.v)))}function AA(A,B){return new Error(`Disallowed label "${i(String.fromCodePoint(...A))}": ${B}`)}function BA(A){const B=45;let g=N(c(A),$,(A=>{if(W(A))return;if(p(A))return[];if(X(A))return[A];let B=I(v,A);if(B)return B;throw new Error(`Disallowed character "${i(String.fromCodePoint(A))}"`)})).map((A=>{let g=_(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=M(g.slice(4)),[A]=N(B,$,(A=>X(A)?[A]:[]));let C=_(A);if(B.length!=C.length||!B.every(((A,B)=>A==C[B])))throw new Error("not normalized")}catch(A){throw AA(g,`punycode: ${A.message}`)}g=B}if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw AA(g,"invalid label extension");if(g[0]==B)throw AA(g,"leading hyphen");if(g[g.length-1]==B)throw AA(g,"trailing hyphen");if(q(g[0]))throw AA(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&F(A[B-1]))continue;if(B>0&&B<g){let C=B-1;for(;C>0&&l(A[C]);)C--;if(Y(A[C])){let C=B+1;for(;C<g&&l(A[C]);)C++;if(G(A[C]))continue}}break;case 8205:if(B>0&&F(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&h(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&s(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${i(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>U(A))))throw new Error("Disallowed katakana")}(A.flatMap((({v:A})=>A??[])))}catch(A){throw AA(g,A.message)}}return A})),C=g.map((A=>A.flatMap((({v:A})=>A??[]))));if(C.some(m))for(let A=0;A<g.length;A++)try{b(C[A])}catch(B){throw AA(_(g[A]),`bidi: ${B.message}`)}return g.map((A=>String.fromCodePoint(..._(A)))).join(".")}function gA(A){return N(c(A),$,(A=>{if(W(A))return{};if(X(A))return[A];if(p(A))return{i:A};let B=I(v,A);return B?{m:A,u:B}:{d:A}}))[0]}function CA(A,B){return c(String.fromCodePoint(...B).normalize(A))}function QA(A){return CA("NFC",A)}function EA(A){return CA("NFD",A)}const wA="2021-12-23T21:04:48.791Z",eA="14.0.0",tA="1.3.2",rA="1.3.2";export{wA as BUILT,rA as IDNA,eA as UNICODE,tA as VERSION,BA as ens_normalize,gA as ens_tokenize,f as escape_name_for_html,i as escape_unicode,O as nfc,QA as nfc0,a as nfd,EA as nfd0,M as puny_decode,N as tokenized_idna};
function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let Q=g(),C=1,e=[0,1];for(let A=1;A<Q;A++)e.push(C+=g());let w=g(),E=B;B+=w;let t=0,D=0;function o(){return 0==t&&(D=D<<8|A[B++],t=8),D>>--t&1}const r=2**31,n=r>>>1,I=r-1;let i=0;for(let A=0;A<31;A++)i=i<<1|o();let c=[],M=0,f=r;for(;;){let A=Math.floor(((i-M+1)*C-1)/f),B=0,g=Q;for(;g-B>1;){let Q=B+g>>>1;A<e[Q]?g=Q:B=Q}if(0==B)break;c.push(B);let w=M+Math.floor(f*e[B]/C),E=M+Math.floor(f*e[B+1]/C)-1;for(;0==((w^E)&n);)i=i<<1&I|o(),w=w<<1&I,E=E<<1&I|1;for(;w&~E&536870912;)i=i&n|i<<1&I>>>1|o(),w=w<<1^n,E=(E^n)<<1|n|1;M=w,f=1+E-w}let F=Q-4;return c.map((B=>{switch(B-F){case 3:return F+65792+(A[E++]<<16|A[E++]<<8|A[E++]);case 2:return F+256+(A[E++]<<8|A[E++]);case 1:return F+A[E++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let Q=0;Q<A;Q++)g[Q]=1+B();return g}function Q(A,B){let g=Array(A);for(let Q=0,C=-1;Q<A;Q++)g[Q]=C+=1+B();return g}function C(A,g){let Q=Array(A);for(let C=0,e=0;C<A;C++)Q[C]=e+=B(g());return Q}function e(A){let B=Q(A(),A),C=A(),e=Q(C,A),w=g(C,A);return[...B.map((A=>[A,1])),...e.map(((A,B)=>[A,w[B]]))].sort(((A,B)=>A[0]-B[0]))}function w(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(D(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(t(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function E(A,g,Q){if(0==g)return[];let e=[C(A,Q)];for(let C=1;C<g;C++){let g=Array(A),w=e[C-1];for(let C=0;C<A;C++)g[C]=w[C]+B(Q());e.push(g)}return e}function t(A,B){let g=1+B(),C=Q(g,B),e=E(g,A,B);return C.map(((A,B)=>[A,e.map((A=>A[B]))]))}function D(A,B){let C=1+B(),e=B(),w=1+B(),t=Q(w,B),D=g(w,B),o=E(w,A,B);return t.map(((A,B)=>[A,o.map((A=>A[B])),D[B],C,e]))}function o(A){let B=e(A);return A=>r(B,A)}function r(A,B){for(let[g,Q]of A){let A=B-g;if(A<0)break;if(A<Q)return!0}return!1}function n(A,B){for(let[g,Q,C,e,w]of A){let A=B-g;if(A<0)break;if(C>0){if(A<e*C&&A%e==0){let B=A/e;return Q.map((A=>A+B*w))}}else if(0==A)return Q}}function I(A,B){let{length:g}=A,Q=g-B.length;for(let C=0;0==Q&&C<g;C++)Q=A[C]-B[C];return Q}function i(A){return`{${function(A){return A.toString(16).toUpperCase().padStart(2,"0")}(A)}}`}function c(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>i(A.codePointAt(0))))}function M(A,B){return B||(B=i),A.replace(/(?:([\x00-\x20\x7F\xA0\u200C\u200D\s])|([^\x21-\x25\x27-\x3B\x3D\x3F-\x7E]))/gu,((A,g,Q)=>g?B(g.codePointAt(0)):`&#${Q.codePointAt(0)};`))}function f(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function F(A){let B=[],g=A.lastIndexOf(45);for(let Q=0;Q<g;Q++){let g=A[Q];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let Q=0,C=128,e=72;for(;g<A.length;){let w=Q;for(let B=1,C=36;;C+=36){if(g>=A.length)throw new Error("invalid encoding");let w=A[g++];if(w>=48&&w<=57)w-=22;else{if(!(w>=97&&w<=122))throw new Error(`invalid character ${w}`);w-=97}Q+=w*B;const E=C<=e?1:C>=e+26?26:C-e;if(w<E)break;B*=36-E}let E=B.length+1,t=0==w?Q/700|0:Q-w>>1;t+=t/E|0;let D=0;for(;t>455;D+=36)t=t/35|0;e=D+36*t/(t+38)|0,C+=Q/E|0,Q%=E,B.splice(Q++,0,C)}return B}function u(A,B,g){let Q=[],C=[],e=[C];function w(){Q.length>0&&(C.push({v:Q}),Q=[])}for(let E=0;E<A.length;E++){if(B){let[g,Q]=B(A,E);if(g>0){w(),C.push({e:Q,u:A.slice(E,E+g)}),E+=g-1;continue}}let t=g(A[E]);Array.isArray(t)?Q.push(...t):(w(),t?C.push(t):(C=[],e.push(C)))}return w(),e}let Y=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const N=o(Y),l=o(Y),U=o(Y),s=o(Y),G=o(Y),k=o(Y),R=o(Y);let L=A("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");const K=Array(1+L()).fill().map((()=>e(L))),T=w(L),P=e(L),a=44032;function H(A){return A>=a&&A<55204}function h(A,B){if(A<128)B(A);else if(H(A)){let g=A-a,Q=g%588/28|0,C=g%28;B(4352+(g/588|0)),B(4449+Q),C>0&&B(4519+C)}else{let g=n(T,A);if(g)for(let A of g)h(A,B);else B(A)}}function x(A,B){let g=[];function Q(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function C(A){let C=1+K.findIndex((B=>r(B,A)));0==C?(Q(),B(C,A)):g.push([C,A])}A.forEach((A=>h(A,C))),Q()}function S(A){let B=[];return x(A,((A,g)=>B.push(g))),B}function J(A){let B=[],g=[],Q=-1,C=0;return x(A,(function(A,e){if(-1===Q)0==A?Q=e:B.push(e);else if(C>0&&C>=A)0==A?(B.push(Q,...g),g.length=0,Q=e):g.push(e),C=A;else{let w=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return a+(588*(A-4352)+28*(B-4449));if(H(A)&&B>4519&&B<4547&&(A-a)%28==0)return A+(B-4519);for(let[g,Q]of T)if(2==Q.length&&Q[0]==A&&Q[1]==B){if(r(P,g))break;return g}return-1}(Q,e);w>=0?Q=w:0==C&&0==A?(B.push(Q),Q=e):(g.push(e),C=A)}})),Q>=0&&B.push(Q),B.push(...g),B}let O=A("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");const y=e(O),V=e(O),W=e(O),z=e(O),d=e(O),p=e(O);function j(A){if(0==A.length)return;let B=A.length-1;if(r(y,A[0])){if(!A.every((A=>r(y,A)||r(W,A)||r(z,A)||r(d,A)||r(p,A))))throw new Error("RTL: disallowed properties");for(;r(p,A[B]);)B--;if(B=A[B],!(r(y,B)||r(z,B)||r(W,B)))throw new Error("RTL: disallowed ending");let g=A.some((A=>r(z,A))),Q=A.some((A=>r(W,A)));if(g&&Q)throw new Error("RTL: AN+EN")}else{if(!r(V,A[0]))throw new Error("unknown direction");if(!A.every((A=>r(V,A)||r(z,A)||r(d,A)||r(p,A))))throw new Error("LTR: disallowed properties");for(;r(p,A[B]);)B--;if(B=A[B],!r(V,B)&&!r(z,B))throw new Error("LTR: disallowed ending")}}function Z(A,B){return f(String.fromCodePoint(...B).normalize(A))}function X(A){return Z("NFC",A)}function m(A){return Z("NFD",A)}const b="2021-12-25T07:41:57.843Z",v="14.0.0",q="1.3.4",$="adraffy";let _=A("AEQKowRKAlUBMAFKAH4A9wCNAI8AowCKAFAAbABGAFwAZABpADEARwAoAD4AJAA+ACQALABYADcAFgAfACUANQA5AC4AGAAgAB8AMQANABwAFAAdABgAJAAVABgAIQAYAD0AJQAfACEAHQAUABIALgATABoADAAuAAoAGgAKABYAGAPUBPAA0hAqAThJCV4TBigA9QB0M2BFAB9tEQFRJwPWAY8BR3IyABdZACkANsUoBLLBAMx0xEcSjk/VvAIUAkmiA19HAMIDpwBacyUhCYcALwA8AYT9FQFcATW5hAWJEQkdxxBSxwEgPRQDKQUOEgpRGzIKPAUPP8IJBCABLRAfDwAPP0IqBpQiDwOIABTWA28sDgDkFyNaDwDPGL9Vj88cEQEiBQ8PDiAfTM0CuACfAL8fHzcmBP9fHx8BP38ADw8lEAgsTw8Pbw9/fw8PHwAPFv/fAz8Jzy8SvyK/AP8PAaJfDhAWvwO/Ia8ADwlPLxEiCY8fAx6/mQAPA9+PEQVvLz4AcTEUABSRB86lvw7/nxVPMA8gGiQJNAkNCAIVASsKGAUMMxUdGH9VTMwHBQAIKmM6NfYIBgQKBQAJCAJZgyAC7gEGAPgOCha3A5XiAEsqhCOlnw74nRVBG/ASCm0BYRN/BrsU3VoWy+S0vV8LQx+vngEwcABOBxngDYYHSjIACw9LLgGiFQFAA0k9AnoBWnc0TaGPGAGQAyFvfwCsA4kK31RfZH8PyQO/AToJf/r4FzMPYg+CHQAcAXworAAaAE8AagEiG94eHRfeGh/xAngClwKuNDY4AwU8BWEFOgF7N6AAYAA+FzYJlgmXIyBM/ggMUqGgykPzADldyprmMwAWKAAhCvEiX1IAXQCl3gAgAD4BBJWzaCcIAIEBFMAWwKoAAdq9BWAF5QLQpALEtQAKUSGkahR4GnIViDYywCl/J0cXP29feC7ZChMqeBRhBlJBEwps5YMACKQKCgDCKB4UCAJ9BNKQ0BQuB4c56AAAACACNgsFf1a4lvFqQAAETgBBcQw0BwUGApkyApOOBB/M1okAFbIBTdeXAB86V2CQBUIANpI5BfbPFgPNxgALA5miDgo0Ao6mAobdP5MDNp4Cg/fyRPfTpAACAHj1npIKJgqFVgD0AB4EAAIAAAAEABQGCAMB/BELFAXYan0rHgIJ0QB6CkNjm5U1JwIqAEIEsjQ87xMiABlkcmeSAiJMVgY1AXFpFwaly6FKAB0U+AEvlQJCAADrggV2BdU84NcCgABXYrgAUQBcAF0AbABvAHYAawB2AG8AhABxMH8UAVROUxEAA1RYUwcAQwDSCwKnAs4C0wKUAq0C+rwADAC/ADy4TQSpBOoJRikwFOA6+DdhGBMAQpAASpPKxwG2AZsCKAIlOAI3/wKuAqMAgADSAoc4GjQbArE4Hjg3BV64ApUCnQKkAYkBmAKrArI07DR7HzTwNIsbAFk1ojgDBTw0EjQpNgQ2RzaMNk02VDYZNvCZPVcyAoICoQKwAScANQVeBV20vwVuBXc5JFa+Uqs05DS/FwABUwJW11e6nHuYZmSh/RAYA8oMKvZ8KASoUAJYWAJ6ILAsAZSoqjpgA0ocBIhmDgDWAAawRDQoAAcuAj5iAHABZiR2AIgiHgCaAU68ACxuHAG0ygM8MiZIAlgBdF4GagJqAPZOHAMuBgoATkYAsABiAHgAMLoGDPj0HpKEBAAOJgAuALggTAHWAeAMEDaXfQlB2MUQZBBhBgNNDkxxPxUQArEPqwvqERoM1irQX6IH8ANYB/ADWANYB/AH8ANYB/ADWANYA1gDWBwP8B/YxRBkD00EcgWTBZAE2wiIJk4RhgctCNdUEnQjHEwDSgEBIypJITuYMxAlR0wRTQgIATZHbKx9PQNMMbBU+pCnA9AyVDlxBgMedhKlAC8PeCE1uk6DekxxpQpQT7NX9wBFBgASqwAS5gBJDSgAUCwGPQBI4zTYABNGAE2bAE3KAExdGABKaAbgAFBXAFCOAFBJABI2SWdObALDOq0//QomCZhvwHdTBkIQHCemEPgMNAG2ATwN7kvZBPIGPATKH34ZGg/OlZ0Ipi3eDO4m5C6igFsj9iqEBe5L9TzeC05RaQ9aC2YJ5DpkgU8DIgEOIowK3g06CG4Q9ArKbA3mEUYHOgPWSZsApgcCCxIdNhW2JhFirQsKOXgG/Br3C5AmsBMqev0F1BoiBk4BKhsAANAu6IWxWjJcHU9gBgQLJiPIFKlQIQ0mQLh4SRocBxYlqgKSQ3FKiFE3HpQh9zw+DWcuFFF9B/Y8BhlQC4I8n0asRQ8R0z6OPUkiSkwtBDaALDAnjAnQD4YMunxzAVoJIgmyDHITMhEYN8YIOgcaLpclJxYIIkaWYJsE+KAD9BPSAwwFQAlCBxQDthwuEy8VKgUOgSXYAvQ21i60ApBWgQEYBcwPJh/gEFFH4Q7qCJwCZgOEJewALhUiABginAhEZABgj9lTBi7MCMhqbSN1A2gU6GIRdAeSDlgHqBw0FcAc4nDJXgyGCSiksAlcAXYJmgFgBOQICjVcjKEgQmdUi1kYnCBiQUBd/QIyDGYVoES+h3kCjA9sEhwBNgF0BzoNAgJ4Ee4RbBCWCOyGBTW2M/k6JgRQIYQgEgooA1BszwsoJvoM+WoBpBJjAw00PnfvZ6xgtyUX/gcaMsZBYSHyC5NPzgydGsIYQ1QvGeUHwAP0GvQn60FYBgADpAQUOk4z7wS+C2oIjAlAAEoOpBgH2BhrCnKM0QEyjAG4mgNYkoQCcJAGOAcMAGgMiAV65gAeAqgIpAAGANADWAA6Aq4HngAaAIZCAT4DKDABIuYCkAOUCDLMAZYwAfQqBBzEDBYA+DhuSwLDsgKAa2ajBd5ZAo8CSjYBTiYEBk9IUgOwcuIA3ABMBhTgSAEWrEvMG+REAeBwLADIAPwABjYHBkIBzgH0bgC4AWALMgmjtLYBTuoqAIQAFmwB2AKKAN4ANgCA8gFUAE4FWvoF1AJQSgESMhksWGIBvAMgATQBDgB6BsyOpsoIIARuB9QCEBwV4gLvLwe2AgMi4BPOQsYCvd9WADIXAGAMC2BcYTQHMnNe2QImSwBQ5gBQQzSaNTFWSTYBpwGqKQK38AFtqwBI/wK37gK3rQK3sAK6280C0gK33AK3zxAAUEIAUD9SklKDArekArw5AEQAzAHCA5goWCNNwFVNKCapCm1fRmHsDKcN1UTJOkoT3GBSYDMTyS24FMIVzyVXGT4avScGJeVVCg8FLdRmMQgtNHYXvQBAKWmDQmOHHjEKTBzoU5JU+S0cALJLozOwDa0bFkRBBUh17mIrFg8CQo4CTfECZIICYkNcTrBcNyECofgCaJkCZgoCn4U4HAwCZjwCZicEbwSAA38UA36TOQc5eBg5gzokJAJsGgIyNzgLAm3IAm2v8IsANGhGLAFoAN8A4gBLBgeZDI4A/wzDAA62AncwAnajQAJ5TEQCeLseXdxFr0b0AnxAAnrJAn0KAnzxSAFIfmQlACwWSVlKXBYYSs0C0QIC0M1LKAOIUAOH50TGkTMC8qJdBAMDr0vPTC4mBNBNTU2wAotAAorZwhwIHkRoBrgCjjgCjl1BmIICjtoCjl15UbVTNgtS1VSGApP8ApMNAOoAHVUfVbBV0QcsHCmWhzLieGdFPDoCl6AC77NYIqkAWiYClpACln2dAKpZrVoKgk4APAKWtgKWT1xFXNICmcwCmWVcy10IGgKcnDnDOp4CnBcCn5wCnrmLAB4QMisQAp3yAp6TALY+YTVh8AKe1AKgbwGqAp6gIAKeT6ZjyWQoJiwCJ7ACJn8CoPwCoE3YAqYwAqXPAqgAAH4Cp/NofWiyAARKah1q0gKs5AKsrwKtaAKtAwJXHgJV3QKx4tgDH09smAKyvg4CsucWbOFtZG1JYAMlzgK2XTxAbpEDKUYCuF8CuUgWArkreHA3cOICvRoDLbMDMhICvolyAwMzcgK+G3Mjc1ACw8wCwwVzg3RMNkZ04QM8qAM8mwM9wALFfQLGSALGEYoCyGpSAshFAslQAskvAmSeAt3TeHpieK95JkvRAxikZwMCYfUZ9JUlewxek168EgLPbALPbTBMVNP0FKAAx64Cz3QBKusDThN+TAYC3CgC24sC0lADUl0DU2ABAgNVjYCKQAHMF+5hRnYAgs+DjgLayALZ34QRhEqnPQOGpgAwA2QPhnJa+gBWAt9mAt65dHgC4jDtFQHzMSgB9JwB8tOIAuv0AulxegAC6voC6uUA+kgBugLuigLrnZarlwQC7kADheGYenDhcaIC8wQAagOOF5mUAvcUA5FvA5KIAveZAvnaAvhnmh2arLw4mx8DnYQC/vsBHAA6nx2ftAMFjgOmawOm2gDSxgMGa6GJogYKAwxKAU7wALoBAq0BnzwTvQGVPyUNoKFrLQGuCusfABHF103ysS+SA2ZYA3oARAK+uQRWpMYDAKwFFsAD7iJCQwIdHTvaMjY9NtQ2yTZGNjk28DbdNko2JTcQNxkFbU1fbBZfwQCWygU3AJBRHpu+OytgNxa61A40GMsYjsn7BVwFXQVcBV0FaAVdBVwFXQVcBV0FXAVdBVwFXUsaCNyKAK4AAQUHBwppXu4wA/wDW1oYZRQODAoADAoAqpaMgniqIyUKCgN6NU01TzVRNVM1VTVXNVk1WzVNNU81UTVTNVU1VzVZNVs1jTWPNZE1kzWVNZc1mTWbNY01jzWRNZM1lTWXNZk1mzYNNg82ETYTNhU2FzYZNhs2DTYPNhE2EzYVNhc2GTYbNi02uTY1Ntk2RTc5PW8CB8xuzGzMasxozGbMZMxizGDMXgoQQAQWASnf0t/Q387fzN/K38jfxt/E38LfwAX6IgEjOAwaBXUFawVpBV8FXTUzBVEFSwVJBXwFeMooyibKJMoiyiDKHsocyhrKGAk1Dw0DBwkNDxMVFxkbCWUGCAIEAEA+DgAGCAIEAA4CEgIfjg43EGcPlDjFwwDi8hQeJB09PShfLGA7LD0oCcZCCklBQ3ReUmRCTjJWMFIwMDgVFgkEBgICM0cXGRnMcMxuzGwjVDNMIkUBIxVFAC84DTNHOQUTTjclYhDf0t/Q387fzN/K38jfxt/E38LfwN/S39Dfzt/M38o1MzU1NTMzM8oqyijKJsokyiLKIMoeyhzKGsoYyirKKMomyiTKIsogyh7KHMoayhjKKsoo3NwgJxBIySisXxhtPs49CjgeUmIOaDxEMDo8JhgjMTMfKQ0Q9fYWEGELFXJePCcLHqkACScnL0ViOB04RScVPBYGBlMIMcdgEEBAMjg8FiMnETkdI0FQNxVaMhc2MAs6IBglFlIVBkhCMdZgGkAnBgR/aGCrAH4GPwUUJD9aMho/Q0yIBg2LAJUBLQ9Kd68AUpKlHSxPHAWeogYeBPARcIrYxgOhYyIBslDHVGlQBumjAcAP8s0LSgU1BBYbDQEsD1EBggJ0A45apg8ABGuIDe6wAQkudJoR8hwFNa1Q8wQVBUpsAP4ARlo9Dx1yhDq+EzoxzsNOAGQZRwoAH0q8AuAgS2wRIgmPHwQeyQB7BKMzDgDwpgJpITlmAKYNCQJQA5oAvoaKfgG1ope/AAk8IiBUADCOAHEQAF4AkADFFAAuIQMTCQ2s7ANRIAESCh78APK7JN2bAMtLAXSP0gD/EAMlygDLdzeubygBIzixDP7gHlR0927FZe7bRZ8tb79sNxuKs7mTTeE66+PiWMrQHIsN1LnELXx2qaGNJY5enZkcXQLnEc0h0IekVa9C9DYI0YKyRD7pGu26xMShsyxpiD4U7uUjLV6yS70iYk+IncQGpP9d/FjLRSB7BMxeN0wnh3TnpK37HjKF5VlYzpvrNiiHpHtVimUsGdqlMatdHdsk+v/ZDdsz07LbslH7keKKQTFujsrt9Vzekd6LqCgctBmhAfO3gzMBqMvZzOhQK2c41SSYJj31xolV7PGDw82+ZtwlIxBtrgJzaYqqLu+XODfYjwvN8/Tns5yQwYrwBc2GSxJCl8vKTGt3DftND2Y34XU8JhJU5BS/06MB+ME8oNWR3xnLLuUXo+cKtsz4pAMC7GkLEMtalViB7cTOu4oy32wd5lNvroRec0AW88u6tJd56Lwt8JJ2860RweDmv71NRgX4sDeF5gDflejDSXmDs0bjY9Ht0+1J212ffWqAH9w+XXa6vp5bXHaSLjKXwQ91Onoso5JLTkRLrMdGcwm48ofyFnmPzPoS8X8H20QRVsCi4tuESl6R1IK866dtdJ+WWZF/UZIIXAMdIsPBLSw/lF6B1JQCeGARThbB1WAVb07sKykj+uUUJFkQq9MxFbU5Aqm36AekBLHpjGegFphFYmC2V0k8LCQEwBElLNSi0x7bAfBJh8KiCWYfY8wpTvnCn1aER3odfmM9nk1meGKGMtVoomp/4CsKBd4srDAfOwhRyQd7TXNbiI0Ye7UVeYHXZUkqLHRpmsJIZqRzBcZcCjFt6QF0M5qvJ5RX8GhR95dR8Yu2WRvrbv4vuwD/yV1NqPoHVBSagmeMClI3xlXPSOvaNObGc9QXzrmp9NA6sNAn6a0t17I5LUPSwNeu4nndkck8T2nZ6b4gOCE3bg8GQ4CVoZoCA5ItdakU3fl/SAfzlOJPgk32yb9SZIKBhDrgOcm3gKR4sUe/AEmEMOjBrCWI+cxb1yVFTMuEW5Zp8Ew0GUCvfyVZxAdFAI3Fqe4MkJ8J1kEFXhMBrp9UIcYBU8x9tIsjYCYHpX1lLGGfu5+MuDMirW3PnvfqF6GC1APXcan/7Z8lE/Q3pbCjhYbLQFiHHozDwG0nfotCl2Wp8pMGuzTKvW0kKLdU0I5jenKVBugMVsltk1Phi5puJ/A/37wv+d0RZcBiZD9Oxluw8DnGHXPiPDc6GyRjIR1IhZkVGCzOgu0iB+OTwVNSWYyCe+HoyBIMJoBbR2lM/MjX23/6SIikV8Cw4iR8cZENg1UljLZcjbqTzpWN0acQrVtFR9pR+59G+43bVJtCaPHHTWUk5VqxLsOvzzXTSXVd71PKc3++sJciuai8d+o91bUjlb2Z6cElRuKgKRNeIrypquNxL1IOzN61Kq17lAyXUhPB5xEuIjWeIQ4XstZK8xzXaAi4FaVcJRX9+7Oy3/QD6ouITk3MecOgg44yFd53xKUcLd1cMRGEn/Jx3cZJHsYzRBTDRC63EvU7CkuyF85yNJsb+98uJWQiS4ke9Zcroci36zYjKYylEWYGtUrzc17OsrfNbCFTn9LDcOYIhU0wahXKojFJZagt2QVYqYzj1n2DZUaA1IQocKJXW6d3Tjx6Gc+7MKBsV+vjWHD+jgjD6nsQ/6VYjjiMlS79Za7ERKjf3e32wXnKJODzjPGKa7Qzs8mS4HUqMqki/LqsY753Rv4OwuGESyb4wy2n8UhnnXfXLk6H54Da9OhG4lU8/2prk1xQTBOmCVLq5c/CNz0yK0u4C0a7nIj6lHmagrj/48byTFoBK4RSGE7LyA7hzhtZGGAmJ+srP1iJBtBqDe4vUvjZFF+fXQVjglvvvQpr3FqGVzI2w33poBWNH3rQm9n+5xlJUsUFfs43r3exRCIeoDd4swq/ixnHr+mOpJ1RQ86xwe5uYSkaQmpozjCqe9mFixGNddMskF2JhyoDm6f4yKJkhmHc32Um5GKydmjMayScbXPBnR+9Mk8LtsYJSqo+M0Bkj64a/mU4ezDEc1K5OAQoNo9L4SY10fMeDW8qeBWAcA8kalWY6dKhotZupEdZJ8mUEkU5ZXS9Xkyum2jpkr6Aa/uyNWH0i1nbZ6gdAuFClcCj9O86teZg6A9c0uuTPangtEt/pRB5qhReCZhGoVN0uHc52TA9gEtpgWk7G+5h/5TMMDQeQ9ESWqm+a2lKvq5Rjz8SDJl+nmueIoME4Kcr0XZUa2RGr8Ny9Nx/g1wHCBVVnk6p5ZxqqloHpFCyMYeOWz/pZQh9L1sNtpYztwEsC7bSL3omfzPd9o34TLgUT5AbXrBoBiWzesU3QGAI98gsnujzluRc/B185cleMO0twTeGuRh/CL5k7RoX+EUQYXH8W54FYcJ4gHxQQFr2qKAjV5kgXBTPS38Y+CGumH3A6x5+J3yyhHhsf3wM4kE3zqLsg8A4m7R0S/d9FvpnFfHIDGS0E5cxO2pwF0Aok5ticnSDK1FR565YH7HZUZIovx2BMjgIdjh+GXPTyvatVl1dUhtH/JT1z/xiyatEvcmBELy39OhxWjkU6pp0S3QbJk+mlTrIWdqdVtKFvQtTh8oBXFFS64dGDROjP7dtKcMhxjKe9oRIKU1N/MPIn/bYsvRgwGnMQTKNippW5Pvh3rAPHpp4B0q7Uy5Ik3MwIisqtPbOtAQn91KMMEC8eCXkUdU5McA7jOIvan2t/ZYaOiWMr3uT5hD3LiVIoDs2LAEDEcQjPc0gqHeuUtnUutPJq/14owDWStsJdrDAZTUUzXkWAUKi/7HCv+2ocL95snjnEX/XpydDksLCUbFSb4Bz7UEfcMIjYWPg856Ow1vY4L9dQ4Sj4hMkrBuR2WLedmtfM+JGMDZSTlqaYhC2agytXglbpKjdsBqsya28MnaAqfoejC3m82gbxYWPVpHVtQFK0PoKZSRZ0BWSPgqAc5vMpcmKl+pSlE6zAhPaawOevRlHdp31Ch9M+Zjm9Fwf+iD/UhgGAt0rTkx4JMZQsuprh3qliNT6CzHe4Yg4zxXR7n4VIQmzUlJcIR5v3h0hjSwkJCfdIt1Vh/m37RHh8JA4UClBl8shrBULYEyfIq2VRajNAI8LcXA3go5C/ImKycIKDnUxxJ2ADr8C+U60hZ2xh2XqH4UwJLVVqBYy7zZ7qA/bJei/2gZ50O6jUpt6igjRZws/sAS536AAc3ldtj8ZpFaYhf1psDkK4N4z5BHzlIExq9r3OKKDuKT0wxDVP36oEJ7IudNPO6NuAplHxzz70axKdBPRQ9EIBaSqdHwvWJaTPV6UWfEfmt1YsR7jedrJZttE2aXU5F1AiWbVMZVm8Jxwcq808tmh+MpaaB/Tb+1AH4rdd5eptfvtPKygdpcT2eb7KAX3D3tR8uCE8oQrTptfNxjcuYBnyGvO2BJ2Vi2A5biQDVuXkhmPrwIUPXY2oLaQS6pUdYIzNOMGWiVJVXoCLivxlzpWaWSPiIbAly/AJgUGIxclPKRLRMzT5Rw6mdZ4AniBsWC/QEGXhha2p7cBf6X0OzCOaCJpcnLwl+FjqUzSCYfEk4iqrLuF9uIO5pEHVx/l5ShUg80ALKC/1sJsOqrDvZM8jNBTnCABOw3e1NJ28wNg+q24b4CZmuiMMy655KC+1187Wiih1t/f6FqSn4H9dJVTEFsZsaE2jPdDM/xi7OsaK4l3EElxH+2V+n/E8Jp126K6x4Xp7LnvPr+Q/dEoB+krSHq9WAo+CgsUD0NnQ9LaVE3Y1HxqnOsC43HNtg1X7YCgm3J1zBuXSlM11CbgxmTa5hEGaWA966C6N/tpW2/ISfFFw57B6ZvgKZax0ur+ElHzw1bXZaCsKeuZYxPNEIEwTV9MmTO1cH1yk8dLL1k21/RU9scLBp5dj4EiQRAYugjTt9n1ePxWXYQpWHU1C64sfppie11FHy8fhKRVwU0nOv9jMrHeGU/AbP0rnyrxrXwUsaVo7o5J5YOPDoNIhuS+ogiCU3g+orkLB0m018anQpDbm92uCtiM3Thy63A/jhpOPE/6y62/WRvpH1ZK41Gz9aYn4dNpPf71XdN5WGNQTiaW21/Fbd4fBMbo+2P//8alWNQ/4mtcMVqK7tsABv6ggqC6P56IMA+JAeGWsH5jXR4Qz6WHRzkagNeiES1xoyAaHmW6hMGHrYEFZ4rArTNe7zjP7QDWFSMEctX9EACNsKDyZ5rG0MtGO23xecsSO1/wiqDfDBu+7NAwBRb03xCwZD4FJa0Lmfeb/Vl0sfC6GidMkzMcb6/NU1RLmP1euteuckbUtkILFf8CL+InZ2fuRTnTIS1UXGnv0obulbyz1RTlX4RJGpV5WVLheKxi8Kjjn+VfUt4Dhx/PXGYWXL3wii051YStYsKmtkFEsaflJ5NY9tWNmkSajQBckFabAFfpPeL8OYeO+O4CXoi+Rmx4kutT2B8t6A1uE6Ydy6DfIIfbHAXT4m1/HuuWvUiJ8BSCgDR+VPbEWyVS8kXz9l5MldUupiwzJmV2E6mRRUvrD+AHKHf89gXftbbTMrk/JJh1P/+FPlQzYuXDl70X0jsMmJVxaU8VnpcwdtJZ8FQq4rwibOS/+mw+45ONfwv08ZCN5UWas8qLcwUv2fSm7bZXBuxWpmq66rPZ+yrmGIb1DyQiab3/ZAxuNX04ye8lKYGUK17D6AnONp2uEpKletmTwj85//krkuEtwXdVBXqy1bjH4qKkydVevhd3hnkYbRgnK7BLk4UR7pkdiwuEncmvgfgHZHC+kUtRuix5RIEcCvdGxal154y25Dk42yDD5flVU8Mt9uZXlHVC420uQNg9HwVeaPVB02H9/ZWgkVpVlA3dWokALhC1DvfAYLTxejb6WVlI6jkEqNfxwsIcdqAvlhUFhB3B9FictPtbwsAZ81vk85NaE/iNzXNYBzgz2a8fVgKW6o9FytLuYUiw/crT1tJLTqFF1pBUbGIiTnKXGWyLFcoHYxqC4j2U2STDqaOywrFZd3iiI/0rMWJFvqelcyC4wiRHHlpY5Z9GWgDmugx6rNYbWnIfBkYLtUexg0C+IcNRHA9aCq828+qgeDhicT5fVnQpu0EOvWlIWXIyz+gF+sUhNSrKjUhZWgt51W9G83E9vKJcvBMdaLz1g9HNI9Z6Sq8WbC4YU9D9lmaLb0AJuEoVymC1rC8g3wW8jZyTprbBOYVh+LbXtDwHJXqpavQGyqBlMR1mcnYbZkBikHhp1L8ELJN3r9hfSdMBPTvZLSEGmyqI1rV6l2OoaZGo64goVwvp1WKECob10E96/fcTmO0xh8g1NBeK0qBxAGfu0ValnvPG/YIthCnA4meeejVPrYEFTmXIjdDKbWCvF83+oGFmz5mMVGVyw4C8kEIOD8MIi8hVnexwvjLtrjvjFCa8ndhhw8hKZ+F5oFSMveWxM1I7IiFOenM3U4Xsnk61GofSpxGTqpm05Tno4O0wIf6ut0Q3MeuYhy/4KkQ4tZxrUWoqBRqYHIq/AAaDET0mPBA2P+Txe+7cAN+PZrS8nWBgRo2rnP8nbaGZWcztk2hxFAmEq2owXczVDJN+dbJp0CB1jcxQ/3tviHZ0/+y0OIrdy3Z2eBaPyYb8kWlTqRYVmasG03k83yvv8obm6EpanoPHTBG2p9L7neSYzDk+Y0lF6N0j4uzmhIMkFduFyK937SATll9GxMFx2YRMszY+oga0Ld0tw/sQVvwMFS2W9cS0sqbKkVQ8XdyX4sisiwywNt/aiWOMMa786O90m2ZqV1PoNKPEAZ5REfZsrvsWAFe4qMDCSoYJZcTCnfQ+8lorJkGD5/jQBTaXvQV9hujjeuJx6kRDL21hMmJYQPiSwv+g7ZWGSyIj/a22eGfNDOBL4WuF37nsT1tGnkT5Iz4kMjf1M0jEFgJ+8aFKQvhvFTY4UzXLZZ/HKeZGWxa5sl26d4Hr86U6gTy9sYE0vmBjiQNwSVlthi/zX9uE+0olZILZActPhh6CcXY3Z56EiANXRHUMQZV+a6HWfVyFcLryplk3CjtZAG2hUxkhm3NsNQeBGHTWTEDR3qq7P6fSNul2K+Rs7r38i57a0PnYVK2CHbt672VsmAXJKQJaXwwpdSofI6tklHmsJFOvRVQE+TlUVrzn+Ud5147LKRLBH5sVwccvY6l458ePQqpo0qLniB0VS6JgqatQrlLpDV2F0oaOHQosiEdY0sfLjhNj5cQprL2C/n0XDbwx9RfJNGb27URLZsGlrnobQJUMrHOWqXEXrbNpX/Sp2bP6p7Fs+ozp9SddwcXq7FIg/LYitb6IskujPwmBRTCdhj1kIf4oMqp2NepkXvHVKVrnYTLhl/KyQAyzUwUBH+UPiNWwmsKAm9xuXMLXGFpwYx05wYZPlfR1fbe/EwHvJslrc5aRD0Tp9FSgEVBAhrFjaZW1+qryDtYaYG6CbUtw82EyK+gd1s+LgvXNFHfmTbj59m31ZHl8uwpfCyjpZrj7mf0RWEVhNSDaSDtS5cQBvt5p43tYeXqsP3LU0kUyHTFCWE+zPcsaQFrtvY+RhXKbrLWw6mvk38l18lzEIOQNILGVRBlX1dsuUPN5IiTngPLxbme9W0MS5WKFgXm8XBdoW6XDb7xoKIHCNywkXcv/juyNdTf9Kp0zje/847hSgvWjidg+TGYu53van1Srklkx1SZMu8SXObB+oq3gwC6UeQjbCWEFYH81dyyV9khuDQKHRbYJf6DmaIOj0g6wSJDQ7I452DGSUpKY2lVIKMO/kI/95zUkKt2WGDiV/E059G+R0k5PXmD2yDckOeY7q4YwW3A9ozmYpN+2a7K4mise1MnyU6i/E6CzR05cnB9AWL8sEIAxDQIoG7PUeRF61V23ZpPCB4I+W9YqQ9XAPcMuGFtTG6ZcQ98cWF4nM7wUWR2vV+/jieZH0cwOKaf+kweSiJPkpxWTuGi9nno2tCV8gdbMOpG4rxCrqLVfZhVo+kLBdw0B3zrrJRqTv0EqU3n/ObFoX/I7SNyNzaWmn5eqFkLDmGzBXZL3Z/mbuJTDQAsmvF5Uq5VU34GMaP1C+AxteFi5lAIuJteseUeSy5i2ptNHZn5Zj09XmcC7OHg10yse9L3ZpvTxff+oLmhLWoQcrY3Hd+aXiN7s4/zuHYxUk+1uAyLw4mNC5zAEsYBAQC1j0H56qm76iYIktzRFaBDPzzO67bZhdnUAwgn0IRDYM+UoyGx8ZnLqtWGc0d288cJj96tWHyE9cJCWzA+prGkBdOpsBH08rwaCmPmlemO33qmu08NzvtzWwl/b1L5qE8xTMmm0O6yLQ6e7ovlC52DlwY2vDQFofIhX4ZOyjFAergBYSpfOydRQLv2l3q3zbqNJuXuJCd8RhGIqt7eaiZSUKvlcJhElrICvhQ8dr2BOs3pO5bvHasaBBTJlU6CFv4YWGeQmjMRn1A1be/XX29quiLkgqj+73JbD7NQIv1CBC7QyZPuQLSl309FbMl7fBueegjdaih4nxfgW7ixSvCG/88ksFc6dp5xIBeLBTJ/b2WuRdj9RJq7Mkhf6B36vSFWflyzkEf2491k1evAseO6KCG1UDVD8WXNrR4V64uRK8QUX5eVDL9fWbvbNV/OC4eZXJlUA/lJcoj8/gA80hlo0+kwqtskhzyLTPROKPS+v9Jn1t3NXeJ5bEjPO421jWio1fM13scys");const AA=o(_),BA=o(_),gA=o(_),QA=w(_),CA=o(_),eA=_()&&function(A){const B=o(A),g=o(A),Q=o(A),C=o(A),e=o(A),w=o(A),E=o(A),t=o(A),D=65039,r=8419;function n(A,g){let Q=A[g],t=A[g+1],o=E(Q);if(o&&t&&w(t))return[2,[Q,t]];let r=o||C(Q);if(t==D){if(r)return[2,[Q]];if(e(Q))return[2,[Q,D]]}return o||r||B(Q)||w(Q)?[1,[Q]]:void 0}return function(A,C){let e=A[C],w=A.length;if(C+1<w&&B(e)){let g=A[C+1];if(B(g))return[2,[e,g]]}let E=g(e);if(C+1<w&&E&&A[C+1]==r)return[2,[e,r]];if(C+2<w&&(E||Q(e))&&A[C+1]==D&&A[C+2]==r)return[3,E?[e,r]:[e,D,r]];let o=n(A,C);if(!o)return[0];let[I,i]=o;I+=C;let c=!1;for(;I+1<w&&8205===A[I];){let B=n(A,I+1);if(!B)break;c=!0,I+=1+B[0],i.push(8205,...B[1])}if(!c&&I+2<w&&t(A[I])){let B=I+1;for(;B+1<w&&t(A[B]);)B++;if(917631==A[B++])return[B-C,i]}return[I-C,i]}}(_);function wA(A){return A.flatMap((({e:A,v:B})=>A??J(B)))}function EA(A,B){return new Error(`Disallowed label "${c(String.fromCodePoint(...A))}": ${B}`)}function tA(A){const B=45;let g=u(f(A),eA,(A=>{if(AA(A))return;if(gA(A))return[];if(BA(A))return[A];let B=n(QA,A);if(B)return B;throw new Error(`Disallowed character "${c(String.fromCodePoint(A))}"`)})).map((A=>{let g=wA(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=F(g.slice(4)),[A]=u(B,eA,(A=>BA(A)?[A]:[]));let Q=wA(A);if(B.length!=Q.length||!B.every(((A,B)=>A==Q[B])))throw new Error("not normalized")}catch(A){throw EA(g,`punycode: ${A.message}`)}g=B}let Q=A.flatMap((({v:A})=>A??[]));if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw EA(g,"invalid label extension");if(g[0]==B)throw EA(g,"leading hyphen");if(g[g.length-1]==B)throw EA(g,"trailing hyphen");if(CA(g[0]))throw EA(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&N(A[B-1]))continue;if(B>0&&B<g){let Q=B-1;for(;Q>0&&l(A[Q]);)Q--;if(U(A[Q])){let Q=B+1;for(;Q<g&&l(A[Q]);)Q++;if(s(A[Q]))continue}}break;case 8205:if(B>0&&N(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&G(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&k(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${c(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>R(A))))throw new Error("Disallowed katakana")}(Q)}catch(A){throw EA(g,A.message)}}return{tokens:A,cps:g,text:Q}}));if(g.some((A=>A.text.some((A=>r(y,A)||r(W,A))))))for(let{text:A,cps:B}of g)try{j(A)}catch(A){throw EA(B,`bidi: ${A.message}`)}return g.map((A=>String.fromCodePoint(...A.cps))).join(".")}function DA(A){return u(f(A),eA,(A=>{if(AA(A))return{};if(BA(A))return[A];if(gA(A))return{i:A};let B=n(QA,A);return B?{m:B,u:[A]}:{d:A}}))[0]}export{b as BUILT,$ as IDNA,v as UNICODE,q as VERSION,I as compare_arrays,tA as ens_normalize,DA as ens_tokenize,M as escape_name_for_html,c as escape_unicode,J as nfc,X as nfc0,S as nfd,m as nfd0,F as puny_decode,i as quote_cp,u as tokenized_idna};

@@ -262,6 +262,10 @@ function decode_arithmetic(bytes) {

function hex_cp(cp) {
return cp.toString(16).toUpperCase().padStart(2, '0');
}
// my suggested inline ascii-safe unicode escape
// this is ES6 \u{X} without the \u
function quote_cp(cp) {
return `{${cp.toString(16).padStart(2, '0').toUpperCase()}}`;
return `{${hex_cp(cp)}}`;
}

@@ -715,5 +719,5 @@

var PAYLOAD = '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';
var PAYLOAD = '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';
// built: 2021-12-23T21:04:49.349Z
// built: 2021-12-25T07:41:57.843Z
let r = decode_payload(PAYLOAD);

@@ -731,4 +735,4 @@ const STOP = read_member_function(r);

// string but you'd have to retokenize
function flatten_label_tokens(tokens) {
return tokens.flatMap(token => token.e ?? nfc(token.v));
function flatten_tokens(tokens) {
return tokens.flatMap(({e, v}) => e ?? nfc(v));
}

@@ -783,3 +787,3 @@

}).map(tokens => {
let cps = flatten_label_tokens(tokens);
let cps = flatten_tokens(tokens);
// [Processing] 4.) Convert/Validate

@@ -797,3 +801,3 @@ if (cps.length >= 4 && cps[2] == HYPHEN && cps[3] == HYPHEN) { // "**--"

[tokens] = tokenized_idna(cps_decoded, EMOJI_PARSER, cp => VALID(cp) ? [cp] : []);
let expected = flatten_label_tokens(tokens);
let expected = flatten_tokens(tokens);
if (cps_decoded.length != expected.length || !cps_decoded.every((x, i) => x == expected[i])) throw new Error('not normalized');

@@ -809,2 +813,6 @@ } catch (err) {

}
// flatten textual part of token to a single list of code-points
// emoji should be invisible to context and bidi rules
// could replace emoji w/a generic character
let text = tokens.flatMap(({v}) => v ?? []);
if (cps.length > 0) {

@@ -828,5 +836,3 @@ // [Validity] 1.) The label must be in Unicode Normalization Form NFC.

try {
// emoji should be invisible to context rules
// IDEA: replace emoji w/a generic character
validate_context(tokens.flatMap(({v}) => v ?? []));
validate_context(text);
} catch (err) {

@@ -837,3 +843,3 @@ throw label_error(cps, err.message);

}
return tokens;
return {tokens, cps, text};
});

@@ -843,3 +849,3 @@ // [Validity] 8.) If CheckBidi, and if the domain name is a Bidi domain name, then the label

return labels.map(tokens => String.fromCodePoint(...flatten_label_tokens(tokens))).join('.');
return labels.map(x => String.fromCodePoint(...x.cps)).join('.');
}

@@ -851,10 +857,10 @@

// this is much nicer than exposing the predicates
// [[{m:0x52, to:[0x72]},{e:[0x1F4A9]},{t:[61,66,66]}],[{t:[65,74,68]}]]
// [{m:[0x72], u:[0x52]},{e:[0x1F4A9],u:[0x1F4A9]},{t:[61,66,66]},{},{t:[65,74,68]}]
function ens_tokenize(name) {
return tokenized_idna(explode_cp(name), EMOJI_PARSER, cp => {
if (STOP(cp)) return {};
if (VALID(cp)) return [cp];
if (VALID(cp)) return [cp]; // this gets merged into v
if (IGNORED(cp)) return {i: cp};
let mapped = lookup_mapped(MAPPED, cp);
if (mapped) return {m: cp, u: mapped};
if (mapped) return {m: mapped, u: [cp]};
return {d: cp};

@@ -861,0 +867,0 @@ })[0];

@@ -1,1 +0,1 @@

function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let C=g(),Q=1,E=[0,1];for(let A=1;A<C;A++)E.push(Q+=g());let w=g(),e=B;B+=w;let t=0,r=0;function o(){return 0==t&&(r=r<<8|A[B++],t=8),r>>--t&1}const D=2**31,I=D>>>1,i=D-1;let f=0;for(let A=0;A<31;A++)f=f<<1|o();let n=[],c=0,N=D;for(;;){let A=Math.floor(((f-c+1)*Q-1)/N),B=0,g=C;for(;g-B>1;){let C=B+g>>>1;A<E[C]?g=C:B=C}if(0==B)break;n.push(B);let w=c+Math.floor(N*E[B]/Q),e=c+Math.floor(N*E[B+1]/Q)-1;for(;0==((w^e)&I);)f=f<<1&i|o(),w=w<<1&i,e=e<<1&i|1;for(;w&~e&536870912;)f=f&I|f<<1&i>>>1|o(),w=w<<1^I,e=(e^I)<<1|I|1;c=w,N=1+e-w}let M=C-4;return n.map((B=>{switch(B-M){case 3:return M+65792+(A[e++]<<16|A[e++]<<8|A[e++]);case 2:return M+256+(A[e++]<<8|A[e++]);case 1:return M+A[e++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let C=0;C<A;C++)g[C]=1+B();return g}function C(A,B){let g=Array(A);for(let C=0,Q=-1;C<A;C++)g[C]=Q+=1+B();return g}function Q(A,g){let C=Array(A);for(let Q=0,E=0;Q<A;Q++)C[Q]=E+=B(g());return C}function E(A){let B=C(A(),A),Q=A(),E=C(Q,A),w=g(Q,A);return[...B.map((A=>[A,1])),...E.map(((A,B)=>[A,w[B]]))].sort(((A,B)=>A[0]-B[0]))}function w(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(r(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(t(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function e(A,g,C){if(0==g)return[];let E=[Q(A,C)];for(let Q=1;Q<g;Q++){let g=Array(A),w=E[Q-1];for(let Q=0;Q<A;Q++)g[Q]=w[Q]+B(C());E.push(g)}return E}function t(A,B){let g=1+B(),Q=C(g,B),E=e(g,A,B);return Q.map(((A,B)=>[A,E.map((A=>A[B]))]))}function r(A,B){let Q=1+B(),E=B(),w=1+B(),t=C(w,B),r=g(w,B),o=e(w,A,B);return t.map(((A,B)=>[A,o.map((A=>A[B])),r[B],Q,E]))}function o(A){let B=E(A);return A=>D(B,A)}function D(A,B){for(let[g,C]of A){let A=B-g;if(A<0)break;if(A<C)return!0}return!1}function I(A,B){for(let[g,C,Q,E,w]of A){let A=B-g;if(A<0)break;if(Q>0){if(A<E*Q&&A%E==0){let B=A/E;return C.map((A=>A+B*w))}}else if(0==A)return C}}function i(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>`{${A.codePointAt(0).toString(16).padStart(2,"0").toUpperCase()}}`))}function f(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function n(A,B,g){let C=[],Q=[],E=[Q];function w(){C.length>0&&(Q.push({v:C}),C=[])}for(let e=0;e<A.length;e++){if(B){let[g,C]=B(A,e);if(g>0){w(),Q.push({e:C,u:A.slice(e,e+g)}),e+=g-1;continue}}let t=g(A[e]);Array.isArray(t)?C.push(...t):(w(),t?Q.push(t):(Q=[],E.push(Q)))}return w(),E}let c=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const N=o(c),M=o(c),Y=o(c),l=o(c),K=o(c),G=o(c),u=o(c);let F=A("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");const T=Array(1+F()).fill().map((()=>E(F))),U=w(F),h=E(F),s=44032;function P(A){return A>=s&&A<55204}function k(A,B){if(A<128)B(A);else if(P(A)){let g=A-s,C=g%588/28|0,Q=g%28;B(4352+(g/588|0)),B(4449+C),Q>0&&B(4519+Q)}else{let g=I(U,A);if(g)for(let A of g)k(A,B);else B(A)}}function L(A,B){let g=[];function C(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function Q(A){let Q=1+T.findIndex((B=>D(B,A)));0==Q?(C(),B(Q,A)):g.push([Q,A])}A.forEach((A=>k(A,Q))),C()}let R=A("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");const H=o(R),a=o(R),S=o(R),O=w(R),y=o(R),z=R()&&function(A){const B=o(A),g=o(A),C=o(A),Q=o(A),E=o(A),w=o(A),e=o(A),t=o(A),r=65039,D=8419;function I(A,g){let C=A[g],t=A[g+1],o=e(C);if(o&&t&&w(t))return[2,[C,t]];let D=o||Q(C);if(t==r){if(D)return[2,[C]];if(E(C))return[2,[C,r]]}return o||D||B(C)||w(C)?[1,[C]]:void 0}return function(A,Q){let E=A[Q],w=A.length;if(Q+1<w&&B(E)){let g=A[Q+1];if(B(g))return[2,[E,g]]}let e=g(E);if(Q+1<w&&e&&A[Q+1]==D)return[2,[E,D]];if(Q+2<w&&(e||C(E))&&A[Q+1]==r&&A[Q+2]==D)return[3,e?[E,D]:[E,r,D]];let o=I(A,Q);if(!o)return[0];let[i,f]=o;i+=Q;let n=!1;for(;i+1<w&&8205===A[i];){let B=I(A,i+1);if(!B)break;n=!0,i+=1+B[0],f.push(8205,...B[1])}if(!n&&i+2<w&&t(A[i])){let B=i+1;for(;B+1<w&&t(A[B]);)B++;if(917631==A[B++])return[B-Q,f]}return[i-Q,f]}}(R);function J(A){return A.flatMap((A=>A.e??function(A){let B=[],g=[],C=-1,Q=0;return L(A,(function(A,E){if(-1===C)0==A?C=E:B.push(E);else if(Q>0&&Q>=A)0==A?(B.push(C,...g),g.length=0,C=E):g.push(E),Q=A;else{let w=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return s+(588*(A-4352)+28*(B-4449));if(P(A)&&B>4519&&B<4547&&(A-s)%28==0)return A+(B-4519);for(let[g,C]of U)if(2==C.length&&C[0]==A&&C[1]==B){if(D(h,g))break;return g}return-1}(C,E);w>=0?C=w:0==Q&&0==A?(B.push(C),C=E):(g.push(E),Q=A)}})),C>=0&&B.push(C),B.push(...g),B}(A.v)))}function Z(A,B){return new Error(`Disallowed label "${i(String.fromCodePoint(...A))}": ${B}`)}function x(A){const B=45;return n(f(A),z,(A=>{if(H(A))return;if(S(A))return[];if(a(A))return[A];let B=I(O,A);if(B)return B;throw new Error(`Disallowed character "${i(String.fromCodePoint(A))}"`)})).map((A=>{let g=J(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=function(A){let B=[],g=A.lastIndexOf(45);for(let C=0;C<g;C++){let g=A[C];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let C=0,Q=128,E=72;for(;g<A.length;){let w=C;for(let B=1,Q=36;;Q+=36){if(g>=A.length)throw new Error("invalid encoding");let w=A[g++];if(w>=48&&w<=57)w-=22;else{if(!(w>=97&&w<=122))throw new Error(`invalid character ${w}`);w-=97}C+=w*B;const e=Q<=E?1:Q>=E+26?26:Q-E;if(w<e)break;B*=36-e}let e=B.length+1,t=0==w?C/700|0:C-w>>1;t+=t/e|0;let r=0;for(;t>455;r+=36)t=t/35|0;E=r+36*t/(t+38)|0,Q+=C/e|0,C%=e,B.splice(C++,0,Q)}return B}(g.slice(4)),[A]=n(B,z,(A=>a(A)?[A]:[]));let C=J(A);if(B.length!=C.length||!B.every(((A,B)=>A==C[B])))throw new Error("not normalized")}catch(A){throw Z(g,`punycode: ${A.message}`)}g=B}if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw Z(g,"invalid label extension");if(g[0]==B)throw Z(g,"leading hyphen");if(g[g.length-1]==B)throw Z(g,"trailing hyphen");if(y(g[0]))throw Z(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&N(A[B-1]))continue;if(B>0&&B<g){let C=B-1;for(;C>0&&M(A[C]);)C--;if(Y(A[C])){let C=B+1;for(;C<g&&M(A[C]);)C++;if(l(A[C]))continue}}break;case 8205:if(B>0&&N(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&K(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&G(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${i(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>u(A))))throw new Error("Disallowed katakana")}(A.flatMap((({v:A})=>A??[])))}catch(A){throw Z(g,A.message)}}return A})).map((A=>String.fromCodePoint(...J(A)))).join(".")}function V(A){return n(f(A),z,(A=>{if(H(A))return{};if(a(A))return[A];if(S(A))return{i:A};let B=I(O,A);return B?{m:A,u:B}:{d:A}}))[0]}export{x as ens_normalize,V as ens_tokenize};
function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let C=g(),Q=1,E=[0,1];for(let A=1;A<C;A++)E.push(Q+=g());let w=g(),e=B;B+=w;let D=0,t=0;function o(){return 0==D&&(t=t<<8|A[B++],D=8),t>>--D&1}const r=2**31,i=r>>>1,I=r-1;let n=0;for(let A=0;A<31;A++)n=n<<1|o();let c=[],M=0,f=r;for(;;){let A=Math.floor(((n-M+1)*Q-1)/f),B=0,g=C;for(;g-B>1;){let C=B+g>>>1;A<E[C]?g=C:B=C}if(0==B)break;c.push(B);let w=M+Math.floor(f*E[B]/Q),e=M+Math.floor(f*E[B+1]/Q)-1;for(;0==((w^e)&i);)n=n<<1&I|o(),w=w<<1&I,e=e<<1&I|1;for(;w&~e&536870912;)n=n&i|n<<1&I>>>1|o(),w=w<<1^i,e=(e^i)<<1|i|1;M=w,f=1+e-w}let Y=C-4;return c.map((B=>{switch(B-Y){case 3:return Y+65792+(A[e++]<<16|A[e++]<<8|A[e++]);case 2:return Y+256+(A[e++]<<8|A[e++]);case 1:return Y+A[e++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let C=0;C<A;C++)g[C]=1+B();return g}function C(A,B){let g=Array(A);for(let C=0,Q=-1;C<A;C++)g[C]=Q+=1+B();return g}function Q(A,g){let C=Array(A);for(let Q=0,E=0;Q<A;Q++)C[Q]=E+=B(g());return C}function E(A){let B=C(A(),A),Q=A(),E=C(Q,A),w=g(Q,A);return[...B.map((A=>[A,1])),...E.map(((A,B)=>[A,w[B]]))].sort(((A,B)=>A[0]-B[0]))}function w(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(t(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(D(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function e(A,g,C){if(0==g)return[];let E=[Q(A,C)];for(let Q=1;Q<g;Q++){let g=Array(A),w=E[Q-1];for(let Q=0;Q<A;Q++)g[Q]=w[Q]+B(C());E.push(g)}return E}function D(A,B){let g=1+B(),Q=C(g,B),E=e(g,A,B);return Q.map(((A,B)=>[A,E.map((A=>A[B]))]))}function t(A,B){let Q=1+B(),E=B(),w=1+B(),D=C(w,B),t=g(w,B),o=e(w,A,B);return D.map(((A,B)=>[A,o.map((A=>A[B])),t[B],Q,E]))}function o(A){let B=E(A);return A=>r(B,A)}function r(A,B){for(let[g,C]of A){let A=B-g;if(A<0)break;if(A<C)return!0}return!1}function i(A,B){for(let[g,C,Q,E,w]of A){let A=B-g;if(A<0)break;if(Q>0){if(A<E*Q&&A%E==0){let B=A/E;return C.map((A=>A+B*w))}}else if(0==A)return C}}function I(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>{return`{${B=A.codePointAt(0),B.toString(16).toUpperCase().padStart(2,"0")}}`;var B}))}function n(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function c(A,B,g){let C=[],Q=[],E=[Q];function w(){C.length>0&&(Q.push({v:C}),C=[])}for(let e=0;e<A.length;e++){if(B){let[g,C]=B(A,e);if(g>0){w(),Q.push({e:C,u:A.slice(e,e+g)}),e+=g-1;continue}}let D=g(A[e]);Array.isArray(D)?C.push(...D):(w(),D?Q.push(D):(Q=[],E.push(Q)))}return w(),E}let M=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const f=o(M),Y=o(M),N=o(M),U=o(M),l=o(M),F=o(M),u=o(M);let K=A("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");const k=Array(1+K()).fill().map((()=>E(K))),G=w(K),s=E(K),R=44032;function T(A){return A>=R&&A<55204}function L(A,B){if(A<128)B(A);else if(T(A)){let g=A-R,C=g%588/28|0,Q=g%28;B(4352+(g/588|0)),B(4449+C),Q>0&&B(4519+Q)}else{let g=i(G,A);if(g)for(let A of g)L(A,B);else B(A)}}function a(A,B){let g=[];function C(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function Q(A){let Q=1+k.findIndex((B=>r(B,A)));0==Q?(C(),B(Q,A)):g.push([Q,A])}A.forEach((A=>L(A,Q))),C()}let P=A("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");const H=o(P),h=o(P),J=o(P),S=w(P),x=o(P),y=P()&&function(A){const B=o(A),g=o(A),C=o(A),Q=o(A),E=o(A),w=o(A),e=o(A),D=o(A),t=65039,r=8419;function i(A,g){let C=A[g],D=A[g+1],o=e(C);if(o&&D&&w(D))return[2,[C,D]];let r=o||Q(C);if(D==t){if(r)return[2,[C]];if(E(C))return[2,[C,t]]}return o||r||B(C)||w(C)?[1,[C]]:void 0}return function(A,Q){let E=A[Q],w=A.length;if(Q+1<w&&B(E)){let g=A[Q+1];if(B(g))return[2,[E,g]]}let e=g(E);if(Q+1<w&&e&&A[Q+1]==r)return[2,[E,r]];if(Q+2<w&&(e||C(E))&&A[Q+1]==t&&A[Q+2]==r)return[3,e?[E,r]:[E,t,r]];let o=i(A,Q);if(!o)return[0];let[I,n]=o;I+=Q;let c=!1;for(;I+1<w&&8205===A[I];){let B=i(A,I+1);if(!B)break;c=!0,I+=1+B[0],n.push(8205,...B[1])}if(!c&&I+2<w&&D(A[I])){let B=I+1;for(;B+1<w&&D(A[B]);)B++;if(917631==A[B++])return[B-Q,n]}return[I-Q,n]}}(P);function p(A){return A.flatMap((({e:A,v:B})=>A??function(A){let B=[],g=[],C=-1,Q=0;return a(A,(function(A,E){if(-1===C)0==A?C=E:B.push(E);else if(Q>0&&Q>=A)0==A?(B.push(C,...g),g.length=0,C=E):g.push(E),Q=A;else{let w=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return R+(588*(A-4352)+28*(B-4449));if(T(A)&&B>4519&&B<4547&&(A-R)%28==0)return A+(B-4519);for(let[g,C]of G)if(2==C.length&&C[0]==A&&C[1]==B){if(r(s,g))break;return g}return-1}(C,E);w>=0?C=w:0==Q&&0==A?(B.push(C),C=E):(g.push(E),Q=A)}})),C>=0&&B.push(C),B.push(...g),B}(B)))}function z(A,B){return new Error(`Disallowed label "${I(String.fromCodePoint(...A))}": ${B}`)}function V(A){const B=45;return c(n(A),y,(A=>{if(H(A))return;if(J(A))return[];if(h(A))return[A];let B=i(S,A);if(B)return B;throw new Error(`Disallowed character "${I(String.fromCodePoint(A))}"`)})).map((A=>{let g=p(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=function(A){let B=[],g=A.lastIndexOf(45);for(let C=0;C<g;C++){let g=A[C];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let C=0,Q=128,E=72;for(;g<A.length;){let w=C;for(let B=1,Q=36;;Q+=36){if(g>=A.length)throw new Error("invalid encoding");let w=A[g++];if(w>=48&&w<=57)w-=22;else{if(!(w>=97&&w<=122))throw new Error(`invalid character ${w}`);w-=97}C+=w*B;const e=Q<=E?1:Q>=E+26?26:Q-E;if(w<e)break;B*=36-e}let e=B.length+1,D=0==w?C/700|0:C-w>>1;D+=D/e|0;let t=0;for(;D>455;t+=36)D=D/35|0;E=t+36*D/(D+38)|0,Q+=C/e|0,C%=e,B.splice(C++,0,Q)}return B}(g.slice(4)),[A]=c(B,y,(A=>h(A)?[A]:[]));let C=p(A);if(B.length!=C.length||!B.every(((A,B)=>A==C[B])))throw new Error("not normalized")}catch(A){throw z(g,`punycode: ${A.message}`)}g=B}let C=A.flatMap((({v:A})=>A??[]));if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw z(g,"invalid label extension");if(g[0]==B)throw z(g,"leading hyphen");if(g[g.length-1]==B)throw z(g,"trailing hyphen");if(x(g[0]))throw z(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&f(A[B-1]))continue;if(B>0&&B<g){let C=B-1;for(;C>0&&Y(A[C]);)C--;if(N(A[C])){let C=B+1;for(;C<g&&Y(A[C]);)C++;if(U(A[C]))continue}}break;case 8205:if(B>0&&f(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&l(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&F(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${I(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>u(A))))throw new Error("Disallowed katakana")}(C)}catch(A){throw z(g,A.message)}}return{tokens:A,cps:g,text:C}})).map((A=>String.fromCodePoint(...A.cps))).join(".")}function W(A){return c(n(A),y,(A=>{if(H(A))return{};if(h(A))return[A];if(J(A))return{i:A};let B=i(S,A);return B?{m:B,u:[A]}:{d:A}}))[0]}export{V as ens_normalize,W as ens_tokenize};

@@ -262,6 +262,10 @@ function decode_arithmetic(bytes) {

function hex_cp(cp) {
return cp.toString(16).toUpperCase().padStart(2, '0');
}
// my suggested inline ascii-safe unicode escape
// this is ES6 \u{X} without the \u
function quote_cp(cp) {
return `{${cp.toString(16).padStart(2, '0').toUpperCase()}}`;
return `{${hex_cp(cp)}}`;
}

@@ -600,5 +604,5 @@

var PAYLOAD = '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';
var PAYLOAD = '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';
// built: 2021-12-23T21:04:50.177Z
// built: 2021-12-25T07:41:57.843Z
let r = decode_payload(PAYLOAD);

@@ -616,4 +620,4 @@ const STOP = read_member_function(r);

// string but you'd have to retokenize
function flatten_label_tokens(tokens) {
return tokens.flatMap(token => token.e ?? nfc(token.v));
function flatten_tokens(tokens) {
return tokens.flatMap(({e, v}) => e ?? nfc(v));
}

@@ -668,3 +672,3 @@

}).map(tokens => {
let cps = flatten_label_tokens(tokens);
let cps = flatten_tokens(tokens);
// [Processing] 4.) Convert/Validate

@@ -682,3 +686,3 @@ if (cps.length >= 4 && cps[2] == HYPHEN && cps[3] == HYPHEN) { // "**--"

[tokens] = tokenized_idna(cps_decoded, EMOJI_PARSER, cp => VALID(cp) ? [cp] : []);
let expected = flatten_label_tokens(tokens);
let expected = flatten_tokens(tokens);
if (cps_decoded.length != expected.length || !cps_decoded.every((x, i) => x == expected[i])) throw new Error('not normalized');

@@ -694,2 +698,6 @@ } catch (err) {

}
// flatten textual part of token to a single list of code-points
// emoji should be invisible to context and bidi rules
// could replace emoji w/a generic character
let text = tokens.flatMap(({v}) => v ?? []);
if (cps.length > 0) {

@@ -713,5 +721,3 @@ // [Validity] 1.) The label must be in Unicode Normalization Form NFC.

try {
// emoji should be invisible to context rules
// IDEA: replace emoji w/a generic character
validate_context(tokens.flatMap(({v}) => v ?? []));
validate_context(text);
} catch (err) {

@@ -722,3 +728,3 @@ throw label_error(cps, err.message);

}
return tokens;
return {tokens, cps, text};
});

@@ -728,3 +734,3 @@ // [Validity] 8.) If CheckBidi, and if the domain name is a Bidi domain name, then the label

return labels.map(tokens => String.fromCodePoint(...flatten_label_tokens(tokens))).join('.');
return labels.map(x => String.fromCodePoint(...x.cps)).join('.');
}

@@ -736,10 +742,10 @@

// this is much nicer than exposing the predicates
// [[{m:0x52, to:[0x72]},{e:[0x1F4A9]},{t:[61,66,66]}],[{t:[65,74,68]}]]
// [{m:[0x72], u:[0x52]},{e:[0x1F4A9],u:[0x1F4A9]},{t:[61,66,66]},{},{t:[65,74,68]}]
function ens_tokenize(name) {
return tokenized_idna(explode_cp(name), EMOJI_PARSER, cp => {
if (STOP(cp)) return {};
if (VALID(cp)) return [cp];
if (VALID(cp)) return [cp]; // this gets merged into v
if (IGNORED(cp)) return {i: cp};
let mapped = lookup_mapped(MAPPED, cp);
if (mapped) return {m: cp, u: mapped};
if (mapped) return {m: mapped, u: [cp]};
return {d: cp};

@@ -746,0 +752,0 @@ })[0];

@@ -1,1 +0,1 @@

function A(A){let r=function(A){let r=0;function t(){return A[r++]<<8|A[r++]}let B=t(),e=1,C=[0,1];for(let A=1;A<B;A++)C.push(e+=t());let n=t(),o=r;r+=n;let g=0,Q=0;function w(){return 0==g&&(Q=Q<<8|A[r++],g=8),Q>>--g&1}const i=2**31,f=i>>>1,E=i-1;let l=0;for(let A=0;A<31;A++)l=l<<1|w();let c=[],I=0,h=i;for(;;){let A=Math.floor(((l-I+1)*e-1)/h),r=0,t=B;for(;t-r>1;){let B=r+t>>>1;A<C[B]?t=B:r=B}if(0==r)break;c.push(r);let n=I+Math.floor(h*C[r]/e),o=I+Math.floor(h*C[r+1]/e)-1;for(;0==((n^o)&f);)l=l<<1&E|w(),n=n<<1&E,o=o<<1&E|1;for(;n&~o&536870912;)l=l&f|l<<1&E>>>1|w(),n=n<<1^f,o=(o^f)<<1|f|1;I=n,h=1+o-n}let u=B-4;return c.map((r=>{switch(r-u){case 3:return u+65792+(A[o++]<<16|A[o++]<<8|A[o++]);case 2:return u+256+(A[o++]<<8|A[o++]);case 1:return u+A[o++];default:return r-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),t=0;return()=>r[t++]}function r(A){return 1&A?~A>>1:A>>1}function t(A,r){let t=Array(A);for(let B=0;B<A;B++)t[B]=1+r();return t}function B(A,r){let t=Array(A);for(let B=0,e=-1;B<A;B++)t[B]=e+=1+r();return t}function e(A,t){let B=Array(A);for(let e=0,C=0;e<A;e++)B[e]=C+=r(t());return B}function C(A,t,B){if(0==t)return[];let C=[e(A,B)];for(let e=1;e<t;e++){let t=Array(A),n=C[e-1];for(let e=0;e<A;e++)t[e]=n[e]+r(B());C.push(t)}return C}function n(A,r){let t=1+r(),e=B(t,r),n=C(t,A,r);return e.map(((A,r)=>[A,n.map((A=>A[r]))]))}function o(A,r){let e=1+r(),n=r(),o=1+r(),g=B(o,r),Q=t(o,r),w=C(o,A,r);return g.map(((A,r)=>[A,w.map((A=>A[r])),Q[r],e,n]))}function g(A){let r=function(A){let r=B(A(),A),e=A(),C=B(e,A),n=t(e,A);return[...r.map((A=>[A,1])),...C.map(((A,r)=>[A,n[r]]))].sort(((A,r)=>A[0]-r[0]))}(A);return A=>function(A,r){for(let[t,B]of A){let A=r-t;if(A<0)break;if(A<B)return!0}return!1}(r,A)}function Q(A,r){for(let[t,B,e,C,n]of A){let A=r-t;if(A<0)break;if(e>0){if(A<C*e&&A%C==0){let r=A/C;return B.map((A=>A+r*n))}}else if(0==A)return B}}function w(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>`{${A.codePointAt(0).toString(16).padStart(2,"0").toUpperCase()}}`))}function i(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function f(A,r,t){let B=[],e=[],C=[e];function n(){B.length>0&&(e.push({v:B}),B=[])}for(let o=0;o<A.length;o++){if(r){let[t,B]=r(A,o);if(t>0){n(),e.push({e:B,u:A.slice(o,o+t)}),o+=t-1;continue}}let g=t(A[o]);Array.isArray(g)?B.push(...g):(n(),g?e.push(g):(e=[],C.push(e)))}return n(),C}let E=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const l=g(E),c=g(E),I=g(E),h=g(E),u=g(E),K=g(E),N=g(E);let G=A("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");const F=g(G),M=g(G),D=g(G),s=function(A){let r=[];for(;;){let t=A();if(0==t)break;r.push(o(t,A))}for(;;){let t=A()-1;if(t<0)break;r.push(n(t,A))}return r.flat().sort(((A,r)=>A[0]-r[0]))}(G),Y=g(G),U=G()&&function(A){const r=g(A),t=g(A),B=g(A),e=g(A),C=g(A),n=g(A),o=g(A),Q=g(A),w=65039,i=8419;function f(A,t){let B=A[t],g=A[t+1],Q=o(B);if(Q&&g&&n(g))return[2,[B,g]];let i=Q||e(B);if(g==w){if(i)return[2,[B]];if(C(B))return[2,[B,w]]}return Q||i||r(B)||n(B)?[1,[B]]:void 0}return function(A,e){let C=A[e],n=A.length;if(e+1<n&&r(C)){let t=A[e+1];if(r(t))return[2,[C,t]]}let o=t(C);if(e+1<n&&o&&A[e+1]==i)return[2,[C,i]];if(e+2<n&&(o||B(C))&&A[e+1]==w&&A[e+2]==i)return[3,o?[C,i]:[C,w,i]];let g=f(A,e);if(!g)return[0];let[E,l]=g;E+=e;let c=!1;for(;E+1<n&&8205===A[E];){let r=f(A,E+1);if(!r)break;c=!0,E+=1+r[0],l.push(8205,...r[1])}if(!c&&E+2<n&&Q(A[E])){let r=E+1;for(;r+1<n&&Q(A[r]);)r++;if(917631==A[r++])return[r-e,l]}return[E-e,l]}}(G);function a(A){return A.flatMap((A=>A.e??function(A,r){return i(String.fromCodePoint(...r).normalize("NFC"))}(0,A.v)))}function k(A,r){return new Error(`Disallowed label "${w(String.fromCodePoint(...A))}": ${r}`)}function T(A){const r=45;return f(i(A),U,(A=>{if(F(A))return;if(D(A))return[];if(M(A))return[A];let r=Q(s,A);if(r)return r;throw new Error(`Disallowed character "${w(String.fromCodePoint(A))}"`)})).map((A=>{let t=a(A);if(t.length>=4&&t[2]==r&&t[3]==r&&120==t[0]&&110==t[1]){let r;try{r=function(A){let r=[],t=A.lastIndexOf(45);for(let B=0;B<t;B++){let t=A[B];if(t>=128)throw new Error("expected ASCII");r.push(t)}t++;let B=0,e=128,C=72;for(;t<A.length;){let n=B;for(let r=1,e=36;;e+=36){if(t>=A.length)throw new Error("invalid encoding");let n=A[t++];if(n>=48&&n<=57)n-=22;else{if(!(n>=97&&n<=122))throw new Error(`invalid character ${n}`);n-=97}B+=n*r;const o=e<=C?1:e>=C+26?26:e-C;if(n<o)break;r*=36-o}let o=r.length+1,g=0==n?B/700|0:B-n>>1;g+=g/o|0;let Q=0;for(;g>455;Q+=36)g=g/35|0;C=Q+36*g/(g+38)|0,e+=B/o|0,B%=o,r.splice(B++,0,e)}return r}(t.slice(4)),[A]=f(r,U,(A=>M(A)?[A]:[]));let B=a(A);if(r.length!=B.length||!r.every(((A,r)=>A==B[r])))throw new Error("not normalized")}catch(A){throw k(t,`punycode: ${A.message}`)}t=r}if(t.length>0){if(t.length>=4&&t[2]==r&&t[3]==r)throw k(t,"invalid label extension");if(t[0]==r)throw k(t,"leading hyphen");if(t[t.length-1]==r)throw k(t,"trailing hyphen");if(Y(t[0]))throw k(t,"leading combining mark");try{!function(A){for(let r=0,t=A.length-1;r<=t;r++){switch(A[r]){case 8204:if(r>0&&l(A[r-1]))continue;if(r>0&&r<t){let B=r-1;for(;B>0&&c(A[B]);)B--;if(I(A[B])){let B=r+1;for(;B<t&&c(A[B]);)B++;if(h(A[B]))continue}}break;case 8205:if(r>0&&l(A[r-1]))continue;break;case 183:if(r>0&&r<t&&108==A[r-1]&&108==A[r+1])continue;break;case 885:if(r<t&&u(A[r+1]))continue;break;case 1523:case 1524:if(r>0&&K(A[r-1]))continue;break;default:continue}throw new Error(`No context for "${w(String.fromCodePoint(A[r]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>N(A))))throw new Error("Disallowed katakana")}(A.flatMap((({v:A})=>A??[])))}catch(A){throw k(t,A.message)}}return A})).map((A=>String.fromCodePoint(...a(A)))).join(".")}function y(A){return f(i(A),U,(A=>{if(F(A))return{};if(M(A))return[A];if(D(A))return{i:A};let r=Q(s,A);return r?{m:A,u:r}:{d:A}}))[0]}export{T as ens_normalize,y as ens_tokenize};
function A(A){let B=function(A){let B=0;function t(){return A[B++]<<8|A[B++]}let e=t(),r=1,n=[0,1];for(let A=1;A<e;A++)n.push(r+=t());let g=t(),o=B;B+=g;let C=0,w=0;function i(){return 0==C&&(w=w<<8|A[B++],C=8),w>>--C&1}const Q=2**31,c=Q>>>1,l=Q-1;let D=0;for(let A=0;A<31;A++)D=D<<1|i();let E=[],f=0,I=Q;for(;;){let A=Math.floor(((D-f+1)*r-1)/I),B=0,t=e;for(;t-B>1;){let e=B+t>>>1;A<n[e]?t=e:B=e}if(0==B)break;E.push(B);let g=f+Math.floor(I*n[B]/r),o=f+Math.floor(I*n[B+1]/r)-1;for(;0==((g^o)&c);)D=D<<1&l|i(),g=g<<1&l,o=o<<1&l|1;for(;g&~o&536870912;)D=D&c|D<<1&l>>>1|i(),g=g<<1^c,o=(o^c)<<1|c|1;f=g,I=1+o-g}let M=e-4;return E.map((B=>{switch(B-M){case 3:return M+65792+(A[o++]<<16|A[o++]<<8|A[o++]);case 2:return M+256+(A[o++]<<8|A[o++]);case 1:return M+A[o++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),t=0;return()=>B[t++]}function B(A){return 1&A?~A>>1:A>>1}function t(A,B){let t=Array(A);for(let e=0;e<A;e++)t[e]=1+B();return t}function e(A,B){let t=Array(A);for(let e=0,r=-1;e<A;e++)t[e]=r+=1+B();return t}function r(A,t){let e=Array(A);for(let r=0,n=0;r<A;r++)e[r]=n+=B(t());return e}function n(A,t,e){if(0==t)return[];let n=[r(A,e)];for(let r=1;r<t;r++){let t=Array(A),g=n[r-1];for(let r=0;r<A;r++)t[r]=g[r]+B(e());n.push(t)}return n}function g(A,B){let t=1+B(),r=e(t,B),g=n(t,A,B);return r.map(((A,B)=>[A,g.map((A=>A[B]))]))}function o(A,B){let r=1+B(),g=B(),o=1+B(),C=e(o,B),w=t(o,B),i=n(o,A,B);return C.map(((A,B)=>[A,i.map((A=>A[B])),w[B],r,g]))}function C(A){let B=function(A){let B=e(A(),A),r=A(),n=e(r,A),g=t(r,A);return[...B.map((A=>[A,1])),...n.map(((A,B)=>[A,g[B]]))].sort(((A,B)=>A[0]-B[0]))}(A);return A=>function(A,B){for(let[t,e]of A){let A=B-t;if(A<0)break;if(A<e)return!0}return!1}(B,A)}function w(A,B){for(let[t,e,r,n,g]of A){let A=B-t;if(A<0)break;if(r>0){if(A<n*r&&A%n==0){let B=A/n;return e.map((A=>A+B*g))}}else if(0==A)return e}}function i(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>{return`{${B=A.codePointAt(0),B.toString(16).toUpperCase().padStart(2,"0")}}`;var B}))}function Q(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function c(A,B,t){let e=[],r=[],n=[r];function g(){e.length>0&&(r.push({v:e}),e=[])}for(let o=0;o<A.length;o++){if(B){let[t,e]=B(A,o);if(t>0){g(),r.push({e:e,u:A.slice(o,o+t)}),o+=t-1;continue}}let C=t(A[o]);Array.isArray(C)?e.push(...C):(g(),C?r.push(C):(r=[],n.push(r)))}return g(),n}let l=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const D=C(l),E=C(l),f=C(l),I=C(l),M=C(l),u=C(l),F=C(l);let U=A("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");const a=C(U),K=C(U),Y=C(U),s=function(A){let B=[];for(;;){let t=A();if(0==t)break;B.push(o(t,A))}for(;;){let t=A()-1;if(t<0)break;B.push(g(t,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}(U),N=C(U),k=U()&&function(A){const B=C(A),t=C(A),e=C(A),r=C(A),n=C(A),g=C(A),o=C(A),w=C(A),i=65039,Q=8419;function c(A,t){let e=A[t],C=A[t+1],w=o(e);if(w&&C&&g(C))return[2,[e,C]];let Q=w||r(e);if(C==i){if(Q)return[2,[e]];if(n(e))return[2,[e,i]]}return w||Q||B(e)||g(e)?[1,[e]]:void 0}return function(A,r){let n=A[r],g=A.length;if(r+1<g&&B(n)){let t=A[r+1];if(B(t))return[2,[n,t]]}let o=t(n);if(r+1<g&&o&&A[r+1]==Q)return[2,[n,Q]];if(r+2<g&&(o||e(n))&&A[r+1]==i&&A[r+2]==Q)return[3,o?[n,Q]:[n,i,Q]];let C=c(A,r);if(!C)return[0];let[l,D]=C;l+=r;let E=!1;for(;l+1<g&&8205===A[l];){let B=c(A,l+1);if(!B)break;E=!0,l+=1+B[0],D.push(8205,...B[1])}if(!E&&l+2<g&&w(A[l])){let B=l+1;for(;B+1<g&&w(A[B]);)B++;if(917631==A[B++])return[B-r,D]}return[l-r,D]}}(U);function G(A){return A.flatMap((({e:A,v:B})=>A??function(A,B){return Q(String.fromCodePoint(...B).normalize("NFC"))}(0,B)))}function h(A,B){return new Error(`Disallowed label "${i(String.fromCodePoint(...A))}": ${B}`)}function J(A){const B=45;return c(Q(A),k,(A=>{if(a(A))return;if(Y(A))return[];if(K(A))return[A];let B=w(s,A);if(B)return B;throw new Error(`Disallowed character "${i(String.fromCodePoint(A))}"`)})).map((A=>{let t=G(A);if(t.length>=4&&t[2]==B&&t[3]==B&&120==t[0]&&110==t[1]){let B;try{B=function(A){let B=[],t=A.lastIndexOf(45);for(let e=0;e<t;e++){let t=A[e];if(t>=128)throw new Error("expected ASCII");B.push(t)}t++;let e=0,r=128,n=72;for(;t<A.length;){let g=e;for(let B=1,r=36;;r+=36){if(t>=A.length)throw new Error("invalid encoding");let g=A[t++];if(g>=48&&g<=57)g-=22;else{if(!(g>=97&&g<=122))throw new Error(`invalid character ${g}`);g-=97}e+=g*B;const o=r<=n?1:r>=n+26?26:r-n;if(g<o)break;B*=36-o}let o=B.length+1,C=0==g?e/700|0:e-g>>1;C+=C/o|0;let w=0;for(;C>455;w+=36)C=C/35|0;n=w+36*C/(C+38)|0,r+=e/o|0,e%=o,B.splice(e++,0,r)}return B}(t.slice(4)),[A]=c(B,k,(A=>K(A)?[A]:[]));let e=G(A);if(B.length!=e.length||!B.every(((A,B)=>A==e[B])))throw new Error("not normalized")}catch(A){throw h(t,`punycode: ${A.message}`)}t=B}let e=A.flatMap((({v:A})=>A??[]));if(t.length>0){if(t.length>=4&&t[2]==B&&t[3]==B)throw h(t,"invalid label extension");if(t[0]==B)throw h(t,"leading hyphen");if(t[t.length-1]==B)throw h(t,"trailing hyphen");if(N(t[0]))throw h(t,"leading combining mark");try{!function(A){for(let B=0,t=A.length-1;B<=t;B++){switch(A[B]){case 8204:if(B>0&&D(A[B-1]))continue;if(B>0&&B<t){let e=B-1;for(;e>0&&E(A[e]);)e--;if(f(A[e])){let e=B+1;for(;e<t&&E(A[e]);)e++;if(I(A[e]))continue}}break;case 8205:if(B>0&&D(A[B-1]))continue;break;case 183:if(B>0&&B<t&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<t&&M(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&u(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${i(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>F(A))))throw new Error("Disallowed katakana")}(e)}catch(A){throw h(t,A.message)}}return{tokens:A,cps:t,text:e}})).map((A=>String.fromCodePoint(...A.cps))).join(".")}function V(A){return c(Q(A),k,(A=>{if(a(A))return{};if(K(A))return[A];if(Y(A))return{i:A};let B=w(s,A);return B?{m:B,u:[A]}:{d:A}}))[0]}export{J as ens_normalize,V as ens_tokenize};

@@ -262,6 +262,10 @@ function decode_arithmetic(bytes) {

function hex_cp(cp) {
return cp.toString(16).toUpperCase().padStart(2, '0');
}
// my suggested inline ascii-safe unicode escape
// this is ES6 \u{X} without the \u
function quote_cp(cp) {
return `{${cp.toString(16).padStart(2, '0').toUpperCase()}}`;
return `{${hex_cp(cp)}}`;
}

@@ -665,5 +669,5 @@

var PAYLOAD = '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';
var PAYLOAD = 'AEQKowRKAlUBMAFKAH4A9wCNAI8AowCKAFAAbABGAFwAZABpADEARwAoAD4AJAA+ACQALABYADcAFgAfACUANQA5AC4AGAAgAB8AMQANABwAFAAdABgAJAAVABgAIQAYAD0AJQAfACEAHQAUABIALgATABoADAAuAAoAGgAKABYAGAPUBPAA0hAqAThJCV4TBigA9QB0M2BFAB9tEQFRJwPWAY8BR3IyABdZACkANsUoBLLBAMx0xEcSjk/VvAIUAkmiA19HAMIDpwBacyUhCYcALwA8AYT9FQFcATW5hAWJEQkdxxBSxwEgPRQDKQUOEgpRGzIKPAUPP8IJBCABLRAfDwAPP0IqBpQiDwOIABTWA28sDgDkFyNaDwDPGL9Vj88cEQEiBQ8PDiAfTM0CuACfAL8fHzcmBP9fHx8BP38ADw8lEAgsTw8Pbw9/fw8PHwAPFv/fAz8Jzy8SvyK/AP8PAaJfDhAWvwO/Ia8ADwlPLxEiCY8fAx6/mQAPA9+PEQVvLz4AcTEUABSRB86lvw7/nxVPMA8gGiQJNAkNCAIVASsKGAUMMxUdGH9VTMwHBQAIKmM6NfYIBgQKBQAJCAJZgyAC7gEGAPgOCha3A5XiAEsqhCOlnw74nRVBG/ASCm0BYRN/BrsU3VoWy+S0vV8LQx+vngEwcABOBxngDYYHSjIACw9LLgGiFQFAA0k9AnoBWnc0TaGPGAGQAyFvfwCsA4kK31RfZH8PyQO/AToJf/r4FzMPYg+CHQAcAXworAAaAE8AagEiG94eHRfeGh/xAngClwKuNDY4AwU8BWEFOgF7N6AAYAA+FzYJlgmXIyBM/ggMUqGgykPzADldyprmMwAWKAAhCvEiX1IAXQCl3gAgAD4BBJWzaCcIAIEBFMAWwKoAAdq9BWAF5QLQpALEtQAKUSGkahR4GnIViDYywCl/J0cXP29feC7ZChMqeBRhBlJBEwps5YMACKQKCgDCKB4UCAJ9BNKQ0BQuB4c56AAAACACNgsFf1a4lvFqQAAETgBBcQw0BwUGApkyApOOBB/M1okAFbIBTdeXAB86V2CQBUIANpI5BfbPFgPNxgALA5miDgo0Ao6mAobdP5MDNp4Cg/fyRPfTpAACAHj1npIKJgqFVgD0AB4EAAIAAAAEABQGCAMB/BELFAXYan0rHgIJ0QB6CkNjm5U1JwIqAEIEsjQ87xMiABlkcmeSAiJMVgY1AXFpFwaly6FKAB0U+AEvlQJCAADrggV2BdU84NcCgABXYrgAUQBcAF0AbABvAHYAawB2AG8AhABxMH8UAVROUxEAA1RYUwcAQwDSCwKnAs4C0wKUAq0C+rwADAC/ADy4TQSpBOoJRikwFOA6+DdhGBMAQpAASpPKxwG2AZsCKAIlOAI3/wKuAqMAgADSAoc4GjQbArE4Hjg3BV64ApUCnQKkAYkBmAKrArI07DR7HzTwNIsbAFk1ojgDBTw0EjQpNgQ2RzaMNk02VDYZNvCZPVcyAoICoQKwAScANQVeBV20vwVuBXc5JFa+Uqs05DS/FwABUwJW11e6nHuYZmSh/RAYA8oMKvZ8KASoUAJYWAJ6ILAsAZSoqjpgA0ocBIhmDgDWAAawRDQoAAcuAj5iAHABZiR2AIgiHgCaAU68ACxuHAG0ygM8MiZIAlgBdF4GagJqAPZOHAMuBgoATkYAsABiAHgAMLoGDPj0HpKEBAAOJgAuALggTAHWAeAMEDaXfQlB2MUQZBBhBgNNDkxxPxUQArEPqwvqERoM1irQX6IH8ANYB/ADWANYB/AH8ANYB/ADWANYA1gDWBwP8B/YxRBkD00EcgWTBZAE2wiIJk4RhgctCNdUEnQjHEwDSgEBIypJITuYMxAlR0wRTQgIATZHbKx9PQNMMbBU+pCnA9AyVDlxBgMedhKlAC8PeCE1uk6DekxxpQpQT7NX9wBFBgASqwAS5gBJDSgAUCwGPQBI4zTYABNGAE2bAE3KAExdGABKaAbgAFBXAFCOAFBJABI2SWdObALDOq0//QomCZhvwHdTBkIQHCemEPgMNAG2ATwN7kvZBPIGPATKH34ZGg/OlZ0Ipi3eDO4m5C6igFsj9iqEBe5L9TzeC05RaQ9aC2YJ5DpkgU8DIgEOIowK3g06CG4Q9ArKbA3mEUYHOgPWSZsApgcCCxIdNhW2JhFirQsKOXgG/Br3C5AmsBMqev0F1BoiBk4BKhsAANAu6IWxWjJcHU9gBgQLJiPIFKlQIQ0mQLh4SRocBxYlqgKSQ3FKiFE3HpQh9zw+DWcuFFF9B/Y8BhlQC4I8n0asRQ8R0z6OPUkiSkwtBDaALDAnjAnQD4YMunxzAVoJIgmyDHITMhEYN8YIOgcaLpclJxYIIkaWYJsE+KAD9BPSAwwFQAlCBxQDthwuEy8VKgUOgSXYAvQ21i60ApBWgQEYBcwPJh/gEFFH4Q7qCJwCZgOEJewALhUiABginAhEZABgj9lTBi7MCMhqbSN1A2gU6GIRdAeSDlgHqBw0FcAc4nDJXgyGCSiksAlcAXYJmgFgBOQICjVcjKEgQmdUi1kYnCBiQUBd/QIyDGYVoES+h3kCjA9sEhwBNgF0BzoNAgJ4Ee4RbBCWCOyGBTW2M/k6JgRQIYQgEgooA1BszwsoJvoM+WoBpBJjAw00PnfvZ6xgtyUX/gcaMsZBYSHyC5NPzgydGsIYQ1QvGeUHwAP0GvQn60FYBgADpAQUOk4z7wS+C2oIjAlAAEoOpBgH2BhrCnKM0QEyjAG4mgNYkoQCcJAGOAcMAGgMiAV65gAeAqgIpAAGANADWAA6Aq4HngAaAIZCAT4DKDABIuYCkAOUCDLMAZYwAfQqBBzEDBYA+DhuSwLDsgKAa2ajBd5ZAo8CSjYBTiYEBk9IUgOwcuIA3ABMBhTgSAEWrEvMG+REAeBwLADIAPwABjYHBkIBzgH0bgC4AWALMgmjtLYBTuoqAIQAFmwB2AKKAN4ANgCA8gFUAE4FWvoF1AJQSgESMhksWGIBvAMgATQBDgB6BsyOpsoIIARuB9QCEBwV4gLvLwe2AgMi4BPOQsYCvd9WADIXAGAMC2BcYTQHMnNe2QImSwBQ5gBQQzSaNTFWSTYBpwGqKQK38AFtqwBI/wK37gK3rQK3sAK6280C0gK33AK3zxAAUEIAUD9SklKDArekArw5AEQAzAHCA5goWCNNwFVNKCapCm1fRmHsDKcN1UTJOkoT3GBSYDMTyS24FMIVzyVXGT4avScGJeVVCg8FLdRmMQgtNHYXvQBAKWmDQmOHHjEKTBzoU5JU+S0cALJLozOwDa0bFkRBBUh17mIrFg8CQo4CTfECZIICYkNcTrBcNyECofgCaJkCZgoCn4U4HAwCZjwCZicEbwSAA38UA36TOQc5eBg5gzokJAJsGgIyNzgLAm3IAm2v8IsANGhGLAFoAN8A4gBLBgeZDI4A/wzDAA62AncwAnajQAJ5TEQCeLseXdxFr0b0AnxAAnrJAn0KAnzxSAFIfmQlACwWSVlKXBYYSs0C0QIC0M1LKAOIUAOH50TGkTMC8qJdBAMDr0vPTC4mBNBNTU2wAotAAorZwhwIHkRoBrgCjjgCjl1BmIICjtoCjl15UbVTNgtS1VSGApP8ApMNAOoAHVUfVbBV0QcsHCmWhzLieGdFPDoCl6AC77NYIqkAWiYClpACln2dAKpZrVoKgk4APAKWtgKWT1xFXNICmcwCmWVcy10IGgKcnDnDOp4CnBcCn5wCnrmLAB4QMisQAp3yAp6TALY+YTVh8AKe1AKgbwGqAp6gIAKeT6ZjyWQoJiwCJ7ACJn8CoPwCoE3YAqYwAqXPAqgAAH4Cp/NofWiyAARKah1q0gKs5AKsrwKtaAKtAwJXHgJV3QKx4tgDH09smAKyvg4CsucWbOFtZG1JYAMlzgK2XTxAbpEDKUYCuF8CuUgWArkreHA3cOICvRoDLbMDMhICvolyAwMzcgK+G3Mjc1ACw8wCwwVzg3RMNkZ04QM8qAM8mwM9wALFfQLGSALGEYoCyGpSAshFAslQAskvAmSeAt3TeHpieK95JkvRAxikZwMCYfUZ9JUlewxek168EgLPbALPbTBMVNP0FKAAx64Cz3QBKusDThN+TAYC3CgC24sC0lADUl0DU2ABAgNVjYCKQAHMF+5hRnYAgs+DjgLayALZ34QRhEqnPQOGpgAwA2QPhnJa+gBWAt9mAt65dHgC4jDtFQHzMSgB9JwB8tOIAuv0AulxegAC6voC6uUA+kgBugLuigLrnZarlwQC7kADheGYenDhcaIC8wQAagOOF5mUAvcUA5FvA5KIAveZAvnaAvhnmh2arLw4mx8DnYQC/vsBHAA6nx2ftAMFjgOmawOm2gDSxgMGa6GJogYKAwxKAU7wALoBAq0BnzwTvQGVPyUNoKFrLQGuCusfABHF103ysS+SA2ZYA3oARAK+uQRWpMYDAKwFFsAD7iJCQwIdHTvaMjY9NtQ2yTZGNjk28DbdNko2JTcQNxkFbU1fbBZfwQCWygU3AJBRHpu+OytgNxa61A40GMsYjsn7BVwFXQVcBV0FaAVdBVwFXQVcBV0FXAVdBVwFXUsaCNyKAK4AAQUHBwppXu4wA/wDW1oYZRQODAoADAoAqpaMgniqIyUKCgN6NU01TzVRNVM1VTVXNVk1WzVNNU81UTVTNVU1VzVZNVs1jTWPNZE1kzWVNZc1mTWbNY01jzWRNZM1lTWXNZk1mzYNNg82ETYTNhU2FzYZNhs2DTYPNhE2EzYVNhc2GTYbNi02uTY1Ntk2RTc5PW8CB8xuzGzMasxozGbMZMxizGDMXgoQQAQWASnf0t/Q387fzN/K38jfxt/E38LfwAX6IgEjOAwaBXUFawVpBV8FXTUzBVEFSwVJBXwFeMooyibKJMoiyiDKHsocyhrKGAk1Dw0DBwkNDxMVFxkbCWUGCAIEAEA+DgAGCAIEAA4CEgIfjg43EGcPlDjFwwDi8hQeJB09PShfLGA7LD0oCcZCCklBQ3ReUmRCTjJWMFIwMDgVFgkEBgICM0cXGRnMcMxuzGwjVDNMIkUBIxVFAC84DTNHOQUTTjclYhDf0t/Q387fzN/K38jfxt/E38LfwN/S39Dfzt/M38o1MzU1NTMzM8oqyijKJsokyiLKIMoeyhzKGsoYyirKKMomyiTKIsogyh7KHMoayhjKKsoo3NwgJxBIySisXxhtPs49CjgeUmIOaDxEMDo8JhgjMTMfKQ0Q9fYWEGELFXJePCcLHqkACScnL0ViOB04RScVPBYGBlMIMcdgEEBAMjg8FiMnETkdI0FQNxVaMhc2MAs6IBglFlIVBkhCMdZgGkAnBgR/aGCrAH4GPwUUJD9aMho/Q0yIBg2LAJUBLQ9Kd68AUpKlHSxPHAWeogYeBPARcIrYxgOhYyIBslDHVGlQBumjAcAP8s0LSgU1BBYbDQEsD1EBggJ0A45apg8ABGuIDe6wAQkudJoR8hwFNa1Q8wQVBUpsAP4ARlo9Dx1yhDq+EzoxzsNOAGQZRwoAH0q8AuAgS2wRIgmPHwQeyQB7BKMzDgDwpgJpITlmAKYNCQJQA5oAvoaKfgG1ope/AAk8IiBUADCOAHEQAF4AkADFFAAuIQMTCQ2s7ANRIAESCh78APK7JN2bAMtLAXSP0gD/EAMlygDLdzeubygBIzixDP7gHlR0927FZe7bRZ8tb79sNxuKs7mTTeE66+PiWMrQHIsN1LnELXx2qaGNJY5enZkcXQLnEc0h0IekVa9C9DYI0YKyRD7pGu26xMShsyxpiD4U7uUjLV6yS70iYk+IncQGpP9d/FjLRSB7BMxeN0wnh3TnpK37HjKF5VlYzpvrNiiHpHtVimUsGdqlMatdHdsk+v/ZDdsz07LbslH7keKKQTFujsrt9Vzekd6LqCgctBmhAfO3gzMBqMvZzOhQK2c41SSYJj31xolV7PGDw82+ZtwlIxBtrgJzaYqqLu+XODfYjwvN8/Tns5yQwYrwBc2GSxJCl8vKTGt3DftND2Y34XU8JhJU5BS/06MB+ME8oNWR3xnLLuUXo+cKtsz4pAMC7GkLEMtalViB7cTOu4oy32wd5lNvroRec0AW88u6tJd56Lwt8JJ2860RweDmv71NRgX4sDeF5gDflejDSXmDs0bjY9Ht0+1J212ffWqAH9w+XXa6vp5bXHaSLjKXwQ91Onoso5JLTkRLrMdGcwm48ofyFnmPzPoS8X8H20QRVsCi4tuESl6R1IK866dtdJ+WWZF/UZIIXAMdIsPBLSw/lF6B1JQCeGARThbB1WAVb07sKykj+uUUJFkQq9MxFbU5Aqm36AekBLHpjGegFphFYmC2V0k8LCQEwBElLNSi0x7bAfBJh8KiCWYfY8wpTvnCn1aER3odfmM9nk1meGKGMtVoomp/4CsKBd4srDAfOwhRyQd7TXNbiI0Ye7UVeYHXZUkqLHRpmsJIZqRzBcZcCjFt6QF0M5qvJ5RX8GhR95dR8Yu2WRvrbv4vuwD/yV1NqPoHVBSagmeMClI3xlXPSOvaNObGc9QXzrmp9NA6sNAn6a0t17I5LUPSwNeu4nndkck8T2nZ6b4gOCE3bg8GQ4CVoZoCA5ItdakU3fl/SAfzlOJPgk32yb9SZIKBhDrgOcm3gKR4sUe/AEmEMOjBrCWI+cxb1yVFTMuEW5Zp8Ew0GUCvfyVZxAdFAI3Fqe4MkJ8J1kEFXhMBrp9UIcYBU8x9tIsjYCYHpX1lLGGfu5+MuDMirW3PnvfqF6GC1APXcan/7Z8lE/Q3pbCjhYbLQFiHHozDwG0nfotCl2Wp8pMGuzTKvW0kKLdU0I5jenKVBugMVsltk1Phi5puJ/A/37wv+d0RZcBiZD9Oxluw8DnGHXPiPDc6GyRjIR1IhZkVGCzOgu0iB+OTwVNSWYyCe+HoyBIMJoBbR2lM/MjX23/6SIikV8Cw4iR8cZENg1UljLZcjbqTzpWN0acQrVtFR9pR+59G+43bVJtCaPHHTWUk5VqxLsOvzzXTSXVd71PKc3++sJciuai8d+o91bUjlb2Z6cElRuKgKRNeIrypquNxL1IOzN61Kq17lAyXUhPB5xEuIjWeIQ4XstZK8xzXaAi4FaVcJRX9+7Oy3/QD6ouITk3MecOgg44yFd53xKUcLd1cMRGEn/Jx3cZJHsYzRBTDRC63EvU7CkuyF85yNJsb+98uJWQiS4ke9Zcroci36zYjKYylEWYGtUrzc17OsrfNbCFTn9LDcOYIhU0wahXKojFJZagt2QVYqYzj1n2DZUaA1IQocKJXW6d3Tjx6Gc+7MKBsV+vjWHD+jgjD6nsQ/6VYjjiMlS79Za7ERKjf3e32wXnKJODzjPGKa7Qzs8mS4HUqMqki/LqsY753Rv4OwuGESyb4wy2n8UhnnXfXLk6H54Da9OhG4lU8/2prk1xQTBOmCVLq5c/CNz0yK0u4C0a7nIj6lHmagrj/48byTFoBK4RSGE7LyA7hzhtZGGAmJ+srP1iJBtBqDe4vUvjZFF+fXQVjglvvvQpr3FqGVzI2w33poBWNH3rQm9n+5xlJUsUFfs43r3exRCIeoDd4swq/ixnHr+mOpJ1RQ86xwe5uYSkaQmpozjCqe9mFixGNddMskF2JhyoDm6f4yKJkhmHc32Um5GKydmjMayScbXPBnR+9Mk8LtsYJSqo+M0Bkj64a/mU4ezDEc1K5OAQoNo9L4SY10fMeDW8qeBWAcA8kalWY6dKhotZupEdZJ8mUEkU5ZXS9Xkyum2jpkr6Aa/uyNWH0i1nbZ6gdAuFClcCj9O86teZg6A9c0uuTPangtEt/pRB5qhReCZhGoVN0uHc52TA9gEtpgWk7G+5h/5TMMDQeQ9ESWqm+a2lKvq5Rjz8SDJl+nmueIoME4Kcr0XZUa2RGr8Ny9Nx/g1wHCBVVnk6p5ZxqqloHpFCyMYeOWz/pZQh9L1sNtpYztwEsC7bSL3omfzPd9o34TLgUT5AbXrBoBiWzesU3QGAI98gsnujzluRc/B185cleMO0twTeGuRh/CL5k7RoX+EUQYXH8W54FYcJ4gHxQQFr2qKAjV5kgXBTPS38Y+CGumH3A6x5+J3yyhHhsf3wM4kE3zqLsg8A4m7R0S/d9FvpnFfHIDGS0E5cxO2pwF0Aok5ticnSDK1FR565YH7HZUZIovx2BMjgIdjh+GXPTyvatVl1dUhtH/JT1z/xiyatEvcmBELy39OhxWjkU6pp0S3QbJk+mlTrIWdqdVtKFvQtTh8oBXFFS64dGDROjP7dtKcMhxjKe9oRIKU1N/MPIn/bYsvRgwGnMQTKNippW5Pvh3rAPHpp4B0q7Uy5Ik3MwIisqtPbOtAQn91KMMEC8eCXkUdU5McA7jOIvan2t/ZYaOiWMr3uT5hD3LiVIoDs2LAEDEcQjPc0gqHeuUtnUutPJq/14owDWStsJdrDAZTUUzXkWAUKi/7HCv+2ocL95snjnEX/XpydDksLCUbFSb4Bz7UEfcMIjYWPg856Ow1vY4L9dQ4Sj4hMkrBuR2WLedmtfM+JGMDZSTlqaYhC2agytXglbpKjdsBqsya28MnaAqfoejC3m82gbxYWPVpHVtQFK0PoKZSRZ0BWSPgqAc5vMpcmKl+pSlE6zAhPaawOevRlHdp31Ch9M+Zjm9Fwf+iD/UhgGAt0rTkx4JMZQsuprh3qliNT6CzHe4Yg4zxXR7n4VIQmzUlJcIR5v3h0hjSwkJCfdIt1Vh/m37RHh8JA4UClBl8shrBULYEyfIq2VRajNAI8LcXA3go5C/ImKycIKDnUxxJ2ADr8C+U60hZ2xh2XqH4UwJLVVqBYy7zZ7qA/bJei/2gZ50O6jUpt6igjRZws/sAS536AAc3ldtj8ZpFaYhf1psDkK4N4z5BHzlIExq9r3OKKDuKT0wxDVP36oEJ7IudNPO6NuAplHxzz70axKdBPRQ9EIBaSqdHwvWJaTPV6UWfEfmt1YsR7jedrJZttE2aXU5F1AiWbVMZVm8Jxwcq808tmh+MpaaB/Tb+1AH4rdd5eptfvtPKygdpcT2eb7KAX3D3tR8uCE8oQrTptfNxjcuYBnyGvO2BJ2Vi2A5biQDVuXkhmPrwIUPXY2oLaQS6pUdYIzNOMGWiVJVXoCLivxlzpWaWSPiIbAly/AJgUGIxclPKRLRMzT5Rw6mdZ4AniBsWC/QEGXhha2p7cBf6X0OzCOaCJpcnLwl+FjqUzSCYfEk4iqrLuF9uIO5pEHVx/l5ShUg80ALKC/1sJsOqrDvZM8jNBTnCABOw3e1NJ28wNg+q24b4CZmuiMMy655KC+1187Wiih1t/f6FqSn4H9dJVTEFsZsaE2jPdDM/xi7OsaK4l3EElxH+2V+n/E8Jp126K6x4Xp7LnvPr+Q/dEoB+krSHq9WAo+CgsUD0NnQ9LaVE3Y1HxqnOsC43HNtg1X7YCgm3J1zBuXSlM11CbgxmTa5hEGaWA966C6N/tpW2/ISfFFw57B6ZvgKZax0ur+ElHzw1bXZaCsKeuZYxPNEIEwTV9MmTO1cH1yk8dLL1k21/RU9scLBp5dj4EiQRAYugjTt9n1ePxWXYQpWHU1C64sfppie11FHy8fhKRVwU0nOv9jMrHeGU/AbP0rnyrxrXwUsaVo7o5J5YOPDoNIhuS+ogiCU3g+orkLB0m018anQpDbm92uCtiM3Thy63A/jhpOPE/6y62/WRvpH1ZK41Gz9aYn4dNpPf71XdN5WGNQTiaW21/Fbd4fBMbo+2P//8alWNQ/4mtcMVqK7tsABv6ggqC6P56IMA+JAeGWsH5jXR4Qz6WHRzkagNeiES1xoyAaHmW6hMGHrYEFZ4rArTNe7zjP7QDWFSMEctX9EACNsKDyZ5rG0MtGO23xecsSO1/wiqDfDBu+7NAwBRb03xCwZD4FJa0Lmfeb/Vl0sfC6GidMkzMcb6/NU1RLmP1euteuckbUtkILFf8CL+InZ2fuRTnTIS1UXGnv0obulbyz1RTlX4RJGpV5WVLheKxi8Kjjn+VfUt4Dhx/PXGYWXL3wii051YStYsKmtkFEsaflJ5NY9tWNmkSajQBckFabAFfpPeL8OYeO+O4CXoi+Rmx4kutT2B8t6A1uE6Ydy6DfIIfbHAXT4m1/HuuWvUiJ8BSCgDR+VPbEWyVS8kXz9l5MldUupiwzJmV2E6mRRUvrD+AHKHf89gXftbbTMrk/JJh1P/+FPlQzYuXDl70X0jsMmJVxaU8VnpcwdtJZ8FQq4rwibOS/+mw+45ONfwv08ZCN5UWas8qLcwUv2fSm7bZXBuxWpmq66rPZ+yrmGIb1DyQiab3/ZAxuNX04ye8lKYGUK17D6AnONp2uEpKletmTwj85//krkuEtwXdVBXqy1bjH4qKkydVevhd3hnkYbRgnK7BLk4UR7pkdiwuEncmvgfgHZHC+kUtRuix5RIEcCvdGxal154y25Dk42yDD5flVU8Mt9uZXlHVC420uQNg9HwVeaPVB02H9/ZWgkVpVlA3dWokALhC1DvfAYLTxejb6WVlI6jkEqNfxwsIcdqAvlhUFhB3B9FictPtbwsAZ81vk85NaE/iNzXNYBzgz2a8fVgKW6o9FytLuYUiw/crT1tJLTqFF1pBUbGIiTnKXGWyLFcoHYxqC4j2U2STDqaOywrFZd3iiI/0rMWJFvqelcyC4wiRHHlpY5Z9GWgDmugx6rNYbWnIfBkYLtUexg0C+IcNRHA9aCq828+qgeDhicT5fVnQpu0EOvWlIWXIyz+gF+sUhNSrKjUhZWgt51W9G83E9vKJcvBMdaLz1g9HNI9Z6Sq8WbC4YU9D9lmaLb0AJuEoVymC1rC8g3wW8jZyTprbBOYVh+LbXtDwHJXqpavQGyqBlMR1mcnYbZkBikHhp1L8ELJN3r9hfSdMBPTvZLSEGmyqI1rV6l2OoaZGo64goVwvp1WKECob10E96/fcTmO0xh8g1NBeK0qBxAGfu0ValnvPG/YIthCnA4meeejVPrYEFTmXIjdDKbWCvF83+oGFmz5mMVGVyw4C8kEIOD8MIi8hVnexwvjLtrjvjFCa8ndhhw8hKZ+F5oFSMveWxM1I7IiFOenM3U4Xsnk61GofSpxGTqpm05Tno4O0wIf6ut0Q3MeuYhy/4KkQ4tZxrUWoqBRqYHIq/AAaDET0mPBA2P+Txe+7cAN+PZrS8nWBgRo2rnP8nbaGZWcztk2hxFAmEq2owXczVDJN+dbJp0CB1jcxQ/3tviHZ0/+y0OIrdy3Z2eBaPyYb8kWlTqRYVmasG03k83yvv8obm6EpanoPHTBG2p9L7neSYzDk+Y0lF6N0j4uzmhIMkFduFyK937SATll9GxMFx2YRMszY+oga0Ld0tw/sQVvwMFS2W9cS0sqbKkVQ8XdyX4sisiwywNt/aiWOMMa786O90m2ZqV1PoNKPEAZ5REfZsrvsWAFe4qMDCSoYJZcTCnfQ+8lorJkGD5/jQBTaXvQV9hujjeuJx6kRDL21hMmJYQPiSwv+g7ZWGSyIj/a22eGfNDOBL4WuF37nsT1tGnkT5Iz4kMjf1M0jEFgJ+8aFKQvhvFTY4UzXLZZ/HKeZGWxa5sl26d4Hr86U6gTy9sYE0vmBjiQNwSVlthi/zX9uE+0olZILZActPhh6CcXY3Z56EiANXRHUMQZV+a6HWfVyFcLryplk3CjtZAG2hUxkhm3NsNQeBGHTWTEDR3qq7P6fSNul2K+Rs7r38i57a0PnYVK2CHbt672VsmAXJKQJaXwwpdSofI6tklHmsJFOvRVQE+TlUVrzn+Ud5147LKRLBH5sVwccvY6l458ePQqpo0qLniB0VS6JgqatQrlLpDV2F0oaOHQosiEdY0sfLjhNj5cQprL2C/n0XDbwx9RfJNGb27URLZsGlrnobQJUMrHOWqXEXrbNpX/Sp2bP6p7Fs+ozp9SddwcXq7FIg/LYitb6IskujPwmBRTCdhj1kIf4oMqp2NepkXvHVKVrnYTLhl/KyQAyzUwUBH+UPiNWwmsKAm9xuXMLXGFpwYx05wYZPlfR1fbe/EwHvJslrc5aRD0Tp9FSgEVBAhrFjaZW1+qryDtYaYG6CbUtw82EyK+gd1s+LgvXNFHfmTbj59m31ZHl8uwpfCyjpZrj7mf0RWEVhNSDaSDtS5cQBvt5p43tYeXqsP3LU0kUyHTFCWE+zPcsaQFrtvY+RhXKbrLWw6mvk38l18lzEIOQNILGVRBlX1dsuUPN5IiTngPLxbme9W0MS5WKFgXm8XBdoW6XDb7xoKIHCNywkXcv/juyNdTf9Kp0zje/847hSgvWjidg+TGYu53van1Srklkx1SZMu8SXObB+oq3gwC6UeQjbCWEFYH81dyyV9khuDQKHRbYJf6DmaIOj0g6wSJDQ7I452DGSUpKY2lVIKMO/kI/95zUkKt2WGDiV/E059G+R0k5PXmD2yDckOeY7q4YwW3A9ozmYpN+2a7K4mise1MnyU6i/E6CzR05cnB9AWL8sEIAxDQIoG7PUeRF61V23ZpPCB4I+W9YqQ9XAPcMuGFtTG6ZcQ98cWF4nM7wUWR2vV+/jieZH0cwOKaf+kweSiJPkpxWTuGi9nno2tCV8gdbMOpG4rxCrqLVfZhVo+kLBdw0B3zrrJRqTv0EqU3n/ObFoX/I7SNyNzaWmn5eqFkLDmGzBXZL3Z/mbuJTDQAsmvF5Uq5VU34GMaP1C+AxteFi5lAIuJteseUeSy5i2ptNHZn5Zj09XmcC7OHg10yse9L3ZpvTxff+oLmhLWoQcrY3Hd+aXiN7s4/zuHYxUk+1uAyLw4mNC5zAEsYBAQC1j0H56qm76iYIktzRFaBDPzzO67bZhdnUAwgn0IRDYM+UoyGx8ZnLqtWGc0d288cJj96tWHyE9cJCWzA+prGkBdOpsBH08rwaCmPmlemO33qmu08NzvtzWwl/b1L5qE8xTMmm0O6yLQ6e7ovlC52DlwY2vDQFofIhX4ZOyjFAergBYSpfOydRQLv2l3q3zbqNJuXuJCd8RhGIqt7eaiZSUKvlcJhElrICvhQ8dr2BOs3pO5bvHasaBBTJlU6CFv4YWGeQmjMRn1A1be/XX29quiLkgqj+73JbD7NQIv1CBC7QyZPuQLSl309FbMl7fBueegjdaih4nxfgW7ixSvCG/88ksFc6dp5xIBeLBTJ/b2WuRdj9RJq7Mkhf6B36vSFWflyzkEf2491k1evAseO6KCG1UDVD8WXNrR4V64uRK8QUX5eVDL9fWbvbNV/OC4eZXJlUA/lJcoj8/gA80hlo0+kwqtskhzyLTPROKPS+v9Jn1t3NXeJ5bEjPO421jWio1fM13scys';
// built: 2021-12-23T21:04:49.789Z
// built: 2021-12-25T07:41:57.843Z
let r = decode_payload(PAYLOAD);

@@ -681,4 +685,4 @@ const STOP = read_member_function(r);

// string but you'd have to retokenize
function flatten_label_tokens(tokens) {
return tokens.flatMap(token => token.e ?? nfc(token.v));
function flatten_tokens(tokens) {
return tokens.flatMap(({e, v}) => e ?? nfc(v));
}

@@ -733,3 +737,3 @@

}).map(tokens => {
let cps = flatten_label_tokens(tokens);
let cps = flatten_tokens(tokens);
// [Processing] 4.) Convert/Validate

@@ -747,3 +751,3 @@ if (cps.length >= 4 && cps[2] == HYPHEN && cps[3] == HYPHEN) { // "**--"

[tokens] = tokenized_idna(cps_decoded, EMOJI_PARSER, cp => VALID(cp) ? [cp] : []);
let expected = flatten_label_tokens(tokens);
let expected = flatten_tokens(tokens);
if (cps_decoded.length != expected.length || !cps_decoded.every((x, i) => x == expected[i])) throw new Error('not normalized');

@@ -759,2 +763,6 @@ } catch (err) {

}
// flatten textual part of token to a single list of code-points
// emoji should be invisible to context and bidi rules
// could replace emoji w/a generic character
let text = tokens.flatMap(({v}) => v ?? []);
if (cps.length > 0) {

@@ -778,5 +786,3 @@ // [Validity] 1.) The label must be in Unicode Normalization Form NFC.

try {
// emoji should be invisible to context rules
// IDEA: replace emoji w/a generic character
validate_context(tokens.flatMap(({v}) => v ?? []));
validate_context(text);
} catch (err) {

@@ -787,3 +793,3 @@ throw label_error(cps, err.message);

}
return tokens;
return {tokens, cps, text};
});

@@ -797,9 +803,8 @@ // [Validity] 8.) If CheckBidi, and if the domain name is a Bidi domain name, then the label

// A Bidi domain name is a domain name containing at least one character with BIDI_Class R, AL, or AN
let text_labels = labels.map(tokens => tokens.flatMap(({v}) => v ?? []));
if (text_labels.some(is_bidi_label)) {
for (let i = 0; i < labels.length; i++) {
if (labels.some(x => is_bidi_label(x.text))) {
for (let {text, cps} of labels) {
try {
validate_bidi_label(text_labels[i]);
validate_bidi_label(text);
} catch (err) {
throw label_error(flatten_label_tokens(labels[i]), `bidi: ${err.message}`);
throw label_error(cps, `bidi: ${err.message}`);
}

@@ -809,3 +814,3 @@ }

/*~BIDI*/
return labels.map(tokens => String.fromCodePoint(...flatten_label_tokens(tokens))).join('.');
return labels.map(x => String.fromCodePoint(...x.cps)).join('.');
}

@@ -817,10 +822,10 @@

// this is much nicer than exposing the predicates
// [[{m:0x52, to:[0x72]},{e:[0x1F4A9]},{t:[61,66,66]}],[{t:[65,74,68]}]]
// [{m:[0x72], u:[0x52]},{e:[0x1F4A9],u:[0x1F4A9]},{t:[61,66,66]},{},{t:[65,74,68]}]
function ens_tokenize(name) {
return tokenized_idna(explode_cp(name), EMOJI_PARSER, cp => {
if (STOP(cp)) return {};
if (VALID(cp)) return [cp];
if (VALID(cp)) return [cp]; // this gets merged into v
if (IGNORED(cp)) return {i: cp};
let mapped = lookup_mapped(MAPPED, cp);
if (mapped) return {m: cp, u: mapped};
if (mapped) return {m: mapped, u: [cp]};
return {d: cp};

@@ -827,0 +832,0 @@ })[0];

@@ -1,1 +0,1 @@

function A(A){let r=function(A){let r=0;function B(){return A[r++]<<8|A[r++]}let e=B(),t=1,C=[0,1];for(let A=1;A<e;A++)C.push(t+=B());let g=B(),w=r;r+=g;let o=0,Q=0;function n(){return 0==o&&(Q=Q<<8|A[r++],o=8),Q>>--o&1}const E=2**31,i=E>>>1,l=E-1;let f=0;for(let A=0;A<31;A++)f=f<<1|n();let I=[],h=0,c=E;for(;;){let A=Math.floor(((f-h+1)*t-1)/c),r=0,B=e;for(;B-r>1;){let e=r+B>>>1;A<C[e]?B=e:r=e}if(0==r)break;I.push(r);let g=h+Math.floor(c*C[r]/t),w=h+Math.floor(c*C[r+1]/t)-1;for(;0==((g^w)&i);)f=f<<1&l|n(),g=g<<1&l,w=w<<1&l|1;for(;g&~w&536870912;)f=f&i|f<<1&l>>>1|n(),g=g<<1^i,w=(w^i)<<1|i|1;h=g,c=1+w-g}let u=e-4;return I.map((r=>{switch(r-u){case 3:return u+65792+(A[w++]<<16|A[w++]<<8|A[w++]);case 2:return u+256+(A[w++]<<8|A[w++]);case 1:return u+A[w++];default:return r-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),B=0;return()=>r[B++]}function r(A){return 1&A?~A>>1:A>>1}function B(A,r){let B=Array(A);for(let e=0;e<A;e++)B[e]=1+r();return B}function e(A,r){let B=Array(A);for(let e=0,t=-1;e<A;e++)B[e]=t+=1+r();return B}function t(A,B){let e=Array(A);for(let t=0,C=0;t<A;t++)e[t]=C+=r(B());return e}function C(A){let r=e(A(),A),t=A(),C=e(t,A),g=B(t,A);return[...r.map((A=>[A,1])),...C.map(((A,r)=>[A,g[r]]))].sort(((A,r)=>A[0]-r[0]))}function g(A,B,e){if(0==B)return[];let C=[t(A,e)];for(let t=1;t<B;t++){let B=Array(A),g=C[t-1];for(let t=0;t<A;t++)B[t]=g[t]+r(e());C.push(B)}return C}function w(A,r){let B=1+r(),t=e(B,r),C=g(B,A,r);return t.map(((A,r)=>[A,C.map((A=>A[r]))]))}function o(A,r){let t=1+r(),C=r(),w=1+r(),o=e(w,r),Q=B(w,r),n=g(w,A,r);return o.map(((A,r)=>[A,n.map((A=>A[r])),Q[r],t,C]))}function Q(A){let r=C(A);return A=>n(r,A)}function n(A,r){for(let[B,e]of A){let A=r-B;if(A<0)break;if(A<e)return!0}return!1}function E(A,r){for(let[B,e,t,C,g]of A){let A=r-B;if(A<0)break;if(t>0){if(A<C*t&&A%C==0){let r=A/C;return e.map((A=>A+r*g))}}else if(0==A)return e}}function i(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>`{${A.codePointAt(0).toString(16).padStart(2,"0").toUpperCase()}}`))}function l(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function f(A,r,B){let e=[],t=[],C=[t];function g(){e.length>0&&(t.push({v:e}),e=[])}for(let w=0;w<A.length;w++){if(r){let[B,e]=r(A,w);if(B>0){g(),t.push({e:e,u:A.slice(w,w+B)}),w+=B-1;continue}}let o=B(A[w]);Array.isArray(o)?e.push(...o):(g(),o?t.push(o):(t=[],C.push(t)))}return g(),C}let I=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const h=Q(I),c=Q(I),u=Q(I),D=Q(I),F=Q(I),M=Q(I),s=Q(I);let K=A("ACUAAQDpAIEAfgBLAFkAawBgADAAVQAmACMAIgAlACAAPQAXABMAFQAOAA0ADAATABIAEgAPABEACwAMAAwAFAAlAA4CiAD2AAMEfQRvDCAA6xbF2ewNxQcEpzEwUhdEIQ4MFPFdAQR+Xghu/sUJhTcAxgAjDIIT11i1UgSFFg5DORgJEggA8l1t/b8GgzAAwgAECncPWK5LBIPsVokBEm8EjVUKOSQHJQoSRAAkpU4lim0AaUYDM38ErACLsk0bwwE9Py5BYQFLAfUFWXmEMgEEQlUcDdxTNj3nMabMOtteTE7wrBKhLiUA8HAuAPZKIwPMS5cW4WkBPiA9AKFuMnGFBgKIGAkPEAICHRQQGRAAWAgAGCY2AV4+HA4+By4BCA4OI0IXAgIaFiELCt72BhR4WAC0AEQCQgLeyQ4dAQs6OQo9Pg4eH4lDGN5VrgAeDh4wDkUlAh4sAgwCAg8NFgAeVCqOBxMZTm4C7AM6BA5lDjQhjj4LAQ4HFn4GBg4dIwAeCQcuIxMRAhsmDoEeGY4WHRkODB6ufj0uEAQMHAAuEm4jBwAeqR0C304J7k4DDg6uIt4BHjAOFQGhni4hKxbeA94hzgAuCW5OEZ6O3gcfAAAQXn40JiAANBIYGBgYGgEVFANZAN4VACAODgPOB/4eVAgODI6l3g8evhVuKC4G3gr+3v7eAJ8xaoQEDxUHDgILBgBXBxchNAFdNxI3ACQGChYOFg4aCZ70BBMHIyzewwQWNDgJPA4LDhCFQRieVWsAGw0uRCASIgQOBxEYUyqCDxlMSDdZCwsPAgQDfAICBhIAFQgUDwIBEg0WERARCQ0xCAYMJwQEAwJ5TaJBAw0BJQEXLw45KRYW1gO0AAEAaklS1AUcGTMlHwAyERcXFxcA3gsKGBsKpb4PF7wVYBwPAPwSKf7c/twFvADjBN8+AQMAA34ADpgelQ9gBRwYYgLm2WYCr9PLGBAJzhANkwEBZU0AcmA8UgHw1AIsBJ8CuREAEAVbADUN4E45AeJxUvNSfwK0AOB9Bl1loWFBA3QYGBgYChoNDlwFIYoDANxjAOdXAMYA2gDfYwGgAzQB6QAzACJ4BL8PPhcAyYhoAKEBMQFUACzlXkPODDwAAzsRChOJRRjAVa4AW09gAAYaAdRQsm8MAndjAC4uCIcD9wTsCFObqROxVN4azu4OThg91H4Cu14+Hg4uAD5yA0j+3v7e/t7+3v7e/t7+3v7e/t7+3v7e/t4A0Pzs/t7+3gIADg4AhG8GAKAAMQFSRzw3tAIeFQABKyA1CkIDArZSNxYGADJxFeAM7kwEnod/ygAbEhkPHAIlEhkTHBEWIxlvEic5XmJrmgYHEHhnxxmTgt4PaXlhsZIQPA4SE81ODwW9wQY9BKBNMI86Q38/5DoAYUwBZXtFAdEsUJZzaW8HCL0B3wBh7A4qGWkkVCMJDh0QPD0eAx4lukgZTkBLLjdyAbYCkyAgWHm8HxsuFBMAGxt4pgHuCv3PAShNdLQIMAATfSQXFEtbDFHyBDQFaQqLAR0AZXkalBkSJQUxFESLGQmmT841T0vm4HcFCA8AdjhaLwBBStseAz1L7BFBDgEVA3YGnBk+BD3oAJoEwlILFppOCwIeDBUQzntD+oaxJbOqEsPmVoztmeEOgU272aOQMCbwOpB/Ypso4k/TTLW0oWpP3Rz3gHw2yY1UgZPtktnZk107pZPg3CQ+O2NJZ4RdQ8VrO8v8sA5Nf64eb7biK378+U434pbsbN5D/nUXJvQoZ2tsF7kCJBqxJCTNIptt2KVrMk9oCmdP0yza2mLjtAXAvD9RwvMgHNASOAHQHieInuWJb1575ohdCFscyN5HjENm6r3fmapvd12TrCubUm7XFYfHvmy8dSIQOESuJavaW0D8rbUXGUc7rPRuiWRnOFLlYcrqLc3LiwzjN7uzF6ECR7SY0Tzdx+FJN5Dl8dSD9VRuo2SKneiXQYjuXJ70nT50AuF9I7taX6vp5rEML9UbCTMpLStDd8XHbeVYsjSuXkuxcXDGzy11XOqM4/Ld+ZRABTvb0FzlY8mXbveszS4/glZhNu5eLJmy5AooQTWVutjvuWDrsDkUZ9am2TOeKMG8TLHRwjVBB4FhPtiujqXvesGvWwQ1w3s89y+jX47rIhp+El9c2QFM4BVQggIR28OeFU3V5TjwdLSSW8/9MAJ+qPuP74Iy+oDcIeIjgCJGHt52YnnwJV5+xKR+HjQws+fTAiOhcOW+zy609VzzQk+y0A7kdHdBBsXBB36UOFdzdYujG5PO1IXoFWrs3trl6gV4JKHvTsSvFdHz22LQv21L1uh45KVqrt+uUQyVd6ulDXkU/TOXxUk+HcujwWsIGjbyNKggFFDe5Mc4eHSKGezjtMlWeigB0nB6+8BrawOjtBF04xeKukf+o037M7ExZxCAGsVZ0PpTtc1TJlHhU+eUkh3LpBhTs2XCQewf98wydOE14KvF948SMOcIGmBFbIJR1V45meM46ACb1xWIaoJ3MkVdmkp7LuDsLQXzO742rKyrd/KspPEmjyviR3dNO/MNxJTes46EMlMdsAMMLPebHcs5hRcRuz1/3OWqWFHqsh7caP90rBA5z+0izaxZSEowxCpGcXJQmNX9ZRy7Wv2wppZZq5X96vy3Rhy6NkxfjqH4/xB5uK7Icux88zxeKS7HmRvYcD8R+lFRBO5I2hpXjDgvpLU+7LiZ7rsriL2IYSB5FoDZgc0aM7b51cp3qP5LO1LVPlSZunn1e/++/NlO4eEbUxhPePIEkeDKLV5SOXSS+SdvvpIbWH7fhP2kZRVCfvWrXrTny8dF2vD0/c17qfSxPu4hBzxzYL0X0HiW3j4APx7arPhNWGGOMWyuGGwuycrdUX3N1O3MCM+qWMORw+vbHSf7dxpmse8hGZvWaY9vtOvMRlFdhveoSnJLhb63k7kZxhLgSnbSVrw4SgaQmAVbn9aMlXJUuAW5/7DeZtB3AXYZJsC8u7TQ3U6MRQH3W0Y+TbKy23n6WDnjFbCNWCdxG69uYaQ65G91unS+/VBV5ogka0CGR7Pv1YajbSPKr+opmKCb8f/fHsNZ6yFhw4UYHSVjedw+2yeZ5IuZ6t35SPLGkb2zQC2XtoVv4vfHXPMH9GXD0mvawBsT2wVm/NdfNcvMGrXSpnK8FBBUUazjP+S4U5ffPk0rTU/FefFYW+Y2Ir95i4j0HghljDTPXjDwRIS9jeeG8RSNJV1X7TJVb/w2cACSCwugUvUcxGm9OQL9SDI=");const N=C(K),G=C(K),U=C(K),Y=C(K),k=C(K),T=C(K);function S(A){return A.some((A=>n(N,A)||n(U,A)))}function a(A){if(0==A.length)return;let r=A.length-1;if(n(N,A[0])){if(!A.every((A=>n(N,A)||n(U,A)||n(Y,A)||n(k,A)||n(T,A))))throw new Error("RTL: disallowed properties");for(;n(T,A[r]);)r--;if(r=A[r],!(n(N,r)||n(Y,r)||n(U,r)))throw new Error("RTL: disallowed ending");let B=A.some((A=>n(Y,A))),e=A.some((A=>n(U,A)));if(B&&e)throw new Error("RTL: AN+EN")}else{if(!n(G,A[0]))throw new Error("unknown direction");if(!A.every((A=>n(G,A)||n(Y,A)||n(k,A)||n(T,A))))throw new Error("LTR: disallowed properties");for(;n(T,A[r]);)r--;if(r=A[r],!n(G,r)&&!n(Y,r))throw new Error("LTR: disallowed ending")}}let P=A("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");const V=Q(P),O=Q(P),H=Q(P),y=function(A){let r=[];for(;;){let B=A();if(0==B)break;r.push(o(B,A))}for(;;){let B=A()-1;if(B<0)break;r.push(w(B,A))}return r.flat().sort(((A,r)=>A[0]-r[0]))}(P),J=Q(P),L=P()&&function(A){const r=Q(A),B=Q(A),e=Q(A),t=Q(A),C=Q(A),g=Q(A),w=Q(A),o=Q(A),n=65039,E=8419;function i(A,B){let e=A[B],o=A[B+1],Q=w(e);if(Q&&o&&g(o))return[2,[e,o]];let E=Q||t(e);if(o==n){if(E)return[2,[e]];if(C(e))return[2,[e,n]]}return Q||E||r(e)||g(e)?[1,[e]]:void 0}return function(A,t){let C=A[t],g=A.length;if(t+1<g&&r(C)){let B=A[t+1];if(r(B))return[2,[C,B]]}let w=B(C);if(t+1<g&&w&&A[t+1]==E)return[2,[C,E]];if(t+2<g&&(w||e(C))&&A[t+1]==n&&A[t+2]==E)return[3,w?[C,E]:[C,n,E]];let Q=i(A,t);if(!Q)return[0];let[l,f]=Q;l+=t;let I=!1;for(;l+1<g&&8205===A[l];){let r=i(A,l+1);if(!r)break;I=!0,l+=1+r[0],f.push(8205,...r[1])}if(!I&&l+2<g&&o(A[l])){let r=l+1;for(;r+1<g&&o(A[r]);)r++;if(917631==A[r++])return[r-t,f]}return[l-t,f]}}(P);function R(A){return A.flatMap((A=>A.e??function(A,r){return l(String.fromCodePoint(...r).normalize("NFC"))}(0,A.v)))}function x(A,r){return new Error(`Disallowed label "${i(String.fromCodePoint(...A))}": ${r}`)}function m(A){const r=45;let B=f(l(A),L,(A=>{if(V(A))return;if(H(A))return[];if(O(A))return[A];let r=E(y,A);if(r)return r;throw new Error(`Disallowed character "${i(String.fromCodePoint(A))}"`)})).map((A=>{let B=R(A);if(B.length>=4&&B[2]==r&&B[3]==r&&120==B[0]&&110==B[1]){let r;try{r=function(A){let r=[],B=A.lastIndexOf(45);for(let e=0;e<B;e++){let B=A[e];if(B>=128)throw new Error("expected ASCII");r.push(B)}B++;let e=0,t=128,C=72;for(;B<A.length;){let g=e;for(let r=1,t=36;;t+=36){if(B>=A.length)throw new Error("invalid encoding");let g=A[B++];if(g>=48&&g<=57)g-=22;else{if(!(g>=97&&g<=122))throw new Error(`invalid character ${g}`);g-=97}e+=g*r;const w=t<=C?1:t>=C+26?26:t-C;if(g<w)break;r*=36-w}let w=r.length+1,o=0==g?e/700|0:e-g>>1;o+=o/w|0;let Q=0;for(;o>455;Q+=36)o=o/35|0;C=Q+36*o/(o+38)|0,t+=e/w|0,e%=w,r.splice(e++,0,t)}return r}(B.slice(4)),[A]=f(r,L,(A=>O(A)?[A]:[]));let e=R(A);if(r.length!=e.length||!r.every(((A,r)=>A==e[r])))throw new Error("not normalized")}catch(A){throw x(B,`punycode: ${A.message}`)}B=r}if(B.length>0){if(B.length>=4&&B[2]==r&&B[3]==r)throw x(B,"invalid label extension");if(B[0]==r)throw x(B,"leading hyphen");if(B[B.length-1]==r)throw x(B,"trailing hyphen");if(J(B[0]))throw x(B,"leading combining mark");try{!function(A){for(let r=0,B=A.length-1;r<=B;r++){switch(A[r]){case 8204:if(r>0&&h(A[r-1]))continue;if(r>0&&r<B){let e=r-1;for(;e>0&&c(A[e]);)e--;if(u(A[e])){let e=r+1;for(;e<B&&c(A[e]);)e++;if(D(A[e]))continue}}break;case 8205:if(r>0&&h(A[r-1]))continue;break;case 183:if(r>0&&r<B&&108==A[r-1]&&108==A[r+1])continue;break;case 885:if(r<B&&F(A[r+1]))continue;break;case 1523:case 1524:if(r>0&&M(A[r-1]))continue;break;default:continue}throw new Error(`No context for "${i(String.fromCodePoint(A[r]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>s(A))))throw new Error("Disallowed katakana")}(A.flatMap((({v:A})=>A??[])))}catch(A){throw x(B,A.message)}}return A})),e=B.map((A=>A.flatMap((({v:A})=>A??[]))));if(e.some(S))for(let A=0;A<B.length;A++)try{a(e[A])}catch(r){throw x(R(B[A]),`bidi: ${r.message}`)}return B.map((A=>String.fromCodePoint(...R(A)))).join(".")}function j(A){return f(l(A),L,(A=>{if(V(A))return{};if(O(A))return[A];if(H(A))return{i:A};let r=E(y,A);return r?{m:A,u:r}:{d:A}}))[0]}export{m as ens_normalize,j as ens_tokenize};
function A(A){let B=function(A){let B=0;function e(){return A[B++]<<8|A[B++]}let t=e(),g=1,r=[0,1];for(let A=1;A<t;A++)r.push(g+=e());let w=e(),n=B;B+=w;let C=0,o=0;function Q(){return 0==C&&(o=o<<8|A[B++],C=8),o>>--C&1}const i=2**31,D=i>>>1,E=i-1;let c=0;for(let A=0;A<31;A++)c=c<<1|Q();let l=[],I=0,F=i;for(;;){let A=Math.floor(((c-I+1)*g-1)/F),B=0,e=t;for(;e-B>1;){let t=B+e>>>1;A<r[t]?e=t:B=t}if(0==B)break;l.push(B);let w=I+Math.floor(F*r[B]/g),n=I+Math.floor(F*r[B+1]/g)-1;for(;0==((w^n)&D);)c=c<<1&E|Q(),w=w<<1&E,n=n<<1&E|1;for(;w&~n&536870912;)c=c&D|c<<1&E>>>1|Q(),w=w<<1^D,n=(n^D)<<1|D|1;I=w,F=1+n-w}let M=t-4;return l.map((B=>{switch(B-M){case 3:return M+65792+(A[n++]<<16|A[n++]<<8|A[n++]);case 2:return M+256+(A[n++]<<8|A[n++]);case 1:return M+A[n++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),e=0;return()=>B[e++]}function B(A){return 1&A?~A>>1:A>>1}function e(A,B){let e=Array(A);for(let t=0;t<A;t++)e[t]=1+B();return e}function t(A,B){let e=Array(A);for(let t=0,g=-1;t<A;t++)e[t]=g+=1+B();return e}function g(A,e){let t=Array(A);for(let g=0,r=0;g<A;g++)t[g]=r+=B(e());return t}function r(A){let B=t(A(),A),g=A(),r=t(g,A),w=e(g,A);return[...B.map((A=>[A,1])),...r.map(((A,B)=>[A,w[B]]))].sort(((A,B)=>A[0]-B[0]))}function w(A,e,t){if(0==e)return[];let r=[g(A,t)];for(let g=1;g<e;g++){let e=Array(A),w=r[g-1];for(let g=0;g<A;g++)e[g]=w[g]+B(t());r.push(e)}return r}function n(A,B){let e=1+B(),g=t(e,B),r=w(e,A,B);return g.map(((A,B)=>[A,r.map((A=>A[B]))]))}function C(A,B){let g=1+B(),r=B(),n=1+B(),C=t(n,B),o=e(n,B),Q=w(n,A,B);return C.map(((A,B)=>[A,Q.map((A=>A[B])),o[B],g,r]))}function o(A){let B=r(A);return A=>Q(B,A)}function Q(A,B){for(let[e,t]of A){let A=B-e;if(A<0)break;if(A<t)return!0}return!1}function i(A,B){for(let[e,t,g,r,w]of A){let A=B-e;if(A<0)break;if(g>0){if(A<r*g&&A%r==0){let B=A/r;return t.map((A=>A+B*w))}}else if(0==A)return t}}function D(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>{return`{${B=A.codePointAt(0),B.toString(16).toUpperCase().padStart(2,"0")}}`;var B}))}function E(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function c(A,B,e){let t=[],g=[],r=[g];function w(){t.length>0&&(g.push({v:t}),t=[])}for(let n=0;n<A.length;n++){if(B){let[e,t]=B(A,n);if(e>0){w(),g.push({e:t,u:A.slice(n,n+e)}),n+=e-1;continue}}let C=e(A[n]);Array.isArray(C)?t.push(...C):(w(),C?g.push(C):(g=[],r.push(g)))}return w(),r}let l=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const I=o(l),F=o(l),M=o(l),u=o(l),f=o(l),U=o(l),Y=o(l);let a=A("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");const s=r(a),h=r(a),K=r(a),k=r(a),N=r(a),G=r(a);function J(A){if(0==A.length)return;let B=A.length-1;if(Q(s,A[0])){if(!A.every((A=>Q(s,A)||Q(K,A)||Q(k,A)||Q(N,A)||Q(G,A))))throw new Error("RTL: disallowed properties");for(;Q(G,A[B]);)B--;if(B=A[B],!(Q(s,B)||Q(k,B)||Q(K,B)))throw new Error("RTL: disallowed ending");let e=A.some((A=>Q(k,A))),t=A.some((A=>Q(K,A)));if(e&&t)throw new Error("RTL: AN+EN")}else{if(!Q(h,A[0]))throw new Error("unknown direction");if(!A.every((A=>Q(h,A)||Q(k,A)||Q(N,A)||Q(G,A))))throw new Error("LTR: disallowed properties");for(;Q(G,A[B]);)B--;if(B=A[B],!Q(h,B)&&!Q(k,B))throw new Error("LTR: disallowed ending")}}let S=A("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");const x=o(S),H=o(S),L=o(S),R=function(A){let B=[];for(;;){let e=A();if(0==e)break;B.push(C(e,A))}for(;;){let e=A()-1;if(e<0)break;B.push(n(e,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}(S),V=o(S),W=S()&&function(A){const B=o(A),e=o(A),t=o(A),g=o(A),r=o(A),w=o(A),n=o(A),C=o(A),Q=65039,i=8419;function D(A,e){let t=A[e],C=A[e+1],o=n(t);if(o&&C&&w(C))return[2,[t,C]];let i=o||g(t);if(C==Q){if(i)return[2,[t]];if(r(t))return[2,[t,Q]]}return o||i||B(t)||w(t)?[1,[t]]:void 0}return function(A,g){let r=A[g],w=A.length;if(g+1<w&&B(r)){let e=A[g+1];if(B(e))return[2,[r,e]]}let n=e(r);if(g+1<w&&n&&A[g+1]==i)return[2,[r,i]];if(g+2<w&&(n||t(r))&&A[g+1]==Q&&A[g+2]==i)return[3,n?[r,i]:[r,Q,i]];let o=D(A,g);if(!o)return[0];let[E,c]=o;E+=g;let l=!1;for(;E+1<w&&8205===A[E];){let B=D(A,E+1);if(!B)break;l=!0,E+=1+B[0],c.push(8205,...B[1])}if(!l&&E+2<w&&C(A[E])){let B=E+1;for(;B+1<w&&C(A[B]);)B++;if(917631==A[B++])return[B-g,c]}return[E-g,c]}}(S);function T(A){return A.flatMap((({e:A,v:B})=>A??function(A,B){return E(String.fromCodePoint(...B).normalize("NFC"))}(0,B)))}function P(A,B){return new Error(`Disallowed label "${D(String.fromCodePoint(...A))}": ${B}`)}function p(A){const B=45;let e=c(E(A),W,(A=>{if(x(A))return;if(L(A))return[];if(H(A))return[A];let B=i(R,A);if(B)return B;throw new Error(`Disallowed character "${D(String.fromCodePoint(A))}"`)})).map((A=>{let e=T(A);if(e.length>=4&&e[2]==B&&e[3]==B&&120==e[0]&&110==e[1]){let B;try{B=function(A){let B=[],e=A.lastIndexOf(45);for(let t=0;t<e;t++){let e=A[t];if(e>=128)throw new Error("expected ASCII");B.push(e)}e++;let t=0,g=128,r=72;for(;e<A.length;){let w=t;for(let B=1,g=36;;g+=36){if(e>=A.length)throw new Error("invalid encoding");let w=A[e++];if(w>=48&&w<=57)w-=22;else{if(!(w>=97&&w<=122))throw new Error(`invalid character ${w}`);w-=97}t+=w*B;const n=g<=r?1:g>=r+26?26:g-r;if(w<n)break;B*=36-n}let n=B.length+1,C=0==w?t/700|0:t-w>>1;C+=C/n|0;let o=0;for(;C>455;o+=36)C=C/35|0;r=o+36*C/(C+38)|0,g+=t/n|0,t%=n,B.splice(t++,0,g)}return B}(e.slice(4)),[A]=c(B,W,(A=>H(A)?[A]:[]));let t=T(A);if(B.length!=t.length||!B.every(((A,B)=>A==t[B])))throw new Error("not normalized")}catch(A){throw P(e,`punycode: ${A.message}`)}e=B}let t=A.flatMap((({v:A})=>A??[]));if(e.length>0){if(e.length>=4&&e[2]==B&&e[3]==B)throw P(e,"invalid label extension");if(e[0]==B)throw P(e,"leading hyphen");if(e[e.length-1]==B)throw P(e,"trailing hyphen");if(V(e[0]))throw P(e,"leading combining mark");try{!function(A){for(let B=0,e=A.length-1;B<=e;B++){switch(A[B]){case 8204:if(B>0&&I(A[B-1]))continue;if(B>0&&B<e){let t=B-1;for(;t>0&&F(A[t]);)t--;if(M(A[t])){let t=B+1;for(;t<e&&F(A[t]);)t++;if(u(A[t]))continue}}break;case 8205:if(B>0&&I(A[B-1]))continue;break;case 183:if(B>0&&B<e&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<e&&f(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&U(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${D(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>Y(A))))throw new Error("Disallowed katakana")}(t)}catch(A){throw P(e,A.message)}}return{tokens:A,cps:e,text:t}}));if(e.some((A=>A.text.some((A=>Q(s,A)||Q(K,A))))))for(let{text:A,cps:B}of e)try{J(A)}catch(A){throw P(B,`bidi: ${A.message}`)}return e.map((A=>String.fromCodePoint(...A.cps))).join(".")}function X(A){return c(E(A),W,(A=>{if(x(A))return{};if(H(A))return[A];if(L(A))return{i:A};let B=i(R,A);return B?{m:B,u:[A]}:{d:A}}))[0]}export{p as ens_normalize,X as ens_tokenize};

@@ -262,6 +262,10 @@ function decode_arithmetic(bytes) {

function hex_cp(cp) {
return cp.toString(16).toUpperCase().padStart(2, '0');
}
// my suggested inline ascii-safe unicode escape
// this is ES6 \u{X} without the \u
function quote_cp(cp) {
return `{${cp.toString(16).padStart(2, '0').toUpperCase()}}`;
return `{${hex_cp(cp)}}`;
}

@@ -780,5 +784,5 @@

var PAYLOAD = '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';
var PAYLOAD = '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';
// built: 2021-12-23T21:04:48.791Z
// built: 2021-12-25T07:41:57.843Z
let r = decode_payload(PAYLOAD);

@@ -796,4 +800,4 @@ const STOP = read_member_function(r);

// string but you'd have to retokenize
function flatten_label_tokens(tokens) {
return tokens.flatMap(token => token.e ?? nfc(token.v));
function flatten_tokens(tokens) {
return tokens.flatMap(({e, v}) => e ?? nfc(v));
}

@@ -848,3 +852,3 @@

}).map(tokens => {
let cps = flatten_label_tokens(tokens);
let cps = flatten_tokens(tokens);
// [Processing] 4.) Convert/Validate

@@ -862,3 +866,3 @@ if (cps.length >= 4 && cps[2] == HYPHEN && cps[3] == HYPHEN) { // "**--"

[tokens] = tokenized_idna(cps_decoded, EMOJI_PARSER, cp => VALID(cp) ? [cp] : []);
let expected = flatten_label_tokens(tokens);
let expected = flatten_tokens(tokens);
if (cps_decoded.length != expected.length || !cps_decoded.every((x, i) => x == expected[i])) throw new Error('not normalized');

@@ -874,2 +878,6 @@ } catch (err) {

}
// flatten textual part of token to a single list of code-points
// emoji should be invisible to context and bidi rules
// could replace emoji w/a generic character
let text = tokens.flatMap(({v}) => v ?? []);
if (cps.length > 0) {

@@ -893,5 +901,3 @@ // [Validity] 1.) The label must be in Unicode Normalization Form NFC.

try {
// emoji should be invisible to context rules
// IDEA: replace emoji w/a generic character
validate_context(tokens.flatMap(({v}) => v ?? []));
validate_context(text);
} catch (err) {

@@ -902,3 +908,3 @@ throw label_error(cps, err.message);

}
return tokens;
return {tokens, cps, text};
});

@@ -912,9 +918,8 @@ // [Validity] 8.) If CheckBidi, and if the domain name is a Bidi domain name, then the label

// A Bidi domain name is a domain name containing at least one character with BIDI_Class R, AL, or AN
let text_labels = labels.map(tokens => tokens.flatMap(({v}) => v ?? []));
if (text_labels.some(is_bidi_label)) {
for (let i = 0; i < labels.length; i++) {
if (labels.some(x => is_bidi_label(x.text))) {
for (let {text, cps} of labels) {
try {
validate_bidi_label(text_labels[i]);
validate_bidi_label(text);
} catch (err) {
throw label_error(flatten_label_tokens(labels[i]), `bidi: ${err.message}`);
throw label_error(cps, `bidi: ${err.message}`);
}

@@ -924,3 +929,3 @@ }

/*~BIDI*/
return labels.map(tokens => String.fromCodePoint(...flatten_label_tokens(tokens))).join('.');
return labels.map(x => String.fromCodePoint(...x.cps)).join('.');
}

@@ -932,10 +937,10 @@

// this is much nicer than exposing the predicates
// [[{m:0x52, to:[0x72]},{e:[0x1F4A9]},{t:[61,66,66]}],[{t:[65,74,68]}]]
// [{m:[0x72], u:[0x52]},{e:[0x1F4A9],u:[0x1F4A9]},{t:[61,66,66]},{},{t:[65,74,68]}]
function ens_tokenize(name) {
return tokenized_idna(explode_cp(name), EMOJI_PARSER, cp => {
if (STOP(cp)) return {};
if (VALID(cp)) return [cp];
if (VALID(cp)) return [cp]; // this gets merged into v
if (IGNORED(cp)) return {i: cp};
let mapped = lookup_mapped(MAPPED, cp);
if (mapped) return {m: cp, u: mapped};
if (mapped) return {m: mapped, u: [cp]};
return {d: cp};

@@ -942,0 +947,0 @@ })[0];

@@ -1,1 +0,1 @@

function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let C=g(),Q=1,E=[0,1];for(let A=1;A<C;A++)E.push(Q+=g());let w=g(),e=B;B+=w;let r=0,t=0;function o(){return 0==r&&(t=t<<8|A[B++],r=8),t>>--r&1}const D=2**31,I=D>>>1,i=D-1;let n=0;for(let A=0;A<31;A++)n=n<<1|o();let f=[],M=0,c=D;for(;;){let A=Math.floor(((n-M+1)*Q-1)/c),B=0,g=C;for(;g-B>1;){let C=B+g>>>1;A<E[C]?g=C:B=C}if(0==B)break;f.push(B);let w=M+Math.floor(c*E[B]/Q),e=M+Math.floor(c*E[B+1]/Q)-1;for(;0==((w^e)&I);)n=n<<1&i|o(),w=w<<1&i,e=e<<1&i|1;for(;w&~e&536870912;)n=n&I|n<<1&i>>>1|o(),w=w<<1^I,e=(e^I)<<1|I|1;M=w,c=1+e-w}let N=C-4;return f.map((B=>{switch(B-N){case 3:return N+65792+(A[e++]<<16|A[e++]<<8|A[e++]);case 2:return N+256+(A[e++]<<8|A[e++]);case 1:return N+A[e++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let C=0;C<A;C++)g[C]=1+B();return g}function C(A,B){let g=Array(A);for(let C=0,Q=-1;C<A;C++)g[C]=Q+=1+B();return g}function Q(A,g){let C=Array(A);for(let Q=0,E=0;Q<A;Q++)C[Q]=E+=B(g());return C}function E(A){let B=C(A(),A),Q=A(),E=C(Q,A),w=g(Q,A);return[...B.map((A=>[A,1])),...E.map(((A,B)=>[A,w[B]]))].sort(((A,B)=>A[0]-B[0]))}function w(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(t(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(r(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function e(A,g,C){if(0==g)return[];let E=[Q(A,C)];for(let Q=1;Q<g;Q++){let g=Array(A),w=E[Q-1];for(let Q=0;Q<A;Q++)g[Q]=w[Q]+B(C());E.push(g)}return E}function r(A,B){let g=1+B(),Q=C(g,B),E=e(g,A,B);return Q.map(((A,B)=>[A,E.map((A=>A[B]))]))}function t(A,B){let Q=1+B(),E=B(),w=1+B(),r=C(w,B),t=g(w,B),o=e(w,A,B);return r.map(((A,B)=>[A,o.map((A=>A[B])),t[B],Q,E]))}function o(A){let B=E(A);return A=>D(B,A)}function D(A,B){for(let[g,C]of A){let A=B-g;if(A<0)break;if(A<C)return!0}return!1}function I(A,B){for(let[g,C,Q,E,w]of A){let A=B-g;if(A<0)break;if(Q>0){if(A<E*Q&&A%E==0){let B=A/E;return C.map((A=>A+B*w))}}else if(0==A)return C}}function i(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>`{${A.codePointAt(0).toString(16).padStart(2,"0").toUpperCase()}}`))}function n(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function f(A,B,g){let C=[],Q=[],E=[Q];function w(){C.length>0&&(Q.push({v:C}),C=[])}for(let e=0;e<A.length;e++){if(B){let[g,C]=B(A,e);if(g>0){w(),Q.push({e:C,u:A.slice(e,e+g)}),e+=g-1;continue}}let r=g(A[e]);Array.isArray(r)?C.push(...r):(w(),r?Q.push(r):(Q=[],E.push(Q)))}return w(),E}let M=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const c=o(M),N=o(M),F=o(M),l=o(M),Y=o(M),u=o(M),G=o(M);let h=A("AEQHZwEcASIANQBwABkANwAVACAAGQAaAAgAGgAKABQABgALAA0AEQAIAA8AAwAPAAIADAAGAA0AAgAIAAQACwAEAA0AAwAPAAYACAABAAMABgAKAAUACwADAAUAAgACAAYABAADAAQACQAHAAoADgAOAAEABQAFAAoAAgAfAAYAagLPBikArxEuG5TsJLEkAfQYbQKvAEjFZTYAbrAH/D8/Pz+/PwI6CbxxEIw7ZcZ4FityABw8vLYAQsgCvsrHABH7L1kIDT8/Pz8/Pz8/PC8/iQZvXQFNoxD6eUZXTiz1tl0RBMbGNHQitD+8PzY0zQBmExEAZQAXC/sBvQWaA1UH9AAGyQLGBHAEcQRyBHMEdAR1BHYEdwR4BHkEewR8BH0EfwSBBIL53gULAWQFDAFkBQ0BZATYBNkE2gURBRIFMAXRCxULFgz4DQgNeA2IDjEOMg46DjQckAHhHI4B2wrdANAlHLoQ7wRRVkMDaaUbBKJOhgdtnCZhAECUAaiIi1YIogXsawMkAdYBCHKh3QTeClwA0QLPhv5Tuw/ewO0WBQRaEksVsy7uANAtBG4RuhZBHLcCBgET3wtrZHhsDJ4AHJwAEwA0xgGihD4DAF4NbAMmA5nNDxgBwN/OJAI4BmEyFwTuApYF12EAIocBvgrTsHdTEQCvAJFSIQQHCG0ARlwAdwElVn9lFFcMfckAewUXAdUZXRD1AhwZWRyNAh0CBQIAG38B6NXoAPyWFzMPYgTAOMQezJHKS88UeBpyFYg2MvfHABUA/JNXYAA9+DkFXLMCygo0Ao6mAobdP5MDNp4Cg/cCowIDGqno1pQA++YE5nMDu7gEqk8mIQwDBQkFGAR1BKoFe7QAFcZJZ05sAsM6rT/9CiYJmG/Ad1MGQhAcJ6YQ+Aw0AbYBPA3uS9kE8gY8BMoffhkaD86VnQimLd4M7ibkLqKAWyP2KoQF7kv1PN4LTlFpD1oLZgnkOmSBTwMiAQ4ijAreDToIbhD0CspsDeYRRgc6A9ZJmwCmBwILEh02FbYmEWKtCwo5eAb8GvcLkCawEyp6/QXUGiIGTgEqGwAA0C7ohbFaMlwdT2AGBAsmI8gUqVAhDSZAuHhJGhwHFiWqApJDcUqIUTcelCH3PD4NZy4UUX0H9jwGGVALgjyfRqxFDxHTPo49SSJKTC0ENoAsMCeMCdAPhgy6fHMBWgkiCbIMchMyERg3xgg6BxoulyUnFggiRpZgmwT4oAP0E9IDDAVACUIHFAO2HC4TLxUqBQ6BJdgC9DbWLrQCkFaBARgFzA8mH+AQUUfhDuoInAJmA4Ql7AAuFSIAGCKcCERkAGCP2VMGLswIyGptI3UDaBToYhF0B5IOWAeoHDQVwBzicMleDIYJKKSwCVwBdgmaAWAE5AgKNVyMoSBCZ1SLWRicIGJBQF39AjIMZhWgRL6HeQKMD2wSHAE2AXQHOg0CAngR7hFsEJYI7IYFNbYz+TomBFAhhCASCigDUGzPCygm+gz5agGkEmMDDTQ+d+9nrGC3JRf+BxoyxkFhIfILk0/ODJ0awhhDVC8Z5QfAA/Qa9CfrQVgGAAOkBBQ6TjPvBL4LagiMCUAASg6kGAfYGGsKcozRATKMAbiaA1iShAJwkAY4BwwAaAyIBXrmAB4CqAikAAYA0ANYADoCrgeeABoAhkIBPgMoMAEi5gKQA5QIMswBljAB9CoEHMQMFgD4OG5LAsOyAoBrZqMF3lkCjwJKNgFOJgQGT0hSA7By4gDcAEwGFOBIARasS8wb5EQB4HAsAMgA/AAGNgcGQgHOAfRuALgBYAsyCaO0tgFO6ioAhAAWbAHYAooA3gA2AIDyAVQATgVa+gXUAlBKARIyGSxYYgG8AyABNAEOAHoGzI6mygggBG4H1AIQHBXiAu8vB7YCAyLgE85CxgK931ahYQJkggJiQ1xOsFw3IQKh+AJomQJmCgKfhTgcDAJmPAJmJwRvBIADfxQDfpM5Bzl4GDmDOiQkAmweAjI3OAsCbcgCba/wiwA0aEYsAWgA3wDiAEsGB5kMjgD/DMMADrYCdzACdqNAAnlMRAJ4ux5d3EWvRtgCfEACeskCfQoCfPEFWgUhSAFIfmQlAoFuAoABAoAGAn+vSVlKXBYYSs0C0QIC0M1LKAOIUAOH50TGkTMC8qJdBAMDr0vPTC4mBNBNTU2wAotAAorZwhwIHkRoBrgCjjgCjl1BmIICjtoCjl15UbVTNgtS1VSGApP8ApMNAOoAHVUfVbBV0QcsHCmWhzLieGdFPDoCl6AC77NYIqkAWiYClpACln2dAKpZrVoKgk4APAKWtgKWT1xFXNICmcwCmWVcy10IGgKcnDnDOp4CnBcCn5wCnrmLAB4QMisQAp3yAp6TALY+YTVh8AKe1AKgbwGqAp6gIAKeT6ZjyWQoJiwCJ7ACJn8CoPwCoE0Cot4CocUCpjACpc8CqAAAfgKn82h9aLIABEpqHWrSAqzkAqyvAq1oAq0DAlceAlXdArHi2AMfT2yYArK+DgKy5xZs4W1kbUlgAyXOArZdPEBukQMpRgK4XwK5SBYCuSt4cDdw4gK9GgK723CXAzISAr6JcgMDM3ICvhtzI3NQAsPMAsMFc4N0TDZGdOEDPKgDPJsDPcACxX0CxkgCxhGKAshqUgLIRQLJUALJLwJkngLd03h6YniveSZL0QMYpGcDAmH1GfSVJXsMXpNevBICz2wCz20wTFTT9BSgAMeuAs90ASrrA04TfkwGAtwoAtuLAtJQA1JdA1NgAQIDVY2AikABzBfuYUaCHYLUAILPg44C2sgC2d+EEYRKpz0DhqYAMANkD4ZyWvoAVgLfZgLeuXR4AuIw7RUB8zEoAfScAfLTiALr9ALpcXoAAur6AurlAPpIAboC7ooC652Wq5cEAu5AA4XhmHpw4XGiAvMEAGoDjheZlAL3FAORbwOSiAL3mQL52gL4Z5odmqy8OJsfA52EAv77ARwAOp8dn7QDBY4DpmsDptoA0sYDBmuhiaIGCgMMSgLBgNAACehZARUrE6k7Nz5NACQsCZ8BfABdBq4EL8jeFAtCANsALrsCPLblFkIvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAAAnAAAAAI4AAAAALwABRAGBAP0AAAABticAdgMPBQAAbgAAAAAtAAAAAAAAAAAAAAAAAwAAFwANAACiAAEAAAsAAj4CawAD3gN/BJICIUYABiJ9AAsAAAAABgBFAAAAAAAAFAA3ABMAAAAAAAJ4AgEG1gNs8AvGAwD4C6AowLK45gGSIkJDAuoUgBI0wQAAAACKAAAFAAAAAAAAHABbAAACRgKFAAAAAAAAAACMAAAHAAAAADpUOpUAAAAAAAAAAACOAABuALkAAAAAOpA60QAAAACOOMI63QAAAAAAAAAApgDpAAAAAAAAAAAAAAAAAADMATsAAIIAAAAAOjw5/Tn6O3cAAACKAAAAADpcO58AAAAAigAAAAA6cDkZAVcAAAE0AW0AAAAABTA1XjWfNa41ZzV2Nbc1xjWDNZI10zXiNZ81rjXvNf41szXCNgM2EjXHNdY2FzYoNd817jYvNj42LzUuIjY7Nj42PTbKNwkEkTxYNjk23jchNxA2yyE3ijcxCwSxPGg2JTcaN206jjgiQtVDCELhQwwdAA8QCZwpbilSVQcA6YAA6bEBFCrYAuoBpAC+BbgAbwR0BD4EQARCBEQETgRSBIgENgQ4BDoERgQuBDAEMgQ+BCoEIgQkBCYEKAQyBBYEGAQaBCYEEAP+BAAEAgQEBA4EEgRIA/YD+AP6BAYD7gPwA/ID/gPqA+ID5APmA+gD8gPWA9gD2gPmA9AD3gRGBAYESgQKBI4ETgQ8A/wEPgP+BEgECARSBBIEUAQQBD4D/gRCBAIERAQEBIYERgROBA4ENgP2BD4D/gRABAAEgARABDQD9AQ0A/QENgP2BDoD+gR+BD4EPAQwA/AEeAQ4BCoD6gR2BDYEQAQABCYD5gRyBDIEPAP8BCoD6gQuA+4EOAP4BB4D3gRqBCoENAP0BBwD3AQeA94EaAQoBDID8gRmBCYEMAPwBBwD3AQeA94EIgPiBCoD6gQsA+wEZgQmBBYD1gQSA9IEHgQOA84EGgPaBCQD5ARYBBgETAQMBFYEFgRGBAYEOgP6BC4D7gMQAtADCgLKAyAC4AMIAsgDQAMAAHwAegM8AvwESgQKBEIEAgRyBDIA9ADyAWq0BAQENAP0BCQD5AM4AvgDNgL2AxIC0gRcBBwEYAQgBFQEFARYBBgETAQMBFAEEARABAAERAQEBDoD+gQ+A/4ENAP0BDgD+ARmBCYEZAQkBEgECARMBAwEhAREAxwC3AMeAt4EMAPwAGwAagQWA9YDct/n6+/7AAcADwBR4fkAHwAnACsALwBTACEAOQA7AEcATwBhAFMA6QDZAOMAuwDxAO8A+QDjASMBKQEZASMBWwExAS8BOQGJAYsA3wEfANMBEwDPAQ8A3QEdAl8CYQDbARsA3QEdAOcBJwDfAR8A6wErAn8CgQEJAUkA/QE9APUBNQDvAS8A/QE9AQUBRRgaHMGZuw4MCgAMCgBKqpaMgniqIyUKCiAcGBQQCASIBEgESgQKBIIEQgSeBF4DNAL0BEYEBgR+BD4EmgRaBIYERgSSBFICnAKaAp4CnASQBFAElgRWAHwAegRCBAIEOgP6BD4D/gR2BDYEQAQABH4EPgSMBEwEjgROAyQC5AQsA+wEcAQwBIwETARuBC41IzUlBIoESgSCBEIEKAPoBDQD9ARsBCwEMgPyBGoEKgSGBEYEfgQ+AxgC2AMmAuYCKAImAioCKAQiA+IELgPuBCoD6gRiBCI1azVtBH4EPgQoA+gEYAQgAhoCGAIOAgw1dTV3BCYD5gReBB4EegQ6BHIEMgReBB4EdgQ2BHAEMAHyAfAB/AH6BBoD2gRaBBoEEgPSBBQD1AQiA+IEIAPgBFgEGAQeA94EIAPgBBwD3AQQA9AEUgQSBG4ELgRSA+gD5gPiAdAEhAREBFAEEAM+Av4DPAL8A04DDgNCAwI1+zX9Ar4CvAK8AroCzgLMAsICwDXzNfUEfAQ8BEgECAQ8A/wDLgLuAywC7AM+Av4DMgLyNis2LQRABAAEdAQ0BGgEKAQ0A/QDGgLaAxgC2AMqAuoDHgLeNlM2VQGCAYABgAF+AZIBkAGGAYQBxgHEBFwEHAQoA+gBZAFiAWIBYAF0AXIBaAFmAagBpgQOA84EVAQUBCAD4AQUA9T7+Ta/NsE2vTa/Njs2Pbu5Ns820TbNNs82SzZNAAMAATbfNuE23Tbfw8E27zbxNu027wAHAAU2/zcBNv02/zZ7Nn3HxTcPNxE3DTcPNos2jQALAAk3HzchNx03HzabNp3LyTcvNzE3LTcvNqs2rQAXABU3PzdBNz03P9fVN083UTdNN08AIwAhN183YTddN1822zbd4TdxN2827QArACk3fzeBN303fzb7Nv3r6TePN5E3jTePNws3DQAhACkALQAxAD0ASQBRNjU2NzY5Njs2PTY/NkE2QzZFNkc2STZLNk02TzZRNlM2dTZ3Nnk2ezZ9Nn82gTaDNoU2hzaJNos2jTaPNpE2kzb1Nvc2+Tb7Nv02/zcBNwM3BTcHNwk3CzcNNw83ETcTABUAGTcVl42dN6HV2eFXA/Q3HaORqTfB6e1jOD04Oze5ACUAKQBTrc/l6fE4uzi5ODcAPQBBAFUAGwAZxdH9AAEACdkDcDctx9HNOCH9ABGHO287czt3O+879zvzPFU8XzxlPJU8mTzHPNU82TzfBLY9ETzpBLgEtD0XPRk9Mz01PTs9PT1DPUU9Uz1VPVs9XT2TPZ89oT2lPUc9ST1xPXM9sz21Pbc9uU4JXFhUUExIREA8ODQwKiYiFBYOEAgKAgRmAwcLDxUZHSspMS83NT07Q0FrbW9xhwk1Dw0A6c8A6c0DBwkNDxMVFxkbCQJnaVlbV1kInxMDpBnizwAIGEM8wu6N1Ncci1LFtwnGtNCfO47E51h1ZKcKpb4puvaZKoOzUMuB+ritzrtbdARAKyMEAftAemEXOvi6eu0c/FkwKtXwIUAN49j6eh3DxuDaTfgvjMfODv/q7yCVJlP3ZQLN0We2YGkUFIRtORTUne/2C1y00jvHsiVhpY46NUbuH91wbkPHQwRCEa5iLISWK6uPu47Q2pI6RW/4dO4hgQ9qYTl92SdSfTynOkZEN0vd3KgC4FjMQfqK+w0BHui7Vtn0b/WnQVrYmRO61jakJLXAYQoFcc/13OEbTB7aoEaPecBmd50AhWupAVQ4C8Y516kMLfuZfL5gQuRfkIc+RlKGT/ia+C/aiA2XguQYiCks9jfIO/L5UWTfsdf3Ihd9euNMfw95BnOIjco4rCCTtQJQVXyPax0epJ2RZPAfQHeOBN2EPFsSOQwWLhAEVzxBPl5PijCKv8pTpCrl0CSpouvdPA0zTss8A+IkAIAbNTQoONvz/tLHofGbfpY2Qgug5oRdtpaHhllz1SJoJX7f9SUuiDTGDIqG/7oLRLR0Y5EQOAu8T+2wQyjU5yTbaFB/ch4YUbn4p0abct0wM53WoYweOYYyR3UYCUaJg/AxHNMYt1WKuSLXRZWEWDfl4ViNOYZzSbhJ6RrMUMsB4eYD9J6c+ITJm3yu6nqzL0r69OLJyjeBLTes7B3lHBzO13zm5EFYmQVL3OZJpy21TzuZf/pVfOKYADOetO/ZQW3Kl6fukZSIW9MBTq0UJ+LQUIK1Pz0w1bOgsawq3Fp3tHqMcQdGUkeqYdQqy5RF71cutedatMkRiLy2Im5ilGRUdDqQ67EJjkCgBx2gX+N67q3GKuUfkfthdI/qrARCn7fCoPboKdfb0cm04N7/9aAmvyMq+t7z/ReBWuY7bcrdcBBu3WDigIrn9HeP0fqKgKYDTa9BUKKS88N34PbUVPt3ijwzcM0wQcRqeu3XPzmftfPnIiXEa8UwvZ/zxZKVJ9jH73CSreIXOUACobt5WBH/j/5xdLqRBDtGBznFwxIZ3hX7+SlIJzkL3H2QjHCHna/0ipUSfeB3tfr4yshfXfKTiw2FcYl2wtFeSa/ia5+ZA9StkHuKcSpd0d8ltmztlOKEpFwW09pOhpQE/CmUIFusMmC36RHT1baX9XAFtzfFkPIHGX5bMoyf52SUKcDYT3RODW3juLy8iCuBX1mF7CAo0e/HokZQtR7F7L52voyEqkPHsgedmsMYuR5ebzy/GD0ysy8hnQyv9+qLRez/25/skAUmcvPPjUaD76e4pKd7JNh+xfowm29SemAZxL37W2JH25zUZ2CPkixALwGqrXzCjsf8IgcWX6vXi7WtKRleQQF4MogMtZuoWbI43DBCSUOhk7y3wE+K/0qKlK5rZgZX7GxrgOp+fiidHjG7Hkwr1DTrLs1S8j2xfUusalvv1/d3MMj0f53ow26ebF2pcgjmR0FoO1TtTNMbtYGvU8TFdThuDIcLj5ytsAr72Q5jlTOOcgpcAXnlM0IiBKGF9PFxKLUl7jsWcK7OjeW7uip/q4w9qfcU2b4EaShB+KZ6Xto7tNrWoMazrdRdI0azLngkHELOTGZ7xRYFsidaKUe9cd1wFLv1gu41ksw94+2qIe64FrRLYQ/G4WU7a3OhdSzo3rxvfzcHoKAMvpqc6Dr+tIsV3qCccYj4vFvkYLpmVzsyNkHGUIrDsSj3hrWy3Br2NcHoe+DLgCkHqxf4bCelVxKWjzBhTJhigSseFBGOwKJwJC2hzdBMw+tl0SfS1+BwxUXGkgt1UGN+CL+DxvWdGkSpM/nXvtgjuJHVAyJjlv12fizNLPPMlUraqzJsgzDM1MC/RqdfR7Ay9pasP8HdraHj9HuFxzFN3hT1HNk0Be8Q3rswa0MWuqUKmIeSVFv/fbjdJLqk41872buY4/z1+TG1gxqs0kXrCXYkNVkPswY0l6ydxb37C3Jfx48Y1DO3LhkoC/pjqZsyukLh6NexHPztIx6zG3iN86GIdruJDQXWiiRyNm3u/byXbBg+72eYtztgc+DddlB5GZQAZ+qt61eGZx+vHScafUbcyIML5TPtDwBFr7TDuhZeV6PoXfieZnUQj9IDzEd4Vt6uYJVGD6yfj1sEReAYvGWEL08Gux0GwhvVPPSvgvkijzTw9XrB3ufQSzMNMFu7/FXA76HOBAWPSHZ/7gkvDY5jLcMdTH1/7qxa1PTDU13UJFiDwIndfag8Cla0tUZriSODOmRjGA141EwyjLuHZgSsWxune4pBmEcqtOjrliBLkZtAeQwq/dDCoz5Xi6utath5xdeJl1bHmiNS11Vrd/VHgXqZy92cTszu1UzZVUreHMxtYLVB+v1pJPLB6xQaRGv39Z86teBbwVaXtEhkNhRBKP4PhT9mKethlgfJdEbTZivWeD8uUA3TOxyjd37Ct/NoI+mzSIgC+C00v3OMkMiFPNeHPtmWik4htP9C7EsJEipzw5ie4VbDfqIxlp1fV23dH36UHvxxk7gH4zKIPzYzKsyTew8KbYJKXlYLFvcg3guELlU45nCpOY/pb4CpNvm3JZ93Gm/whLKdBFCsN6XxekyK504R1x118k+zzvg/uck09iYilo6RgfpLZqI29K93gm1BR5hbbyjQV8bty9z8LoGrPEqf76V+HvZc3lPE9GbgfvnZqxTAFQbY1h7z5KacqH/DL/If5I06os86sUp2kST9fpO9Z8tJozEFlVD6tQA+q7d8LhY43rpWp/UvK/UFlHgBFA46rdUiW7KN6lWQ3PdMZkolu7xRkvyD2W5mF+OSs9x/EUFNDtrk19D43oPQmUWUnQMAnqZHfIcCM3nw4D0LnEoOmSWfAyj6Fw6tyWNR3CvzCPmLvGLOdGq4TMvdqbYe6UbfJOYyn34WuuPF3c/UU+aQixGIoZRRzu+IKD0e4rfLbCEhdE78I/DaxMl3hObpoKzE58kecUOZagMW1tQ+EnylBgBQqb0mRLTwae/GK1Pmfj6dtuGfgAjlagGBTY/TbDXIIAZ/rIsr0AXK1D7vDPUECxRI80k9h4gGELY0ZKy27iLKRObKIV5g42jK5s+L1OQz+EPTtAGWVV2MxGaR1w==");const U=Array(1+h()).fill().map((()=>E(h))),K=w(h),T=E(h),s=44032;function P(A){return A>=s&&A<55204}function k(A,B){if(A<128)B(A);else if(P(A)){let g=A-s,C=g%588/28|0,Q=g%28;B(4352+(g/588|0)),B(4449+C),Q>0&&B(4519+Q)}else{let g=I(K,A);if(g)for(let A of g)k(A,B);else B(A)}}function L(A,B){let g=[];function C(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function Q(A){let Q=1+U.findIndex((B=>D(B,A)));0==Q?(C(),B(Q,A)):g.push([Q,A])}A.forEach((A=>k(A,Q))),C()}let R=A("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");const H=E(R),S=E(R),O=E(R),a=E(R),y=E(R),z=E(R);function J(A){return A.some((A=>D(H,A)||D(O,A)))}function x(A){if(0==A.length)return;let B=A.length-1;if(D(H,A[0])){if(!A.every((A=>D(H,A)||D(O,A)||D(a,A)||D(y,A)||D(z,A))))throw new Error("RTL: disallowed properties");for(;D(z,A[B]);)B--;if(B=A[B],!(D(H,B)||D(a,B)||D(O,B)))throw new Error("RTL: disallowed ending");let g=A.some((A=>D(a,A))),C=A.some((A=>D(O,A)));if(g&&C)throw new Error("RTL: AN+EN")}else{if(!D(S,A[0]))throw new Error("unknown direction");if(!A.every((A=>D(S,A)||D(a,A)||D(y,A)||D(z,A))))throw new Error("LTR: disallowed properties");for(;D(z,A[B]);)B--;if(B=A[B],!D(S,B)&&!D(a,B))throw new Error("LTR: disallowed ending")}}let V=A("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");const d=o(V),Z=o(V),m=o(V),b=w(V),j=o(V),W=V()&&function(A){const B=o(A),g=o(A),C=o(A),Q=o(A),E=o(A),w=o(A),e=o(A),r=o(A),t=65039,D=8419;function I(A,g){let C=A[g],r=A[g+1],o=e(C);if(o&&r&&w(r))return[2,[C,r]];let D=o||Q(C);if(r==t){if(D)return[2,[C]];if(E(C))return[2,[C,t]]}return o||D||B(C)||w(C)?[1,[C]]:void 0}return function(A,Q){let E=A[Q],w=A.length;if(Q+1<w&&B(E)){let g=A[Q+1];if(B(g))return[2,[E,g]]}let e=g(E);if(Q+1<w&&e&&A[Q+1]==D)return[2,[E,D]];if(Q+2<w&&(e||C(E))&&A[Q+1]==t&&A[Q+2]==D)return[3,e?[E,D]:[E,t,D]];let o=I(A,Q);if(!o)return[0];let[i,n]=o;i+=Q;let f=!1;for(;i+1<w&&8205===A[i];){let B=I(A,i+1);if(!B)break;f=!0,i+=1+B[0],n.push(8205,...B[1])}if(!f&&i+2<w&&r(A[i])){let B=i+1;for(;B+1<w&&r(A[B]);)B++;if(917631==A[B++])return[B-Q,n]}return[i-Q,n]}}(V);function X(A){return A.flatMap((A=>A.e??function(A){let B=[],g=[],C=-1,Q=0;return L(A,(function(A,E){if(-1===C)0==A?C=E:B.push(E);else if(Q>0&&Q>=A)0==A?(B.push(C,...g),g.length=0,C=E):g.push(E),Q=A;else{let w=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return s+(588*(A-4352)+28*(B-4449));if(P(A)&&B>4519&&B<4547&&(A-s)%28==0)return A+(B-4519);for(let[g,C]of K)if(2==C.length&&C[0]==A&&C[1]==B){if(D(T,g))break;return g}return-1}(C,E);w>=0?C=w:0==Q&&0==A?(B.push(C),C=E):(g.push(E),Q=A)}})),C>=0&&B.push(C),B.push(...g),B}(A.v)))}function p(A,B){return new Error(`Disallowed label "${i(String.fromCodePoint(...A))}": ${B}`)}function v(A){const B=45;let g=f(n(A),W,(A=>{if(d(A))return;if(m(A))return[];if(Z(A))return[A];let B=I(b,A);if(B)return B;throw new Error(`Disallowed character "${i(String.fromCodePoint(A))}"`)})).map((A=>{let g=X(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=function(A){let B=[],g=A.lastIndexOf(45);for(let C=0;C<g;C++){let g=A[C];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let C=0,Q=128,E=72;for(;g<A.length;){let w=C;for(let B=1,Q=36;;Q+=36){if(g>=A.length)throw new Error("invalid encoding");let w=A[g++];if(w>=48&&w<=57)w-=22;else{if(!(w>=97&&w<=122))throw new Error(`invalid character ${w}`);w-=97}C+=w*B;const e=Q<=E?1:Q>=E+26?26:Q-E;if(w<e)break;B*=36-e}let e=B.length+1,r=0==w?C/700|0:C-w>>1;r+=r/e|0;let t=0;for(;r>455;t+=36)r=r/35|0;E=t+36*r/(r+38)|0,Q+=C/e|0,C%=e,B.splice(C++,0,Q)}return B}(g.slice(4)),[A]=f(B,W,(A=>Z(A)?[A]:[]));let C=X(A);if(B.length!=C.length||!B.every(((A,B)=>A==C[B])))throw new Error("not normalized")}catch(A){throw p(g,`punycode: ${A.message}`)}g=B}if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw p(g,"invalid label extension");if(g[0]==B)throw p(g,"leading hyphen");if(g[g.length-1]==B)throw p(g,"trailing hyphen");if(j(g[0]))throw p(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&c(A[B-1]))continue;if(B>0&&B<g){let C=B-1;for(;C>0&&N(A[C]);)C--;if(F(A[C])){let C=B+1;for(;C<g&&N(A[C]);)C++;if(l(A[C]))continue}}break;case 8205:if(B>0&&c(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&Y(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&u(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${i(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>G(A))))throw new Error("Disallowed katakana")}(A.flatMap((({v:A})=>A??[])))}catch(A){throw p(g,A.message)}}return A})),C=g.map((A=>A.flatMap((({v:A})=>A??[]))));if(C.some(J))for(let A=0;A<g.length;A++)try{x(C[A])}catch(B){throw p(X(g[A]),`bidi: ${B.message}`)}return g.map((A=>String.fromCodePoint(...X(A)))).join(".")}function q(A){return f(n(A),W,(A=>{if(d(A))return{};if(Z(A))return[A];if(m(A))return{i:A};let B=I(b,A);return B?{m:A,u:B}:{d:A}}))[0]}export{v as ens_normalize,q as ens_tokenize};
function A(A){let B=function(A){let B=0;function g(){return A[B++]<<8|A[B++]}let Q=g(),C=1,w=[0,1];for(let A=1;A<Q;A++)w.push(C+=g());let e=g(),E=B;B+=e;let D=0,t=0;function o(){return 0==D&&(t=t<<8|A[B++],D=8),t>>--D&1}const r=2**31,I=r>>>1,i=r-1;let n=0;for(let A=0;A<31;A++)n=n<<1|o();let c=[],M=0,f=r;for(;;){let A=Math.floor(((n-M+1)*C-1)/f),B=0,g=Q;for(;g-B>1;){let Q=B+g>>>1;A<w[Q]?g=Q:B=Q}if(0==B)break;c.push(B);let e=M+Math.floor(f*w[B]/C),E=M+Math.floor(f*w[B+1]/C)-1;for(;0==((e^E)&I);)n=n<<1&i|o(),e=e<<1&i,E=E<<1&i|1;for(;e&~E&536870912;)n=n&I|n<<1&i>>>1|o(),e=e<<1^I,E=(E^I)<<1|I|1;M=e,f=1+E-e}let F=Q-4;return c.map((B=>{switch(B-F){case 3:return F+65792+(A[E++]<<16|A[E++]<<8|A[E++]);case 2:return F+256+(A[E++]<<8|A[E++]);case 1:return F+A[E++];default:return B-1}}))}(Uint8Array.from(atob(A),(A=>A.charCodeAt(0)))),g=0;return()=>B[g++]}function B(A){return 1&A?~A>>1:A>>1}function g(A,B){let g=Array(A);for(let Q=0;Q<A;Q++)g[Q]=1+B();return g}function Q(A,B){let g=Array(A);for(let Q=0,C=-1;Q<A;Q++)g[Q]=C+=1+B();return g}function C(A,g){let Q=Array(A);for(let C=0,w=0;C<A;C++)Q[C]=w+=B(g());return Q}function w(A){let B=Q(A(),A),C=A(),w=Q(C,A),e=g(C,A);return[...B.map((A=>[A,1])),...w.map(((A,B)=>[A,e[B]]))].sort(((A,B)=>A[0]-B[0]))}function e(A){let B=[];for(;;){let g=A();if(0==g)break;B.push(t(g,A))}for(;;){let g=A()-1;if(g<0)break;B.push(D(g,A))}return B.flat().sort(((A,B)=>A[0]-B[0]))}function E(A,g,Q){if(0==g)return[];let w=[C(A,Q)];for(let C=1;C<g;C++){let g=Array(A),e=w[C-1];for(let C=0;C<A;C++)g[C]=e[C]+B(Q());w.push(g)}return w}function D(A,B){let g=1+B(),C=Q(g,B),w=E(g,A,B);return C.map(((A,B)=>[A,w.map((A=>A[B]))]))}function t(A,B){let C=1+B(),w=B(),e=1+B(),D=Q(e,B),t=g(e,B),o=E(e,A,B);return D.map(((A,B)=>[A,o.map((A=>A[B])),t[B],C,w]))}function o(A){let B=w(A);return A=>r(B,A)}function r(A,B){for(let[g,Q]of A){let A=B-g;if(A<0)break;if(A<Q)return!0}return!1}function I(A,B){for(let[g,Q,C,w,e]of A){let A=B-g;if(A<0)break;if(C>0){if(A<w*C&&A%w==0){let B=A/w;return Q.map((A=>A+B*e))}}else if(0==A)return Q}}function i(A){return A.replace(/[^\x20-\x21\x23-\x7E]/gu,(A=>{return`{${B=A.codePointAt(0),B.toString(16).toUpperCase().padStart(2,"0")}}`;var B}))}function n(A){if("string"!=typeof A)throw new TypeError("expected string");return[...A].map((A=>A.codePointAt(0)))}function c(A,B,g){let Q=[],C=[],w=[C];function e(){Q.length>0&&(C.push({v:Q}),Q=[])}for(let E=0;E<A.length;E++){if(B){let[g,Q]=B(A,E);if(g>0){e(),C.push({e:Q,u:A.slice(E,E+g)}),E+=g-1;continue}}let D=g(A[E]);Array.isArray(D)?Q.push(...D):(e(),D?C.push(D):(C=[],w.push(C)))}return e(),w}let M=A("ABIAAQB6AEAAOAAoACYAHwAiABgAFgAOAAsACwAMAY8AfgADApQhCD9xcXFxcXFxcW5hcbsGoY8Bf9URLHl4F4mAXgAn6F1DBPgbACv4ZqZU5nHucWhm/wCYRQRDAJcASQwtAe8FzAOHOfQyBvsC+GifBANGRZDdAC4CJSwCIi8GFTgCJSwmLyQpNix4JTpMcXV+rQEGGggji3raLA6mlfECCAxleXQSxKUjTyElAibgTiIC0gHv1AZQBLNgQ6JNVpJS9wlNAHRfAXiOWADp7D9QqYZpggAHGwscRNcB8gB0/yE9LHw3ZzYcITAjCk8BAlASEDEWAjEMCTgFzVsHDywSYVMEXgVBSgCFDAQFAckCphERETMDM2uMA88yLkEnJgYTLi6LB7kBPw0nVwsQ4gE7YHTHG0MAJpANNxIqJ15uH1IFEQDKAm4FfB2eATAAeIwtpywlOBhEJwRXng4sHLli4Q5IYl7584oYIwciAIlLCW1CAFQULjWxMQNQS/8RUSEBKAMWiQavLFEEUAT7AK0E1WULFc3RYR4GDAkRFRAxEhEDAQEABx8IASgjAAJR4QwFEpUiGzjHDw5ylPEUpACEAX4jBRwWExgAGwkSAkFoCRgIAA5XWI6qYXEEjBQARAEhDhAt2CcBFwASAEoTJBMCNQUSphsCAEEXDnKU8Q4OA70WBRQQHmoJLG5nEwoIDmNYjqphcQSGGgBJASASEDPYKA9QDyQSCgQMShMjAxQGAzUCcRkkAIsAuokwVSwLAmIGPhgnKACLCRkAEicBAQbgO8+xBTABBxcQJgAEQDf6MASDMBD0HwwoDAsu9wDA6hMtcgxWABIITU3k0SHxGPGp8QBhA+dvYj7xAEEFTY2l8Q8x0RWBKEEG8QtKx0dLASBJGLFQ8QBfWx4AFKXRDyrPFXMcIgEPEjzcS9Wn/KALJxnXU2YJOBWKOmP82gdIgmNcRsDi+p7FBLYbwm9Uzs1RfCbNpY30PNDOtZBhbqPBybOPeWa7oi+ySNuja7E79Fz+oJqkWRGdXLqRl46pfoUDu0uKXTiGuFf3GtJzAXtJmxI3V8am/mpQnjfi99U7ZkojTh6fKYexodlCUm8Nn5tkJXqdPwxaQiU29Pa8nQxhFccS0ZzA2p+XNo3r68FBGjQNasxwtQH/0ELiOQLNuyc0YqOxCPnfFsvASXVP7enrn5p48UHDGS6NU/kYR37WSJ7+CN+nV4NqWlRTc/nQOuWoDD2Cnkn26E21fE+79xMXG2voqdtyef5eUY6MOoAAPIvdUDW+i16JSxe2+srXAYVvzbE8SKhyxzjFf2rMlgMycfXR8nl6/xF97xDwBSNLExVnK4YUGbAMpgGeHD0vHVXsIK20HyDdJQ9a5Uhwta5o+Tw/HpthmalqVX7v90SgUzjZaEahH3JPOhT8k+LFPClF+c5gMeKg");const f=o(M),F=o(M),Y=o(M),N=o(M),U=o(M),l=o(M),u=o(M);let G=A("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");const k=Array(1+G()).fill().map((()=>w(G))),s=e(G),R=w(G),L=44032;function K(A){return A>=L&&A<55204}function T(A,B){if(A<128)B(A);else if(K(A)){let g=A-L,Q=g%588/28|0,C=g%28;B(4352+(g/588|0)),B(4449+Q),C>0&&B(4519+C)}else{let g=I(s,A);if(g)for(let A of g)T(A,B);else B(A)}}function P(A,B){let g=[];function Q(){g.sort(((A,B)=>A[0]-B[0])).forEach((([A,g])=>B(A,g))),g.length=0}function C(A){let C=1+k.findIndex((B=>r(B,A)));0==C?(Q(),B(C,A)):g.push([C,A])}A.forEach((A=>T(A,C))),Q()}let H=A("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");const h=w(H),a=w(H),S=w(H),x=w(H),J=w(H),O=w(H);function V(A){if(0==A.length)return;let B=A.length-1;if(r(h,A[0])){if(!A.every((A=>r(h,A)||r(S,A)||r(x,A)||r(J,A)||r(O,A))))throw new Error("RTL: disallowed properties");for(;r(O,A[B]);)B--;if(B=A[B],!(r(h,B)||r(x,B)||r(S,B)))throw new Error("RTL: disallowed ending");let g=A.some((A=>r(x,A))),Q=A.some((A=>r(S,A)));if(g&&Q)throw new Error("RTL: AN+EN")}else{if(!r(a,A[0]))throw new Error("unknown direction");if(!A.every((A=>r(a,A)||r(x,A)||r(J,A)||r(O,A))))throw new Error("LTR: disallowed properties");for(;r(O,A[B]);)B--;if(B=A[B],!r(a,B)&&!r(x,B))throw new Error("LTR: disallowed ending")}}let W=A("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");const y=o(W),z=o(W),p=o(W),d=e(W),j=o(W),Z=W()&&function(A){const B=o(A),g=o(A),Q=o(A),C=o(A),w=o(A),e=o(A),E=o(A),D=o(A),t=65039,r=8419;function I(A,g){let Q=A[g],D=A[g+1],o=E(Q);if(o&&D&&e(D))return[2,[Q,D]];let r=o||C(Q);if(D==t){if(r)return[2,[Q]];if(w(Q))return[2,[Q,t]]}return o||r||B(Q)||e(Q)?[1,[Q]]:void 0}return function(A,C){let w=A[C],e=A.length;if(C+1<e&&B(w)){let g=A[C+1];if(B(g))return[2,[w,g]]}let E=g(w);if(C+1<e&&E&&A[C+1]==r)return[2,[w,r]];if(C+2<e&&(E||Q(w))&&A[C+1]==t&&A[C+2]==r)return[3,E?[w,r]:[w,t,r]];let o=I(A,C);if(!o)return[0];let[i,n]=o;i+=C;let c=!1;for(;i+1<e&&8205===A[i];){let B=I(A,i+1);if(!B)break;c=!0,i+=1+B[0],n.push(8205,...B[1])}if(!c&&i+2<e&&D(A[i])){let B=i+1;for(;B+1<e&&D(A[B]);)B++;if(917631==A[B++])return[B-C,n]}return[i-C,n]}}(W);function X(A){return A.flatMap((({e:A,v:B})=>A??function(A){let B=[],g=[],Q=-1,C=0;return P(A,(function(A,w){if(-1===Q)0==A?Q=w:B.push(w);else if(C>0&&C>=A)0==A?(B.push(Q,...g),g.length=0,Q=w):g.push(w),C=A;else{let e=function(A,B){if(A>=4352&&A<4371&&B>=4449&&B<4470)return L+(588*(A-4352)+28*(B-4449));if(K(A)&&B>4519&&B<4547&&(A-L)%28==0)return A+(B-4519);for(let[g,Q]of s)if(2==Q.length&&Q[0]==A&&Q[1]==B){if(r(R,g))break;return g}return-1}(Q,w);e>=0?Q=e:0==C&&0==A?(B.push(Q),Q=w):(g.push(w),C=A)}})),Q>=0&&B.push(Q),B.push(...g),B}(B)))}function m(A,B){return new Error(`Disallowed label "${i(String.fromCodePoint(...A))}": ${B}`)}function b(A){const B=45;let g=c(n(A),Z,(A=>{if(y(A))return;if(p(A))return[];if(z(A))return[A];let B=I(d,A);if(B)return B;throw new Error(`Disallowed character "${i(String.fromCodePoint(A))}"`)})).map((A=>{let g=X(A);if(g.length>=4&&g[2]==B&&g[3]==B&&120==g[0]&&110==g[1]){let B;try{B=function(A){let B=[],g=A.lastIndexOf(45);for(let Q=0;Q<g;Q++){let g=A[Q];if(g>=128)throw new Error("expected ASCII");B.push(g)}g++;let Q=0,C=128,w=72;for(;g<A.length;){let e=Q;for(let B=1,C=36;;C+=36){if(g>=A.length)throw new Error("invalid encoding");let e=A[g++];if(e>=48&&e<=57)e-=22;else{if(!(e>=97&&e<=122))throw new Error(`invalid character ${e}`);e-=97}Q+=e*B;const E=C<=w?1:C>=w+26?26:C-w;if(e<E)break;B*=36-E}let E=B.length+1,D=0==e?Q/700|0:Q-e>>1;D+=D/E|0;let t=0;for(;D>455;t+=36)D=D/35|0;w=t+36*D/(D+38)|0,C+=Q/E|0,Q%=E,B.splice(Q++,0,C)}return B}(g.slice(4)),[A]=c(B,Z,(A=>z(A)?[A]:[]));let Q=X(A);if(B.length!=Q.length||!B.every(((A,B)=>A==Q[B])))throw new Error("not normalized")}catch(A){throw m(g,`punycode: ${A.message}`)}g=B}let Q=A.flatMap((({v:A})=>A??[]));if(g.length>0){if(g.length>=4&&g[2]==B&&g[3]==B)throw m(g,"invalid label extension");if(g[0]==B)throw m(g,"leading hyphen");if(g[g.length-1]==B)throw m(g,"trailing hyphen");if(j(g[0]))throw m(g,"leading combining mark");try{!function(A){for(let B=0,g=A.length-1;B<=g;B++){switch(A[B]){case 8204:if(B>0&&f(A[B-1]))continue;if(B>0&&B<g){let Q=B-1;for(;Q>0&&F(A[Q]);)Q--;if(Y(A[Q])){let Q=B+1;for(;Q<g&&F(A[Q]);)Q++;if(N(A[Q]))continue}}break;case 8205:if(B>0&&f(A[B-1]))continue;break;case 183:if(B>0&&B<g&&108==A[B-1]&&108==A[B+1])continue;break;case 885:if(B<g&&U(A[B+1]))continue;break;case 1523:case 1524:if(B>0&&l(A[B-1]))continue;break;default:continue}throw new Error(`No context for "${i(String.fromCodePoint(A[B]))}"`)}if(A.some((A=>A>=1632&&A<=1641))&&A.some((A=>A>=1776&&A<=1785)))throw new Error("Disallowed arabic-indic digit mixture");if(A.includes(12539)&&!A.some((A=>u(A))))throw new Error("Disallowed katakana")}(Q)}catch(A){throw m(g,A.message)}}return{tokens:A,cps:g,text:Q}}));if(g.some((A=>A.text.some((A=>r(h,A)||r(S,A))))))for(let{text:A,cps:B}of g)try{V(A)}catch(A){throw m(B,`bidi: ${A.message}`)}return g.map((A=>String.fromCodePoint(...A.cps))).join(".")}function v(A){return c(n(A),Z,(A=>{if(y(A))return{};if(z(A))return[A];if(p(A))return{i:A};let B=I(d,A);return B?{m:B,u:[A]}:{d:A}}))[0]}export{b as ens_normalize,v as ens_tokenize};

@@ -1,1 +0,2 @@

export function ens_normalize(name: string): string;
export function ens_normalize(name: string): string;
export function ens_tokenize(name: string): {}[];
{
"name": "@adraffy/ens-normalize",
"version": "1.3.2",
"version": "1.3.4",
"description": "Compact ES6 Ethereum Name Service (ENS) Name Normalizer",

@@ -5,0 +5,0 @@ "keywords": [

@@ -15,7 +15,7 @@ # ens-normalize.js

* [Demo: Resolver](https://adraffy.github.io/ens-normalize.js/test/resolver.html)
* [Demo: Tokenizer](https://adraffy.github.io/ens-normalize.js/test/tokenizer.html)
* [Demo: Display Name](https://adraffy.github.io/ens-normalize.js/test/display.html)
* ~~Passes **100%** [IDNATestV2](https://adraffy.github.io/ens-normalize.js/test/report-idna.html)~~ (This test is IDNA2003)
* Passes **100%** [NormalizationTests](https://adraffy.github.io/ens-normalize.js/test/report-nf.html)
* [Emoji Test](https://adraffy.github.io/ens-normalize.js/test/report-emoji.html)
* Generated Report vs `eth-ens-namehash` [Latest version](https://adraffy.github.io/ens-normalize.js/test/output/ens2.html) • [Prior (IDNA2003)](https://adraffy.github.io/ens-normalize.js/test/output/ens.html)
* Dynamic Report: [Emoji](https://adraffy.github.io/ens-normalize.js/test/report-emoji.html)
* Generated Report vs `eth-ens-namehash` [Latest version](https://adraffy.github.io/ens-normalize.js/test/output/ens3.html) • [Prior (IDNA2003)](https://adraffy.github.io/ens-normalize.js/test/output/ens.html)

@@ -22,0 +22,0 @@ ```Javascript

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc